author | ecalot
<ecalot> 2005-02-26 08:15:13 UTC |
committer | ecalot
<ecalot> 2005-02-26 08:15:13 UTC |
parent | 43d16725067abcd61d9855b25097e01ab68806ef |
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 8765b85..6dd1b86 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,esMapNotBack,esMapDownBack,esMapNotDownBack}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,esMapDownBack,esMapNotDownBack,esMapNotForward}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 720283e..75a88c8 100644 --- a/FP/src/ker/states.c +++ b/FP/src/ker/states.c @@ -152,6 +152,9 @@ int evaluateCondition(int condition,tKey* key, tObject* kid, tRoom* room) { case esMapForward: DefaultFalse(room); statesCondRet(isIn(statesTile(kidDirection,0),c.argument)); + case esMapNotForward: + DefaultFalse(room); + statesCondRet(!isIn(statesTile(kidDirection,0),c.argument)); case esMapBack: DefaultFalse(room); statesCondRet(isIn(statesTile(-kidDirection,0),c.argument));