X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Feditor.c;h=0b9ad87861e15e2c3a0906bf7babe8d99290e4f2;hb=3494549d6f5c8d1d5497ec7eb9fa80a7ca6579ee;hp=0fb85a1a7fdc0c710f15e71333b11cfafc1ee6a8;hpb=5e616edfe5f101927d2ff3f7a14d2c65897de3cc;p=rocksndiamonds.git diff --git a/src/editor.c b/src/editor.c index 0fb85a1a..0b9ad878 100644 --- a/src/editor.c +++ b/src/editor.c @@ -950,7 +950,7 @@ static struct GADGET_ID_CHANGE_CONT_RND_DOWN, GADGET_ID_CHANGE_CONT_RND_UP, GADGET_ID_CHANGE_CONT_RND_TEXT, GADGET_ID_NONE, &custom_element_change.random, - NULL, "use random change:", "(%)" + NULL, "use random replace:", "%" }, }; @@ -1043,6 +1043,7 @@ static struct ValueTextInfo options_move_pattern[] = { MV_ALONG_RIGHT_SIDE, "along right side" }, { MV_TURNING_LEFT, "turning left" }, { MV_TURNING_RIGHT, "turning right" }, + { MV_WHEN_PUSHED, "when pushed" }, { -1, NULL } }; @@ -1104,20 +1105,21 @@ static struct ValueTextInfo options_consistency[] = static struct ValueTextInfo options_time_units[] = { - { FRAMES_PER_SECOND, "seconds" }, { 1, "frames" }, + { FRAMES_PER_SECOND, "seconds" }, { -1, NULL } }; static struct ValueTextInfo options_change_direct_action[] = { - { CE_TOUCHED_BY_PLAYER, "touched by player" }, - { CE_PRESSED_BY_PLAYER, "pressed by player" }, - { CE_PUSHED_BY_PLAYER, "pushed by player" }, - { CE_ENTERED_BY_PLAYER, "entered by player" }, - { CE_LEFT_BY_PLAYER, "left by player" }, + { CE_TOUCHED_BY_PLAYER, "touched by player ..." }, + { CE_PRESSED_BY_PLAYER, "pressed by player ..." }, + { CE_SWITCHED_BY_PLAYER, "switched by player ..." }, + { CE_PUSHED_BY_PLAYER, "pushed by player ..." }, + { CE_ENTERED_BY_PLAYER, "entered by player ..." }, + { CE_LEFT_BY_PLAYER, "left by player ..." }, { CE_DROPPED_BY_PLAYER, "dropped by player" }, - { CE_COLLISION, "collision" }, + { CE_COLLISION, "collision ..." }, { CE_IMPACT, "impact" }, { CE_SMASHED, "smashed" }, { -1, NULL } @@ -1125,11 +1127,12 @@ static struct ValueTextInfo options_change_direct_action[] = static struct ValueTextInfo options_change_other_action[] = { - { CE_OTHER_GETS_TOUCHED, "player touches" }, - { CE_OTHER_GETS_PRESSED, "player presses" }, - { CE_OTHER_GETS_PUSHED, "player pushes" }, - { CE_OTHER_GETS_ENTERED, "player enters" }, - { CE_OTHER_GETS_LEFT, "player leaves" }, + { CE_OTHER_GETS_TOUCHED, "player touches ..." }, + { CE_OTHER_GETS_PRESSED, "player presses ..." }, + { CE_OTHER_GETS_SWITCHED, "player switches ..." }, + { CE_OTHER_GETS_PUSHED, "player pushes ..." }, + { CE_OTHER_GETS_ENTERED, "player enters ..." }, + { CE_OTHER_GETS_LEFT, "player leaves ..." }, { CE_OTHER_GETS_DIGGED, "player digs" }, { CE_OTHER_GETS_COLLECTED, "player collects" }, { CE_OTHER_GETS_DROPPED, "player drops" }, @@ -1659,13 +1662,13 @@ static struct ED_SETTINGS_XPOS(2), ED_SETTINGS_YPOS(11), GADGET_ID_CHANGE_ONLY_COMPLETE, GADGET_ID_NONE, &custom_element_change.only_complete, - NULL, "only use complete change", "only use complete extended content" + NULL, "replace all or nothing", "only replace when all can be changed" }, { ED_SETTINGS_XPOS(2), ED_SETTINGS_YPOS(12), GADGET_ID_CHANGE_USE_RANDOM, GADGET_ID_NONE, &custom_element_change.use_random_change, - NULL, NULL, "use random value for new content" + NULL, NULL, "use percentage for random replace" }, { ED_SETTINGS_XPOS(0), ED_SETTINGS_YPOS(13), @@ -2092,17 +2095,17 @@ static int editor_el_more[] = EL_PIG, EL_DRAGON, - EL_EMPTY, + EL_BUG, EL_MOLE_UP, - EL_EMPTY, - EL_EMPTY, + EL_BD_BUTTERFLY, + EL_BD_FIREFLY, EL_MOLE_LEFT, EL_EMPTY, EL_MOLE_RIGHT, - EL_EMPTY, + EL_PACMAN, - EL_EMPTY, + EL_SPACESHIP, EL_MOLE_DOWN, EL_BALLOON, EL_BALLOON_SWITCH_ANY, @@ -4588,6 +4591,7 @@ static void CopyCustomElementPropertiesToEditor(int element) custom_element_change.direct_action = (HAS_CHANGE_EVENT(element, CE_TOUCHED_BY_PLAYER) ? CE_TOUCHED_BY_PLAYER : HAS_CHANGE_EVENT(element, CE_PRESSED_BY_PLAYER) ? CE_PRESSED_BY_PLAYER : + HAS_CHANGE_EVENT(element, CE_SWITCHED_BY_PLAYER) ? CE_SWITCHED_BY_PLAYER : HAS_CHANGE_EVENT(element, CE_PUSHED_BY_PLAYER) ? CE_PUSHED_BY_PLAYER : HAS_CHANGE_EVENT(element, CE_ENTERED_BY_PLAYER) ? CE_ENTERED_BY_PLAYER : HAS_CHANGE_EVENT(element, CE_LEFT_BY_PLAYER) ? CE_LEFT_BY_PLAYER : @@ -4601,6 +4605,7 @@ static void CopyCustomElementPropertiesToEditor(int element) custom_element_change.other_action = (HAS_CHANGE_EVENT(element, CE_OTHER_GETS_TOUCHED) ? CE_OTHER_GETS_TOUCHED : HAS_CHANGE_EVENT(element, CE_OTHER_GETS_PRESSED) ? CE_OTHER_GETS_PRESSED : + HAS_CHANGE_EVENT(element, CE_OTHER_GETS_SWITCHED) ? CE_OTHER_GETS_SWITCHED : HAS_CHANGE_EVENT(element, CE_OTHER_GETS_PUSHED) ? CE_OTHER_GETS_PUSHED : HAS_CHANGE_EVENT(element, CE_OTHER_GETS_ENTERED) ? CE_OTHER_GETS_ENTERED : HAS_CHANGE_EVENT(element, CE_OTHER_GETS_LEFT) ? CE_OTHER_GETS_LEFT : @@ -4704,6 +4709,7 @@ static void CopyCustomElementPropertiesToGame(int element) /* set player change event from checkbox and selectbox */ custom_element_change_events[CE_TOUCHED_BY_PLAYER] = FALSE; custom_element_change_events[CE_PRESSED_BY_PLAYER] = FALSE; + custom_element_change_events[CE_SWITCHED_BY_PLAYER] = FALSE; custom_element_change_events[CE_PUSHED_BY_PLAYER] = FALSE; custom_element_change_events[CE_ENTERED_BY_PLAYER] = FALSE; custom_element_change_events[CE_LEFT_BY_PLAYER] = FALSE; @@ -4717,6 +4723,7 @@ static void CopyCustomElementPropertiesToGame(int element) /* set other element action change event from checkbox and selectbox */ custom_element_change_events[CE_OTHER_GETS_TOUCHED] = FALSE; custom_element_change_events[CE_OTHER_GETS_PRESSED] = FALSE; + custom_element_change_events[CE_OTHER_GETS_SWITCHED] = FALSE; custom_element_change_events[CE_OTHER_GETS_PUSHED] = FALSE; custom_element_change_events[CE_OTHER_GETS_ENTERED] = FALSE; custom_element_change_events[CE_OTHER_GETS_LEFT] = FALSE; @@ -7571,10 +7578,12 @@ void RequestExitLevelEditor(boolean ask_if_level_has_changed) Request("Level has changed! Exit without saving ?", REQ_ASK | REQ_STAY_OPEN)) { +#if 1 CloseDoor(DOOR_CLOSE_1); - /* + SetDoorState(DOOR_CLOSE_2); +#else CloseDoor(DOOR_CLOSE_ALL); - */ +#endif game_status = GAME_MODE_MAIN; DrawMainMenu(); }