Initial giant enby Commit

- Changed name lists
- Made Overworld pink palette into purple palette
- Changed gender selection options
- Added Topaz's graphics (Enby Trainer)
- Changed more or less every gender check in the game to account for enby option
- Changed out Morty's palette on  the trainer card to a more purple one to facilitate Topaz's graphics

KNOWN ISSUES / THINGS TO CHANGE
- Topaz's sprite does not currently render correctly on town map (check if this is a map issue or if it occasionally will pop up elsewhere as well)
- Bag Palette is still green like the tutorial made it. Might change it to yellow or something later on.
This commit is contained in:
Zeta_Null 2023-09-11 11:26:46 -04:00
parent 5a182b17f0
commit b3a3e27906
57 changed files with 553 additions and 177 deletions

View file

@ -219,13 +219,17 @@ gfx/player/chris.2bpp: rgbgfx += -Z
gfx/player/chris_back.2bpp: rgbgfx += -Z gfx/player/chris_back.2bpp: rgbgfx += -Z
gfx/player/kris.2bpp: rgbgfx += -Z gfx/player/kris.2bpp: rgbgfx += -Z
gfx/player/kris_back.2bpp: rgbgfx += -Z gfx/player/kris_back.2bpp: rgbgfx += -Z
gfx/player/enby.2bpp: rgbgfx += -Z
gfx/player/enby_back.2bpp: rgbgfx += -Z
gfx/trainer_card/chris_card.2bpp: rgbgfx += -Z gfx/trainer_card/chris_card.2bpp: rgbgfx += -Z
gfx/trainer_card/kris_card.2bpp: rgbgfx += -Z gfx/trainer_card/kris_card.2bpp: rgbgfx += -Z
gfx/trainer_card/enby_card.2bpp: rgbgfx += -Z
gfx/trainer_card/leaders.2bpp: tools/gfx += --trim-whitespace gfx/trainer_card/leaders.2bpp: tools/gfx += --trim-whitespace
gfx/overworld/chris_fish.2bpp: tools/gfx += --trim-whitespace gfx/overworld/chris_fish.2bpp: tools/gfx += --trim-whitespace
gfx/overworld/kris_fish.2bpp: tools/gfx += --trim-whitespace gfx/overworld/kris_fish.2bpp: tools/gfx += --trim-whitespace
gfx/overworld/enby_fish.2bpp: tools/gfx += --trim-whitespace
gfx/sprites/big_onix.2bpp: tools/gfx += --remove-whitespace --remove-xflip gfx/sprites/big_onix.2bpp: tools/gfx += --remove-whitespace --remove-xflip

View file

@ -117,8 +117,6 @@
const ENGINE_GOLDENROD_DEPT_STORE_SALE_IS_ON const ENGINE_GOLDENROD_DEPT_STORE_SALE_IS_ON
; wGameTimerPaused ; wGameTimerPaused
const ENGINE_62 const ENGINE_62
; wPlayerGender
const ENGINE_PLAYER_IS_FEMALE
; wCelebiEvent ; wCelebiEvent
const ENGINE_FOREST_IS_RESTLESS const ENGINE_FOREST_IS_RESTLESS
; wDailyRematchFlags ; wDailyRematchFlags

View file

@ -1229,7 +1229,7 @@
const EVENT_COPYCAT_2 const EVENT_COPYCAT_2
const EVENT_GOLDENROD_SALE_OFF const EVENT_GOLDENROD_SALE_OFF
const EVENT_GOLDENROD_SALE_ON const EVENT_GOLDENROD_SALE_ON
const_skip ; unused in Crystal const EVENT_COPYCAT_3
const EVENT_ILEX_FOREST_APPRENTICE const EVENT_ILEX_FOREST_APPRENTICE
const EVENT_ILEX_FOREST_CHARCOAL_MASTER const EVENT_ILEX_FOREST_CHARCOAL_MASTER
const EVENT_CHARCOAL_KILN_FARFETCH_D const EVENT_CHARCOAL_KILN_FARFETCH_D

View file

@ -5,6 +5,7 @@ DEF TRUE EQU 1
; genders ; genders
DEF MALE EQU 0 DEF MALE EQU 0
DEF FEMALE EQU 1 DEF FEMALE EQU 1
DEF ENBY EQU 2
; FlagAction arguments (see home/flag.asm) ; FlagAction arguments (see home/flag.asm)
const_def const_def

View file

@ -73,6 +73,7 @@ DEF STRING_BUFFER_LENGTH EQU 19
const VAR_BUENASPASSWORD ; 19 const VAR_BUENASPASSWORD ; 19
const VAR_KENJI_BREAK ; 1a const VAR_KENJI_BREAK ; 1a
const VAR_DEXUNCAUGHT ; 1b const VAR_DEXUNCAUGHT ; 1b
const VAR_PLAYERGENDER ; 1c
DEF NUM_VARS EQU const_value DEF NUM_VARS EQU const_value
; variable action types ; variable action types

View file

@ -80,6 +80,8 @@ DEF NUM_SPRITEANIMDICT_ENTRIES EQU 10
const SPRITE_ANIM_INDEX_INTRO_UNOWN_F ; 2a const SPRITE_ANIM_INDEX_INTRO_UNOWN_F ; 2a
const SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY ; 2b const SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY ; 2b
const SPRITE_ANIM_INDEX_CELEBI ; 2c const SPRITE_ANIM_INDEX_CELEBI ; 2c
const SPRITE_ANIM_INDEX_PURPLE_WALK ; 2d
const SPRITE_ANIM_INDEX_MAGNET_TRAIN_PURPLE ; 2e
DEF NUM_SPRITE_ANIM_INDEXES EQU const_value DEF NUM_SPRITE_ANIM_INDEXES EQU const_value
; DoAnimFrame.Jumptable indexes (see engine/gfx/sprite_anims.asm) ; DoAnimFrame.Jumptable indexes (see engine/gfx/sprite_anims.asm)
@ -189,6 +191,8 @@ DEF NUM_SPRITE_ANIM_SEQS EQU const_value
const SPRITE_ANIM_FRAMESET_INTRO_UNOWN_F ; 3f const SPRITE_ANIM_FRAMESET_INTRO_UNOWN_F ; 3f
const SPRITE_ANIM_FRAMESET_CELEBI_LEFT ; 40 const SPRITE_ANIM_FRAMESET_CELEBI_LEFT ; 40
const SPRITE_ANIM_FRAMESET_CELEBI_RIGHT ; 41 const SPRITE_ANIM_FRAMESET_CELEBI_RIGHT ; 41
const SPRITE_ANIM_FRAMESET_PURPLE_WALK ; 42
const SPRITE_ANIM_FRAMESET_MAGNET_TRAIN_PURPLE ; 43
DEF NUM_SPRITE_ANIM_FRAMESETS EQU const_value DEF NUM_SPRITE_ANIM_FRAMESETS EQU const_value
; SpriteAnimOAMData indexes (see data/sprite_anims/oam.asm) ; SpriteAnimOAMData indexes (see data/sprite_anims/oam.asm)
@ -333,4 +337,8 @@ DEF NUM_SPRITE_ANIM_FRAMESETS EQU const_value
const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_9 ; 89 const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_9 ; 89
const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_10 ; 8a const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_10 ; 8a
const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11 ; 8b const SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11 ; 8b
const SPRITE_ANIM_OAMSET_PURPLE_WALK_1 ; 8c
const SPRITE_ANIM_OAMSET_PURPLE_WALK_2 ; 8d
const SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_1 ; 8e
const SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_2 ; 8f
DEF NUM_SPRITE_ANIM_OAMSETS EQU const_value DEF NUM_SPRITE_ANIM_OAMSETS EQU const_value

View file

@ -104,6 +104,8 @@
const SPRITE_ENTEI ; 64 const SPRITE_ENTEI ; 64
const SPRITE_RAIKOU ; 65 const SPRITE_RAIKOU ; 65
const SPRITE_STANDING_YOUNGSTER ; 66 const SPRITE_STANDING_YOUNGSTER ; 66
const SPRITE_ENBY ; 67
const SPRITE_ENBY_BIKE ; 68
DEF NUM_OVERWORLD_SPRITES EQU const_value - 1 DEF NUM_OVERWORLD_SPRITES EQU const_value - 1
; SpriteMons indexes (see data/sprites/sprite_mons.asm) ; SpriteMons indexes (see data/sprites/sprite_mons.asm)

View file

