internally kind of sloppy, filenames refer to Pink as a few different things and none of them are by their final name lol

Haven't managed to get this to build the debug rom? Probably not a big deal, though you have to specifically run "make kep" instead of just "make"
This commit is contained in:
Zeta_Null 2025-01-07 02:17:30 -05:00
parent 9707c2d7cb
commit 6726f5fec1
31 changed files with 256 additions and 63 deletions

View file

@ -20,7 +20,7 @@ DEF PC_ITEM_CAPACITY EQU 50
const MONEY_BOX_TEMPLATE ; $0f const MONEY_BOX_TEMPLATE ; $0f
const MENU_TEMPLATE_10 ; $10 unused const MENU_TEMPLATE_10 ; $10 unused
const MON_SPRITE_POPUP ; $11 const MON_SPRITE_POPUP ; $11
const JP_AH_MENU_TEMPLATE ; $12 const BOY_GIRL_NO ; $12 new for gender non-binary selection
const MONEY_BOX ; $13 const MONEY_BOX ; $13
const TWO_OPTION_MENU ; $14 const TWO_OPTION_MENU ; $14
const BUY_SELL_QUIT_MENU ; $15 const BUY_SELL_QUIT_MENU ; $15

View file

@ -12,6 +12,13 @@ DefaultNamesGirl:
next "ELAINE" next "ELAINE"
db "@" db "@"
DefaultNamesEnby:
db "NEW NAME"
next "PINK"
next "QUARTZ"
next "JAY"
db "@"
DefaultNamesRival: DefaultNamesRival:
db "NEW NAME" db "NEW NAME"
next "BLUE" next "BLUE"

View file

@ -10,6 +10,12 @@ DefaultNamesGirlList:
db "LEAF@" db "LEAF@"
db "ELAINE@" db "ELAINE@"
DefaultNamesEnbyList:
db "NEW NAME@"
db "PINK@"
db "QUARTZ@"
db "JAY@"
DefaultNamesRivalList: DefaultNamesRivalList:
db "NEW NAME@" db "NEW NAME@"
db "BLUE@" db "BLUE@"

View file

@ -1,22 +1,22 @@
UnusedBadgeNames:: UnusedBadgeNames::
db "かみなりバッヂ@" ; THUNDER BADGE ; db "かみなりバッヂ@" ; THUNDER BADGE
db "かいがらバッヂ@" ; SHELL BADGE ; db "かいがらバッヂ@" ; SHELL BADGE
db "おじぞうバッヂ@" ; JIZOU BADGE ; db "おじぞうバッヂ@" ; JIZOU BADGE
db "はやぶさバッヂ@" ; FALCON BADGE ; db "はやぶさバッヂ@" ; FALCON BADGE
db "ひんやりバッヂ@" ; CHILL BADGE ; db "ひんやりバッヂ@" ; CHILL BADGE
db "なかよしバッヂ@" ; FRIENDSHIP BADGE ; db "なかよしバッヂ@" ; FRIENDSHIP BADGE
db "バラバッヂ@" ; ROSE BADGE ; db "バラバッヂ@" ; ROSE BADGE
db "ひのたまバッヂ@" ; FIREBALL BADGE ; db "ひのたまバッヂ@" ; FIREBALL BADGE
db "ゴールドバッヂ@" ; GOLD BADGE ; db "ゴールドバッヂ@" ; GOLD BADGE
UnusedRankingNames: UnusedRankingNames:
db "たまご@" ; EGG ; db "たまご@" ; EGG
db "ひよこ@" ; CHICK ; db "ひよこ@" ; CHICK
db "ブロンズ@" ; BRONZE ; db "ブロンズ@" ; BRONZE
db "シルバー@" ; SILVER ; db "シルバー@" ; SILVER
db "ゴールド@" ; GOLD ; db "ゴールド@" ; GOLD
db "プチキャプテン@" ; PETIT CAPTAIN ; db "プチキャプテン@" ; PETIT CAPTAIN
db "キャプテン@" ; CAPTAIN ; db "キャプテン@" ; CAPTAIN
db "プチマスター@" ; PETIT MASTER ; db "プチマスター@" ; PETIT MASTER
db "マスター@" ; MASTER ; db "マスター@" ; MASTER
db "エクセレント" ; EXCELLENT ; db "エクセレント" ; EXCELLENT

View file

