diff --git a/data/maps/AncientTomb/map.json b/data/maps/AncientTomb/map.json index 06254e1f98..8614b64300 100644 --- a/data/maps/AncientTomb/map.json +++ b/data/maps/AncientTomb/map.json @@ -12,10 +12,10 @@ "allow_running": true, "show_map_name": true, "battle_scene": "MAP_BATTLE_SCENE_NORMAL", - "connections": null, + "connections": 0, "object_events": [ { - "graphics_id": "OBJ_EVENT_GFX_REGISTEEL", + "graphics_id": "OBJ_EVENT_GFX_OW_MON", "x": 8, "y": 7, "elevation": 3, @@ -51,7 +51,9 @@ "dest_warp_id": 1 } ], - "coord_events": [], + "coord_events": [ + + ], "bg_events": [ { "type": "sign", diff --git a/data/scripts/field_move_scripts.inc b/data/scripts/field_move_scripts.inc index 3e99fc08e2..a9ba2355c7 100644 --- a/data/scripts/field_move_scripts.inc +++ b/data/scripts/field_move_scripts.inc @@ -25,6 +25,7 @@ EventScript_UseCut:: end EventScript_CutTreeDown:: + setflag FLAG_SAFE_FOLLOWER_MOVEMENT applymovement VAR_LAST_TALKED, Movement_CutTreeDown waitmovement 0 removeobject VAR_LAST_TALKED diff --git a/graphics/object_events/pics/pokemon/combusken.png b/graphics/object_events/pics/pokemon/combusken.png index dded375fe9..b95ae2af8b 100644 Binary files a/graphics/object_events/pics/pokemon/combusken.png and b/graphics/object_events/pics/pokemon/combusken.png differ diff --git a/graphics/object_events/pics/pokemon/shuppet.png b/graphics/object_events/pics/pokemon/shuppet.png index b79ede1d07..533e6ae55b 100644 Binary files a/graphics/object_events/pics/pokemon/shuppet.png and b/graphics/object_events/pics/pokemon/shuppet.png differ diff --git a/graphics/object_events/pics/pokemon/skiploom.png b/graphics/object_events/pics/pokemon/skiploom.png index da5baf252b..6fd848942b 100644 Binary files a/graphics/object_events/pics/pokemon/skiploom.png and b/graphics/object_events/pics/pokemon/skiploom.png differ diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c index 26caa830d3..d7a28e47a0 100644 --- a/src/braille_puzzles.c +++ b/src/braille_puzzles.c @@ -1,5 +1,6 @@ #include "global.h" #include "event_data.h" +#include "event_object_movement.h" #include "field_camera.h" #include "field_effect.h" #include "script.h" @@ -214,6 +215,7 @@ static void DoBrailleRegirockEffect(void) PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGIROCK_PUZZLE_COMPLETED); ScriptContext2_Disable(); + UnfreezeObjectEvents(); } bool8 ShouldDoBrailleRegisteelEffect(void) @@ -253,6 +255,7 @@ static void DoBrailleRegisteelEffect(void) PlaySE(SE_BANG); FlagSet(FLAG_SYS_REGISTEEL_PUZZLE_COMPLETED); ScriptContext2_Disable(); + UnfreezeObjectEvents(); } // theory: another commented out DoBrailleWait and Task_BrailleWait. diff --git a/src/scrcmd.c b/src/scrcmd.c index 2461b0d960..58be7085f5 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -105,6 +105,7 @@ bool8 ScrCmd_nop1(struct ScriptContext *ctx) bool8 ScrCmd_end(struct ScriptContext *ctx) { + FlagClear(FLAG_SAFE_FOLLOWER_MOVEMENT); StopScript(ctx); return FALSE; } @@ -295,6 +296,7 @@ bool8 ScrCmd_returnram(struct ScriptContext *ctx) bool8 ScrCmd_endram(struct ScriptContext *ctx) { + FlagClear(FLAG_SAFE_FOLLOWER_MOVEMENT); ClearRamScript(); StopScript(ctx); return TRUE; @@ -1270,7 +1272,6 @@ bool8 ScrCmd_releaseall(struct ScriptContext *ctx) { u8 playerObjectId; struct ObjectEvent *followerObject = GetFollowerObject(); - FlagClear(FLAG_SAFE_FOLLOWER_MOVEMENT); // Release follower from movement iff it exists and is in the shadowing state if (followerObject && gSprites[followerObject->spriteId].data[1] == 0) ClearObjectEventMovement(followerObject, &gSprites[followerObject->spriteId]); @@ -1287,7 +1288,6 @@ bool8 ScrCmd_release(struct ScriptContext *ctx) { u8 playerObjectId; struct ObjectEvent *followerObject = GetFollowerObject(); - FlagClear(FLAG_SAFE_FOLLOWER_MOVEMENT); // Release follower from movement iff it exists and is in the shadowing state if (followerObject && gSprites[followerObject->spriteId].data[1] == 0) ClearObjectEventMovement(followerObject, &gSprites[followerObject->spriteId]);