@ -703,4 +703,5 @@ DEF KRIS EQU __trainer_class__
trainerclass MYSTICALMAN ; 43 trainerclass MYSTICALMAN ; 43
const EUSINE const EUSINE
DEF TOPAZ EQU __trainer_class__
DEF NUM_TRAINER_CLASSES EQU __trainer_class__ - 1 DEF NUM_TRAINER_CLASSES EQU __trainer_class__ - 1

View file

@ -145,9 +145,6 @@ DEF PLAYERSPRITESETUP_CUSTOM_FACING_F EQU 5
DEF PLAYERSPRITESETUP_SKIP_RELOAD_GFX_F EQU 6 DEF PLAYERSPRITESETUP_SKIP_RELOAD_GFX_F EQU 6
DEF PLAYERSPRITESETUP_RESET_ACTION_F EQU 7 DEF PLAYERSPRITESETUP_RESET_ACTION_F EQU 7
; wPlayerGender::
DEF PLAYERGENDER_FEMALE_F EQU 0
; wMapStatus:: ; wMapStatus::
const_def const_def
const MAPSTATUS_START ; 0 const MAPSTATUS_START ; 0

View file

@ -128,8 +128,6 @@ EngineFlags:
engine_flag wGameTimerPaused, GAME_TIMER_MOBILE_F engine_flag wGameTimerPaused, GAME_TIMER_MOBILE_F
engine_flag wPlayerGender, PLAYERGENDER_FEMALE_F
engine_flag wCelebiEvent, CELEBIEVENT_FOREST_IS_RESTLESS_F engine_flag wCelebiEvent, CELEBIEVENT_FOREST_IS_RESTLESS_F
; rematches ; rematches

View file

@ -10,10 +10,10 @@ ChrisNameMenuHeader:
db 5 ; items db 5 ; items
db "NEW NAME@" db "NEW NAME@"
MalePlayerNameArray: MalePlayerNameArray:
db "ETHAN@"
db "GOLD@"
db "CHRIS@" db "CHRIS@"
db "MAT@" db "JIMMY@"
db "ALLAN@"
db "JON@"
db 2 ; title indent db 2 ; title indent
db " NAME @" ; title db " NAME @" ; title
@ -30,8 +30,28 @@ KrisNameMenuHeader:
db "NEW NAME@" db "NEW NAME@"
FemalePlayerNameArray: FemalePlayerNameArray:
db "KRIS@" db "KRIS@"
db "MARINA@"
db "AMANDA@" db "AMANDA@"
db "JUANA@"
db "JODI@" db "JODI@"
db 2 ; title indent db 2 ; title indent
db " NAME @" ; title db " NAME @" ; title
EnbyNameMenuHeader:
db MENU_BACKUP_TILES ; flags
menu_coords 0, 0, 10, TEXTBOX_Y - 1
dw .OtherNames
db 1 ; ????
db 0 ; default option
.OtherNames:
db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B ; flags
db 5 ; items
db "NEW NAME@"
EnbyPlayerNameArray:
db "TOPAZ@"
db "SAM@"
db "CRYS@"
db "RAY@"
db 2 ; displacement
db " NAME @" ; title

View file

@ -67,6 +67,8 @@ SpriteAnimFrameData:
dw .Frameset_IntroUnownF dw .Frameset_IntroUnownF
dw .Frameset_CelebiLeft dw .Frameset_CelebiLeft
dw .Frameset_CelebiRight dw .Frameset_CelebiRight
dw .Frameset_PurpleWalk
dw .Frameset_MagnetTrainPurple
assert_table_length NUM_SPRITE_ANIM_FRAMESETS assert_table_length NUM_SPRITE_ANIM_FRAMESETS
.Frameset_00: .Frameset_00:
@ -497,3 +499,17 @@ SpriteAnimFrameData:
oamframe SPRITE_ANIM_OAMSET_CELEBI_1, 8, OAM_X_FLIP oamframe SPRITE_ANIM_OAMSET_CELEBI_1, 8, OAM_X_FLIP
oamframe SPRITE_ANIM_OAMSET_CELEBI_2, 8, OAM_X_FLIP oamframe SPRITE_ANIM_OAMSET_CELEBI_2, 8, OAM_X_FLIP
oamend oamend
.Frameset_PurpleWalk:
oamframe SPRITE_ANIM_OAMSET_PURPLE_WALK_1, 8
oamframe SPRITE_ANIM_OAMSET_PURPLE_WALK_2, 8
oamframe SPRITE_ANIM_OAMSET_PURPLE_WALK_1, 8
oamframe SPRITE_ANIM_OAMSET_PURPLE_WALK_2, 8, OAM_X_FLIP
oamrestart
.Frameset_MagnetTrainPurple:
oamframe SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_1, 8
oamframe SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_2, 8
oamframe SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_1, 8
oamframe SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_2, 8, OAM_X_FLIP
oamrestart

View file

@ -147,6 +147,10 @@ SpriteAnimOAMData:
spriteanimoam $08, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_9 spriteanimoam $08, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_9
spriteanimoam $04, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_10 spriteanimoam $04, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_10
spriteanimoam $00, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11 spriteanimoam $00, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_OAMSET_GAMEFREAK_LOGO_11
spriteanimoam $00, .OAMData_PurpleWalk ; SPRITE_ANIM_OAMSET_PURPLE_WALK_1
spriteanimoam $04, .OAMData_PurpleWalk ; SPRITE_ANIM_OAMSET_PURPLE_WALK_2
spriteanimoam $00, .OAMData_MagnetTrainPurple ; SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_1
spriteanimoam $04, .OAMData_MagnetTrainPurple ; SPRITE_ANIM_OAMSET_MAGNET_TRAIN_PURPLE_2
assert_table_length NUM_SPRITE_ANIM_OAMSETS assert_table_length NUM_SPRITE_ANIM_OAMSETS
.OAMData_1x1_Palette0: .OAMData_1x1_Palette0:
@ -1133,3 +1137,17 @@ SpriteAnimOAMData:
dbsprite -1, 0, 4, 0, $51, 1 dbsprite -1, 0, 4, 0, $51, 1
dbsprite 0, 0, 4, 0, $52, 1 dbsprite 0, 0, 4, 0, $52, 1
dbsprite 1, 0, 4, 0, $53, 1 dbsprite 1, 0, 4, 0, $53, 1
.OAMData_PurpleWalk:
db 4
dbsprite -1, 0, -1, 0, $00, PAL_OW_PURPLE
dbsprite -1, 0, 0, 0, $01, PAL_OW_PURPLE
dbsprite 0, 0, -1, 0, $02, PAL_OW_PURPLE
dbsprite 0, 0, 0, 0, $03, PAL_OW_PURPLE
.OAMData_MagnetTrainPurple:
db 4
dbsprite -1, 0, -1, 0, $00, PAL_OW_PURPLE | PRIORITY
dbsprite -1, 0, 0, 0, $01, PAL_OW_PURPLE | PRIORITY
dbsprite 0, 0, -1, 0, $02, PAL_OW_PURPLE | PRIORITY
dbsprite 0, 0, 0, 0, $03, PAL_OW_PURPLE | PRIORITY

View file

@ -92,4 +92,8 @@ SpriteAnimSeqData:
db SPRITE_ANIM_FRAMESET_INTRO_SUICUNE_AWAY, SPRITE_ANIM_SEQ_INTRO_SUICUNE_AWAY, SPRITE_ANIM_DICT_DEFAULT db SPRITE_ANIM_FRAMESET_INTRO_SUICUNE_AWAY, SPRITE_ANIM_SEQ_INTRO_SUICUNE_AWAY, SPRITE_ANIM_DICT_DEFAULT
; SPRITE_ANIM_INDEX_CELEBI ; SPRITE_ANIM_INDEX_CELEBI
db SPRITE_ANIM_FRAMESET_CELEBI_LEFT, SPRITE_ANIM_SEQ_NULL, SPRITE_ANIM_DICT_DEFAULT db SPRITE_ANIM_FRAMESET_CELEBI_LEFT, SPRITE_ANIM_SEQ_NULL, SPRITE_ANIM_DICT_DEFAULT
; SPRITE_ANIM_INDEX_PURPLE_WALK
db SPRITE_ANIM_FRAMESET_PURPLE_WALK, SPRITE_ANIM_SEQ_NULL, SPRITE_ANIM_DICT_DEFAULT
; SPRITE_ANIM_INDEX_MAGNET_TRAIN_PURPLE
db SPRITE_ANIM_FRAMESET_MAGNET_TRAIN_PURPLE, SPRITE_ANIM_SEQ_NULL, SPRITE_ANIM_DICT_DEFAULT
assert_table_length NUM_SPRITE_ANIM_INDEXES assert_table_length NUM_SPRITE_ANIM_INDEXES

