Merge pull request #262 from Rangi42/master

Miscellaneous
This commit is contained in:
Rangi 2020-07-06 13:47:59 -04:00 committed by GitHub
commit c480632d54
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
25 changed files with 144 additions and 173 deletions

View file

@ -1,14 +1,14 @@
Moves:
; Characteristics of each move.
move: macro
move: MACRO
db \1 ; animation (interchangeable with move id)
db \2 ; effect
db \3 ; power
db \4 ; type
db \5 percent ; accuracy
db \6 ; pp
endm
ENDM
move POUND, NO_ADDITIONAL_EFFECT, 40, NORMAL, 100, 35
MoveEnd:

View file

@ -2,58 +2,27 @@
; define constants for the item IDs and for the corresponding move values.
TechnicalMachines:
db TM01_MOVE
db TM02_MOVE
db TM03_MOVE
db TM04_MOVE
db TM05_MOVE
db TM06_MOVE
db TM07_MOVE
db TM08_MOVE
db TM09_MOVE
db TM10_MOVE
db TM11_MOVE
db TM12_MOVE
db TM13_MOVE
db TM14_MOVE
db TM15_MOVE
db TM16_MOVE
db TM17_MOVE
db TM18_MOVE
db TM19_MOVE
db TM20_MOVE
db TM21_MOVE
db TM22_MOVE
db TM23_MOVE
db TM24_MOVE
db TM25_MOVE
db TM26_MOVE
db TM27_MOVE
db TM28_MOVE
db TM29_MOVE
db TM30_MOVE
db TM31_MOVE
db TM32_MOVE
db TM33_MOVE
db TM34_MOVE
db TM35_MOVE
db TM36_MOVE
db TM37_MOVE
db TM38_MOVE
db TM39_MOVE
db TM40_MOVE
db TM41_MOVE
db TM42_MOVE
db TM43_MOVE
db TM44_MOVE
db TM45_MOVE
db TM46_MOVE
db TM47_MOVE
db TM48_MOVE
db TM49_MOVE
db TM50_MOVE
db HM01_MOVE
db HM02_MOVE
db HM03_MOVE
db HM04_MOVE
db HM05_MOVE
n = 1
REPT NUM_TMS
IF n < 10
MOVE_FOR_TM EQUS "TM0{d:n}_MOVE"
ELSE
MOVE_FOR_TM EQUS "TM{d:n}_MOVE"
ENDC
db MOVE_FOR_TM
PURGE MOVE_FOR_TM
n = n + 1
ENDR
n = 1
REPT NUM_HMS
IF n < 10
MOVE_FOR_HM EQUS "HM0{d:n}_MOVE"
ELSE
MOVE_FOR_HM EQUS "HM{d:n}_MOVE"
ENDC
db MOVE_FOR_HM
PURGE MOVE_FOR_HM
n = n + 1
ENDR

View file

@ -7,7 +7,7 @@ PrintNotebookText:
TMNotebook::
text_far TMNotebookText
text_linkpromptbutton
text_waitbutton
text_end
ViridianSchoolNotebook::
@ -45,7 +45,7 @@ TurnPageText:
ViridianSchoolNotebookText5:
text_far _ViridianSchoolNotebookText5
text_linkpromptbutton
text_waitbutton
text_end
ViridianSchoolNotebookText1:

View file

@ -44,7 +44,7 @@ CeladonPrizeMenu::
RequireCoinCaseTextPtr:
text_far _RequireCoinCaseText
text_linkpromptbutton
text_waitbutton
text_end
ExchangeCoinsForPrizesTextPtr:
@ -264,7 +264,7 @@ UnknownPrizeData:
HereYouGoTextPtr:
text_far _HereYouGoText
text_linkpromptbutton
text_waitbutton
text_end
SoYouWantPrizeTextPtr:
@ -273,17 +273,17 @@ SoYouWantPrizeTextPtr:
SorryNeedMoreCoinsText:
text_far _SorryNeedMoreCoinsText
text_linkpromptbutton
text_waitbutton
text_end
PrizeRoomBagIsFullTextPtr:
text_far _OopsYouDontHaveEnoughRoomText
text_linkpromptbutton
text_waitbutton
text_end
OhFineThenTextPtr:
text_far _OhFineThenText
text_linkpromptbutton
text_waitbutton
text_end
GetPrizeMonLevel:

View file

@ -20,7 +20,7 @@ GetDexRatedText:
ClosedOaksPCText:
text_far _ClosedOaksPCText
text_linkpromptbutton
text_waitbutton
text_end
AccessedOaksPCText:

View file

@ -89,9 +89,9 @@ FlashSprite8Times:
CopyHealingMachineOAM:
; copy one OAM entry and advance the pointers
rept 4
REPT 4
ld a, [de]
inc de
ld [hli], a
endr
ENDR
ret

View file

@ -7,9 +7,9 @@ ReadJoypad::
ld c, 0
ld [rJOYP], a
rept 6
REPT 6
ld a, [rJOYP]
endr
ENDR
cpl
and %1111
swap a
@ -17,9 +17,9 @@ ReadJoypad::
ld a, 1 << 4 ; select button keys
ld [rJOYP], a
rept 10
REPT 10
ld a, [rJOYP]
endr
ENDR
cpl
and %1111
or b

View file

@ -59,18 +59,20 @@ PrintNumber::
cp 6
jr z, .hundred_thousands
print_digit: macro
print_digit: MACRO
if (\1) / $10000
IF (\1) / $10000
ld a, \1 / $10000 % $100
else xor a
endc
ELSE
xor a
ENDC
ld [hPowerOf10 + 0], a
if (\1) / $100
IF (\1) / $100
ld a, \1 / $100 % $100
else xor a
endc
ELSE
xor a
ENDC
ld [hPowerOf10 + 1], a
ld a, \1 / $1 % $100
@ -78,7 +80,7 @@ endc
call .PrintDigit
call .NextDigit
endm
ENDM
.millions print_digit 1000000
.hundred_thousands print_digit 100000

View file

@ -431,7 +431,7 @@ TextCommand_PROMPT_BUTTON::
; wait for button press; show arrow
ld a, [wLinkState]
cp LINK_STATE_BATTLING
jp z, TextCommand_LINK_PROMPT_BUTTON
jp z, TextCommand_WAIT_BUTTON
ld a, "▼"
Coorda 18, 16 ; place down arrow in lower right corner of dialogue text box
push bc
@ -579,8 +579,8 @@ TextCommand_DOTS::
pop hl
jp NextTextCommand
TextCommand_LINK_PROMPT_BUTTON::
; wait for button press; display arrow
TextCommand_WAIT_BUTTON::
; wait for button press; don't show arrow
push bc
call ManualTextScroll
pop bc
@ -628,5 +628,5 @@ TextCommandJumpTable::
dw TextCommand_PAUSE ; TX_PAUSE
dw TextCommand_SOUND ; TX_SOUND_GET_ITEM_1 (also handles other TX_SOUND_* commands)
dw TextCommand_DOTS ; TX_DOTS
dw TextCommand_LINK_PROMPT_BUTTON ; TX_LINK_PROMPT_BUTTON
dw TextCommand_WAIT_BUTTON ; TX_WAIT_BUTTON
; greater TX_* constants are handled directly by NextTextCommand

View file

@ -170,13 +170,13 @@ AutoBgMapTransfer::
TransferBgRows::
; unrolled loop and using pop for speed
rept 20 / 2 - 1
REPT 20 / 2 - 1
pop de
ld [hl], e
inc l
ld [hl], d
inc l
endr
ENDR
pop de
ld [hl], e
@ -261,7 +261,7 @@ VBlankCopyDouble::
ld [hVBlankCopyDoubleSize], a
.loop
rept 3
REPT 3
pop de
ld [hl], e
inc l
@ -271,7 +271,7 @@ VBlankCopyDouble::
inc l
ld [hl], d
inc l
endr
ENDR
pop de
ld [hl], e
@ -339,13 +339,13 @@ VBlankCopy::
ld [hVBlankCopySize], a
.loop
rept 7
REPT 7
pop de
ld [hl], e
inc l
ld [hl], d
inc l
endr
ENDR
pop de
ld [hl], e

View file

@ -11,10 +11,10 @@ ENDM
; Design patterns
dict: MACRO
if \1 == 0
IF \1 == 0
and a
else
ELSE
cp \1
endc
ENDC
jp z, \2
ENDM

View file

