X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Feditor.c;h=8e9904e7d0d55ad3b27fbab90052fae056c7613a;hb=30d40b2686550cc5ffd737ad4336bf7fccf2b4e1;hp=0fb85a1a7fdc0c710f15e71333b11cfafc1ee6a8;hpb=5e616edfe5f101927d2ff3f7a14d2c65897de3cc;p=rocksndiamonds.git diff --git a/src/editor.c b/src/editor.c index 0fb85a1a..8e9904e7 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_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_SWITCHED, "switched ..." }, + { CE_COLLISION, "collision ..." }, { CE_IMPACT, "impact" }, { CE_SMASHED, "smashed" }, { -1, NULL } @@ -1125,15 +1127,16 @@ 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_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" }, { CE_OTHER_IS_TOUCHING, "touching ..." }, + { CE_OTHER_IS_SWITCHING, "switch of ..." }, { CE_OTHER_IS_CHANGING, "change of" }, { CE_OTHER_IS_EXPLODING, "explosion of" }, { -1, NULL } @@ -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, @@ -4592,6 +4595,7 @@ static void CopyCustomElementPropertiesToEditor(int element) HAS_CHANGE_EVENT(element, CE_ENTERED_BY_PLAYER) ? CE_ENTERED_BY_PLAYER : HAS_CHANGE_EVENT(element, CE_LEFT_BY_PLAYER) ? CE_LEFT_BY_PLAYER : HAS_CHANGE_EVENT(element, CE_DROPPED_BY_PLAYER) ? CE_DROPPED_BY_PLAYER : + HAS_CHANGE_EVENT(element, CE_SWITCHED) ? CE_SWITCHED : HAS_CHANGE_EVENT(element, CE_COLLISION) ? CE_COLLISION : HAS_CHANGE_EVENT(element, CE_IMPACT) ? CE_IMPACT : HAS_CHANGE_EVENT(element, CE_SMASHED) ? CE_SMASHED : @@ -4608,6 +4612,7 @@ static void CopyCustomElementPropertiesToEditor(int element) HAS_CHANGE_EVENT(element, CE_OTHER_GETS_COLLECTED) ? CE_OTHER_GETS_COLLECTED : HAS_CHANGE_EVENT(element, CE_OTHER_GETS_DROPPED) ? CE_OTHER_GETS_DROPPED : HAS_CHANGE_EVENT(element, CE_OTHER_IS_TOUCHING) ? CE_OTHER_IS_TOUCHING : + HAS_CHANGE_EVENT(element, CE_OTHER_IS_SWITCHING) ? CE_OTHER_IS_SWITCHING : HAS_CHANGE_EVENT(element, CE_OTHER_IS_CHANGING) ? CE_OTHER_IS_CHANGING : HAS_CHANGE_EVENT(element, CE_OTHER_IS_EXPLODING) ? CE_OTHER_IS_EXPLODING : custom_element_change.other_action); @@ -4708,6 +4713,7 @@ static void CopyCustomElementPropertiesToGame(int element) custom_element_change_events[CE_ENTERED_BY_PLAYER] = FALSE; custom_element_change_events[CE_LEFT_BY_PLAYER] = FALSE; custom_element_change_events[CE_DROPPED_BY_PLAYER] = FALSE; + custom_element_change_events[CE_SWITCHED] = FALSE; custom_element_change_events[CE_COLLISION] = FALSE; custom_element_change_events[CE_IMPACT] = FALSE; custom_element_change_events[CE_SMASHED] = FALSE; @@ -4724,6 +4730,7 @@ static void CopyCustomElementPropertiesToGame(int element) custom_element_change_events[CE_OTHER_GETS_COLLECTED] = FALSE; custom_element_change_events[CE_OTHER_GETS_DROPPED] = FALSE; custom_element_change_events[CE_OTHER_IS_TOUCHING] = FALSE; + custom_element_change_events[CE_OTHER_IS_SWITCHING] = FALSE; custom_element_change_events[CE_OTHER_IS_CHANGING] = FALSE; custom_element_change_events[CE_OTHER_IS_EXPLODING] = FALSE; custom_element_change_events[custom_element_change.other_action] = @@ -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(); }