View file

@ -11,3 +11,11 @@ KrisStateSprites:
db PLAYER_SURF, SPRITE_SURF db PLAYER_SURF, SPRITE_SURF
db PLAYER_SURF_PIKA, SPRITE_SURFING_PIKACHU db PLAYER_SURF_PIKA, SPRITE_SURFING_PIKACHU
db -1 ; end db -1 ; end
EnbyStateSprites:
db PLAYER_NORMAL, SPRITE_ENBY
db PLAYER_BIKE, SPRITE_ENBY_BIKE
db PLAYER_SURF, SPRITE_SURF
db PLAYER_SURF_PIKA, SPRITE_SURFING_PIKACHU
db -1 ; end

View file

@ -109,4 +109,6 @@ OverworldSprites:
overworld_sprite EnteiSpriteGFX, 4, STILL_SPRITE, PAL_OW_RED overworld_sprite EnteiSpriteGFX, 4, STILL_SPRITE, PAL_OW_RED
overworld_sprite RaikouSpriteGFX, 4, STILL_SPRITE, PAL_OW_RED overworld_sprite RaikouSpriteGFX, 4, STILL_SPRITE, PAL_OW_RED
overworld_sprite StandingYoungsterSpriteGFX, 12, STANDING_SPRITE, PAL_OW_BLUE overworld_sprite StandingYoungsterSpriteGFX, 12, STANDING_SPRITE, PAL_OW_BLUE
overworld_sprite EnbySpriteGFX, 12, WALKING_SPRITE, PAL_OW_PURPLE
overworld_sprite EnbyBikeSpriteGFX, 12, WALKING_SPRITE, PAL_OW_PURPLE
assert_table_length NUM_OVERWORLD_SPRITES assert_table_length NUM_OVERWORLD_SPRITES

View file

@ -663,8 +663,8 @@ _YouCantUseItInABattleText::
prompt prompt
_AreYouABoyOrAreYouAGirlText:: _AreYouABoyOrAreYouAGirlText::
text "Are you a boy?" text "Please choose your"
line "Or are you a girl?" line "gender."
done done
Text_BattleEffectActivate:: Text_BattleEffectActivate::

View file

@ -12,6 +12,7 @@ KrisPalette: ; Kris shares Falkner's palette
INCBIN "gfx/trainers/falkner.gbcpal", middle_colors INCBIN "gfx/trainers/falkner.gbcpal", middle_colors
INCBIN "gfx/trainers/whitney.gbcpal", middle_colors INCBIN "gfx/trainers/whitney.gbcpal", middle_colors
INCBIN "gfx/trainers/bugsy.gbcpal", middle_colors INCBIN "gfx/trainers/bugsy.gbcpal", middle_colors
;EnbyPalette:
INCBIN "gfx/trainers/morty.gbcpal", middle_colors INCBIN "gfx/trainers/morty.gbcpal", middle_colors
INCBIN "gfx/trainers/pryce.gbcpal", middle_colors INCBIN "gfx/trainers/pryce.gbcpal", middle_colors
INCBIN "gfx/trainers/jasmine.gbcpal", middle_colors INCBIN "gfx/trainers/jasmine.gbcpal", middle_colors
@ -77,4 +78,7 @@ INCBIN "gfx/trainers/officer.gbcpal", middle_colors
INCBIN "gfx/trainers/grunt_f.gbcpal", middle_colors INCBIN "gfx/trainers/grunt_f.gbcpal", middle_colors
INCBIN "gfx/trainers/mysticalman.gbcpal", middle_colors INCBIN "gfx/trainers/mysticalman.gbcpal", middle_colors
assert_table_length NUM_TRAINER_CLASSES + 1 EnbyPalette:
INCLUDE "gfx/player/topaz.pal"
assert_table_length NUM_TRAINER_CLASSES + 2

View file

@ -9079,9 +9079,16 @@ GetTrainerBackpic:
bit PLAYERSPRITESETUP_FEMALE_TO_MALE_F, a bit PLAYERSPRITESETUP_FEMALE_TO_MALE_F, a
jr nz, .Chris jr nz, .Chris
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .Chris jr z, .Chris
dec a ; FEMALE
jr z, .Kris
; It's nonbinary.
farcall GetEnbyBackpic
ret
.Kris:
; It's a girl. ; It's a girl.
farcall GetKrisBackpic farcall GetKrisBackpic
ret ret

View file

@ -6,9 +6,12 @@ LoadFishingGFX:
ld de, FishingGFX ld de, FishingGFX
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_gender jr z, .got_gender
ld de, KrisFishingGFX ld de, KrisFishingGFX
dec a ; FEMALE
jr z, .got_gender
ld de, EnbyFishingGFX
.got_gender .got_gender
ld hl, vTiles0 tile $02 ld hl, vTiles0 tile $02
@ -40,3 +43,6 @@ INCBIN "gfx/overworld/chris_fish.2bpp"
KrisFishingGFX: KrisFishingGFX:
INCBIN "gfx/overworld/kris_fish.2bpp" INCBIN "gfx/overworld/kris_fish.2bpp"
EnbyFishingGFX:
INCBIN "gfx/overworld/enby_fish.2bpp"

View file

@ -298,9 +298,12 @@ MagnetTrain_Jumptable:
ld a, BANK(wPlayerGender) ld a, BANK(wPlayerGender)
ldh [rSVBK], a ldh [rSVBK], a
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_gender jr z, .got_gender
ld b, SPRITE_ANIM_INDEX_MAGNET_TRAIN_BLUE ld b, SPRITE_ANIM_INDEX_MAGNET_TRAIN_BLUE
dec a ; FEMALE
jr z, .got_gender
ld b, SPRITE_ANIM_INDEX_MAGNET_TRAIN_PURPLE
.got_gender .got_gender
pop af pop af
ldh [rSVBK], a ldh [rSVBK], a

View file