@ -33,7 +33,7 @@ TextBoxTextAndCoordTable:
text_box_text SWITCH_STATS_CANCEL_MENU_TEMPLATE, 11, 11, 19, 17, SwitchStatsCancelText, 13, 12 text_box_text SWITCH_STATS_CANCEL_MENU_TEMPLATE, 11, 11, 19, 17, SwitchStatsCancelText, 13, 12
text_box_text BUY_SELL_QUIT_MENU_TEMPLATE, 0, 0, 10, 6, BuySellQuitText, 2, 1 text_box_text BUY_SELL_QUIT_MENU_TEMPLATE, 0, 0, 10, 6, BuySellQuitText, 2, 1
text_box_text MONEY_BOX_TEMPLATE, 11, 0, 19, 2, MoneyText, 13, 0 text_box_text MONEY_BOX_TEMPLATE, 11, 0, 19, 2, MoneyText, 13, 0
text_box_text JP_AH_MENU_TEMPLATE, 7, 6, 11, 10, JapaneseAhText, 8, 8 text_box_text BOY_GIRL_NO, 12, 6, 19, 12, BoyGirlNoText, 14, 7
text_box_text JP_POKEDEX_MENU_TEMPLATE, 11, 8, 19, 17, JapanesePokedexMenu, 12, 10 text_box_text JP_POKEDEX_MENU_TEMPLATE, 11, 8, 19, 17, JapanesePokedexMenu, 12, 10
BuySellQuitText: BuySellQuitText:
@ -80,8 +80,10 @@ SwitchStatsCancelText:
next "STATS" next "STATS"
next "CANCEL@" next "CANCEL@"
JapaneseAhText: BoyGirlNoText:
db "アッ!@" db "RED"
next "GREEN"
next "PINK@"
JapanesePokedexMenu: JapanesePokedexMenu:
db "データをみる" db "データをみる"

View file

@ -6543,12 +6543,18 @@ LoadPlayerBackPic:
ld a, [wPlayerSex] ; do you think a republican will get off to this commit ld a, [wPlayerSex] ; do you think a republican will get off to this commit
and a and a
jr z, .RedBack jr z, .RedBack
cp a, 2
jr z, .EnbyBack
ld de, GreenPicBack ld de, GreenPicBack
ld a, BANK(GreenPicBack) ; Load female back sprite ld a, BANK(GreenPicBack) ; Load female back sprite
jr .next jr .next
.RedBack .RedBack
ld de, RedPicBack ; Load default Red back sprite ld de, RedPicBack ; Load default Red back sprite
ld a, BANK(RedPicBack) ld a, BANK(RedPicBack)
jr .next
.EnbyBack
ld de, TealPicBack ; Load teal back sprite
ld a, BANK(TealPicBack)
.next .next
ASSERT BANK(GreenPicBack) == BANK(OldManPicBack) ; These two ASSERTs make sure to cover ASSERT BANK(GreenPicBack) == BANK(OldManPicBack) ; These two ASSERTs make sure to cover
ASSERT BANK(RedPicBack) == BANK(OldManPicBack) ; both sprite cases ASSERT BANK(RedPicBack) == BANK(OldManPicBack) ; both sprite cases

View file

@ -519,6 +519,10 @@ DrawTrainerInfo:
ld a, [wPlayerSex] ; guess what it's genital inspection time ld a, [wPlayerSex] ; guess what it's genital inspection time
and a and a
jr z, .AreBoy jr z, .AreBoy
ld de, EnbyPicFront
lb bc, BANK(EnbyPicFront), $01
cp a, 2
jr z, .AreBoy ; I'm not updating these names. I'm lazy. Also did you know this was changed to wPlayerGender in one of the other tutorials?
ld de, GreenPicFront ld de, GreenPicFront
lb bc, BANK(GreenPicFront), $01 lb bc, BANK(GreenPicFront), $01
.AreBoy .AreBoy

View file

@ -190,8 +190,14 @@ HoFLoadPlayerPics:
ld a, BANK(RedPicFront) ld a, BANK(RedPicFront)
jr .Routine ; skip the girl stuff and go to main routine jr .Routine ; skip the girl stuff and go to main routine
.GirlStuff1 .GirlStuff1
cp a, 2
jr z, .TealStuff1
ld de, GreenPicFront ld de, GreenPicFront
ld a, BANK(GreenPicFront) ld a, BANK(GreenPicFront)
jr .Routine ; skip the girl stuff and go to main routine
.TealStuff1
ld de, EnbyPicFront
ld a, BANK(EnbyPicFront)
.Routine ; resume original routine .Routine ; resume original routine
call UncompressSpriteFromDE call UncompressSpriteFromDE
ld hl, sSpriteBuffer1 ld hl, sSpriteBuffer1
@ -207,8 +213,14 @@ HoFLoadPlayerPics:
ld a, BANK(RedPicBack) ld a, BANK(RedPicBack)
jr .routine2 ; skip the girl stuff and continue original routine if guy jr .routine2 ; skip the girl stuff and continue original routine if guy
.GirlStuff2 .GirlStuff2
cp a, 2
jr z, .TealStuff2
ld de, GreenPicBack ld de, GreenPicBack
ld a, BANK(GreenPicBack) ld a, BANK(GreenPicBack)
jr .routine2
.TealStuff2
ld de, TealPicBack
ld a, BANK(TealPicBack)
.routine2 ; original routine .routine2 ; original routine
call UncompressSpriteFromDE call UncompressSpriteFromDE
predef ScaleSpriteByTwo predef ScaleSpriteByTwo

