jep-hack/maps/CopycatsHouse2F.asm
Zeta_Null b3a3e27906 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.
2023-09-11 11:26:46 -04:00

419 lines
9.4 KiB
NASM

object_const_def
const COPYCATSHOUSE2F_COPYCAT1 ; if player is male
const COPYCATSHOUSE2F_DODRIO
const COPYCATSHOUSE2F_FAIRYDOLL ; lost item
const COPYCATSHOUSE2F_MONSTERDOLL
const COPYCATSHOUSE2F_BIRDDOLL
const COPYCATSHOUSE2F_COPYCAT2 ; if player is female
const COPYCATSHOUSE2F_COPYCAT3 ; if player is enby
CopycatsHouse2F_MapScripts:
def_scene_scripts
def_callbacks
callback MAPCALLBACK_OBJECTS, CopycatsHouse2FWhichGenderCallback
CopycatsHouse2FWhichGenderCallback:
readvar VAR_PLAYERGENDER
ifequal FEMALE, .Female
ifequal ENBY, .Enby
disappear COPYCATSHOUSE2F_COPYCAT2
disappear COPYCATSHOUSE2F_COPYCAT3
appear COPYCATSHOUSE2F_COPYCAT1
sjump .Done
.Female:
disappear COPYCATSHOUSE2F_COPYCAT1
disappear COPYCATSHOUSE2F_COPYCAT3
appear COPYCATSHOUSE2F_COPYCAT2
sjump .Done
.Enby:
disappear COPYCATSHOUSE2F_COPYCAT1
disappear COPYCATSHOUSE2F_COPYCAT2
appear COPYCATSHOUSE2F_COPYCAT3
.Done:
endcallback
Copycat:
faceplayer
checkevent EVENT_GOT_PASS_FROM_COPYCAT
iftrue .GotPass
checkevent EVENT_RETURNED_LOST_ITEM_TO_COPYCAT
iftrue .TryGivePassAgain
checkitem LOST_ITEM
iftrue .ReturnLostItem
readvar VAR_PLAYERGENDER
ifequal FEMALE, .Default_Female_1
ifequal ENBY, .Default_Enby_1
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_CHRIS
sjump .Default_Merge_1
.Default_Female_1:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
faceplayer
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:
special LoadUsedSpritesGFX
checkevent EVENT_RETURNED_MACHINE_PART
iftrue .TalkAboutLostItem
opentext
readvar VAR_PLAYERGENDER
iftrue .Default_Female_2a
writetext CopycatText_Male_1
sjump .Default_Merge_2a
.Default_Female_2a:
writetext CopycatText_Female_1
.Default_Merge_2a:
waitbutton
closetext
readvar VAR_PLAYERGENDER
ifequal FEMALE, .Default_Female_3a
ifequal ENBY, .Default_Enby_3a
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
sjump .Default_Merge_3a
.Default_Enby_3a:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
sjump .Default_Merge_3a
.Default_Female_3a:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
.Default_Merge_3a:
faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_LASS
special LoadUsedSpritesGFX
opentext
writetext CopycatText_QuickMimicking
waitbutton
closetext
end
.TalkAboutLostItem:
opentext
readvar VAR_PLAYERGENDER
iftrue .Default_Female_2b
writetext CopycatText_Male_2
sjump .Default_Merge_2b
.Default_Female_2b:
writetext CopycatText_Female_2
.Default_Merge_2b:
waitbutton
closetext
readvar VAR_PLAYERGENDER
ifequal FEMALE, .Default_Female_3b
ifequal ENBY, .Default_Enby_3b
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
sjump .Default_Merge_3b
.Default_Female_3b:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
sjump .Default_Merge_3b
.Default_Enby_3b:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
.Default_Merge_3b:
faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_LASS
special LoadUsedSpritesGFX
opentext
writetext CopycatText_Worried
waitbutton
closetext
setevent EVENT_MET_COPYCAT_FOUND_OUT_ABOUT_LOST_ITEM
end
.ReturnLostItem:
opentext
writetext CopycatText_GiveDoll
promptbutton
takeitem LOST_ITEM
setevent EVENT_RETURNED_LOST_ITEM_TO_COPYCAT
clearevent EVENT_COPYCATS_HOUSE_2F_DOLL
sjump .GivePass
.TryGivePassAgain:
opentext
.GivePass:
writetext CopycatText_GivePass
promptbutton
verbosegiveitem PASS
iffalse .Cancel
setevent EVENT_GOT_PASS_FROM_COPYCAT
writetext CopycatText_ExplainPass
waitbutton
closetext
end
.GotPass:
readvar VAR_PLAYERGENDER
ifequal FEMALE, .GotPass_Female_1
ifequal ENBY, .GotPass_Enby_1
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_CHRIS
sjump .GotPass_Merge_1
.GotPass_Female_1:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
faceplayer
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:
special LoadUsedSpritesGFX
opentext
readvar VAR_PLAYERGENDER
iftrue .GotPass_Female_2
writetext CopycatText_Male_3
sjump .GotPass_Merge_2
.GotPass_Female_2:
writetext CopycatText_Female_3
.GotPass_Merge_2:
waitbutton
closetext
readvar VAR_PLAYERGENDER
ifequal FEMALE, .GotPass_Female_3
ifequal ENBY, .GotPass_Enby_3
applymovement COPYCATSHOUSE2F_COPYCAT1, CopycatSpinAroundMovementData
sjump .GotPass_Merge_3
.GotPass_Female_3:
applymovement COPYCATSHOUSE2F_COPYCAT2, CopycatSpinAroundMovementData
sjump .GotPass_Merge_3
.GotPass_Enby_3:
applymovement COPYCATSHOUSE2F_COPYCAT3, CopycatSpinAroundMovementData
.GotPass_Merge_3:
faceplayer
variablesprite SPRITE_COPYCAT, SPRITE_LASS
special LoadUsedSpritesGFX
opentext
writetext CopycatText_ItsAScream
waitbutton
.Cancel:
closetext
end
CopycatsDodrio:
opentext
writetext CopycatsDodrioText1
cry DODRIO
promptbutton
writetext CopycatsDodrioText2
waitbutton
closetext
end
CopycatsHouse2FDoll:
jumptext CopycatsHouse2FDollText
CopycatsHouse2FBookshelf:
jumpstd PictureBookshelfScript
CopycatSpinAroundMovementData:
turn_head DOWN
turn_head LEFT
turn_head UP
turn_head RIGHT
turn_head DOWN
turn_head LEFT
turn_head UP
turn_head RIGHT
turn_head DOWN
step_end
CopycatText_Male_1:
text "<PLAYER>: Hi! Do"
line "you like #MON?"
para "<PLAYER>: Uh, no, I"
line "just asked you."
para "<PLAYER>: Huh?"
line "You're strange!"
done
CopycatText_QuickMimicking:
text "COPYCAT: Hmm?"
line "Quit mimicking?"
para "But that's my"
line "favorite hobby!"
done
CopycatText_Male_2:
text "<PLAYER>: Hi!"
line "I heard that you"
para "lost your favorite"
line "# DOLL."
para "<PLAYER>: If I find"
line "it, you'll give me"
cont "a rail PASS?"
para "<PLAYER>: I'll go"
line "find it for you."
para "You think you lost"
line "it when you went"
cont "to VERMILION CITY?"
done
CopycatText_Worried:
text "COPYCAT: Pardon?"
para "I shouldn't decide"
line "what you should"
cont "do?"
para "But I'm really"
line "worried… What if"
cont "someone finds it?"
done
CopycatText_GiveDoll:
text "COPYCAT: Yay!"
line "That's my CLEFAIRY"
cont "# DOLL!"
para "See the tear where"
line "the right leg is"
para "sewn on? That's"
line "proof!"
done
CopycatText_GivePass:
text "OK. Here's the"
line "MAGNET TRAIN PASS"
cont "like I promised!"
done
CopycatText_ExplainPass:
text "COPYCAT: That's"
line "the PASS for the"
cont "MAGNET TRAIN."
para "The rail company"
line "man gave me that"
para "when they tore"
line "down our old house"
cont "for the STATION."
done
CopycatText_Male_3:
text "<PLAYER>: Hi!"
line "Thanks a lot for"
cont "the rail PASS!"
para "<PLAYER>: Pardon?"
para "<PLAYER>: Is it"
line "that fun to mimic"
cont "my every move?"
done
CopycatText_ItsAScream:
text "COPYCAT: You bet!"
line "It's a scream!"
done
CopycatText_Female_1:
text "<PLAYER>: Hi. You"
line "must like #MON."
para "<PLAYER>: No, not"
line "me. I asked you."
para "<PLAYER>: Pardon?"
line "You're weird!"
done
CopycatText_Female_2:
text "<PLAYER>: Hi. Did"
line "you really lose"
cont "your # DOLL?"
para "<PLAYER>: You'll"
line "really give me a"
para "rail PASS if I"
line "find it for you?"
para "<PLAYER>: Sure,"
line "I'll look for it!"
para "You think you lost"
line "it when you were"
cont "in VERMILION?"
done
CopycatText_Female_3:
text "<PLAYER>: Thank you"
line "for the rail PASS!"
para "<PLAYER>: …Pardon?"
para "<PLAYER>: Is it"
line "really that fun to"
para "copy what I say"
line "and do?"
done
CopycatsDodrioText1:
text "DODRIO: Gii giii!"
done
CopycatsDodrioText2:
text "MIRROR, MIRROR ON"
line "THE WALL, WHO'S"
para "THE FAIREST ONE OF"
line "ALL?"
done
CopycatsHouse2FDollText:
text "This is a rare"
line "#MON! Huh?"
para "It's only a doll…"
done
CopycatsHouse2F_MapEvents:
db 0, 0 ; filler
def_warp_events
warp_event 3, 0, COPYCATS_HOUSE_1F, 3
def_coord_events
def_bg_events
bg_event 0, 1, BGEVENT_READ, CopycatsHouse2FBookshelf
bg_event 1, 1, BGEVENT_READ, CopycatsHouse2FBookshelf
def_object_events
object_event 4, 3, SPRITE_COPYCAT, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, Copycat, EVENT_COPYCAT_1
object_event 6, 4, SPRITE_MOLTRES, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_SCRIPT, 0, CopycatsDodrio, -1
object_event 6, 1, SPRITE_FAIRY, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, CopycatsHouse2FDoll, EVENT_COPYCATS_HOUSE_2F_DOLL
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 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