@ -177,9 +177,12 @@ InitPartyMenuBGPal0:
_CGB_PokegearPals: _CGB_PokegearPals:
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .male jr z, .male
ld hl, FemalePokegearPals ld hl, FemalePokegearPals
dec a ; FEMALE
jr z, .got_pals
ld hl, EnbyPokegearPals
jr .got_pals jr .got_pals
.male .male
@ -628,7 +631,7 @@ _CGB_TrainerCard:
ld a, WHITNEY ld a, WHITNEY
call GetTrainerPalettePointer call GetTrainerPalettePointer
call LoadPalette_White_Col1_Col2_Black call LoadPalette_White_Col1_Col2_Black
ld a, MORTY ld a, TOPAZ ;MORTY
call GetTrainerPalettePointer call GetTrainerPalettePointer
call LoadPalette_White_Col1_Col2_Black call LoadPalette_White_Col1_Col2_Black
ld a, CHUCK ld a, CHUCK
@ -644,14 +647,21 @@ _CGB_TrainerCard:
call GetPredefPal call GetPredefPal
call LoadHLPaletteIntoDE call LoadHLPaletteIntoDE
; fill screen with opposite-gender palette for the card border ; fill screen with gender-based palette for the card border
hlcoord 0, 0, wAttrmap hlcoord 0, 0, wAttrmap
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
ld a, [wPlayerGender] ld a, [wPlayerGender]
and a and a
ld a, $1 ; kris jr z, .male
jr z, .got_gender dec a
ld a, $0 ; chris jr z, .female
ld a, $6 ; dark magenta for enby
jr .got_gender
.male
ld a, $1 ; blue for chris
jr .got_gender
.female
ld a, $0 ; red for kris
.got_gender .got_gender
call ByteFill call ByteFill
; fill trainer sprite area with same-gender palette ; fill trainer sprite area with same-gender palette
@ -659,14 +669,18 @@ _CGB_TrainerCard:
lb bc, 7, 5 lb bc, 7, 5
ld a, [wPlayerGender] ld a, [wPlayerGender]
and a and a
jr z, .male2
dec a
jr z, .female2
ld a, $4 ; enby
jr .got_gender2
.male2
ld a, $0 ; chris ld a, $0 ; chris
jr z, .got_gender2 jr .got_gender2
.female2
ld a, $1 ; kris ld a, $1 ; kris
.got_gender2 .got_gender2
call FillBoxCGB call FillBoxCGB
; top-right corner still uses the border's palette
hlcoord 18, 1, wAttrmap
ld [hl], $1
hlcoord 2, 11, wAttrmap hlcoord 2, 11, wAttrmap
lb bc, 2, 4 lb bc, 2, 4
ld a, $1 ; falkner ld a, $1 ; falkner
@ -695,22 +709,24 @@ _CGB_TrainerCard:
lb bc, 2, 4 lb bc, 2, 4
ld a, $7 ; pryce ld a, $7 ; pryce
call FillBoxCGB call FillBoxCGB
; clair uses kris's palette
ld a, [wPlayerGender]
and a
push af
jr z, .got_gender3
hlcoord 14, 14, wAttrmap hlcoord 14, 14, wAttrmap
lb bc, 2, 4 lb bc, 2, 4
ld a, $1 ld a, $1 ; clair
call FillBoxCGB call FillBoxCGB
; top-right corner still uses the border's palette
ld a, [wPlayerGender]
and a
jr z, .male3
dec a
jr z, .female3
ld a, $6 ; dark magenta for enby
jr .got_gender3
.male3
ld a, $1 ; blue for chris
jr .got_gender3
.female3
ld a, $0 ; red for kris
.got_gender3 .got_gender3
pop af
ld c, $0
jr nz, .got_gender4
inc c
.got_gender4
ld a, c
hlcoord 18, 1, wAttrmap hlcoord 18, 1, wAttrmap
ld [hl], a ld [hl], a
call ApplyAttrmap call ApplyAttrmap
@ -772,9 +788,15 @@ _CGB_PackPals:
jr z, .tutorial_male jr z, .tutorial_male
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .tutorial_male jr z, .tutorial_male
dec a ; FEMALE
jr z, .tutorial_female
ld hl, .EnbyPackPals
jr .got_gender
.tutorial_female
ld hl, .KrisPackPals ld hl, .KrisPackPals
jr .got_gender jr .got_gender
@ -819,6 +841,9 @@ INCLUDE "gfx/pack/pack.pal"
.KrisPackPals: .KrisPackPals:
INCLUDE "gfx/pack/pack_f.pal" INCLUDE "gfx/pack/pack_f.pal"
.EnbyPackPals:
INCLUDE "gfx/pack/pack_nb.pal"
_CGB_Pokepic: _CGB_Pokepic:
call _CGB_MapPals call _CGB_MapPals
ld de, SCREEN_WIDTH ld de, SCREEN_WIDTH

View file

@ -689,6 +689,12 @@ GetPlayerOrMonPalettePointer:
ld a, [wPlayerGender] ld a, [wPlayerGender]
and a and a
jr z, .male jr z, .male
dec a
jr z, .female
ld hl, EnbyPalette
ret
.female
ld hl, KrisPalette ld hl, KrisPalette
ret ret
@ -1332,6 +1338,9 @@ INCLUDE "gfx/pokegear/pokegear.pal"
FemalePokegearPals: FemalePokegearPals:
INCLUDE "gfx/pokegear/pokegear_f.pal" INCLUDE "gfx/pokegear/pokegear_f.pal"
EnbyPokegearPals:
INCLUDE "gfx/pokegear/pokegear_nb.pal"
BetaPokerPals: BetaPokerPals:
INCLUDE "gfx/beta_poker/beta_poker.pal" INCLUDE "gfx/beta_poker/beta_poker.pal"

View file

@ -1,14 +1,14 @@
BetaLoadPlayerTrainerClass: ; unreferenced ;BetaLoadPlayerTrainerClass: ; unreferenced
ld c, CAL ; ld c, CAL
ld a, [wPlayerGender] ; ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a ; bit PLAYERGENDER_FEMALE_F, a
jr z, .got_class ; jr z, .got_class
ld c, KAREN ; not KRIS? ; ld c, KAREN ; not KRIS?
.got_class ;.got_class
ld a, c ; ld a, c
ld [wTrainerClass], a ; ld [wTrainerClass], a
ret ; ret
;
MovePlayerPicRight: MovePlayerPicRight:
hlcoord 6, 4 hlcoord 6, 4
ld de, 1 ld de, 1
@ -57,9 +57,12 @@ MovePlayerPic:
ShowPlayerNamingChoices: ShowPlayerNamingChoices:
ld hl, ChrisNameMenuHeader ld hl, ChrisNameMenuHeader
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_header jr z, .got_header
ld hl, KrisNameMenuHeader ld hl, KrisNameMenuHeader
dec a ; FEMALE
jr z, .got_header
ld hl, EnbyNameMenuHeader
.got_header .got_header
call LoadMenuHeader call LoadMenuHeader
call VerticalMenu call VerticalMenu
@ -71,34 +74,45 @@ ShowPlayerNamingChoices:
INCLUDE "data/player_names.asm" INCLUDE "data/player_names.asm"
GetPlayerNameArray: ; unreferenced ;GetPlayerNameArray: ; unreferenced
ld hl, wPlayerName ; ld hl, wPlayerName
ld de, MalePlayerNameArray ; ld de, MalePlayerNameArray
ld a, [wPlayerGender] ; ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a ; bit PLAYERGENDER_FEMALE_F, a
jr z, .got_array ; jr z, .got_array
ld de, FemalePlayerNameArray ; ld de, FemalePlayerNameArray
.got_array ;.got_array
call InitName ; call InitName
ret ; ret
;
GetPlayerIcon: GetPlayerIcon:
ld de, ChrisSpriteGFX ld de, ChrisSpriteGFX
ld b, BANK(ChrisSpriteGFX) ld b, BANK(ChrisSpriteGFX)
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_gfx jr z, .got_gfx
; Female
ld de, KrisSpriteGFX ld de, KrisSpriteGFX
ld b, BANK(KrisSpriteGFX) ld b, BANK(KrisSpriteGFX)
dec a ; FEMALE
jr z, .got_gfx
; Enby
ld de, EnbySpriteGFX
ld b, BANK(EnbySpriteGFX)
.got_gfx .got_gfx
ret ret
GetCardPic: GetCardPic:
ld hl, ChrisCardPic ld hl, ChrisCardPic
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_pic jr z, .got_pic
ld hl, KrisCardPic ld hl, KrisCardPic
dec a ; FEMALE
jr z, .got_pic
ld hl, EnbyCardPic
.got_pic .got_pic
ld de, vTiles2 tile $00 ld de, vTiles2 tile $00
ld bc, $23 tiles ld bc, $23 tiles
@ -117,14 +131,19 @@ INCBIN "gfx/trainer_card/chris_card.2bpp"
KrisCardPic: KrisCardPic:
INCBIN "gfx/trainer_card/kris_card.2bpp" INCBIN "gfx/trainer_card/kris_card.2bpp"
EnbyCardPic:
INCBIN "gfx/trainer_card/enby_card.2bpp"
TrainerCardGFX: TrainerCardGFX:
INCBIN "gfx/trainer_card/trainer_card.2bpp" INCBIN "gfx/trainer_card/trainer_card.2bpp"
GetPlayerBackpic: GetPlayerBackpic:
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, GetChrisBackpic jr z, GetChrisBackpic
call GetKrisBackpic dec a ; FEMALE
jp z, GetKrisBackpic
call GetEnbyBackpic
ret ret
GetChrisBackpic: GetChrisBackpic:
@ -143,9 +162,12 @@ HOF_LoadTrainerFrontpic:
; Get class ; Get class
ld e, CHRIS ld e, CHRIS
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_class jr z, .got_class
ld e, KRIS ld e, KRIS
dec a ; FEMALE
jr z, .got_class
ld e, TOPAZ
.got_class .got_class
ld a, e ld a, e
ld [wTrainerClass], a ld [wTrainerClass], a
@ -153,9 +175,13 @@ HOF_LoadTrainerFrontpic:
; Load pic ; Load pic
ld de, ChrisPic ld de, ChrisPic
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_pic jr z, .got_pic
ld de, KrisPic ld de, KrisPic
dec a ; FEMALE
jr z, .got_pic
ld de, EnbyPic
.got_pic .got_pic
ld hl, vTiles2 ld hl, vTiles2
ld b, BANK(ChrisPic) ; aka BANK(KrisPic) ld b, BANK(ChrisPic) ; aka BANK(KrisPic)
@ -173,9 +199,12 @@ DrawIntroPlayerPic:
; Get class ; Get class
ld e, CHRIS ld e, CHRIS
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_class jr z, .got_class
ld e, KRIS ld e, KRIS
dec a ; FEMALE
jr z, .got_class
ld e, TOPAZ
.got_class .got_class
ld a, e ld a, e
ld [wTrainerClass], a ld [wTrainerClass], a
@ -183,9 +212,12 @@ DrawIntroPlayerPic:
; Load pic ; Load pic
ld de, ChrisPic ld de, ChrisPic
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_pic jr z, .got_pic
ld de, KrisPic ld de, KrisPic
dec a ; FEMALE
jr z, .got_pic
ld de, EnbyPic
.got_pic .got_pic
ld hl, vTiles2 ld hl, vTiles2
ld b, BANK(ChrisPic) ; aka BANK(KrisPic) ld b, BANK(ChrisPic) ; aka BANK(KrisPic)
@ -206,6 +238,9 @@ INCBIN "gfx/player/chris.2bpp"
KrisPic: KrisPic:
INCBIN "gfx/player/kris.2bpp" INCBIN "gfx/player/kris.2bpp"
EnbyPic:
INCBIN "gfx/player/enby.2bpp"
GetKrisBackpic: GetKrisBackpic:
; Kris's backpic is uncompressed. ; Kris's backpic is uncompressed.
ld de, KrisBackpic ld de, KrisBackpic
@ -216,3 +251,13 @@ GetKrisBackpic:
KrisBackpic: KrisBackpic:
INCBIN "gfx/player/kris_back.2bpp" INCBIN "gfx/player/kris_back.2bpp"
GetEnbyBackpic:
ld de, EnbyBackpic
ld hl, vTiles2 tile $31
lb bc, BANK(EnbyBackpic), 7 * 7 ; dimensions
call Get2bpp
ret
EnbyBackpic:
INCBIN "gfx/player/enby_back.2bpp"

