@ Note: local IDs shared with scripts.inc for LilycoveCity_ContestLobby
.set LOCALID_MAN, 3
.set LOCALID_BOY, 9
.set LOCALID_TWIN, 10
.set LOCALID_POKEFAN_F, 15
.set LOCALID_EXPERT_M, 16
.set LOCALID_GIRL, 17

.set NUM_OPPONENTS, VAR_0x8009

BerryBlender_Text_WantToMakePokeblocks:
	.string "Oh? Did you want to make some {POKEBLOCK}S\n"
	.string "with this old-timer?$"

BerryBlender_Text_Excellent:
	.string "Excellent!$"

BerryBlender_Text_MadeOldTimerSad:
	.string "Oh…\n"
	.string "You've made this old-timer sad…$"

BerryBlender_Text_KnowHowToMakePokeblocks:
	.string "Do you know how to make a {POKEBLOCK}?$"

BerryBlender_Text_LetsBerryBlender:
	.string "Let's get started, then!\p"
	.string "Let's BERRY BLENDER!$"

BerryBlender_Text_ExplainBerryBlending:
	.string "Okay, a little explanation, then.\p"
	.string "Oh, don't worry, it's quite simple.\p"
	.string "When the BLENDER's arrow comes to\n"
	.string "your marker, just press the A Button.\p"
	.string "That's all you have to do.\n"
	.string "You'll see how easy it is when you try.$"

BerryBlender_Text_DontHaveAnyBerries:
	.string "Oh?\n"
	.string "You don't have any BERRIES?\p"
	.string "If you don't have any BERRIES,\n"
	.string "you can't make any {POKEBLOCK}S.$"

BerryBlender_Text_CanHaveOneOfMyBerries:
	.string "Well, that won't do at all now, will it?\p"
	.string "If you don't mind leftovers, you can\n"
	.string "have one of my BERRIES.\p"
	.string "That way, we could make some {POKEBLOCK}S\n"
	.string "together using the BERRY BLENDER.$"

BerryBlender_Text_DontHaveAnyBerriesToSpare:
	.string "If I had some BERRIES left over,\n"
	.string "I'd gladly give you one…\p"
	.string "But, I don't have any to spare today.\n"
	.string "We'll have to do this another time.$"

BerryBlender_Text_PokeblockCaseIsFull:
	.string "But your {POKEBLOCK} CASE is full.\p"
	.string "You should use some {POKEBLOCK}S before\n"
	.string "you come see me again.$"

BerryBlender_Text_DontHavePokeblockCase:
	.string "But you don't have a {POKEBLOCK} CASE.\p"
	.string "You should get a {POKEBLOCK} CASE and then\n"
	.string "come see me.$"

BerryBlender_Text_LetsGetBlendingAlready:
	.string "Let's get blending already!$"

BerryBlender_Text_WhatKindOfPokeblockWillIGet:
	.string "I wonder what kind of {POKEBLOCK} I'll get?\n"
	.string "This is so exciting!$"

BerryBlender_Text_WantToBlendPokeblocksWithUs:
	.string "Hi, there! Did you want to blend some\n"
	.string "{POKEBLOCK}S with us?$"

BerryBlender_Text_Okay:
	.string "Okay!$"

BerryBlender_Text_ThatsTooBad:
	.string "That's too bad…\p"
	.string "But we'll always be around whenever\n"
	.string "you get the urge to blend!$"

BerryBlender_Text_KnowHowToMakePokeblocks2:
	.string "Of course, you do know how to\n"
	.string "blend {POKEBLOCK}S, don't you?$"

BerryBlender_Text_LetsBerryBlender2:
	.string "Let's get started, then!\p"
	.string "Let's BERRY BLENDER!$"

BerryBlender_Text_ExplainBerryBlending2:
	.string "Okay!\n"
	.string "Let me explain it to you!\p"
	.string "When the spinning BLENDER's arrow\n"
	.string "reaches your marker, just press\l"
	.string "the A Button.\p"
	.string "That's all it takes.\n"
	.string "Pretty easy, don't you think?$"

BerryBlender_Text_DontHaveAnyBerries2:
	.string "Oh, but wait a second here…\n"
	.string "You don't have any BERRIES.\p"
	.string "You can't make any {POKEBLOCK}S without\n"
	.string "BERRIES…\p"
	.string "We'll always be around whenever you\n"
	.string "get hold of some BERRIES to blend.$"

BerryBlender_Text_PokeblockCaseIsFull2:
	.string "Oh, but wait a second here…\n"
	.string "Your {POKEBLOCK} CASE is full.\p"
	.string "You should use some {POKEBLOCK}S and\n"
	.string "then come back.$"

BerryBlender_Text_DontHavePokeblockCase2:
	.string "Oh, but wait a second here…\n"
	.string "You don't have a {POKEBLOCK} CASE.\p"
	.string "You should get a {POKEBLOCK} CASE and\n"
	.string "then come back.$"

@ Unused
BerryBlender_Text_MakePokeblocksWithOurGroup:
	.string "Oh, hello! Did you want to make some\n"
	.string "{POKEBLOCK}S with our little group?$"

BerryBlender_Text_OhDear:
	.string "Oh, dear!$"

BerryBlender_Text_LeftUsInShock:
	.string "Oh, dear me…\p"
	.string "You've left us in shock!$"