View file

@ -277,9 +277,9 @@ CopyTileIDsFromList_ZeroBaseTileID:
PlayMoveSoundB: PlayMoveSoundB:
; unused ; unused
predef GetMoveSoundB ; predef GetMoveSoundB
ld a, b ; ld a, b
jp PlaySound ; jp PlaySound
LoadIntroGraphics: LoadIntroGraphics:
ld hl, FightIntroBackMon ld hl, FightIntroBackMon

View file

@ -71,7 +71,7 @@ OakSpeech:
call PrintText ; show this text call PrintText ; show this text
call BoyGirlChoice ; added routine at the end of this file call BoyGirlChoice ; added routine at the end of this file
ld a, [wCurrentMenuItem] ld a, [wCurrentMenuItem]
ld [wPlayerSex], a ; store player's gender. 00 for boy, 01 for girl ld [wPlayerSex], a ; store player's gender. 00 for boy, 01 for girl, 02 for enby
call GBFadeOutToWhite call GBFadeOutToWhite
call ClearScreen call ClearScreen
@ -80,6 +80,10 @@ OakSpeech:
ld a, [wPlayerSex] ; check sex ld a, [wPlayerSex] ; check sex
and a ; check sex and a ; check sex
jr z, .NotGreen0 jr z, .NotGreen0
ld de, EnbyPicFront
lb bc, BANK(EnbyPicFront), $00
cp a, 2
jr z, .NotGreen0
ld de, GreenPicFront ld de, GreenPicFront
lb bc, BANK(GreenPicFront), $00 lb bc, BANK(GreenPicFront), $00
.NotGreen0 .NotGreen0
@ -97,7 +101,9 @@ OakSpeech:
ld a, [wPlayerSex] ; Let's change the Nidorins based on the choice. It's really cute and makes use of an unused command sound. ld a, [wPlayerSex] ; Let's change the Nidorins based on the choice. It's really cute and makes use of an unused command sound.
and a and a
jr z, .Nidorino jr z, .Nidorino
jr nz, .Nidorina cp a, 2
jr z, .Nidoreign
; jr nz, .Nidorina
.Nidorina .Nidorina
ld a, NIDORINA ld a, NIDORINA
ld [wd0b5], a ld [wd0b5], a
@ -117,6 +123,16 @@ OakSpeech:
call LoadFlippedFrontSpriteByMonIndex call LoadFlippedFrontSpriteByMonIndex
call MovePicLeft call MovePicLeft
ld hl, OakSpeechText2Red ld hl, OakSpeechText2Red
jr .cont
.Nidoreign
ld a, NIDOREIGN
ld [wd0b5], a
ld [wcf91], a
call GetMonHeader
hlcoord 6, 4
call LoadFlippedFrontSpriteByMonIndex
call MovePicLeft
ld hl, OakSpeechText2Enby
.cont .cont
call PrintText call PrintText
@ -124,12 +140,19 @@ OakSpeech:
call ClearScreen call ClearScreen
ld de, RedPicFront ld de, RedPicFront
lb bc, BANK(RedPicFront), $00 lb bc, BANK(RedPicFront), $00
ld a, [wPlayerSex] ; check sex ld a, [wPlayerSex] ; load gender
and a ; check sex and a ; check gender - and a is equivalent to `cp a, 0` (but faster)
jr z, .NotGreen1 ; if a=0->gender=male, ergo jump to the vanilla part of the code
jr z, .ContinueWithOakIntro1
cp a, 2 ; check gender: if a=2->gender=enby, jump to the yellow subroutine, otherwise continue below
jp z, .LoadEnbyPicFront1
ld de, GreenPicFront ld de, GreenPicFront
lb bc, BANK(GreenPicFront), $00 lb bc, BANK(GreenPicFront), $00
.NotGreen1: jr .ContinueWithOakIntro1
.LoadEnbyPicFront1
ld de, EnbyPicFront
lb bc, BANK(EnbyPicFront), $00
.ContinueWithOakIntro1:
call IntroDisplayPicCenteredOrUpperRight call IntroDisplayPicCenteredOrUpperRight
call MovePicLeft call MovePicLeft
ld hl, IntroducePlayerText ld hl, IntroducePlayerText
@ -152,6 +175,10 @@ OakSpeech:
ld a, [wPlayerSex] ; check sex ld a, [wPlayerSex] ; check sex
and a ; check sex and a ; check sex
jr z, .NotGreen2 jr z, .NotGreen2
ld de, EnbyPicFront
lb bc, BANK(EnbyPicFront), $00
cp a, 2
jr z, .NotGreen2
ld de, GreenPicFront ld de, GreenPicFront
lb bc, Bank(GreenPicFront), $00 lb bc, Bank(GreenPicFront), $00
.NotGreen2: .NotGreen2:
@ -177,6 +204,10 @@ OakSpeech:
lb bc, BANK(RedSprite), $0C lb bc, BANK(RedSprite), $0C
ld a, [wPlayerSex] ; check sex ld a, [wPlayerSex] ; check sex
and a ; check sex and a ; check sex
jr z, .NotGreen3
ld de, TealSprite
lb bc, BANK(TealSprite), $0C
cp a, 2
jr z, .NotGreen3 jr z, .NotGreen3
ld de,GreenSprite ld de,GreenSprite
lb bc, BANK(GreenSprite), $0C lb bc, BANK(GreenSprite), $0C
@ -232,6 +263,11 @@ OakSpeechText2Green:
sound_cry_nidorina sound_cry_nidorina
text_far _OakSpeechText2B text_far _OakSpeechText2B
text_end text_end
OakSpeechText2Enby:
text_far _OakSpeechText2A
sound_cry_nidoreign
text_far _OakSpeechText2B
text_end
IntroducePlayerText: IntroducePlayerText:
text_far _IntroducePlayerText text_far _IntroducePlayerText
text_end text_end
@ -307,21 +343,38 @@ IntroDisplayPicCenteredOrUpperRight:
; displays boy/girl choice ; displays boy/girl choice
BoyGirlChoice:: BoyGirlChoice::
call SaveScreenTilesToBuffer1 call SaveScreenTilesToBuffer1
call InitBoyGirlTextBoxParameters jr DisplayBoyGirlNoChoice
jr DisplayBoyGirlChoice
InitBoyGirlTextBoxParameters:: DisplayBoyGirlNoChoice::
ld a, $1 ; loads the value for the unused North/West choice, that was changed to say Boy/Girl ld a, BOY_GIRL_NO
ld [wTwoOptionMenuID], a
coord hl, 12, 7
ld bc, $80d
ret
DisplayBoyGirlChoice::
ld a, $14
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
ld hl, wTopMenuItemY
ld a, 7
ld [hli], a ; top menu item Y
ld a, 13
ld [hli], a ; top menu item X
xor a
ld [hli], a ; current menu item ID
inc hl
ld a, $2
ld [hli], a ; wMaxMenuItem
; ld a, B_BUTTON | A_BUTTON
ld a, A_BUTTON
ld [hli], a ; wMenuWatchedKeys
xor a
ld [hl], a ; wLastMenuItem
call HandleMenuInput
; bit BIT_B_BUTTON, a
; jr nz, .defaultOption ; if B was pressed, assign enby
; A was pressed
call PlaceUnfilledArrowMenuCursor
ld a, [wCurrentMenuItem]
jp LoadScreenTilesFromBuffer1 jp LoadScreenTilesFromBuffer1
;.defaultOption
; ld a, $02
; ld [wCurrentMenuItem], a
; jp LoadScreenTilesFromBuffer1
BoyGirlText: ; This is new so we had to add a reference to get it to compile BoyGirlText: ; This is new so we had to add a reference to get it to compile
text_far _BoyGirlText text_far _BoyGirlText

View file

@ -1,6 +1,8 @@
ChoosePlayerName: ChoosePlayerName:
call OakSpeechSlidePicRight call OakSpeechSlidePicRight
ld a, [wPlayerSex] ; load sex ld a, [wPlayerSex] ; load sex
cp a, 2
jr z, .AreEnby ; Skip to enby names if you are enby instead
and a and a
jr nz, .AreGirl ; Skip to girl names if you are a girl instead jr nz, .AreGirl ; Skip to girl names if you are a girl instead
ld de, DefaultNamesPlayer ld de, DefaultNamesPlayer
@ -24,6 +26,17 @@ ChoosePlayerName:
ld de, wPlayerName ld de, wPlayerName
call OakSpeechSlidePicLeft call OakSpeechSlidePicLeft
jr .done ; End of new Girl Names routine jr .done ; End of new Girl Names routine
.AreEnby ; Copy of the boy naming routine, just with enby's names
ld de, DefaultNamesEnby
call DisplayIntroNameTextBox
ld a, [wCurrentMenuItem]
and a
jr z, .customName
ld hl, DefaultNamesEnbyList
call GetDefaultName
ld de, wPlayerName
call OakSpeechSlidePicLeft
jr .done ; End of new Enby Names routine
.customName .customName
ld hl, wPlayerName ld hl, wPlayerName
xor a ; NAME_PLAYER_SCREEN xor a ; NAME_PLAYER_SCREEN
@ -39,6 +52,10 @@ ChoosePlayerName:
ld a, [wPlayerSex] ; sex check ld a, [wPlayerSex] ; sex check
and a ; yknow it feels like republicans wanting to do penis checking and a ; yknow it feels like republicans wanting to do penis checking
jr z, .AreBoy3 jr z, .AreBoy3
ld de, EnbyPicFront
ld b, BANK(EnbyPicFront)
cp a, 2
jr z, .AreBoy3
ld de, GreenPicFront ld de, GreenPicFront
ld b, BANK(GreenPicFront) ld b, BANK(GreenPicFront)
.AreBoy3 .AreBoy3

View file

@ -93,10 +93,17 @@ DisplayTitleScreen:
jr nz, .pokemonLogoLastTileRowLoop jr nz, .pokemonLogoLastTileRowLoop
call Random call Random
ldh a, [hRandomAdd] ldh a, [hRandomAdd]
cp 129 cp 86
jr c, .male jr c, .male
call Random
ldh a, [hRandomAdd]
cp 129
jr c, .nb
call DrawFPlayerCharacter call DrawFPlayerCharacter
jr .playerskip jr .playerskip
.nb
call DrawNBPlayerCharacter
jr .playerskip
.male .male
call DrawPlayerCharacter call DrawPlayerCharacter
.playerskip .playerskip
@ -399,6 +406,43 @@ DrawFPlayerCharacter:
jr nz, .loop2 jr nz, .loop2
ret ret
DrawNBPlayerCharacter:
ld hl, NBPlayerCharacterTitleGraphics
ld de, vSprites
ld bc, NBPlayerCharacterTitleGraphicsEnd - NBPlayerCharacterTitleGraphics
ld a, BANK(NBPlayerCharacterTitleGraphics)
call FarCopyData2
call ClearSprites
xor a
ld [wNBPlayerCharacterOAMTile], a
ld hl, wShadowOAM
lb de, $60, $5a
ld b, 7
.loop3
push de
ld c, 5
.innerLoop3
ld a, d
ld [hli], a ; Y
ld a, e
ld [hli], a ; X
add 8
ld e, a
ld a, [wNBPlayerCharacterOAMTile]
ld [hli], a ; tile
inc a
ld [wNBPlayerCharacterOAMTile], a
inc hl
dec c
jr nz, .innerLoop3
pop de
ld a, 8
add d
ld d, a
dec b
jr nz, .loop3
ret
ClearBothBGMaps: ClearBothBGMaps:
ld hl, vBGMap0 ld hl, vBGMap0
ld bc, $400 * 2 ld bc, $400 * 2

View file