View file

@ -1216,8 +1216,13 @@ DrawPackGFX:
cp BATTLETYPE_TUTORIAL cp BATTLETYPE_TUTORIAL
jr z, .male_dude jr z, .male_dude
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr nz, .female jr z, .male_dude
dec a ; FEMALE
jr z, .female
farcall DrawEnbyPackGFX
ret
.male_dude .male_dude
ld hl, PackGFXPointers ld hl, PackGFXPointers
add hl, de add hl, de

View file

@ -18,3 +18,24 @@ PackFGFXPointers:
PackFGFX: PackFGFX:
INCBIN "gfx/pack/pack_f.2bpp" INCBIN "gfx/pack/pack_f.2bpp"
DrawEnbyPackGFX:
ld hl, PackNBGFXPointers
add hl, de
add hl, de
ld a, [hli]
ld e, a
ld d, [hl]
ld hl, vTiles2 tile $50
lb bc, BANK(PackNBGFX), 15
call Request2bpp
ret
PackNBGFXPointers:
dw PackNBGFX + (15 tiles) * 1 ; ITEM_POCKET
dw PackNBGFX + (15 tiles) * 3 ; BALL_POCKET
dw PackNBGFX + (15 tiles) * 0 ; KEY_ITEM_POCKET
dw PackNBGFX + (15 tiles) * 2 ; TM_HM_POCKET
PackNBGFX:
INCBIN "gfx/pack/pack_nb.2bpp"

View file

@ -42,15 +42,16 @@ InitGender:
.MenuHeader: .MenuHeader:
db MENU_BACKUP_TILES ; flags db MENU_BACKUP_TILES ; flags
menu_coords 6, 4, 12, 9 menu_coords 6, 3, 12, 10
dw .MenuData dw .MenuData
db 1 ; default option db 1 ; default option
.MenuData: .MenuData:
db STATICMENU_CURSOR | STATICMENU_WRAP | STATICMENU_DISABLE_B ; flags db STATICMENU_CURSOR | STATICMENU_WRAP | STATICMENU_DISABLE_B ; flags
db 2 ; items db 3 ; items
db "Boy@" db "Boy@"
db "Girl@" db "Girl@"
db "Enby@"
AreYouABoyOrAreYouAGirlText: AreYouABoyOrAreYouAGirlText:
text_far _AreYouABoyOrAreYouAGirlText text_far _AreYouABoyOrAreYouAGirlText

View file

@ -797,17 +797,22 @@ NamePlayer:
ld hl, wPlayerName ld hl, wPlayerName
ld de, .Chris ld de, .Chris
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .Male jr z, .GotName
ld de, .Kris ld de, .Kris
.Male: dec a ; FEMALE
jr z, .GotName
ld de, .Topaz
.GotName:
call InitName call InitName
ret ret
.Chris: .Chris:
db "CHRIS@@@@@@" db "ETHAN@@@@@@"
.Kris: .Kris:
db "KRIS@@@@@@@" db "KRIS@@@@@@@"
.Topaz:
db "TOPAZ@@@@@@"
GSShowPlayerNamingChoices: ; unreferenced GSShowPlayerNamingChoices: ; unreferenced
call LoadMenuHeader call LoadMenuHeader
@ -962,10 +967,13 @@ Intro_PlacePlayerSprite:
ld b, PAL_OW_RED ld b, PAL_OW_RED
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .male jr z, .okay
ld b, PAL_OW_BLUE ld b, PAL_OW_BLUE
.male dec a ; FEMALE
jr z, .okay
ld b, PAL_OW_PURPLE
.okay
ld a, b ld a, b
ld [hli], a ; attributes ld [hli], a ; attributes

View file

@ -216,7 +216,16 @@ NamingScreen:
cp LOW(KrisSpriteGFX) cp LOW(KrisSpriteGFX)
jr nz, .not_kris jr nz, .not_kris
ld b, SPRITE_ANIM_INDEX_BLUE_WALK ld b, SPRITE_ANIM_INDEX_BLUE_WALK
jr .not_enby
.not_kris .not_kris
ld a, d
cp HIGH(EnbySpriteGFX)
jr nz, .not_enby
ld a, e
cp LOW(EnbySpriteGFX)
jr nz, .not_enby
ld b, SPRITE_ANIM_INDEX_PURPLE_WALK
.not_enby
ld a, b ld a, b
depixel 4, 4, 4, 0 depixel 4, 4, 4, 0
call InitSpriteAnimStruct call InitSpriteAnimStruct

View file

@ -59,9 +59,12 @@ GetPlayerSprite:
bit PLAYERSPRITESETUP_FEMALE_TO_MALE_F, a bit PLAYERSPRITESETUP_FEMALE_TO_MALE_F, a
jr nz, .go jr nz, .go
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .go jr z, .go
ld hl, KrisStateSprites ld hl, KrisStateSprites
dec a ; FEMALE
jr z, .go
ld hl, EnbyStateSprites
.go .go
ld a, [wPlayerState] ld a, [wPlayerState]

View file

@ -34,9 +34,12 @@ SpawnPlayer:
bit PLAYERSPRITESETUP_FEMALE_TO_MALE_F, a bit PLAYERSPRITESETUP_FEMALE_TO_MALE_F, a
jr nz, .ok jr nz, .ok
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .ok jr z, .ok
ln e, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT ln e, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT
dec a ; FEMALE
jr z, .ok
ln e, PAL_NPC_PURPLE, OBJECTTYPE_SCRIPT
.ok .ok
ld [hl], e ld [hl], e

View file

@ -657,9 +657,12 @@ PokegearMap_InitPlayerIcon:
depixel 0, 0 depixel 0, 0
ld b, SPRITE_ANIM_INDEX_RED_WALK ld b, SPRITE_ANIM_INDEX_RED_WALK
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_gender jr z, .got_gender
ld b, SPRITE_ANIM_INDEX_BLUE_WALK ld b, SPRITE_ANIM_INDEX_BLUE_WALK
dec a ; FEMALE
jr z, .got_gender
ld b, SPRITE_ANIM_INDEX_PURPLE_WALK
.got_gender .got_gender
ld a, b ld a, b
call InitSpriteAnimStruct call InitSpriteAnimStruct
@ -2537,10 +2540,13 @@ Pokedex_GetArea:
push bc push bc
ld c, PAL_OW_RED ld c, PAL_OW_RED
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .male jr z, .got_gender
inc c ; PAL_OW_BLUE inc c ; PAL_OW_BLUE
.male dec a ; FEMALE
jr z, .got_gender
ld c, PAL_OW_PURPLE
.got_gender
ld a, c ld a, c
ld [hli], a ; attributes ld [hli], a ; attributes
pop bc pop bc
@ -2750,9 +2756,12 @@ TownMapPlayerIcon:
depixel 0, 0 depixel 0, 0
ld b, SPRITE_ANIM_INDEX_RED_WALK ; Male ld b, SPRITE_ANIM_INDEX_RED_WALK ; Male
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .got_gender jr z, .got_gender
ld b, SPRITE_ANIM_INDEX_BLUE_WALK ; Female ld b, SPRITE_ANIM_INDEX_BLUE_WALK ; Female
dec a ; FEMALE
jr z, .got_gender
ld b, SPRITE_ANIM_INDEX_PURPLE_WALK ; Enby
.got_gender .got_gender
ld a, b ld a, b
call InitSpriteAnimStruct call InitSpriteAnimStruct

