// 010-2.gat,43,32,0 script Prize Master 150,{ if (Halloween08 == 65535) goto L_Finished; if (Halloween08 != 0) goto L_DidExplain; callsub S_Explain; L_DidExplain: // Get detailed info about equipment callfunc "ProcessEquip"; if (@head == 647) goto L_DevControl; if (@head == 615) goto L_Pumpkin; if (@head == 616) goto L_Axe; if (@head == 617) goto L_Pirate; if (@head == 621) goto L_Eyepatch; if (@head == 622) goto L_Bandana; if (@head == 634) goto L_FaceMask; if (@head == 675) goto L_GradCap; if (@head == 678) goto L_NohMask; if (@head == 679) goto L_DemonMask; if (@head == 656) goto L_SerfHat; if (@head == 1214) goto L_Bunny; if (@head == 643) goto L_WCowboy; if (@head == 644) goto L_BCowboy; if (@head == 1204) goto L_Antler; if (Halloween08 & 1) goto L_Random_Done; mes "[Prize Master]"; mes "A lovely costume, here is your candy."; set Halloween08, Halloween08 | 1; set @temp, rand(5) + 1; getitem "Candy", @temp; close; L_Random_Done: mes "[Prize Master]"; mes "\"I don't like that one.\""; close; L_Pumpkin: if (Halloween08 & 2) goto L_Pumpkin_Done; if (@torso != 720) goto L_Pumpkin_Bad; set Halloween08, Halloween08 | 2; set @temp, pow(1080, BaseLevel) * 100; getexp @temp, 0; mes "[" + @temp + " experience points]"; close; L_Pumpkin_Bad: mes "[Prize Master]"; mes "\"You aren't convincing me. That doesn't look like a Jack O at all.\""; close; L_Pumpkin_Done: mes "[Prize Master]"; mes "\"I think I've seen this Jack O before.\""; close; L_Axe: if (Halloween08 & 4) goto L_Axe_Done; mes "[Prize Master]"; mes "\"You look like you need some help!\""; set Halloween08, Halloween08 | 4; getitem "MediumHealingPotion", 1; close; L_Axe_Done: mes "[Prize Master]"; mes "\"You've pulled the axe on me already.\""; close; L_Pirate: if (Halloween08 & 8) goto L_Pirate_Done; if (@torso != 2060) goto L_Pirate_BadTorso; if (Sex == 0 && !(@legsB == 632 || @legsB == 586)) goto L_Pirate_BadLegs_Female; if (Sex == 1 && !(@legsB == 610 || @legsB == 586)) goto L_Pirate_BadLegs_Male; mes "[Prize Master]"; mes "\"A lovely pirate, but ye be missing this.\""; set Halloween08, Halloween08 | 8; getitem "ToySabre", 1; close; L_Pirate_BadTorso: if (@torsoC != cRed) goto L_Pirate_BadColor; mes "[Prize Master]"; mes "\"That shirt won't work.\""; close; L_Pirate_BadColor: mes "[Prize Master]"; mes "\"Not quite what I'm looking for. Do you remember the story of the brave pirate captain who always wore a certain color before battle?\""; close; L_Pirate_BadLegs_Male: mes "[Prize Master]"; if (@legsB == 632) mes "\"A skirt on a man? Not for the captain!\""; if (@legsB != 632) mes "\"Those pants don't convince me.\""; close; L_Pirate_BadLegs_Female: mes "[Prize Master]"; if (@legsB == 610) mes "\"Jeans don't befit a woman captain.\""; if (@legsB != 632) mes "\"Those pants don't convince me.\""; close; L_Pirate_Done: mes "[Prize Master]"; mes "\"Yarr, ye look familiar.\""; close; L_Eyepatch: if (Halloween08 & 16) goto L_Pirate_Done; if (@torso != 2060) goto L_Pirate_BadTorso; if (Sex == 0 && !(@legsB == 632 || @legsB == 586)) goto L_Pirate_BadLegs_Female; if (Sex == 1 && !(@legsB == 610 || @legsB == 586)) goto L_Pirate_BadLegs_Male; mes "[Prize Master]"; mes "\"Maybe you can use this to replace your eye.\""; set Halloween08, Halloween08 | 16; set @temp, rand(2) + 1; getitem "Pearl", @temp; close; L_Bandana: if (Halloween08 & 32) goto L_Pirate_Done; if (@torsoC != cWhite) goto L_Bandana_Bad; mes "[Prize Master]"; mes "\"Here's a clue for you.\""; set Halloween08, Halloween08 | 32; set @temp, rand(10) + 551; getitem @temp, 1; close; L_Bandana_Bad: mes "[Prize Master]"; mes "\"That shirt doesn't befit a pirate swabie.\""; close; L_FaceMask: if (Halloween08 & 64) goto L_FaceMask_Done; if (!(@torso == 2081 || @torso == 2089) && ((@torsoC != cGreen && @torsoC != cDarkGreen) || (@legsC != cGreen && @legsC != cDarkGreen))) goto L_FaceMask_Bad; mes "[Prize Master]"; mes "\"A lovely swamp thing.\""; set Halloween08, Halloween08 | 64; set @temp, rand(5) + 1; getitem "RawLog", @temp; close; L_FaceMask_Bad: mes "[Prize Master]"; mes "\"That mask makes me think of green. Try again.\""; close; L_FaceMask_Done: mes "[Prize Master]"; mes "\"Another swamp thing? Next.\""; close; L_GradCap: if (Halloween08 & 128) goto L_GradCap_Done; if (@torso != 2086) goto L_GradCap_Bad; mes "[Prize Master]"; mes "\"Here, professor, maybe you can figure this out.\""; set Halloween08, Halloween08 | 128; getitem "ScarabArmlet", 1; close; L_GradCap_Bad: mes "[Prize Master]"; mes "\"That doesn't work at all.\""; close; L_GradCap_Done: mes "[Prize Master]"; mes "\"Sorry, professor, but I've already seen you.\""; close; L_NohMask: if (Halloween08 & 256) goto L_NohMask_Done; if (@torsoC != cBlack || @legsC != cBlack) goto L_NohMask_Bad; mes "[Prize Master]"; mes "\"Ah, a thief. Just take these.\""; set Halloween08, Halloween08 | 256; set @temp, rand(10) + 1; getitem "CasinoCoins", @temp; close; L_NohMask_Bad: mes "[Prize Master]"; mes "\"That's rather bright for a thief.\""; close; L_NohMask_Done: mes "[Prize Master]"; mes "\"I've caught you trying to get another prize for the same mask.\""; close; L_DemonMask: if (Halloween08 & 512) goto L_DemonMask_Done; if (@torsoC != cRed || @legsC != cRed) goto L_DemonMask_Bad; mes "[Prize Master]"; mes "\"I hope this reminds you of home.\""; set Halloween08, Halloween08 | 512; set @temp, rand(3) + 1; getitem "PileOfAsh", @temp; close; L_DemonMask_Bad: mes "[Prize Master]"; mes "\"That just clashes.\""; close; L_DemonMask_Done: mes "[Prize Master]"; mes "\"A bit too many ghouls, don't you think?\""; close; L_SerfHat: if (Halloween08 & 1024) goto L_SerfHat_Done; if (@torsoB != 1202) goto L_SerfHat_BadTorso; if (@legsB != 586 && @legsB != 632) goto L_SerfHat_BadLegs; mes "[Prize Master]"; mes "It doesn't look like you can even afford a costume. Have this anyways."; set Halloween08, Halloween08 | 1024; getitem "Orange", 1; close; L_SerfHat_BadTorso: mes "[Prize Master]"; mes "\"Your shirt is too fancy for that hat.\""; close; L_SerfHat_BadLegs: mes "[Prize Master]"; mes "\"Your pants are too fancy for that hat.\""; close; L_SerfHat_Done: mes "[Prize Master]"; mes "\"You've got your prize. Maybe you can sell it to get a better costume.\""; close; L_Bunny: if (Halloween08 & 6144 == 6144) goto L_Bunny_Done; if (@torsoC == cBlack && @legsC == cBlack) goto L_Bunny_Black; if (@torsoC == cWhite && @legsC == cWhite) goto L_Bunny_White; mes "[Prize Master]"; mes "\"That doesn't look very much like a bunny to be.\""; close; L_Bunny_Done: mes "[Prize Master]"; mes "\"I've seen enough bunnies from you.\""; close; L_Bunny_Black: if (Halloween08 & 2048) goto L_Bunny_Black_Done; mes "[Prize Master]"; mes "\"A prize for the lovely bunny.\""; set Halloween08, Halloween08 | 2048; getitem "YellowEasterEgg", 1; getitem "PinkEasterEgg", 1; getitem "TealEasterEgg", 1; close; L_Bunny_Black_Done: mes "[Prize Master]"; mes "\"Another one?\""; close; L_Bunny_White: if (Halloween08 & 4096) goto L_Bunny_White_Done; mes "[Prize Master]"; mes "\"I think you missed some eggs.\""; set Halloween08, Halloween08 | 4096; getitem "RedEasterEgg", 1; getitem "GreenEasterEgg", 1; getitem "BlueEasterEgg", 1; close; L_Bunny_White_Done: mes "[Prize Master]"; mes "\"Another one?\""; // TODO close; L_WCowboy: if (Halloween08 & 8192) goto L_Cowboy_Done; if (@torsoC != cWhite) goto L_WCowboy_BadTorso; if (@legs != 642) goto L_Cowboy_BadLegs; mes "[Prize Master]"; mes "\"This should help out on the trail.\""; set Halloween08, Halloween08 | 8192; getitem "ChickenLeg", 1; close; L_WCowboy_BadTorso: mes "[Prize Master]"; mes "\"That shirt isn't quite a white at that hat.\""; close; L_Cowboy_BadLegs: mes "[Prize Master]"; if (@legsB == 632) mes "\"How can you stand to ride a horse in that skirt?\""; if (@legsB != 632) mes "\"How can you stand to ride a horse in those pants?\""; close; L_Cowboy_Done: mes "[Prize Master]"; mes "\"I've already seen you, partner. Move along.\""; close; L_BCowboy: if (Halloween08 & 16384) goto L_Cowboy_Done; if (@torsoC != cBlack) goto L_BCowboy_BadTorso; if (@legs != 642) goto L_Cowboy_BadLegs; mes "[Prize Master]"; mes "\"These will help out on the trail.\""; set Halloween08, Halloween08 | 16384; getitem "RoastedMaggot", 3; close; L_BCowboy_BadTorso: mes "[Prize Master]"; mes "\"Fashion doesn't seem to be your forte. Try to match that hat better.\""; close; L_Antler: if (Halloween08 & 32768) goto L_Antler_Done; if (@torso != -1 && @legs != -1) goto L_Antler_Bad; mes "[Prize Master]"; mes "\"You're a brave deer. Have an apple.\""; set Halloween08, Halloween08 | 32768; set @temp, rand(50) + 1; getitem "RedApple", @temp; close; L_Antler_Bad: mes "[Prize Master]"; mes "\"Antlers AND clothing? I don't think so.\""; close; L_Antler_Done: mes "[Prize Master]"; mes "\"This buck looks familiar.\""; close; L_Finished: mes "[Prize Master]"; mes "\"It seems you've received your 16 prizes.\""; close; L_DevControl: menu "Announce Open", L_Dev_Announce_Open, "Announce Remind", L_Dev_Announce_Remind, "Announce Close", L_Dev_Announce_Close, "Spawn Jack O", L_Dev_Spawn_JackO, "Spawn Jack O 2", L_Dev_Spawn_JackO_2, "Spawn Jack O in Tulimshar", L_Dev_Spawn_JackO_Tulimshar, "Spawn Jack O in Hurnscald", L_Dev_Spawn_JackO_Hurnscald, "Spawn Skulls", L_Dev_Spawn_Skulls; close; L_Dev_Announce_Open: announce "A costume party has started at Dimond's Cove. Everyone is invited!", 0; close; L_Dev_Announce_Remind: announce "The costume party at Dimond's Cove is still going. Please stop by for prizes!", 0; close; L_Dev_Announce_Close: announce "The costume party Dimond's Cove will be ending soon. Thank you for participating!", 0; close; L_Dev_Spawn_JackO: monster "this", 34, 34, "Jack O", 1022, 1; close; L_Dev_Spawn_JackO_2: monster "this", 38, 41, "Jack O", 1022, 1; close; L_Dev_Spawn_JackO_Tulimshar: monster "001-1.gat", 44, 70, "Jack O", 1022, 1; announce "A ghost in Tulimshar!", 0; close; L_Dev_Spawn_JackO_Hurnscald: monster "010-2.gat", 52, 40, "Jack O", 1022, 1; announce "A ghost in Hurnscald!", 0; close; L_Dev_Spawn_Skulls: monster "this", 32, 39, "Fire Skull", 1023, 1; monster "this", 36, 39, "Poison Skull", 1024, 1; close; S_Explain: mes "[Prize Master]"; mes "\"We're holding a costume party to celebrate Halloween. Each accepted costume gets a prize. Each participant is allowed up to 16 prizes.\""; next; return; }