@ -389,6 +389,8 @@ FishingAnim:
ld a, [wPlayerSex] ; sex check ld a, [wPlayerSex] ; sex check
and a ; sex check and a ; sex check
jr z, .BoySpriteLoad jr z, .BoySpriteLoad
cp a, 2
jr z, .EnbySpriteLoad
ld de, GreenSprite ld de, GreenSprite
ld hl, vNPCSprites ld hl, vNPCSprites
ld bc, (BANK(GreenSprite) << 8) + $0c ld bc, (BANK(GreenSprite) << 8) + $0c
@ -397,17 +399,28 @@ FishingAnim:
ld de, RedSprite ld de, RedSprite
ld hl, vNPCSprites ld hl, vNPCSprites
lb bc, BANK(RedSprite), $c lb bc, BANK(RedSprite), $c
jr .KeepLoadingSpriteStuff
.EnbySpriteLoad
ld de, TealSprite
ld hl, vNPCSprites
lb bc, BANK(TealSprite), $c
.KeepLoadingSpriteStuff .KeepLoadingSpriteStuff
call CopyVideoData call CopyVideoData
ld a, [wPlayerSex] ; ; sex check ld a, [wPlayerSex] ; ; sex check
and a ; ; sex check seriously i feel like a republican here and a ; ; sex check seriously i feel like a republican here
jr z, .BoyTiles ; skip loading Green's stuff if you're Red jr z, .BoyTiles ; skip loading Green's stuff if you're Red
cp a, 2
jr z, .EnbyTiles
ld a, $4 ld a, $4
ld hl, GreenFishingTiles ld hl, GreenFishingTiles
jr .ContinueRoutine ; go back to main routine after loading Green's stuff jr .ContinueRoutine ; go back to main routine after loading Green's stuff
.BoyTiles ; alternately, load Red's stuff .BoyTiles ; alternately, load Red's stuff
ld a, $4 ld a, $4
ld hl, RedFishingTiles ld hl, RedFishingTiles
jr .ContinueRoutine ; go back to main routine after loading Red's stuff
.EnbyTiles ; alternately, load Teal's stuff
ld a, $4
ld hl, TealFishingTiles
.ContinueRoutine .ContinueRoutine
call LoadAnimSpriteGfx call LoadAnimSpriteGfx
ld a, [wSpritePlayerStateData1ImageIndex] ld a, [wSpritePlayerStateData1ImageIndex]
@ -517,6 +530,12 @@ GreenFishingTiles:
fishing_gfx GreenFishingTilesSide, 2, $0a fishing_gfx GreenFishingTilesSide, 2, $0a
fishing_gfx RedFishingRodTiles, 3, $fd fishing_gfx RedFishingRodTiles, 3, $fd
TealFishingTiles:
fishing_gfx TealFishingTilesFront, 2, $02
fishing_gfx TealFishingTilesBack, 2, $06
fishing_gfx TealFishingTilesSide, 2, $0a
fishing_gfx RedFishingRodTiles, 3, $fd
_HandleMidJump:: _HandleMidJump::
ld a, [wPlayerJumpingYScreenCoordsIndex] ld a, [wPlayerJumpingYScreenCoordsIndex]
ld c, a ld c, a

View file

@ -5,3 +5,6 @@ RedFishingRodTiles: INCBIN "gfx/overworld/fishing_rod.2bpp"
GreenFishingTilesFront: INCBIN "gfx/overworld/green_fish_front.2bpp" GreenFishingTilesFront: INCBIN "gfx/overworld/green_fish_front.2bpp"
GreenFishingTilesBack: INCBIN "gfx/overworld/green_fish_back.2bpp" GreenFishingTilesBack: INCBIN "gfx/overworld/green_fish_back.2bpp"
GreenFishingTilesSide: INCBIN "gfx/overworld/green_fish_side.2bpp" GreenFishingTilesSide: INCBIN "gfx/overworld/green_fish_side.2bpp"
TealFishingTilesFront: INCBIN "gfx/overworld/teal_fish_front.2bpp"
TealFishingTilesBack: INCBIN "gfx/overworld/teal_fish_back.2bpp"
TealFishingTilesSide: INCBIN "gfx/overworld/teal_fish_side.2bpp"

Binary file not shown.

After

Width:  |  Height:  |  Size: 602 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 635 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 633 B

View file

@ -261,6 +261,7 @@ PidgeottoPicBack:: INCBIN "gfx/pokemon/back/pidgeottob.pic"
RedPicBack:: INCBIN "gfx/player/redb.pic" RedPicBack:: INCBIN "gfx/player/redb.pic"
GreenPicBack:: INCBIN "gfx/player/greenb.pic" GreenPicBack:: INCBIN "gfx/player/greenb.pic"
TealPicBack:: INCBIN "gfx/player/thirdb.pic"
OldManPicBack:: INCBIN "gfx/battle/oldmanb.pic" OldManPicBack:: INCBIN "gfx/battle/oldmanb.pic"

View file

@ -1,4 +1,5 @@
RedPicFront:: INCBIN "gfx/player/red.pic" RedPicFront:: INCBIN "gfx/player/red.pic"
GreenPicFront:: INCBIN "gfx/player/green.pic" GreenPicFront:: INCBIN "gfx/player/green.pic"
EnbyPicFront:: INCBIN "gfx/player/third.pic"
ShrinkPic1:: INCBIN "gfx/player/shrink1.pic" ShrinkPic1:: INCBIN "gfx/player/shrink1.pic"
ShrinkPic2:: INCBIN "gfx/player/shrink2.pic" ShrinkPic2:: INCBIN "gfx/player/shrink2.pic"

BIN
gfx/player/third.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
gfx/player/thirdb.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 902 B

View file