View file

@ -192,9 +192,12 @@ SetBoxmonOrEggmonCaughtData:
.NotPokecenter2F: .NotPokecenter2F:
call GetWorldMapLocation call GetWorldMapLocation
ld b, a ld b, a
ld a, [wPlayerGender] ld a, [wPlayerGender] ; Vestigial, get rid of this later.
rrca ; shift bit 0 (PLAYERGENDER_FEMALE_F) to bit 7 (CAUGHT_GENDER_MASK) dec a ; FEMALE
or b ld a, b
jr nz, .not_female
or CAUGHT_GENDER_MASK
.not_female
ld [hl], a ld [hl], a
ret ret

View file

@ -801,20 +801,20 @@ LoadBluePage:
call CopyNickname call CopyNickname
farcall CorrectNickErrors farcall CorrectNickErrors
hlcoord 2, 13 hlcoord 2, 13
call PlaceString call PlaceString ; Goodbye OT Gender display, you'd cause more of a problem than you're worth
ld a, [wTempMonCaughtGender] ; ld a, [wTempMonCaughtGender]
and a ; and a
jr z, .done ; jr z, .done
cp $7f ; cp $7f
jr z, .done ; jr z, .done
and CAUGHT_GENDER_MASK ; and CAUGHT_GENDER_MASK
ld a, "♂" ; ld a, "♂"
jr z, .got_gender ; jr z, .got_gender
ld a, "♀" ; ld a, "♀"
.got_gender ;.got_gender
hlcoord 9, 13 ; hlcoord 9, 13
ld [hl], a ; ld [hl], a
.done ;.done
ret ret
.OTNamePointers: .OTNamePointers:

BIN
gfx/overworld/enby_fish.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 467 B

29
gfx/pack/pack_nb.pal Normal file
View file

@ -0,0 +1,29 @@
RGB 31, 31, 31
RGB 12, 24, 01
RGB 05, 16, 00
RGB 00, 00, 00
RGB 31, 31, 31
RGB 12, 24, 01
RGB 05, 16, 00
RGB 00, 00, 00
RGB 31, 31, 11
RGB 12, 24, 01
RGB 05, 16, 00
RGB 00, 00, 00
RGB 31, 31, 31
RGB 12, 24, 01
RGB 05, 16, 00
RGB 31, 00, 00
RGB 31, 31, 31
RGB 12, 24, 01
RGB 31, 00, 00
RGB 00, 00, 00
RGB 31, 31, 31
RGB 07, 19, 07
RGB 07, 19, 07
RGB 00, 00, 00

BIN
gfx/pack/pack_nb.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
gfx/player/enby.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 910 B

BIN
gfx/player/enby_back.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

2
gfx/player/topaz.pal Normal file
View file

@ -0,0 +1,2 @@
RGB 30, 19, 16
RGB 15, 00, 25

View file

@ -0,0 +1,31 @@
; border
RGB 28, 31, 20
RGB 21, 21, 21
RGB 13, 13, 13
RGB 00, 00, 00
; earth
RGB 28, 31, 20
RGB 00, 31, 00
RGB 00, 00, 31
RGB 00, 00, 00
; mountain
RGB 28, 31, 20
RGB 00, 31, 00
RGB 15, 07, 00
RGB 00, 00, 00
; city (enby)
RGB 28, 31, 20
RGB 22, 09, 31
RGB 10, 00, 26
RGB 00, 00, 00
; point of interest
RGB 28, 31, 20
RGB 00, 31, 00
RGB 00, 00, 31
RGB 31, 00, 00
; mountain point of interest
RGB 28, 31, 20
RGB 00, 31, 00
RGB 15, 07, 00
RGB 31, 00, 00

View file

@ -106,3 +106,9 @@ SuicuneSpriteGFX:: INCBIN "gfx/sprites/suicune.2bpp"
EnteiSpriteGFX:: INCBIN "gfx/sprites/entei.2bpp" EnteiSpriteGFX:: INCBIN "gfx/sprites/entei.2bpp"
RaikouSpriteGFX:: INCBIN "gfx/sprites/raikou.2bpp" RaikouSpriteGFX:: INCBIN "gfx/sprites/raikou.2bpp"
StandingYoungsterSpriteGFX:: INCBIN "gfx/sprites/standing_youngster.2bpp" StandingYoungsterSpriteGFX:: INCBIN "gfx/sprites/standing_youngster.2bpp"
SECTION "Sprites 3", ROMX
EnbySpriteGFX:: INCBIN "gfx/sprites/enby.2bpp"
EnbyBikeSpriteGFX:: INCBIN "gfx/sprites/enby_bike.2bpp"

BIN
gfx/sprites/enby.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 846 B

BIN
gfx/sprites/enby_bike.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 947 B

View file

@ -5,22 +5,22 @@
RGB 27, 31, 27 RGB 27, 31, 27
RGB 31, 19, 10 RGB 31, 19, 10
RGB 10, 14, 20 RGB 10, 09, 31
RGB 00, 00, 00 RGB 00, 00, 00
RGB 27, 31, 27 RGB 27, 31, 27
RGB 31, 19, 10 RGB 31, 19, 10
RGB 31, 07, 04 RGB 07, 23, 03
RGB 00, 00, 00 RGB 00, 00, 00
RGB 27, 31, 27 RGB 27, 31, 27
RGB 31, 19, 10 RGB 31, 19, 10
RGB 31, 07, 04 RGB 15, 10, 03
RGB 00, 00, 00 RGB 00, 00, 00
RGB 27, 31, 27 RGB 27, 31, 27
RGB 31, 19, 10 RGB 31, 19, 10
RGB 31, 07, 04 RGB 15, 00, 25
RGB 00, 00, 00 RGB 00, 00, 00
RGB 27, 31, 27 RGB 27, 31, 27

Binary file not shown.

After

Width:  |  Height:  |  Size: 880 B

View file

@ -386,7 +386,7 @@ PlaceGenderedPlayerName::
ld h, b ld h, b
ld l, c ld l, c
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
ld de, KunSuffixText ld de, KunSuffixText
jr z, PlaceCommandCharacter jr z, PlaceCommandCharacter
ld de, ChanSuffixText ld de, ChanSuffixText

View file

@ -75,7 +75,7 @@ ROMX $11
ROMX $12 ROMX $12
"Crystal Features 1" "Crystal Features 1"
"Egg Moves 2" "Egg Moves 2"
"Evolutions and Attacks 2"
ROMX $13 ROMX $13
"bank13" "bank13"
"Shrink Pics" "Shrink Pics"

View file

@ -283,7 +283,6 @@ INCLUDE "engine/events/halloffame.asm"
SECTION "Crystal Features 2", ROMX SECTION "Crystal Features 2", ROMX
INCLUDE "engine/events/kurt.asm" INCLUDE "engine/events/kurt.asm"
INCLUDE "engine/gfx/player_gfx.asm"
INCLUDE "mobile/mobile_22.asm" INCLUDE "mobile/mobile_22.asm"
INCLUDE "engine/events/unown_walls.asm" INCLUDE "engine/events/unown_walls.asm"
INCLUDE "engine/events/buena.asm" INCLUDE "engine/events/buena.asm"
@ -291,6 +290,10 @@ INCLUDE "engine/events/dratini.asm"
INCLUDE "engine/events/battle_tower/rules.asm" INCLUDE "engine/events/battle_tower/rules.asm"
INCLUDE "mobile/mobile_22_2.asm" INCLUDE "mobile/mobile_22_2.asm"
SECTION "Player GFX", ROMX
INCLUDE "engine/gfx/player_gfx.asm"
SECTION "bank23", ROMX SECTION "bank23", ROMX