@ -13,40 +13,40 @@ bcd3: MACRO
dn ((\1) / 10) % 10, (\1) % 10
ENDM
coins equs "bcd2"
money equs "bcd3"
coins EQUS "bcd2"
money EQUS "bcd3"
tmhm: MACRO
; used in data/pokemon/base_stats/*.asm
_tms1 = 0 ; TM01-TM24 (24)
_tms2 = 0 ; TM25-TM48 (24)
_tms3 = 0 ; TM49-TM50 + HM01-HM05 (7/24)
rept _NARG
REPT _NARG
if DEF(\1_TMNUM)
if \1_TMNUM < 24 + 1
_tms1 = _tms1 | (1 << ((\1_TMNUM) - 1))
elif \1_TMNUM < 48 + 1
ELIF \1_TMNUM < 48 + 1
_tms2 = _tms2 | (1 << ((\1_TMNUM) - 1 - 24))
else
_tms3 = _tms3 | (1 << ((\1_TMNUM) - 1 - 48))
endc
ENDC
else
fail "\1 is not a TM or HM move"
endc
ENDC
shift
endr
rept 3 ; TM01-TM24 (24/24)
ENDR
REPT 3 ; TM01-TM24 (24/24)
db _tms1 & $ff
_tms1 = _tms1 >> 8
endr
rept 3 ; TM25-TM48 (24/24)
ENDR
REPT 3 ; TM25-TM48 (24/24)
db _tms2 & $ff
_tms2 = _tms2 >> 8
endr
rept 1 ; TM49-TM50 + HM01-HM05 (7/8)
ENDR
REPT 1 ; TM49-TM50 + HM01-HM05 (7/8)
db _tms3 & $ff
_tms3 = _tms3 >> 8
endr
ENDR
ENDM

View file

@ -1,16 +1,16 @@
; Enumerate variables
enum_start: MACRO
if _NARG >= 1
IF _NARG >= 1
__enum__ = \1
else
ELSE
__enum__ = 0
endc
if _NARG >= 2
ENDC
IF _NARG >= 2
__enumdir__ = \2
else
ELSE
__enumdir__ = 1
endc
ENDC
ENDM
enum: MACRO
@ -25,11 +25,11 @@ ENDM
; Enumerate constants
const_def: MACRO
if _NARG >= 1
IF _NARG >= 1
const_value = \1
else
ELSE
const_value = 0
endc
ENDC
ENDM
const: MACRO

View file

@ -1,8 +1,8 @@
RGB: MACRO
rept _NARG / 3
REPT _NARG / 3
dw palred (\1) + palgreen (\2) + palblue (\3)
shift 3
endr
ENDR
ENDM
palred EQUS "(1 << 0) *"

View file

@ -183,10 +183,10 @@ ENDM
;\3, \4, ... = additional (optional) event indices
SetEvents: MACRO
SetEvent \1
rept _NARG - 1
REPT _NARG - 1
SetEventReuseHL \2
shift
endr
ENDR
ENDM
@ -235,10 +235,10 @@ ENDM
;\3 = event index (optional)
ResetEvents: MACRO
ResetEvent \1
rept _NARG - 1
REPT _NARG - 1
ResetEventReuseHL \2
shift
endr
ENDR
ENDM

View file

@ -121,58 +121,58 @@ connection: MACRO
; Calculate tile offsets for source (current) and target maps
_src = 0
_tgt = (\4) + 3
if _tgt < 2
IF _tgt < 2
_src = -_tgt
_tgt = 0
endc
ENDC
if "\1" == "north"
IF "\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
IF _len > \3_WIDTH
_len = \3_WIDTH
endc
ENDC
elif "\1" == "south"
ELIF "\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
IF _len > \3_WIDTH
_len = \3_WIDTH
endc
ENDC
elif "\1" == "west"
ELIF "\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
IF _len > \3_HEIGHT
_len = \3_HEIGHT
endc
ENDC
elif "\1" == "east"
ELIF "\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
IF _len > \3_HEIGHT
_len = \3_HEIGHT
endc
ENDC
else
ELSE
fail "Invalid direction for 'connection'."
endc
ENDC
db \3
dw \2_Blocks + _blk

View file

@ -92,9 +92,9 @@ text_dots: MACRO
db \1 ; number of ellipses to draw
ENDM
enum TX_LINK_PROMPT_BUTTON ; $0d
text_linkpromptbutton: MACRO
db TX_LINK_PROMPT_BUTTON
enum TX_WAIT_BUTTON ; $0d
text_waitbutton: MACRO
db TX_WAIT_BUTTON
ENDM
enum TX_SOUND_POKEDEX_RATING ; $0e
@ -198,10 +198,10 @@ ENDM
script_mart: MACRO
db TX_SCRIPT_MART
db _NARG ; number of items
rept _NARG
REPT _NARG
db \1 ; item id
shift
endr
ENDR
db -1 ; end
ENDM

View file

@ -3,10 +3,10 @@ MAJOR EQU 0
MINOR EQU 4
PATCH EQU 0
if !DEF(__RGBDS_MAJOR__) || !DEF(__RGBDS_MINOR__) || !DEF(__RGBDS_PATCH__)
IF !DEF(__RGBDS_MAJOR__) || !DEF(__RGBDS_MINOR__) || !DEF(__RGBDS_PATCH__)
fail "pokered requires rgbds {MAJOR}.{MINOR}.{PATCH} or newer."
elif (__RGBDS_MAJOR__ < MAJOR) || \
ELIF (__RGBDS_MAJOR__ < MAJOR) || \
(__RGBDS_MAJOR__ == MAJOR && __RGBDS_MINOR__ < MINOR) || \
(__RGBDS_MAJOR__ == MAJOR && __RGBDS_MINOR__ == MINOR && __RGBDS_PATCH__ < PATCH)
fail "pokered requires rgbds {MAJOR}.{MINOR}.{PATCH} or newer."
endc
ENDC

View file

@ -139,48 +139,48 @@ CeladonMartRoofText_484ee:
CeladonMartRoofText_484f3:
text_far _CeladonMartRoofText_484f3
text_linkpromptbutton
text_waitbutton
text_end
CeladonMartRoofText_484f9:
text_far _CeladonMartRoofText_484f9
sound_get_item_1
text_far _CeladonMartRoofText_484fe
text_linkpromptbutton
text_waitbutton
text_end
CeladonMartRoofText_48504:
text_far _CeladonMartRoofText_48504
text_linkpromptbutton
text_waitbutton
text_end
CeladonMartRoofText_4850a:
text_far _CeladonMartRoofText_4850a
sound_get_item_1
text_far _CeladonMartRoofText_4850f
text_linkpromptbutton
text_waitbutton
text_end
CeladonMartRoofText_48515:
text_far _CeladonMartRoofText_48515
text_linkpromptbutton
text_waitbutton
text_end
ReceivedTM49Text:
text_far _ReceivedTM49Text
sound_get_item_1
text_far _CeladonMartRoofText_48520
text_linkpromptbutton
text_waitbutton
text_end
CeladonMartRoofText_48526:
text_far _CeladonMartRoofText_48526
text_linkpromptbutton
text_waitbutton
text_end
CeladonMartRoofText_4852c:
text_far _CeladonMartRoofText_4852c
text_linkpromptbutton
text_waitbutton
text_end
CeladonMartRoofScript_PrintDrinksInBag:

View file

@ -322,7 +322,7 @@ ReceivedTM28Text:
text_far _ReceivedTM28Text
sound_get_item_1
text_far _ReceivedTM28Text2
text_linkpromptbutton
text_waitbutton
text_end
TM28NoRoomText:

View file

@ -234,7 +234,7 @@ BlaineBattleText:
BlaineEndBattleText:
text_far _BlaineEndBattleText
sound_get_key_item ; actually plays the second channel of SFX_BALL_POOF due to the wrong music bank being loaded
text_linkpromptbutton
text_waitbutton
text_end
BlaineFireBlastText:

View file

@ -56,7 +56,7 @@ ReceivedTM31Text:
sound_get_item_1
TM31ExplanationText1:
text_far _TM31ExplanationText1
text_linkpromptbutton
text_waitbutton
text_end
TM31ExplanationText2:
@ -65,7 +65,7 @@ TM31ExplanationText2:
TM31NoRoomText:
text_far _TM31NoRoomText
text_linkpromptbutton
text_waitbutton
text_end
CopycatsHouse2FText2:

View file

@ -323,7 +323,7 @@ MtMoon3Script_49f69:
MtMoon3Text_49f6f:
text_far _MtMoon3Text_49f6f
sound_get_key_item
text_linkpromptbutton
text_waitbutton
text_end
MtMoon3Script_49f76:
@ -333,7 +333,7 @@ MtMoon3Script_49f76:
MtMoon3Text_49f7f:
text_far _MtMoon3Text_49f7f
text_linkpromptbutton
text_waitbutton
text_end
MtMoon3Text_49f85:

View file

@ -81,5 +81,5 @@ RocketHideoutElevatorText1:
RocketHideoutElevatorText_4578b:
text_far _RocketElevatorText_4578b
text_linkpromptbutton
text_waitbutton
text_end

View file

@ -311,7 +311,7 @@ ViridianGymText_74ad3:
ViridianGymText_74ad9:
text_far _ViridianGymText_74ad9
text_linkpromptbutton
text_waitbutton
text_end
ViridianGymText12: