mirror of
https://github.com/pret/pokefirered.git
synced 2026-05-09 12:35:23 -05:00
504 lines
17 KiB
PHP
504 lines
17 KiB
PHP
@ 'requests_effects' should be set to 1 if the special contains a call
|
|
@ to 'Script_RequestEffects', which allows it to be analyzed with
|
|
@ 'RunScriptImmediatelyUntilEffect'.
|
|
.macro def_special ptr:req, requests_effects=0
|
|
.global SPECIAL_\ptr
|
|
.set SPECIAL_\ptr, __special__
|
|
.set __special__, __special__ + 1
|
|
.if \requests_effects == 0
|
|
.4byte \ptr
|
|
.else
|
|
.4byte \ptr + ROM_SIZE
|
|
.endif
|
|
.endm
|
|
|
|
.set __special__, 0
|
|
.align 2
|
|
gSpecials::
|
|
def_special HealPlayerParty
|
|
def_special SetCableClubWarp
|
|
def_special DoCableClubWarp
|
|
def_special ReturnFromLinkRoom
|
|
def_special CleanupLinkRoomState
|
|
def_special ExitLinkRoom
|
|
def_special NullFieldSpecial @ Secret Base specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special PlayerHasMulch
|
|
def_special Bag_ChooseMulch
|
|
def_special CanWaterBerryPlot
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special ObjectEventInteractionWaterBerryTree
|
|
def_special PlayerHasBerries
|
|
def_special TryBattleLinkup
|
|
def_special TryTradeLinkup
|
|
def_special TryRecordMixLinkup
|
|
def_special CloseLink
|
|
def_special EnterColosseumPlayerSpot
|
|
def_special EnterTradeSeat
|
|
def_special StartWiredCableClubTrade
|
|
def_special CableClub_AskSaveTheGame
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special SavePlayerParty
|
|
def_special LoadPlayerParty
|
|
def_special ChooseHalfPartyForBattle
|
|
def_special Script_ShowLinkTrainerCard
|
|
def_special ObjectEventInteractionGetBerryTreeData
|
|
def_special ObjectEventInteractionGetBerryName
|
|
def_special ObjectEventInteractionGetBerryCountString
|
|
def_special Bag_ChooseBerry
|
|
def_special ObjectEventInteractionPlantBerryTree
|
|
def_special ObjectEventInteractionPickBerryTree
|
|
def_special ObjectEventInteractionRemoveBerryTree
|
|
def_special IsEnigmaBerryValid
|
|
def_special GetTrainerBattleMode
|
|
def_special ShowTrainerIntroSpeech
|
|
def_special ShowTrainerCantBattleSpeech
|
|
def_special GetTrainerFlag
|
|
def_special DoTrainerApproach
|
|
def_special PlayTrainerEncounterMusic
|
|
def_special ShouldTryRematchBattle
|
|
def_special IsTrainerReadyForRematch
|
|
def_special BattleSetup_StartRematchBattle
|
|
def_special ShowPokemonStorageSystemPC
|
|
def_special HasEnoughMonsForDoubleBattle
|
|
def_special NullFieldSpecial @ Hoenn TV specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special HasLeadMonBeenRenamed
|
|
def_special NullFieldSpecial @ Contest specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special TryContestLinkup
|
|
def_special SaveGame
|
|
def_special DoWateringBerryTreeAnim
|
|
def_special ShowEasyChatScreen
|
|
def_special ShowEasyChatMessage
|
|
def_special NullFieldSpecial @ Mauville Man specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special GetHeracrossSizeRecordInfo
|
|
def_special CompareHeracrossSize
|
|
def_special GetMagikarpSizeRecordInfo
|
|
def_special CompareMagikarpSize
|
|
def_special NameRaterWasNicknameChanged
|
|
def_special BufferMonNickname
|
|
def_special IsMonOTIDNotPlayers
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special BufferRandomHobbyOrLifestyleString
|
|
def_special NullFieldSpecial
|
|
def_special RegisteredItemHandleBikeSwap
|
|
def_special CalculatePlayerPartyCount
|
|
def_special CountPartyNonEggMons
|
|
def_special CountPartyAliveNonEggMons_IgnoreVar0x8004Slot
|
|
def_special NullFieldSpecial @ Contest specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial @ Mauville Gym specials
|
|
def_special NullFieldSpecial
|
|
def_special ShowFieldMessageStringVar4
|
|
def_special DrawWholeMapView
|
|
def_special GetPlayerXY
|
|
def_special NullFieldSpecial @ Mauville/Petalburg Gym specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special GetPlayerTrainerIdOnesDigit
|
|
def_special BufferBigGuyOrBigGirlString
|
|
def_special BufferSonOrDaughterString
|
|
def_special SetHiddenItemFlag
|
|
def_special NullFieldSpecial @ Cable Car specials
|
|
def_special NullFieldSpecial
|
|
def_special Overworld_PlaySpecialMapMusic
|
|
def_special StartWallClock
|
|
def_special Special_ViewWallClock
|
|
def_special NullFieldSpecial
|
|
def_special StartOldManTutorialBattle
|
|
def_special ChangePokemonNickname
|
|
def_special ChoosePartyMon
|
|
def_special NullFieldSpecial @ Berry Blender/Roulette specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special Script_IsFanClubMemberFanOfPlayer
|
|
def_special Script_GetNumFansOfPlayerInTrainerFanClub
|
|
def_special Script_BufferFanClubTrainerName
|
|
def_special Script_TryLoseFansFromPlayTimeAfterLinkBattle
|
|
def_special Script_TryLoseFansFromPlayTime
|
|
def_special Script_SetPlayerGotFirstFans
|
|
def_special Script_UpdateTrainerFanClubGameClear
|
|
def_special Script_TryGainNewFanFromCounter
|
|
def_special RockSmashWildEncounter
|
|
def_special NullFieldSpecial @ Gabby and Ty specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special GetBattleOutcome
|
|
def_special GetDaycareMonNicknames
|
|
def_special GetDaycareState
|
|
def_special RejectEggFromDayCare
|
|
def_special GiveEggFromDaycare
|
|
def_special SetDaycareCompatibilityString
|
|
def_special GetSelectedMonNicknameAndSpecies
|
|
def_special StoreSelectedPokemonInDaycare
|
|
def_special ChooseSendDaycareMon
|
|
def_special ShowDaycareLevelMenu
|
|
def_special GetNumLevelsGainedFromDaycare
|
|
def_special GetDaycareCost
|
|
def_special TakePokemonFromDaycare
|
|
def_special ScriptHatchMon
|
|
def_special EggHatch
|
|
def_special DaycareMonReceivedMail
|
|
def_special ShowBattleRecords
|
|
def_special IsEnoughForCostInVar0x8005
|
|
def_special SubtractMoneyFromVar0x8005
|
|
def_special TryFieldPoisonWhiteOut
|
|
def_special SetCB2WhiteOut
|
|
def_special NullFieldSpecial @ Rotating gate puzzle specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial @ SS Tidal specials
|
|
def_special NullFieldSpecial
|
|
def_special EnterSafariMode
|
|
def_special ExitSafariMode
|
|
def_special GetWeekCount
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special GetPokedexCount
|
|
def_special GetProfOaksRatingMessage
|
|
def_special AnimatePcTurnOn
|
|
def_special AnimatePcTurnOff
|
|
def_special GetElevatorFloor
|
|
def_special NullFieldSpecial @ Lottery Corner specials
|
|
def_special NullFieldSpecial
|
|
def_special ChooseMonForMoveRelearner
|
|
def_special SelectMoveDeleterMove
|
|
def_special MoveDeleterForgetMove
|
|
def_special BufferMoveDeleterNicknameAndMove
|
|
def_special GetNumMovesSelectedMonHas
|
|
def_special TeachMoveRelearnerMove
|
|
def_special NullFieldSpecial @ Hoenn Cycling Road specials
|
|
def_special NullFieldSpecial
|
|
def_special GetPlayerAvatarBike
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special GetLeadMonFriendship
|
|
def_special CopyEReaderTrainerGreeting
|
|
def_special ValidateEReaderTrainer
|
|
def_special NullFieldSpecial
|
|
def_special ReducePlayerPartyToSelectedMons
|
|
def_special BedroomPC
|
|
def_special PlayerPC
|
|
def_special ShowTownMap
|
|
def_special GetInGameTradeSpeciesInfo
|
|
def_special CreateInGameTradePokemon
|
|
def_special DoInGameTradeScene
|
|
def_special GetTradeSpecies
|
|
def_special NullFieldSpecial @ Misc Hoenn specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special ScriptMenu_CreatePCMultichoice
|
|
def_special HallOfFamePCBeginFade
|
|
def_special ShowDiploma
|
|
def_special NullFieldSpecial @ Check lead mon Contest strength specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special LookThroughPorthole
|
|
def_special DoSoftReset
|
|
def_special EnterHallOfFame
|
|
def_special AnimateElevator
|
|
def_special NullFieldSpecial @ ShowGlassWorkshopMenu
|
|
def_special SpawnCameraObject
|
|
def_special RemoveCameraObject
|
|
def_special NullFieldSpecial @ Misc Hoenn specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special BufferEReaderTrainerName
|
|
def_special GetRandomSlotMachineId
|
|
def_special GetPlayerFacingDirection, requests_effects=TRUE
|
|
def_special NullFieldSpecial @ Abandoned Ship room key specials
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special LeadMonHasEffortRibbon
|
|
def_special GiveLeadMonEffortRibbon
|
|
def_special AreLeadMonEVsMaxedOut
|
|
def_special Script_FacePlayer
|
|
def_special Script_ClearHeldMovement
|
|
def_special InitRoamer
|
|
def_special NullFieldSpecial
|
|
def_special PlayerHasGrassPokemonInParty
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special IsStarterFirstStageInParty
|
|
def_special NullFieldSpecial
|
|
def_special IsThereRoomInAnyBoxForMorePokemon
|
|
def_special NullFieldSpecial
|
|
def_special DrawElevatorCurrentFloorWindow
|
|
def_special NullFieldSpecial
|
|
def_special IsPokerusInParty
|
|
def_special SetIcefallCaveCrackedIceMetatiles
|
|
def_special ShakeScreen
|
|
def_special StartGroudonKyogreBattle
|
|
def_special BattleSetup_StartLegendaryBattle
|
|
def_special StartRegiBattle
|
|
def_special SetTrainerFacingDirection
|
|
def_special ShouldTryGetTrainerScript
|
|
def_special NullFieldSpecial
|
|
def_special StartDroughtWeatherBlend
|
|
def_special DoDiveWarp
|
|
def_special DoFallWarp
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special SetEReaderTrainerGfxId
|
|
def_special BattleSetup_StartLatiBattle
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special ScriptGetPartyMonSpecies
|
|
def_special IsSelectedMonEgg
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special LoadPlayerBag
|
|
def_special Script_FadeOutMapMusic
|
|
def_special NullFieldSpecial
|
|
def_special NullFieldSpecial
|
|
def_special HasAllKantoMons
|
|
def_special IsMonOTNameNotPlayers
|
|
def_special NullFieldSpecial
|
|
def_special DoesPartyHaveEnigmaBerry
|
|
def_special DoSpecialTrainerBattle
|
|
def_special SetPostgameFlags
|
|
def_special StartMarowakBattle
|
|
def_special ForcePlayerOntoBike
|
|
def_special ShowScrollableMultichoice
|
|
def_special ReturnToListMenu
|
|
def_special DoPicboxCancel
|
|
def_special SetVermilionTrashCans
|
|
def_special SeafoamIslandsB4F_CurrentDumpsPlayerOnLand
|
|
def_special SampleResortGorgeousMonAndReward
|
|
def_special CheckAddCoins
|
|
def_special GetDaycarePokemonCount
|
|
def_special CloseElevatorCurrentFloorWindow
|
|
def_special ForcePlayerToStartSurfing
|
|
def_special GetStarterSpecies
|
|
def_special SetSeenMon
|
|
def_special VsSeekerResetObjectMovementAfterChargeComplete
|
|
def_special ShouldShowBoxWasFullMessage
|
|
def_special ChangeBoxPokemonNickname
|
|
def_special UpdateTrainerCardPhotoIcons
|
|
def_special StickerManGetBragFlags
|
|
def_special SetUsedPkmnCenterQuestLogEvent
|
|
def_special IsWirelessAdapterConnected
|
|
def_special TryBecomeLinkLeader
|
|
def_special TryJoinLinkGroup
|
|
def_special RunUnionRoom
|
|
def_special ShowWirelessCommunicationScreen
|
|
def_special EnableNationalPokedex
|
|
def_special SetWalkingIntoSignVars
|
|
def_special DisableMsgBoxWalkaway
|
|
def_special VsSeekerFreezeObjectsAfterChargeComplete
|
|
def_special SetFlavorTextFlagFromSpecialVars
|
|
def_special UpdatePickStateFromSpecialVar8005
|
|
def_special OverworldWhiteOutGetMoneyLoss
|
|
def_special PutMonInRoute5Daycare
|
|
def_special GetCostToWithdrawRoute5DaycareMon
|
|
def_special IsThereMonInRoute5Daycare
|
|
def_special GetNumLevelsGainedForRoute5DaycareMon
|
|
def_special TakePokemonFromRoute5Daycare
|
|
def_special DoSeagallopFerryScene
|
|
def_special DoesPlayerPartyContainSpecies
|
|
def_special Script_SetHelpContext
|
|
def_special BackupHelpContext
|
|
def_special RestoreHelpContext
|
|
def_special ValidateSavedWonderCard
|
|
def_special SetUnlockedPokedexFlags
|
|
def_special InitUnionRoom
|
|
def_special BufferUnionRoomPlayerName
|
|
def_special QuestLog_StartRecordingInputsAfterDeferredEvent
|
|
def_special GetMartClerkObjectId
|
|
def_special GetMysteryGiftCardStat
|
|
def_special GetQuestLogState
|
|
def_special QuestLog_CutRecording
|
|
def_special WonderNews_GetRewardInfo
|
|
def_special GetPCBoxToSendMon
|
|
def_special OpenMuseumFossilPic
|
|
def_special CloseMuseumFossilPic
|
|
def_special ChooseMonForMoveTutor
|
|
def_special ChooseMonForWirelessMinigame
|
|
def_special SetBattledTrainerFlag
|
|
def_special SetHelpContextForMap
|
|
def_special DoSSAnneDepartureCutscene
|
|
def_special IsPokemonJumpSpeciesInParty
|
|
def_special IsNationalPokedexEnabled
|
|
def_special CallTrainerTowerFunc
|
|
def_special ShowPokemonJumpRecords
|
|
def_special BufferTMHMMoveName
|
|
def_special DaisyMassageServices
|
|
def_special HelpSystem_Disable
|
|
def_special HelpSystem_Enable
|
|
def_special SetPostgameFlags
|
|
def_special HasAtLeastOneBerry
|
|
def_special DisplayBerryPowderVendorMenu
|
|
def_special RemoveBerryPowderVendorMenu
|
|
def_special Script_HasEnoughBerryPowder
|
|
def_special Script_TakeBerryPowder
|
|
def_special PrintPlayerBerryPowderAmount
|
|
def_special DoPokemonLeagueLightingEffect
|
|
def_special ShowBerryCrushRankings
|
|
def_special CapeBrinkGetMoveToTeachLeadPokemon
|
|
def_special HasLearnedAllMovesFromCapeBrinkTutor
|
|
def_special DoCredits
|
|
def_special ShowDodrioBerryPickingRecords
|
|
def_special DrawSeagallopDestinationMenu
|
|
def_special GetSelectedSeagallopDestination
|
|
def_special GetSeagallopNumber
|
|
def_special GetPlayerFacingDirection, requests_effects=TRUE
|
|
def_special DoDeoxysTriangleInteraction
|
|
def_special SetDeoxysTrianglePalette
|
|
def_special IsPlayerLeftOfVermilionSailor
|
|
def_special IsBadEggInParty
|
|
def_special ReadTrainerTowerAndValidate
|
|
def_special HasAllMons
|
|
def_special IsPlayerNotInTrainerTowerLobby
|
|
def_special BrailleCursorToggle
|
|
def_special Script_ResetUnionRoomTrade
|
|
def_special PlayerPartyContainsSpeciesWithPlayerID
|
|
def_special AnimateTeleporterHousing
|
|
def_special IsDodrioInParty
|
|
def_special AnimateTeleporterCable
|
|
def_special InitElevatorFloorSelectMenuPos
|
|
def_special UpdateLoreleiDollCollection
|
|
def_special LoopWingFlapSound
|
|
def_special CreateEnemyEventMon
|
|
def_special GetNumberSprayStrength
|
|
def_special GetSprayId
|
|
def_special GetLastUsedSprayType
|
|
def_special TrySkyBattle
|
|
def_special TryPrepareSecondApproachingTrainer
|
|
def_special SetHiddenNature
|
|
def_special SetAbility
|
|
def_special ShowRankingHallRecordsWindow
|
|
def_special ScrollRankingHallRecordsWindow
|
|
def_special RemoveRecordsWindow
|
|
def_special BufferVarsForIVRater
|
|
def_special ShowFrontierManiacMessage
|
|
def_special ShowFrontierGamblerLookingMessage
|
|
def_special ShowFrontierGamblerGoMessage
|
|
def_special ShowBattlePointsWindow
|
|
def_special UpdateBattlePointsWindow
|
|
def_special CloseBattlePointsWindow
|
|
def_special GiveFrontierBattlePoints
|
|
def_special GetFrontierBattlePoints
|
|
def_special TakeFrontierBattlePoints
|
|
def_special ShowNatureGirlMessage
|
|
def_special BufferBattleFrontierTutorMoveName
|
|
def_special CloseBattleFrontierTutorWindow
|
|
def_special CallApprenticeFunction
|
|
def_special CallFrontierUtilFunc
|
|
def_special CallBattleArenaFunction
|
|
def_special CallBattleDomeFunction
|
|
def_special CallBattleFactoryFunction
|
|
def_special CallBattlePalaceFunction
|
|
def_special CallBattlePikeFunction
|
|
def_special CallBattlePyramidFunction
|
|
def_special CallBattleTowerFunc
|
|
def_special ChoosePartyForBattleFrontier
|
|
def_special OffsetCameraForBattle
|
|
def_special DoDomeConfetti
|
|
def_special CloseBattlePikeCurtain
|
|
def_special DoBattlePyramidMonsHaveHeldItem
|
|
def_special BattlePyramidChooseMonHeldItems
|
|
def_special TryStoreHeldItemsInPyramidBag
|
|
def_special ChooseItemsToTossFromPyramidBag
|
|
def_special GetBattlePyramidHint
|
|
def_special ShowMapNamePopup
|
|
def_special TryHideBattleTowerReporter
|
|
def_special SaveForBattleTowerLink
|
|
def_special TrySetBattleTowerLinkType
|
|
def_special InterviewBefore
|
|
def_special InterviewAfter
|
|
def_special MoveElevator
|
|
def_special BufferBattleTowerElevatorFloors
|
|
def_special SetBattleTowerLinkPlayerGfx
|
|
def_special LinkRetireStatusWithBattleTowerPartner
|
|
def_special BattleTowerReconnectLink
|
|
def_special ShowFrontierExchangeCornerItemIconWindow
|
|
def_special CloseFrontierExchangeCornerItemIconWindow
|
|
def_special HasMovesToRelearn
|
|
def_special CanTeachMoveBoxMon
|
|
gSpecialsEnd::
|