View file

@ -5,6 +5,7 @@
const COPYCATSHOUSE2F_MONSTERDOLL const COPYCATSHOUSE2F_MONSTERDOLL
const COPYCATSHOUSE2F_BIRDDOLL const COPYCATSHOUSE2F_BIRDDOLL
const COPYCATSHOUSE2F_COPYCAT2 ; if player is female const COPYCATSHOUSE2F_COPYCAT2 ; if player is female
const COPYCATSHOUSE2F_COPYCAT3 ; if player is enby
CopycatsHouse2F_MapScripts: CopycatsHouse2F_MapScripts:
def_scene_scripts def_scene_scripts
@ -13,14 +14,22 @@ CopycatsHouse2F_MapScripts:
callback MAPCALLBACK_OBJECTS, CopycatsHouse2FWhichGenderCallback callback MAPCALLBACK_OBJECTS, CopycatsHouse2FWhichGenderCallback
CopycatsHouse2FWhichGenderCallback: CopycatsHouse2FWhichGenderCallback:
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Female ifequal FEMALE, .Female
ifequal ENBY, .Enby
disappear COPYCATSHOUSE2F_COPYCAT2 disappear COPYCATSHOUSE2F_COPYCAT2
disappear COPYCATSHOUSE2F_COPYCAT3
appear COPYCATSHOUSE2F_COPYCAT1 appear COPYCATSHOUSE2F_COPYCAT1
sjump .Done sjump .Done
.Female: .Female:
disappear COPYCATSHOUSE2F_COPYCAT1 disappear COPYCATSHOUSE2F_COPYCAT1
disappear COPYCATSHOUSE2F_COPYCAT3
appear COPYCATSHOUSE2F_COPYCAT2 appear COPYCATSHOUSE2F_COPYCAT2
sjump .Done
.Enby:
disappear COPYCATSHOUSE2F_COPYCAT1
disappear COPYCATSHOUSE2F_COPYCAT2
appear COPYCATSHOUSE2F_COPYCAT3
.Done: .Done:
endcallback endcallback
@ -32,8 +41,9 @@ Copycat:
iftrue .TryGivePassAgain iftrue .TryGivePassAgain
checkitem LOST_ITEM checkitem LOST_ITEM
iftrue .ReturnLostItem iftrue .ReturnLostItem
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Default_Female_1 ifequal FEMALE, .Default_Female_1
ifequal ENBY, .Default_Enby_1
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
faceplayer faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_CHRIS variablesprite SPRITE_COPYCAT, SPRITE_CHRIS
@ -43,12 +53,18 @@ Copycat:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
faceplayer faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_KRIS variablesprite SPRITE_COPYCAT, SPRITE_KRIS
sjump .Default_Merge_1
.Default_Enby_1:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_ENBY
.Default_Merge_1: .Default_Merge_1:
special LoadUsedSpritesGFX special LoadUsedSpritesGFX
checkevent EVENT_RETURNED_MACHINE_PART checkevent EVENT_RETURNED_MACHINE_PART
iftrue .TalkAboutLostItem iftrue .TalkAboutLostItem
opentext opentext
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Default_Female_2a iftrue .Default_Female_2a
writetext CopycatText_Male_1 writetext CopycatText_Male_1
sjump .Default_Merge_2a sjump .Default_Merge_2a
@ -58,11 +74,16 @@ Copycat:
.Default_Merge_2a: .Default_Merge_2a:
waitbutton waitbutton
closetext closetext
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Default_Female_3a ifequal FEMALE, .Default_Female_3a
ifequal ENBY, .Default_Enby_3a
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
sjump .Default_Merge_3a sjump .Default_Merge_3a
.Default_Enby_3a:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
sjump .Default_Merge_3a
.Default_Female_3a: .Default_Female_3a:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
.Default_Merge_3a: .Default_Merge_3a:
@ -77,7 +98,7 @@ Copycat:
.TalkAboutLostItem: .TalkAboutLostItem:
opentext opentext
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Default_Female_2b iftrue .Default_Female_2b
writetext CopycatText_Male_2 writetext CopycatText_Male_2
sjump .Default_Merge_2b sjump .Default_Merge_2b
@ -87,13 +108,18 @@ Copycat:
.Default_Merge_2b: .Default_Merge_2b:
waitbutton waitbutton
closetext closetext
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Default_Female_3b ifequal FEMALE, .Default_Female_3b
ifequal ENBY, .Default_Enby_3b
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
sjump .Default_Merge_3b sjump .Default_Merge_3b
.Default_Female_3b: .Default_Female_3b:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
sjump .Default_Merge_3b
.Default_Enby_3b:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
.Default_Merge_3b: .Default_Merge_3b:
faceplayer faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_LASS variablesprite SPRITE_COPYCAT, SPRITE_LASS
@ -128,8 +154,9 @@ Copycat:
end end
.GotPass: .GotPass:
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .GotPass_Female_1 ifequal FEMALE, .GotPass_Female_1
ifequal ENBY, .GotPass_Enby_1
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
faceplayer faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_CHRIS variablesprite SPRITE_COPYCAT, SPRITE_CHRIS
@ -139,10 +166,16 @@ Copycat:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
faceplayer faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_KRIS variablesprite SPRITE_COPYCAT, SPRITE_KRIS
sjump .GotPass_Merge_1
.GotPass_Enby_1:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_ENBY
.GotPass_Merge_1: .GotPass_Merge_1:
special LoadUsedSpritesGFX special LoadUsedSpritesGFX
opentext opentext
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .GotPass_Female_2 iftrue .GotPass_Female_2
writetext CopycatText_Male_3 writetext CopycatText_Male_3
sjump .GotPass_Merge_2 sjump .GotPass_Merge_2
@ -152,13 +185,18 @@ Copycat:
.GotPass_Merge_2: .GotPass_Merge_2:
waitbutton waitbutton
closetext closetext
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .GotPass_Female_3 ifequal FEMALE, .GotPass_Female_3
ifequal ENBY, .GotPass_Enby_3
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
sjump .GotPass_Merge_3 sjump .GotPass_Merge_3
.GotPass_Female_3: .GotPass_Female_3:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
sjump .GotPass_Merge_3
.GotPass_Enby_3:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
.GotPass_Merge_3: .GotPass_Merge_3:
faceplayer faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_LASS variablesprite SPRITE_COPYCAT, SPRITE_LASS
@ -377,3 +415,4 @@ CopycatsHouse2F_MapEvents:
object_event 2, 1, SPRITE_MONSTER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, CopycatsHouse2FDoll, -1 object_event 2, 1, SPRITE_MONSTER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, CopycatsHouse2FDoll, -1
object_event 7, 1, SPRITE_BIRD, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, CopycatsHouse2FDoll, -1 object_event 7, 1, SPRITE_BIRD, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, CopycatsHouse2FDoll, -1
object_event 4, 3, SPRITE_COPYCAT, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, Copycat, EVENT_COPYCAT_2 object_event 4, 3, SPRITE_COPYCAT, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, Copycat, EVENT_COPYCAT_2
object_event 4, 3, SPRITE_COPYCAT, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_PURPLE, OBJECTTYPE_SCRIPT, 0, Copycat, EVENT_COPYCAT_3

View file

@ -89,8 +89,9 @@ DanceTheaterSurfGuy:
sjump .GetSurf sjump .GetSurf
.KimonoGirlsUndefeated: .KimonoGirlsUndefeated:
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .PlayerIsFemale if_equal FEMALE, .PlayerIsFemale
if_equal ENBY, .PlayerIsEnby
writetext SurfGuyLadGiftText writetext SurfGuyLadGiftText
waitbutton waitbutton
closetext closetext
@ -101,6 +102,12 @@ DanceTheaterSurfGuy:
waitbutton waitbutton
closetext closetext
end end
.PlayerIsEnby:
writetext SurfGuyChildGiftText
waitbutton
closetext
end
.GetSurf: .GetSurf:
writetext SurfGuyLikeADanceText writetext SurfGuyLikeADanceText
@ -263,6 +270,14 @@ SurfGuyLassieGiftText:
para "KIMONO GIRLS, I'll" para "KIMONO GIRLS, I'll"
line "give you a gift." line "give you a gift."
done done
SurfGuyChildGiftText:
text "Pal, if you can"
line "defeat all the"
para "KIMONO GIRLS, I'll"
line "give you a gift."
done
SurfGuyLikeADanceText: SurfGuyLikeADanceText:
text "The way you bat-" text "The way you bat-"

