.set NUM_OPPONENTS, VAR_0x8009 BerryBlender_EventScript_BerryBlender1:: lockall goto_if_unset FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER, BerryBlender_EventScript_BlendMasterPresent setvar NUM_OPPONENTS, 1 applymovement LOCALID_BLEND_MASTER, BerryBlender_Movement_BlendLeaderWalkInPlace waitmovement 0 msgbox BerryBlender_Text_WantToMakePokeblocks, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBerryBlender1 goto BerryBlender_EventScript_DeclineBlender1 end BerryBlender_EventScript_DeclineBlender1: msgbox BerryBlender_Text_MadeOldTimerSad, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender1NoBerries: msgbox BerryBlender_Text_DontHaveAnyBerries, MSGBOX_DEFAULT dotimebasedevents goto_if_set FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY, BerryBlender_EventScript_Blender1NoSpareBerries goto BerryBlender_EventScript_Blender1GiveSpareBerry end BerryBlender_EventScript_Blender1NoSpareBerries: msgbox BerryBlender_Text_DontHaveAnyBerriesToSpare, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender1GiveSpareBerry: msgbox BerryBlender_Text_CanHaveOneOfMyBerries, MSGBOX_DEFAULT giveitem ITEM_PECHA_BERRY setflag FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY goto BerryBlender_EventScript_UseBerryBlender1 end BerryBlender_EventScript_UseBerryBlender1: msgbox BerryBlender_Text_KnowHowToMakePokeblocks, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_StartBlender1 goto BerryBlender_EventScript_ExplainBlending1 end BerryBlender_EventScript_StartBlender1: msgbox BerryBlender_Text_LetsBerryBlender, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end BerryBlender_EventScript_ExplainBlending1: msgbox BerryBlender_Text_ExplainBerryBlending, MSGBOX_DEFAULT goto BerryBlender_EventScript_StartBlender1 end BerryBlender_EventScript_TryUseBerryBlender1: checkitem ITEM_POKEBLOCK_CASE goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender1NoCase specialvar VAR_RESULT, GetFirstFreePokeblockSlot goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_Blender1CaseFull specialvar VAR_RESULT, PlayerHasBerries goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender1NoBerries msgbox BerryBlender_Text_Excellent, MSGBOX_DEFAULT goto BerryBlender_EventScript_UseBerryBlender1 end BerryBlender_EventScript_DoBerryBlending: copyvar VAR_0x8004, NUM_OPPONENTS fadescreen FADE_TO_BLACK special DoBerryBlending waitstate releaseall end BerryBlender_EventScript_Blender1CaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFull, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender1NoCase: msgbox BerryBlender_Text_DontHavePokeblockCase, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_BerryBlender2:: lockall setvar NUM_OPPONENTS, 2 applymovement LOCALID_CONTEST_LOBBY_BLENDER_2_PARTICIPANT, Common_Movement_FaceOriginalDirection applymovement LOCALID_CONTEST_LOBBY_BLENDER_2_LEADER, BerryBlender_Movement_BlendLeaderWalkInPlace waitmovement 0 msgbox BerryBlender_Text_WantToBlendPokeblocksWithUs, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBerryBlender2 goto BerryBlender_EventScript_DeclineBlender2 end BerryBlender_EventScript_DeclineBlender2: msgbox BerryBlender_Text_ThatsTooBad, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender2NoBerries: msgbox BerryBlender_Text_DontHaveAnyBerries2, MSGBOX_DEFAULT release end BerryBlender_EventScript_UseBerryBlender2: msgbox BerryBlender_Text_KnowHowToMakePokeblocks2, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_StartBlender2 goto BerryBlender_EventScript_ExplainBlending2 end BerryBlender_EventScript_StartBlender2: msgbox BerryBlender_Text_LetsBerryBlender2, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end BerryBlender_EventScript_ExplainBlending2: msgbox BerryBlender_Text_ExplainBerryBlending2, MSGBOX_DEFAULT goto BerryBlender_EventScript_StartBlender2 end BerryBlender_EventScript_TryUseBerryBlender2: specialvar VAR_RESULT, PlayerHasBerries goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender2NoBerries checkitem ITEM_POKEBLOCK_CASE goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender2NoCase msgbox BerryBlender_Text_Okay, MSGBOX_DEFAULT specialvar VAR_RESULT, GetFirstFreePokeblockSlot goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_UseBerryBlender2 goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_Blender2CaseFull end BerryBlender_EventScript_Blender2CaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFull2, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender2NoCase: msgbox BerryBlender_Text_DontHavePokeblockCase2, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_BerryBlender3:: lockall setvar VAR_0x8008, LOCALID_CONTEST_LOBBY_BLENDER_3_LEADER setvar NUM_OPPONENTS, 3 applymovement LOCALID_CONTEST_LOBBY_BLENDER_3_PARTICIPANT_1, Common_Movement_FaceOriginalDirection applymovement LOCALID_CONTEST_LOBBY_BLENDER_3_PARTICIPANT_2, Common_Movement_FaceOriginalDirection applymovement VAR_0x8008, BerryBlender_Movement_BlendLeaderWalkInPlace waitmovement 0 msgbox BerryBlender_Text_LookGoodAtBlendingJoinUs, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryUseBlender3 goto BerryBlender_EventScript_DeclineBlender3 end BerryBlender_EventScript_DeclineBlender3: msgbox BerryBlender_Text_LeftUsInShock, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender3NoBerries: msgbox BerryBlender_Text_DontHaveAnyBerries3, MSGBOX_DEFAULT release end BerryBlender_EventScript_UseBerryBlender3: msgbox BerryBlender_Text_KnowHowToMakePokeblocks3, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_StartBlender3 goto BerryBlender_EventScript_ExplainBlending3 end BerryBlender_EventScript_StartBlender3: msgbox BerryBlender_Text_LetsBerryBlender3, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end BerryBlender_EventScript_ExplainBlending3: msgbox BerryBlender_Text_ExplainBerryBlending3, MSGBOX_DEFAULT goto BerryBlender_EventScript_StartBlender3 end BerryBlender_EventScript_TryUseBlender3: specialvar VAR_RESULT, PlayerHasBerries goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender3NoBerries checkitem ITEM_POKEBLOCK_CASE goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_Blender3NoCase msgbox BerryBlender_Text_OhDear, MSGBOX_DEFAULT specialvar VAR_RESULT, GetFirstFreePokeblockSlot goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_UseBerryBlender3 goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_Blender3CaseFull end BerryBlender_EventScript_Blender3CaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFull3, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender3NoCase: msgbox BerryBlender_Text_DontHavePokeblockCase3, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_BlendMasterPresent: lockall setvar NUM_OPPONENTS, 1 msgbox BerryBlender_Text_SeeMyMasteryInAction, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryBlendWithBlendMaster msgbox BerryBlender_Text_TooBusyNowIsee, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_BlendMasterNoBerries: msgbox BerryBlender_Text_BlendMasterNoBerries, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_TryBlendWithBlendMaster: checkitem ITEM_POKEBLOCK_CASE goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_BlendMasterNoCase specialvar VAR_RESULT, PlayerHasBerries goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_BlendMasterNoBerries specialvar VAR_RESULT, GetFirstFreePokeblockSlot goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_BlendWithBlendMaster goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_BlendMasterCaseFull end BerryBlender_EventScript_BlendWithBlendMaster: msgbox BerryBlender_Text_BlendMasterKnowHowToMakePokeblocks, MSGBOX_YESNO call_if_eq VAR_RESULT, NO, BerryBlender_EventScript_BlendMasterExplainBlending msgbox BerryBlender_Text_BlendMasterLetsBerryBlender, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoBerryBlending end BerryBlender_EventScript_BlendMasterExplainBlending: msgbox BerryBlender_Text_BlendMasterExplainBerryBlending, MSGBOX_DEFAULT return BerryBlender_EventScript_BlendMasterNoCase: msgbox BerryBlender_Text_BlendMasterNoPokeblockCase, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_BlendMasterCaseFull: msgbox BerryBlender_Text_BlendMasterPokeblockCaseFull, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_Blender2Man:: msgbox BerryBlender_Text_SetNewBlenderRecord, MSGBOX_NPC end BerryBlender_EventScript_Blender3PokefanF:: msgbox BerryBlender_Text_LookGoodAtBlendingJoinUs, MSGBOX_NPC end BerryBlender_EventScript_Blender2Twin:: msgbox BerryBlender_Text_MakeDeliciousPokeblocks, MSGBOX_NPC end BerryBlender_EventScript_Blender1ExpertM:: setvar VAR_0x8008, 15 goto BerryBlender_EventScript_ExpertMCheckGiveBerry end BerryBlender_EventScript_ExpertMCheckGiveBerry: lock faceplayer msgbox BerryBlender_Text_LoveMakingPokeblocks, MSGBOX_DEFAULT specialvar VAR_RESULT, PlayerHasBerries goto_if_eq VAR_RESULT, TRUE, BerryBlender_EventScript_ExpertMPlayerHasBerries goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_ExpertMNoBerries end BerryBlender_EventScript_ExpertMPlayerHasBerries: msgbox BerryBlender_Text_MakePokeblocksUsingBerryBlender, MSGBOX_DEFAULT release end BerryBlender_EventScript_ExpertMNoBerries: checkitem ITEM_POKEBLOCK_CASE goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_ExpertMNoSpareBerries specialvar VAR_RESULT, GetFirstFreePokeblockSlot goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_ExpertMNoSpareBerries dotimebasedevents goto_if_set FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY, BerryBlender_EventScript_ExpertMNoSpareBerries goto BerryBlender_EventScript_ExpertMGiveBerry end BerryBlender_EventScript_ExpertMNoSpareBerries: msgbox BerryBlender_Text_DontHaveAnyBerriesNoneToSpare, MSGBOX_DEFAULT release end BerryBlender_EventScript_ExpertMGiveBerry: msgbox BerryBlender_Text_DontHaveAnyBerriesHaveOne, MSGBOX_DEFAULT giveitem ITEM_PECHA_BERRY setflag FLAG_DAILY_CONTEST_LOBBY_RECEIVED_BERRY msgbox BerryBlender_Text_UseItToMakePokeblocksTogether, MSGBOX_DEFAULT release end BerryBlender_Movement_BlendLeaderWalkInPlace: walk_in_place_faster_right step_end BerryBlender_EventScript_BerryBlenderLink:: lockall specialvar VAR_RESULT, PlayerHasBerries goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_LinkBlenderNoBerries checkitem ITEM_POKEBLOCK_CASE goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_LinkBlenderNoCase specialvar VAR_RESULT, GetFirstFreePokeblockSlot goto_if_ne VAR_RESULT, 65535, BerryBlender_EventScript_LinkBlenderSaveGame goto_if_eq VAR_RESULT, 65535, BerryBlender_EventScript_LinkBlenderCaseFull end BerryBlender_EventScript_LinkBlenderSaveGame: msgbox BerryBlender_Text_SaveGameBeforeBerryBlenderLink, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryBlender_EventScript_TryDoLinkBlender goto_if_eq VAR_RESULT, NO, BerryBlender_EventScript_CancelLinkBlender end BerryBlender_EventScript_LinkBlenderNoBerries: msgbox BerryBlender_Text_NoBerriesLink, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_TryDoLinkBlender: call Common_EventScript_SaveGame goto_if_eq VAR_RESULT, FALSE, BerryBlender_EventScript_CancelLinkBlender specialvar VAR_RESULT, IsWirelessAdapterConnected goto_if_eq VAR_RESULT, TRUE, BerryBlender_EventScript_StartDecideLinkLeader message BerryBlender_Text_SearchingForFriends waitmessage special TryBerryBlenderLinkup waitstate goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BerryBlender_EventScript_SpawnLinkPartners goto_if_eq VAR_RESULT, LINKUP_SOMEONE_NOT_READY, BerryBlender_EventScript_CloseLinkNotReady goto_if_eq VAR_RESULT, LINKUP_DIFF_SELECTIONS, BerryBlender_EventScript_CloseLinkDifferentSelections goto_if_eq VAR_RESULT, LINKUP_FAILED, BerryBlender_EventScript_CloseLink goto_if_eq VAR_RESULT, LINKUP_CONNECTION_ERROR, BerryBlender_EventScript_LinkError end BerryBlender_EventScript_TwoPlayerLink: msgbox BerryBlender_Text_Player1Arrived, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoLinkBerryBlending end BerryBlender_EventScript_ThreePlayerLink: msgbox BerryBlender_Text_Player1And2Arrived, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoLinkBerryBlending end BerryBlender_EventScript_FourPlayerLink: msgbox BerryBlender_Text_AllPlayersArrived, MSGBOX_DEFAULT goto BerryBlender_EventScript_DoLinkBerryBlending end BerryBlender_EventScript_DoLinkBerryBlending: setvar VAR_0x8004, 0 @ number of opponents, 0 indicates Link fadescreen FADE_TO_BLACK removeobject 240 @ Unclear where these local IDs come from, removeobject 239 @ but presumably they'd be the 4 link players removeobject 238 removeobject 237 special DoBerryBlending waitstate releaseall end BerryBlender_EventScript_CancelLinkBlender: releaseall end BerryBlender_EventScript_LinkBlenderCaseFull: msgbox BerryBlender_Text_PokeblockCaseIsFullLink, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_LinkBlenderNoCase: msgbox BerryBlender_Text_DontHavePokeblockCaseLink, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_CloseLinkNotReady: special CloseLink msgbox Text_SomeoneIsNotReadyToLink, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_CloseLinkDifferentSelections: special CloseLink msgbox Text_PlayersMadeDifferentSelections, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_CloseLink: special CloseLink msgbox gText_PokeblockLinkCanceled, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_LinkError: special CloseLink msgbox Text_LinkErrorPleaseReset, MSGBOX_DEFAULT releaseall end BerryBlender_EventScript_SpawnLinkPartners: fadescreen FADE_TO_BLACK specialvar VAR_RESULT, GetLinkPartnerNames copyvar VAR_0x8008, VAR_RESULT copyvar VAR_0x8004, VAR_0x8008 special SpawnLinkPartnerObjectEvent goto BerryBlender_EventScript_LinkPlayersArrived end BerryBlender_EventScript_LinkPlayersArrived: fadescreen FADE_FROM_BLACK switch VAR_0x8008 case 2, BerryBlender_EventScript_TwoPlayerLink case 3, BerryBlender_EventScript_ThreePlayerLink case 4, BerryBlender_EventScript_FourPlayerLink end BerryBlender_EventScript_StartDecideLinkLeader: setvar VAR_0x8004, LINK_GROUP_BERRY_BLENDER goto BerryBlender_EventScript_DecideLinkLeader end BerryBlender_EventScript_DecideLinkLeader: message LilycoveCity_ContestLobby_Text_PleaseDecideLinkLeader waitmessage multichoice 16, 6, MULTI_LINK_LEADER, FALSE switch VAR_RESULT case 0, BerryBlender_EventScript_TryJoinGroup case 1, BerryBlender_EventScript_TryLeadGroup case 2, BerryBlender_EventScript_CloseLink case MULTI_B_PRESSED, BerryBlender_EventScript_CloseLink end BerryBlender_EventScript_TryLeadGroup: call BerryBlender_EventScript_TryBecomeLinkLeader goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BerryBlender_EventScript_LinkLeaderDecided goto_if_eq VAR_RESULT, LINKUP_FAILED, BerryBlender_EventScript_DecideLinkLeader goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, BerryBlender_EventScript_TryLeadGroup release end BerryBlender_EventScript_TryJoinGroup: call BerryBlender_EventScript_TryJoinLinkGroup goto_if_eq VAR_RESULT, LINKUP_SUCCESS, BerryBlender_EventScript_LinkLeaderDecided goto_if_eq VAR_RESULT, LINKUP_FAILED, BerryBlender_EventScript_DecideLinkLeader goto_if_eq VAR_RESULT, LINKUP_RETRY_ROLE_ASSIGN, BerryBlender_EventScript_TryJoinGroup release end BerryBlender_EventScript_TryBecomeLinkLeader: special TryBecomeLinkLeader waitstate return BerryBlender_EventScript_TryJoinLinkGroup: special TryJoinLinkGroup waitstate return BerryBlender_EventScript_LinkLeaderDecided: goto BerryBlender_EventScript_SpawnLinkPartners end