BerryBlender_Text_KnowHowToMakePokeblocks3:
	.string "Naturally, you know how to make\n"
	.string "{POKEBLOCK}S, don't you?$"

BerryBlender_Text_LetsBerryBlender3:
	.string "Okay, dear!\n"
	.string "Let's get started!\p"
	.string "Let's BERRY BLENDER!$"

BerryBlender_Text_ExplainBerryBlending3:
	.string "Oh, dear!\p"
	.string "Then, I'll explain it to you nicely.\p"
	.string "When the BLENDER's arrow spins to\n"
	.string "your marker, press the A Button.\p"
	.string "That's all it takes.\n"
	.string "Isn't it simple?$"

BerryBlender_Text_DontHaveAnyBerries3:
	.string "You don't have any BERRIES,\n"
	.string "do you?\p"
	.string "If you don't have any BERRIES,\n"
	.string "you can't make any {POKEBLOCK}S.\p"
	.string "We'll always be making {POKEBLOCK}S here,\n"
	.string "so let's make some together when\l"
	.string "you get a BERRY or two.$"

BerryBlender_Text_PokeblockCaseIsFull3:
	.string "Your {POKEBLOCK} CASE is full,\n"
	.string "it looks like.\p"
	.string "You should use some {POKEBLOCK}S up\n"
	.string "and then come back.$"

BerryBlender_Text_DontHavePokeblockCase3:
	.string "You haven't gotten a {POKEBLOCK} CASE\n"
	.string "yet, it looks like.\p"
	.string "You need to get a {POKEBLOCK} CASE before\n"
	.string "you come back.$"

BerryBlender_Text_SetNewBlenderRecord:
	.string "Okay! Today's going to be the day that\n"
	.string "I set a new BLENDER speed record!$"

BerryBlender_Text_LookGoodAtBlendingJoinUs:
	.string "Oh, dear!\n"
	.string "You look as if you're good at blending.\l"
	.string "Would you like to join us?$"

BerryBlender_Text_MakeDeliciousPokeblocks:
	.string "I'm going to make delicious {POKEBLOCK}S\n"
	.string "and make my POKéMON cuter.$"

BerryBlender_Text_SaveGameBeforeBerryBlenderLink:
	.string "{POKEBLOCK}S will be made with your friends \n"
	.string "from BERRIES in the BERRY BLENDER.\p"
	.string "Is it okay to save the game before\n"
	.string "linking with your friends?$"

BerryBlender_Text_SearchingForFriends:
	.string "Searching for your friends…\n"
	.string "… … B Button: Cancel$"

BerryBlender_Text_Player1Arrived:
	.string "{STR_VAR_1} arrived.$"

BerryBlender_Text_Player1And2Arrived:
	.string "{STR_VAR_1} and {STR_VAR_2} arrived.$"

BerryBlender_Text_AllPlayersArrived:
	.string "{STR_VAR_1}, {STR_VAR_2}, and\n"
	.string "{STR_VAR_3} arrived.$"

BerryBlender_Text_NoBerriesLink:
	.string "You have no BERRIES.\n"
	.string "The BERRY BLENDER can't be used.$"

BerryBlender_Text_PokeblockCaseIsFullLink:
	.string "Your {POKEBLOCK} CASE is full.\n"
	.string "The BERRY BLENDER can't be used.$"

BerryBlender_Text_DontHavePokeblockCaseLink:
	.string "You don't have a {POKEBLOCK} CASE.\n"
	.string "The BERRY BLENDER can't be used.$"

BerryBlender_Text_LoveMakingPokeblocks:
	.string "I love making {POKEBLOCK}S.\p"
	.string "I always have some BERRIES with me.$"

BerryBlender_Text_MakePokeblocksUsingBerryBlender:
	.string "If you'd like, we could make some\n"
	.string "{POKEBLOCK}S together using the\l"
	.string "BERRY BLENDER.$"

BerryBlender_Text_DontHaveAnyBerriesHaveOne:
	.string "Oh?\n"
	.string "You don't have any BERRIES?\p"
	.string "Well, that won't do at all now, will it?\p"
	.string "If you don't mind leftovers, you can\n"
	.string "have one of my BERRIES.$"

BerryBlender_Text_UseItToMakePokeblocksTogether:
	.string "We'll use it to make {POKEBLOCK}S together\n"
	.string "using the BERRY BLENDER.$"

BerryBlender_Text_DontHaveAnyBerriesNoneToSpare:
	.string "Oh?\n"
	.string "You don't have any BERRIES?\p"
	.string "If I had some left over, I'd gladly\n"
	.string "give you one…\p"
	.string "But, I don't have any to spare today.\n"
	.string "Sorry about that.$"

BerryBlender_EventScript_BerryBlender1::
	lockall
	goto_if_unset FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER, BerryBlender_EventScript_BlendMasterPresent
	setvar NUM_OPPONENTS, 1
	applymovement LOCALID_EXPERT_M, 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_TWIN, Common_Movement_FaceOriginalDirection
	applymovement LOCALID_MAN, 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_POKEFAN_F
	setvar NUM_OPPONENTS, 3
	applymovement LOCALID_BOY, Common_Movement_FaceOriginalDirection
	applymovement LOCALID_GIRL, 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