author | ecalot
<ecalot> 2005-02-23 22:20:59 UTC |
committer | ecalot
<ecalot> 2005-02-23 22:20:59 UTC |
parent | d9df0e6cd4aaf37a2afa9a5e5d9a1b6287bfbd44 |
FP/src/include/states.h | +1 | -1 |
FP/src/ker/states.c | +3 | -0 |
diff --git a/FP/src/include/states.h b/FP/src/include/states.h index fe04ead..f669ba2 100644 --- a/FP/src/include/states.h +++ b/FP/src/include/states.h @@ -6,7 +6,7 @@ #include "types.h" /* tMap */ #include "input.h" /* tKey */ -typedef enum {esLast=0,esKeyUp,esKeyDown,esKeyForward,esKeyBack,esKeyShift,esMapUp,esMapUpForward,esMapDown,esMapForward,esMapBack,esMapOn,esForwardTileNearerThan,esForwardTileFartherThan,esScreenUp,esScreenDown,esScreenLeft,esScreenRight,esInScreen,esInLevel,esForwardChangeToScreen,esInFloorTop,esInfloorMiddle,esInfloorBottom,esMapNotOn}tsConditionType; +typedef enum {esLast=0,esKeyUp,esKeyDown,esKeyForward,esKeyBack,esKeyShift,esMapUp,esMapUpForward,esMapDown,esMapForward,esMapBack,esMapOn,esForwardTileNearerThan,esForwardTileFartherThan,esScreenUp,esScreenDown,esScreenLeft,esScreenRight,esInScreen,esInLevel,esForwardChangeToScreen,esInFloorTop,esInfloorMiddle,esInfloorBottom,esMapNotOn,esMapNotBack}tsConditionType; typedef enum {esDangerous,esNone,esWalk,esPotion,esSword,esMirror,esNotApplicable=0}tsTileType; diff --git a/FP/src/ker/states.c b/FP/src/ker/states.c index 21d6c82..0144f7b 100644 --- a/FP/src/ker/states.c +++ b/FP/src/ker/states.c @@ -155,6 +155,9 @@ int evaluateCondition(int condition,tKey* key, tObject* kid, tRoom* room) { case esMapBack: DefaultFalse(room); statesCondRet(isIn(statesTile(-kidDirection,0),c.argument)); + case esMapNotBack: + DefaultFalse(room); + statesCondRet(!isIn(statesTile(-kidDirection,0),c.argument)); case esMapOn: DefaultFalse(room); statesCondRet(isIn(statesTile(0,0),c.argument));