You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-04-09 05:44:44 -07:00
@@ -1,4 +1,4 @@
|
||||
battleanimoam: MACRO
|
||||
MACRO battleanimoam
|
||||
; vtile offset, data length, data pointer
|
||||
db \1, \2
|
||||
dw \3
|
||||
|
@@ -1,4 +1,4 @@
|
||||
anim_obj_gfx: MACRO
|
||||
MACRO anim_obj_gfx
|
||||
; # tiles, gfx pointer
|
||||
db \1
|
||||
dba \2
|
||||
|
@@ -1,7 +1,7 @@
|
||||
ABSOLUTE_X EQU $00
|
||||
RELATIVE_X EQU $01
|
||||
DEF ABSOLUTE_X EQU $00
|
||||
DEF RELATIVE_X EQU $01
|
||||
|
||||
battleanimobj: MACRO
|
||||
MACRO battleanimobj
|
||||
db \1 ; flags
|
||||
; bit 7: priority
|
||||
; bit 6: y flip (for enemy)
|
||||
|
@@ -1,6 +1,6 @@
|
||||
; std scripts associated with tile collisions
|
||||
|
||||
stdcoll: MACRO
|
||||
MACRO stdcoll
|
||||
db \1
|
||||
dw (\2StdScript - StdScripts) / 3
|
||||
ENDM
|
||||
|
@@ -1,4 +1,4 @@
|
||||
decoration: MACRO
|
||||
MACRO decoration
|
||||
; type, name, action, event flag, tile/sprite
|
||||
db \1, \2, \3
|
||||
dw \4
|
||||
|
@@ -1,4 +1,4 @@
|
||||
engine_flag: MACRO
|
||||
MACRO engine_flag
|
||||
; location, bit
|
||||
; (all locations are in WRAM bank 1)
|
||||
dwb \1 + (\2 / 8), 1 << (\2 % 8)
|
||||
|
@@ -1,4 +1,4 @@
|
||||
npctrade: MACRO
|
||||
MACRO npctrade
|
||||
; dialog set, requested mon, offered mon, nickname, dvs, item, OT ID, OT name, gender requested
|
||||
db \1, \2, \3, \4, \5, \6, \7
|
||||
dw \8
|
||||
|
@@ -1,14 +1,14 @@
|
||||
NUM_ODD_EGGS EQU 14
|
||||
DEF NUM_ODD_EGGS EQU 14
|
||||
|
||||
prob: MACRO
|
||||
prob_total += \1
|
||||
MACRO prob
|
||||
DEF prob_total += \1
|
||||
dw prob_total * $ffff / 100
|
||||
ENDM
|
||||
|
||||
OddEggProbabilities:
|
||||
; entries correspond to OddEggs (below)
|
||||
table_width 2, OddEggProbabilities
|
||||
prob_total = 0
|
||||
DEF prob_total = 0
|
||||
; Pichu
|
||||
prob 8
|
||||
prob 1
|
||||
|
@@ -1,4 +1,4 @@
|
||||
rating: MACRO
|
||||
MACRO rating
|
||||
; count, sfx, text
|
||||
db \1
|
||||
dw \2, \3
|
||||
|
@@ -1,7 +1,7 @@
|
||||
; Special routines can be used with the "special" map script command.
|
||||
; They often use wScriptVar for arguments and return values.
|
||||
|
||||
add_special: MACRO
|
||||
MACRO add_special
|
||||
\1Special::
|
||||
dba \1
|
||||
ENDM
|
||||
|
@@ -1,18 +1,18 @@
|
||||
unownwall: MACRO
|
||||
for n, CHARLEN(\1)
|
||||
x = CHARSUB(\1, n + 1)
|
||||
if x == "-"
|
||||
db $64
|
||||
elif x >= "Y"
|
||||
db 2 * (x - "Y") + $60
|
||||
elif x >= "Q"
|
||||
db 2 * (x - "Q") + $40
|
||||
elif x >= "I"
|
||||
db 2 * (x - "I") + $20
|
||||
else
|
||||
db 2 * (x - "A")
|
||||
endc
|
||||
endr
|
||||
MACRO unownwall
|
||||
for n, CHARLEN(\1)
|
||||
DEF x = CHARSUB(\1, n + 1)
|
||||
if x == "-"
|
||||
db $64
|
||||
elif x >= "Y"
|
||||
db 2 * (x - "Y") + $60
|
||||
elif x >= "Q"
|
||||
db 2 * (x - "Q") + $40
|
||||
elif x >= "I"
|
||||
db 2 * (x - "I") + $20
|
||||
else
|
||||
db 2 * (x - "A")
|
||||
endc
|
||||
endr
|
||||
db -1 ; end
|
||||
ENDM
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
growth_rate: MACRO
|
||||
MACRO growth_rate
|
||||
; [1]/[2]*n**3 + [3]*n**2 + [4]*n - [5]
|
||||
dn \1, \2
|
||||
if \3 < 0
|
||||
|
@@ -1,4 +1,4 @@
|
||||
item_attribute: MACRO
|
||||
MACRO item_attribute
|
||||
; price, held effect, parameter, property, pocket, field menu, battle menu
|
||||
dw \1
|
||||
db \2, \3, \4, \5
|
||||
|
@@ -1,4 +1,4 @@
|
||||
momitem: MACRO
|
||||
MACRO momitem
|
||||
; money to trigger, cost, kind, item
|
||||
dt \1
|
||||
dt \2
|
||||
|
@@ -1,10 +1,10 @@
|
||||
map_attributes: MACRO
|
||||
MACRO map_attributes
|
||||
;\1: map name
|
||||
;\2: map id
|
||||
;\3: border block
|
||||
;\4: connections: combo of NORTH, SOUTH, WEST, and/or EAST, or 0 for none
|
||||
CURRENT_MAP_WIDTH = \2_WIDTH
|
||||
CURRENT_MAP_HEIGHT = \2_HEIGHT
|
||||
DEF CURRENT_MAP_WIDTH = \2_WIDTH
|
||||
DEF CURRENT_MAP_HEIGHT = \2_HEIGHT
|
||||
\1_MapAttributes::
|
||||
db \3
|
||||
db CURRENT_MAP_HEIGHT, CURRENT_MAP_WIDTH
|
||||
@@ -17,73 +17,73 @@ CURRENT_MAP_HEIGHT = \2_HEIGHT
|
||||
ENDM
|
||||
|
||||
; Connections go in order: north, south, west, east
|
||||
connection: MACRO
|
||||
MACRO connection
|
||||
;\1: direction
|
||||
;\2: map name
|
||||
;\3: map id
|
||||
;\4: offset of the target map relative to the current map
|
||||
; (x offset for east/west, y offset for north/south)
|
||||
|
||||
; LEGACY: Support for old connection macro
|
||||
if _NARG == 6
|
||||
connection \1, \2, \3, (\4) - (\5)
|
||||
else
|
||||
; LEGACY: Support for old connection macro
|
||||
if _NARG == 6
|
||||
connection \1, \2, \3, (\4) - (\5)
|
||||
else
|
||||
|
||||
; Calculate tile offsets for source (current) and target maps
|
||||
_src = 0
|
||||
_tgt = (\4) + 3
|
||||
if _tgt < 0
|
||||
_src = -_tgt
|
||||
_tgt = 0
|
||||
endc
|
||||
; Calculate tile offsets for source (current) and target maps
|
||||
DEF _src = 0
|
||||
DEF _tgt = (\4) + 3
|
||||
if _tgt < 0
|
||||
DEF _src = -_tgt
|
||||
DEF _tgt = 0
|
||||
endc
|
||||
|
||||
if !STRCMP("\1", "north")
|
||||
_blk = \3_WIDTH * (\3_HEIGHT - 3) + _src
|
||||
_map = _tgt
|
||||
_win = (\3_WIDTH + 6) * \3_HEIGHT + 1
|
||||
_y = \3_HEIGHT * 2 - 1
|
||||
_x = (\4) * -2
|
||||
_len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
if _len > \3_WIDTH
|
||||
_len = \3_WIDTH
|
||||
endc
|
||||
if !STRCMP("\1", "north")
|
||||
DEF _blk = \3_WIDTH * (\3_HEIGHT - 3) + _src
|
||||
DEF _map = _tgt
|
||||
DEF _win = (\3_WIDTH + 6) * \3_HEIGHT + 1
|
||||
DEF _y = \3_HEIGHT * 2 - 1
|
||||
DEF _x = (\4) * -2
|
||||
DEF _len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
if _len > \3_WIDTH
|
||||
DEF _len = \3_WIDTH
|
||||
endc
|
||||
|
||||
elif !STRCMP("\1", "south")
|
||||
_blk = _src
|
||||
_map = (CURRENT_MAP_WIDTH + 6) * (CURRENT_MAP_HEIGHT + 3) + _tgt
|
||||
_win = \3_WIDTH + 7
|
||||
_y = 0
|
||||
_x = (\4) * -2
|
||||
_len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
if _len > \3_WIDTH
|
||||
_len = \3_WIDTH
|
||||
endc
|
||||
elif !STRCMP("\1", "south")
|
||||
DEF _blk = _src
|
||||
DEF _map = (CURRENT_MAP_WIDTH + 6) * (CURRENT_MAP_HEIGHT + 3) + _tgt
|
||||
DEF _win = \3_WIDTH + 7
|
||||
DEF _y = 0
|
||||
DEF _x = (\4) * -2
|
||||
DEF _len = CURRENT_MAP_WIDTH + 3 - (\4)
|
||||
if _len > \3_WIDTH
|
||||
DEF _len = \3_WIDTH
|
||||
endc
|
||||
|
||||
elif !STRCMP("\1", "west")
|
||||
_blk = (\3_WIDTH * _src) + \3_WIDTH - 3
|
||||
_map = (CURRENT_MAP_WIDTH + 6) * _tgt
|
||||
_win = (\3_WIDTH + 6) * 2 - 6
|
||||
_y = (\4) * -2
|
||||
_x = \3_WIDTH * 2 - 1
|
||||
_len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
if _len > \3_HEIGHT
|
||||
_len = \3_HEIGHT
|
||||
endc
|
||||
elif !STRCMP("\1", "west")
|
||||
DEF _blk = (\3_WIDTH * _src) + \3_WIDTH - 3
|
||||
DEF _map = (CURRENT_MAP_WIDTH + 6) * _tgt
|
||||
DEF _win = (\3_WIDTH + 6) * 2 - 6
|
||||
DEF _y = (\4) * -2
|
||||
DEF _x = \3_WIDTH * 2 - 1
|
||||
DEF _len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
if _len > \3_HEIGHT
|
||||
DEF _len = \3_HEIGHT
|
||||
endc
|
||||
|
||||
elif !STRCMP("\1", "east")
|
||||
_blk = (\3_WIDTH * _src)
|
||||
_map = (CURRENT_MAP_WIDTH + 6) * _tgt + CURRENT_MAP_WIDTH + 3
|
||||
_win = \3_WIDTH + 7
|
||||
_y = (\4) * -2
|
||||
_x = 0
|
||||
_len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
if _len > \3_HEIGHT
|
||||
_len = \3_HEIGHT
|
||||
endc
|
||||
elif !STRCMP("\1", "east")
|
||||
DEF _blk = (\3_WIDTH * _src)
|
||||
DEF _map = (CURRENT_MAP_WIDTH + 6) * _tgt + CURRENT_MAP_WIDTH + 3
|
||||
DEF _win = \3_WIDTH + 7
|
||||
DEF _y = (\4) * -2
|
||||
DEF _x = 0
|
||||
DEF _len = CURRENT_MAP_HEIGHT + 3 - (\4)
|
||||
if _len > \3_HEIGHT
|
||||
DEF _len = \3_HEIGHT
|
||||
endc
|
||||
|
||||
else
|
||||
fail "Invalid direction for 'connection'."
|
||||
endc
|
||||
else
|
||||
fail "Invalid direction for 'connection'."
|
||||
endc
|
||||
|
||||
map_id \3
|
||||
dw \2_Blocks + _blk
|
||||
@@ -92,7 +92,8 @@ endc
|
||||
db \3_WIDTH
|
||||
db _y, _x
|
||||
dw wOverworldMapBlocks + _win
|
||||
endc
|
||||
|
||||
endc
|
||||
ENDM
|
||||
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
landmark: MACRO
|
||||
MACRO landmark
|
||||
; x, y, name
|
||||
db \1 + 8, \2 + 16
|
||||
dw \3
|
||||
|
@@ -1,4 +1,4 @@
|
||||
map: MACRO
|
||||
MACRO map
|
||||
;\1: map name: for the MapAttributes pointer (see data/maps/attributes.asm)
|
||||
;\2: tileset: a TILESET_* constant
|
||||
;\3: environment: TOWN, ROUTE, INDOOR, CAVE, ENVIRONMENT_5, GATE, or DUNGEON
|
||||
|
@@ -5,7 +5,7 @@
|
||||
const ROOF_AZALEA ; 2
|
||||
const ROOF_OLIVINE ; 3
|
||||
const ROOF_GOLDENROD ; 4
|
||||
NUM_ROOFS EQU const_value
|
||||
DEF NUM_ROOFS EQU const_value
|
||||
|
||||
MapGroupRoofs:
|
||||
; entries correspond to MAPGROUP_* constants
|
||||
|
@@ -1,4 +1,4 @@
|
||||
scene_var: MACRO
|
||||
MACRO scene_var
|
||||
; map, variable
|
||||
map_id \1
|
||||
dw \2
|
||||
|
@@ -1,4 +1,4 @@
|
||||
add_mapsetup: MACRO
|
||||
MACRO add_mapsetup
|
||||
\1_MapSetupCmd:
|
||||
dba \1
|
||||
ENDM
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user