ref: a98dcc1745dac35420d8d37d7578123919038485
parent: eacf9b85f50b2344910dcf84fa50de102ba5222e
author: Bryan Bishop <[email protected]>
date: Wed Feb 27 23:31:45 EST 2013
vba warp function
--- a/extras/vba.py
+++ b/extras/vba.py
@@ -463,6 +463,16 @@
step()
@staticmethod
+ def disable_triggers():
+ set_memory_at(0x23c4, 0xAF)
+ set_memory_at(0x23d0, 0xAF);
+
+ @staticmethod
+ def disable_callbacks():
+ set_memory_at(0x23f2, 0xAF)
+ set_memory_at(0x23fe, 0xAF)
+
+ @staticmethod
def get_map_group_id():
"""
Returns the current map group.
@@ -496,6 +506,24 @@
return (x, y)
@staticmethod
+ def menu_select(id=1):
+ """
+ Sets the cursor to the given pokemon in the player's party. This is
+ under Start -> PKMN. This is useful for selecting a certain pokemon
+ with fly or another skill.
+
+ This probably works on other menus.
+ """
+ set_memory_at(0xcfa9, id)
+
+ @staticmethod
+ def warp_to(map_group_id, map_id):
+ """
+ Warp to a different map. Because I said so.
+ """
+ raise NotImplementedError
+
+ @staticmethod
def is_in_battle():
"""
Checks whether or not we're in a battle.
@@ -540,6 +568,17 @@
bytez = get_memory_range(0xD47D, 7)
name = translate_chars(bytez)
return name
+
+ @staticmethod
+ def warp(map_group_id, map_id, x, y):
+ set_memory_at(0xdcb5, map_group_id)
+ set_memory_at(0xdcb6, map_id)
+ set_memory_at(0xdcb7, y)
+ set_memory_at(0xdcb8, x)
+ set_memory_at(0xd001, 0xFF)
+ set_memory_at(0xff9f, 0xF1)
+ set_memory_at(0xd432, 1)
+ set_memory_at(0xd434, 0 & 251)
@staticmethod
def set_partymon2():