author | ecalot
<ecalot> 2005-02-26 07:00:00 UTC |
committer | ecalot
<ecalot> 2005-02-26 07:00:00 UTC |
parent | c86e86fc50bf3d958cec30b4e61c1365dda12b0b |
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 e43e067..8765b85 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}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}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 dd8c118..720283e 100644 --- a/FP/src/ker/states.c +++ b/FP/src/ker/states.c @@ -161,6 +161,9 @@ int evaluateCondition(int condition,tKey* key, tObject* kid, tRoom* room) { case esMapDownBack: DefaultFalse(room); statesCondRet(isIn(statesTile(-kidDirection,1),c.argument)); + case esMapNotDownBack: + DefaultFalse(room); + statesCondRet(!isIn(statesTile(-kidDirection,1),c.argument)); case esMapOn: DefaultFalse(room); statesCondRet(isIn(statesTile(0,0),c.argument));