@ -37,6 +37,8 @@ RedBikeSprite:: INCBIN "gfx/sprites/red_bike.2bpp"
RedSprite:: INCBIN "gfx/sprites/red.2bpp" RedSprite:: INCBIN "gfx/sprites/red.2bpp"
GreenBikeSprite:: INCBIN "gfx/sprites/green_bike.2bpp" GreenBikeSprite:: INCBIN "gfx/sprites/green_bike.2bpp"
GreenSprite:: INCBIN "gfx/sprites/green.2bpp" GreenSprite:: INCBIN "gfx/sprites/green.2bpp"
TealBikeSprite:: INCBIN "gfx/sprites/teal_bike.2bpp"
TealSprite:: INCBIN "gfx/sprites/teal.2bpp"
BlueSprite:: INCBIN "gfx/sprites/blue.2bpp" BlueSprite:: INCBIN "gfx/sprites/blue.2bpp"
OakSprite:: INCBIN "gfx/sprites/oak.2bpp" OakSprite:: INCBIN "gfx/sprites/oak.2bpp"
YoungsterSprite:: INCBIN "gfx/sprites/youngster.2bpp" YoungsterSprite:: INCBIN "gfx/sprites/youngster.2bpp"
@ -66,12 +68,6 @@ ErikaSprite:: INCBIN "gfx/sprites/erika.2bpp"
MiddleAgedWomanSprite:: INCBIN "gfx/sprites/middle_aged_woman.2bpp" MiddleAgedWomanSprite:: INCBIN "gfx/sprites/middle_aged_woman.2bpp"
BrunetteGirlSprite:: INCBIN "gfx/sprites/brunette_girl.2bpp" BrunetteGirlSprite:: INCBIN "gfx/sprites/brunette_girl.2bpp"
LanceSprite:: INCBIN "gfx/sprites/lance.2bpp" LanceSprite:: INCBIN "gfx/sprites/lance.2bpp"
MomSprite:: INCBIN "gfx/sprites/mom.2bpp"
BaldingGuySprite:: INCBIN "gfx/sprites/balding_guy.2bpp"
LittleBoySprite:: INCBIN "gfx/sprites/little_boy.2bpp"
GameboyKidSprite:: INCBIN "gfx/sprites/gameboy_kid.2bpp"
FairySprite:: INCBIN "gfx/sprites/fairy.2bpp"
AgathaSprite:: INCBIN "gfx/sprites/agatha.2bpp"
SeelSprite:: INCBIN "gfx/sprites/seel.2bpp" ; what a SILLY thing to do. SeelSprite:: INCBIN "gfx/sprites/seel.2bpp" ; what a SILLY thing to do.
SECTION "NPC Sprites 3", ROMX SECTION "NPC Sprites 3", ROMX
@ -98,3 +94,12 @@ MagikarpSprite:: INCBIN "gfx/sprites/magikarp.2bpp"
PoliwagSprite:: INCBIN "gfx/sprites/poliwag.2bpp" PoliwagSprite:: INCBIN "gfx/sprites/poliwag.2bpp"
LoreleiSprite:: INCBIN "gfx/sprites/lorelei.2bpp" LoreleiSprite:: INCBIN "gfx/sprites/lorelei.2bpp"
BrunoSprite:: INCBIN "gfx/sprites/bruno.2bpp" BrunoSprite:: INCBIN "gfx/sprites/bruno.2bpp"
SECTION "NPC Sprites 4", ROMX
MomSprite:: INCBIN "gfx/sprites/mom.2bpp"
BaldingGuySprite:: INCBIN "gfx/sprites/balding_guy.2bpp"
LittleBoySprite:: INCBIN "gfx/sprites/little_boy.2bpp"
GameboyKidSprite:: INCBIN "gfx/sprites/gameboy_kid.2bpp"
FairySprite:: INCBIN "gfx/sprites/fairy.2bpp"
AgathaSprite:: INCBIN "gfx/sprites/agatha.2bpp"

BIN
gfx/sprites/teal.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
gfx/sprites/teal_bike.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
gfx/title/nbplayer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View file

@ -9,3 +9,6 @@ BadgeNumbersTileGraphics: INCBIN "gfx/trainer_card/badge_numbers.2bpp"
FPlayerCharacterTitleGraphics: INCBIN "gfx/title/fplayer.2bpp" FPlayerCharacterTitleGraphics: INCBIN "gfx/title/fplayer.2bpp"
FPlayerCharacterTitleGraphicsEnd: FPlayerCharacterTitleGraphicsEnd:
NBPlayerCharacterTitleGraphics: INCBIN "gfx/title/nbplayer.2bpp"
NBPlayerCharacterTitleGraphicsEnd:

View file

