diff options
Diffstat (limited to 'src/actions')
| -rw-r--r-- | src/actions/interaction-level.js | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/src/actions/interaction-level.js b/src/actions/interaction-level.js index 916648f0..884f1988 100644 --- a/src/actions/interaction-level.js +++ b/src/actions/interaction-level.js @@ -1,15 +1,36 @@ export const GO_FROM_BUILDING_TO_ROOM = "GO_FROM_BUILDING_TO_ROOM"; -export const GO_FROM_ROOM_TO_BUILDING = "GO_FROM_ROOM_TO_BUILDING"; +export const GO_FROM_ROOM_TO_OBJECT = "GO_FROM_ROOM_TO_OBJECT"; +export const GO_DOWN_ONE_INTERACTION_LEVEL = "GO_DOWN_ONE_INTERACTION_LEVEL"; export function goFromBuildingToRoom(roomId) { - return { - type: GO_FROM_BUILDING_TO_ROOM, - roomId + return (dispatch, getState) => { + const {interactionLevel} = getState(); + if (interactionLevel.mode !== "BUILDING") { + return; + } + + dispatch({ + type: GO_FROM_BUILDING_TO_ROOM, + roomId + }); + }; +} + +export function goFromRoomToObject(tileId) { + return (dispatch, getState) => { + const {interactionLevel} = getState(); + if (interactionLevel.mode !== "ROOM") { + return; + } + dispatch({ + type: GO_FROM_ROOM_TO_OBJECT, + tileId + }); }; } -export function goFromRoomToBuilding() { +export function goDownOneInteractionLevel() { return { - type: GO_FROM_ROOM_TO_BUILDING + type: GO_DOWN_ONE_INTERACTION_LEVEL }; } |
