From eb73ba66b259271790a00ce9be4f38a51f9de771 Mon Sep 17 00:00:00 2001 From: Connor Olding Date: Sun, 15 Nov 2015 17:03:27 -0800 Subject: [PATCH] oot compat, basic timestop --- Lua/addrs/M/US10.lua | 2 +- Lua/addrs/O/common.lua | 2 +- Lua/cheat menu.lua | 13 ++++++++--- Lua/menus/progress.lua | 49 +++++++++++++++++++++++++++++------------- 4 files changed, 46 insertions(+), 20 deletions(-) diff --git a/Lua/addrs/M/US10.lua b/Lua/addrs/M/US10.lua index 623b362..94a9ed9 100755 --- a/Lua/addrs/M/US10.lua +++ b/Lua/addrs/M/US10.lua @@ -2,7 +2,7 @@ return { random = A(0x097530, 4), massive_counter = A(0x09E5B0, 4), visibility = A(0x166118, 2), - timestop = A(0x1BD8B0, 4), + timestop = A(0x1BD8B0, 2), stored_epona = A(0x1BDA9F, 1), entrance_table = A(0x1C43B0, 0), scene_table = A(0x1C5720, 0), diff --git a/Lua/addrs/O/common.lua b/Lua/addrs/O/common.lua index 7665e86..4ebe85c 100644 --- a/Lua/addrs/O/common.lua +++ b/Lua/addrs/O/common.lua @@ -112,7 +112,6 @@ return { beans = AL(0x9A, 1), }, - event_chk_inf = AL(0xED4, 0x1C), item_get_inf = AL(0xEF0, 0x8), inf_table = AL(0xEF8, 0x3C), @@ -127,6 +126,7 @@ return { voidout_room_number = AL(0x137A, 2), buttons_enabled = AL(0x13E2, 4), -- lol unaligned access event_inf = AL(0x13FA, 0x8), + target_style = AL(0x140C, 1), magic_max = AL(0x13F4, 2), entrance_mod_setter = AL(0x1412, 2), diff --git a/Lua/cheat menu.lua b/Lua/cheat menu.lua index bf45398..a6170eb 100755 --- a/Lua/cheat menu.lua +++ b/Lua/cheat menu.lua @@ -206,11 +206,18 @@ local function kill_fades() fades_killed = true end +local function timestop() + -- doesn't set it up quite like the glitch, but this is the main effect + set(timestop, 4) -- normally -1 +end + local time_menu = oot and Menu{ Screen{ Text("Time Menu #1/1"), - Text("Unimplemented for OoT."), - Text("Sorry! Try again later."), + Oneshot("Set Time to 06:00", Setter{[addrs.time]=0x4000}), + Oneshot("Set Time to 12:00", Setter{[addrs.time]=0x8000}), + Oneshot("Set Time to 18:00", Setter{[addrs.time]=0xC000}), + Oneshot("Set Time to 00:00", Setter{[addrs.time]=0x0000}), Text(""), Back(), }, @@ -233,7 +240,7 @@ local time_menu = oot and Menu{ Oneshot("Time flow: Stopped", Setter{[addrs.time_speed]=-3}), Oneshot("Time flow: Backwards", Setter{[addrs.time_speed]=-5}), Oneshot("Disable time flow (Scene)", Setter{[addrs.scene_time_speed]=0}), - --Oneshot("Stop time glitch", stop_time), + Oneshot("Timestop glitch", timestop), Text(""), Back(), }, diff --git a/Lua/menus/progress.lua b/Lua/menus/progress.lua index ac00174..3829fd2 100644 --- a/Lua/menus/progress.lua +++ b/Lua/menus/progress.lua @@ -1,13 +1,3 @@ -if oot then return Menu{ - Screen{ - Text("Progress Menu #1/1"), - Text("Unimplemented for OoT."), - Text("Sorry! Try again later."), - Text(""), - Back(), - }, -} end - local a = addrs local inv = a.inventory local masks = a.masks @@ -176,7 +166,7 @@ local function max_quantity() end end -local function all_quests() +local function all_quest() a.quest_items(0x00FFFFFF) end @@ -195,7 +185,36 @@ local function all_notebook() end end -return Menu{ +return oot and Menu{ + Screen{ + -- cheaty stuff + Text("Progress Menu #1/2"), + Oneshot("All Items", all_items), + Oneshot("Max Quantities", max_quantity), + Oneshot("All Bottles", all_bottles), + Oneshot("All Equipment", all_equips), + Oneshot("Max Hearts", max_hearts), + Oneshot("Max Magic", max_magic), + Oneshot("Max Rupees", max_rupees), + Oneshot("All Upgrades", all_upgrades), + Oneshot("All Dungeon Items", all_dungeon), + Oneshot("Complete Map", all_map), + Oneshot("All Songs", all_quest), -- TODO + Oneshot("All Medallions", all_quest), -- TODO + Text(""), + Back(), + }, + Screen{ + -- not so cheaty + Text("Progress Menu #2/2"), + Oneshot("Z Targeting: Switch", Setter{[a.target_style]=0}), + Oneshot("Z Targeting: Hold", Setter{[a.target_style]=1}), + Text(""), + Oneshot("Reset Death Count", Setter{[a.death_count]=0}), + Text(""), + Back(), + }, +} or Menu{ Screen{ -- cheaty stuff Text("Progress Menu #1/2"), @@ -241,9 +260,9 @@ return Menu{ [a.spider_mask_order[6]]=0, }), Oneshot("Set Lottery Numbers to 123,456,789", Setter{ - [a.lottery_numbers[1]]=1*0x10000 + 2*0x100 + 3, - [a.lottery_numbers[2]]=4*0x10000 + 5*0x100 + 6, - [a.lottery_numbers[3]]=7*0x10000 + 8*0x100 + 9, + [a.lottery_numbers[1]]=0x010203, + [a.lottery_numbers[2]]=0x040506, + [a.lottery_numbers[3]]=0x070809, }), Text(""), Oneshot("Enable Owl Save", Setter{[a.owl_save]=1}),