@ -2038,6 +2038,9 @@ LoadWalkingPlayerSpriteGraphics::
ld a, [wPlayerSex] ld a, [wPlayerSex]
and a and a
jr z, .AreGuy1 jr z, .AreGuy1
ld de, TealSprite
cp a, 2
jr z, .AreGuy1
ld de, GreenSprite ld de, GreenSprite
.AreGuy1 .AreGuy1
ld hl,vNPCSprites ld hl,vNPCSprites
@ -2053,6 +2056,9 @@ LoadBikePlayerSpriteGraphics::
ld a, [wPlayerSex] ld a, [wPlayerSex]
and a and a
jr z, .AreGuy2 jr z, .AreGuy2
ld de, TealBikeSprite
cp a, 2
jr z, .AreGuy2
ld de, GreenBikeSprite ld de, GreenBikeSprite
.AreGuy2 .AreGuy2
ld hl, vNPCSprites ld hl, vNPCSprites

View file

@ -522,6 +522,8 @@ TextCommand_SOUND::
jr z, .pokemonCry jr z, .pokemonCry
cp TX_SOUND_CRY_NIDORINA cp TX_SOUND_CRY_NIDORINA
jr z, .pokemonCry jr z, .pokemonCry
cp TX_SOUND_CRY_NIDOREIGN
jr z, .pokemonCry
ld a, [hl] ld a, [hl]
call PlaySound call PlaySound
call WaitForSoundToFinish call WaitForSoundToFinish
@ -542,7 +544,7 @@ TextCommandSounds::
db TX_SOUND_GET_ITEM_1, SFX_GET_ITEM_1 ; actually plays SFX_LEVEL_UP when the battle music engine is loaded db TX_SOUND_GET_ITEM_1, SFX_GET_ITEM_1 ; actually plays SFX_LEVEL_UP when the battle music engine is loaded
db TX_SOUND_CAUGHT_MON, SFX_CAUGHT_MON db TX_SOUND_CAUGHT_MON, SFX_CAUGHT_MON
db TX_SOUND_POKEDEX_RATING, SFX_POKEDEX_RATING ; unused db TX_SOUND_POKEDEX_RATING, SFX_POKEDEX_RATING ; unused
db TX_SOUND_GET_ITEM_1_DUPLICATE, SFX_GET_ITEM_1 ; unused db TX_SOUND_CRY_NIDOREIGN, NIDOREIGN ; Was SFX_GET_ITEM_1 duplicate
db TX_SOUND_GET_ITEM_2, SFX_GET_ITEM_2 db TX_SOUND_GET_ITEM_2, SFX_GET_ITEM_2
db TX_SOUND_GET_KEY_ITEM, SFX_GET_KEY_ITEM db TX_SOUND_GET_KEY_ITEM, SFX_GET_KEY_ITEM
db TX_SOUND_DEX_PAGE_ADDED, SFX_DEX_PAGE_ADDED db TX_SOUND_DEX_PAGE_ADDED, SFX_DEX_PAGE_ADDED

View file

@ -44,7 +44,7 @@ ROMX $2
ROMX $3 ROMX $3
"bank3" "bank3"
ROMX $4 ROMX $4
"NPC Sprites 1" ; "NPC Sprites 1"
"Font Graphics" "Font Graphics"
"Battle Engine 1" "Battle Engine 1"
ROMX $5 ROMX $5

View file

@ -102,9 +102,9 @@ MACRO sound_pokedex_rating
db TX_SOUND_POKEDEX_RATING db TX_SOUND_POKEDEX_RATING
ENDM ENDM
const TX_SOUND_GET_ITEM_1_DUPLICATE ; $0f const TX_SOUND_CRY_NIDOREIGN ; $0f
MACRO sound_get_item_1_duplicate MACRO sound_cry_nidoreign
db TX_SOUND_GET_ITEM_1_DUPLICATE db TX_SOUND_CRY_NIDOREIGN
ENDM ENDM
const TX_SOUND_GET_ITEM_2 ; $10 const TX_SOUND_GET_ITEM_2 ; $10

View file

@ -868,6 +868,7 @@ wWhichBadge::
wTitleMonSpecies:: wTitleMonSpecies::
wPlayerCharacterOAMTile:: wPlayerCharacterOAMTile::
wFPlayerCharacterOAMTile:: wFPlayerCharacterOAMTile::
wNBPlayerCharacterOAMTile::
; the number of small stars OAM entries to move down ; the number of small stars OAM entries to move down
wMoveDownSmallStarsOAMCount:: wMoveDownSmallStarsOAMCount::
wChargeMoveNum:: wChargeMoveNum::
@ -1993,6 +1994,7 @@ wMissableObjectList:: ds 16 * 2 + 1
wPlayerSex:: wPlayerSex::
; $00 = male ; $00 = male
; $01 = female ; $01 = female
; $02 = enby
ds 1 ds 1
wGameProgressFlags:: wGameProgressFlags::