View file

@ -59,8 +59,9 @@ SSAquaGranddaughterBefore:
showemote EMOTE_SHOCK, FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_GENTLEMAN, 15 showemote EMOTE_SHOCK, FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_GENTLEMAN, 15
applymovement FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_TWIN1, SSAquaGranddaughterEntersCabinMovement applymovement FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_TWIN1, SSAquaGranddaughterEntersCabinMovement
turnobject FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_GENTLEMAN, RIGHT turnobject FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_GENTLEMAN, RIGHT
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .PlayerIsFemale ifequal FEMALE, .PlayerIsFemale
ifequal ENBY, .PlayerIsEnby
opentext opentext
writetext SSAquaGranddaughterWasPlayingMText writetext SSAquaGranddaughterWasPlayingMText
waitbutton waitbutton
@ -72,6 +73,14 @@ SSAquaGranddaughterBefore:
writetext SSAquaGranddaughterWasPlayingFText writetext SSAquaGranddaughterWasPlayingFText
waitbutton waitbutton
closetext closetext
sjump .cont
.PlayerIsEnby:
opentext
writetext SSAquaGranddaughterWasPlayingNBText
waitbutton
closetext
sjump .cont
.cont: .cont:
turnobject FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_TWIN2, DOWN turnobject FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_TWIN2, DOWN
applymovement FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_GENTLEMAN, SSAquaGrandpaApproachesPlayerMovement applymovement FASTSHIPCABINS_SE_SSE_CAPTAINSCABIN_GENTLEMAN, SSAquaGrandpaApproachesPlayerMovement
@ -330,12 +339,20 @@ SSAquaGranddaughterWasPlayingFText:
para "with the CAPTAIN" para "with the CAPTAIN"
line "and this big girl!" line "and this big girl!"
done done
SSAquaGranddaughterWasPlayingNBText:
text "Grandpa, here I"
line "am! I was playing"
para "with the CAPTAIN"
line "and this kid!"
done
SSAquaGranddaughterHadFunText: SSAquaGranddaughterHadFunText:
text "I had lots of fun" text "I had lots of fun"
line "playing!" line "playing!"
done done
PokefanmColinSeenText: PokefanmColinSeenText:
text "Hey, kid! Want to" text "Hey, kid! Want to"
line "battle with me?" line "battle with me?"

View file

@ -411,8 +411,8 @@ Script_WalkOutOfMobileBattleRoom:
end end
Pokecenter2F_CheckGender: Pokecenter2F_CheckGender:
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Female ifnotequal MALE, .Female
applymovementlasttalked Pokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight applymovementlasttalked Pokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight
applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesThreeStepsUp applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesThreeStepsUp
end end
@ -459,8 +459,7 @@ Script_WalkOutOfLinkTradeRoom:
clearflag ENGINE_KRIS_IN_CABLE_CLUB clearflag ENGINE_KRIS_IN_CABLE_CLUB
playsound SFX_TINGLE playsound SFX_TINGLE
applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
setval (PAL_NPC_BLUE << 4) scall Script_RestorePlayerColor
special SetPlayerPalette
applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
special UpdatePlayerSprite special UpdatePlayerSprite
applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsDown_2 applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsDown_2
@ -481,8 +480,7 @@ Script_WalkOutOfLinkBattleRoom:
clearflag ENGINE_KRIS_IN_CABLE_CLUB clearflag ENGINE_KRIS_IN_CABLE_CLUB
playsound SFX_TINGLE playsound SFX_TINGLE
applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
setval (PAL_NPC_BLUE << 4) scall Script_RestorePlayerColor
special SetPlayerPalette
applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
special UpdatePlayerSprite special UpdatePlayerSprite
applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsDown_2 applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsDown_2
@ -490,8 +488,8 @@ Script_WalkOutOfLinkBattleRoom:
end end
TimeCapsuleScript_CheckPlayerGender: TimeCapsuleScript_CheckPlayerGender:
checkflag ENGINE_PLAYER_IS_FEMALE readvar VAR_PLAYERGENDER
iftrue .Female ifnotequal MALE, .Female
readvar VAR_FACING readvar VAR_FACING
ifequal LEFT, .MaleFacingLeft ifequal LEFT, .MaleFacingLeft
ifequal RIGHT, .MaleFacingRight ifequal RIGHT, .MaleFacingRight
@ -569,8 +567,7 @@ Script_LeftTimeCapsule:
clearflag ENGINE_KRIS_IN_CABLE_CLUB clearflag ENGINE_KRIS_IN_CABLE_CLUB
playsound SFX_TINGLE playsound SFX_TINGLE
applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
setval (PAL_NPC_BLUE << 4) scall Script_RestorePlayerColor
special SetPlayerPalette
applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
special UpdatePlayerSprite special UpdatePlayerSprite
applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepDown applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepDown
@ -580,6 +577,17 @@ Script_LeftTimeCapsule:
setmapscene TIME_CAPSULE, SCENE_TIMECAPSULE_INITIALIZE setmapscene TIME_CAPSULE, SCENE_TIMECAPSULE_INITIALIZE
end end
Script_RestorePlayerColor:
readvar VAR_PLAYERGENDER
ifequal FEMALE, .Blue
setval (PAL_NPC_PURPLE << 4)
special SetPlayerPalette
end
.Blue
setval (PAL_NPC_BLUE << 4)
special SetPlayerPalette
end
Pokecenter2FLinkRecordSign: Pokecenter2FLinkRecordSign:
refreshscreen refreshscreen
special DisplayLinkRecord special DisplayLinkRecord

View file

@ -69,15 +69,8 @@ SunnyScript:
promptbutton promptbutton
setevent EVENT_MET_SUNNY_OF_SUNDAY setevent EVENT_MET_SUNNY_OF_SUNDAY
.MetSunny: .MetSunny:
checkflag ENGINE_PLAYER_IS_FEMALE writetext SunnyGivesGiftText
iftrue .Kris
writetext SunnyGivesGiftText1
promptbutton promptbutton
sjump .next
.Kris:
writetext SunnyGivesGiftText2
promptbutton
.next
verbosegiveitem MAGNET verbosegiveitem MAGNET
iffalse SunnyDoneScript iffalse SunnyDoneScript
setevent EVENT_GOT_MAGNET_FROM_SUNNY setevent EVENT_GOT_MAGNET_FROM_SUNNY
@ -179,13 +172,7 @@ MeetSunnyText:
cont "Sunday today!" cont "Sunday today!"
done done
SunnyGivesGiftText1: SunnyGivesGiftText:
text "I was told to give"
line "you this if I saw"
cont "you!"
done
SunnyGivesGiftText2:
text "I was told to give" text "I was told to give"
line "you this if I saw" line "you this if I saw"
cont "you!" cont "you!"

View file

@ -310,7 +310,7 @@ asm_4828d:
ld a, [hli] ld a, [hli]
cp $50 cp $50
jr nz, .asm_482e1 jr nz, .asm_482e1
ld a, 1 << PLAYERGENDER_FEMALE_F ld a, FEMALE
ld [wPlayerGender], a ld [wPlayerGender], a
jr .asm_482f1 jr .asm_482f1
.asm_482ed .asm_482ed

View file

@ -579,7 +579,7 @@ Function89481:
Function89492: Function89492:
ld d, 0 ld d, 0
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
ret z ret z
inc d inc d
ret ret
@ -1196,7 +1196,7 @@ Function897d5:
Function89807: Function89807:
ld hl, ChrisSilhouetteGFX ld hl, ChrisSilhouetteGFX
ld a, [wPlayerGender] ld a, [wPlayerGender]
bit PLAYERGENDER_FEMALE_F, a and a ; MALE
jr z, .asm_89814 jr z, .asm_89814
ld hl, KrisSilhouetteGFX ld hl, KrisSilhouetteGFX
.asm_89814 .asm_89814

View file

@ -2878,9 +2878,9 @@ wMapStatusEnd::
wCrystalData:: wCrystalData::
wPlayerGender:: wPlayerGender::
; bit 0: ; 0 male
; 0 male ; 1 female
; 1 female ; 2 enby
db db
wd473:: ds 1 wd473:: ds 1
wd474:: ds 1 wd474:: ds 1