From ae7e76ab4e7e5779c24913b0f5c28ad427dddf3d Mon Sep 17 00:00:00 2001 From: Jessica Tölke Date: Mon, 12 Dec 2011 11:28:46 +0100 Subject: Christmas Event: some fixes and improvements based on feedback of the players --- world/map/npc/xmas/2011/badguy.txt | 17 +++++++- world/map/npc/xmas/2011/chiefHelper.txt | 8 +++- world/map/npc/xmas/2011/doll.txt | 9 ++++ world/map/npc/xmas/2011/leatherBall.txt | 9 ++++ world/map/npc/xmas/2011/plushMouboo.txt | 9 ++++ world/map/npc/xmas/2011/reinboos.txt | 67 ++++++++++++++++++++++++++++++ world/map/npc/xmas/2011/stickReinboo.txt | 9 ++++ world/map/npc/xmas/2011/xmas2011config.txt | 6 +-- 8 files changed, 128 insertions(+), 6 deletions(-) diff --git a/world/map/npc/xmas/2011/badguy.txt b/world/map/npc/xmas/2011/badguy.txt index 5356e774..8b25fdfb 100644 --- a/world/map/npc/xmas/2011/badguy.txt +++ b/world/map/npc/xmas/2011/badguy.txt @@ -96,7 +96,7 @@ L_NoBedding: if (!(xmas11 & $@xmas11_Decoration) || (xmas11 & $@xmas11_DecorationDone)) goto L_NoGlitter; set @choice_idx[@choices_nr], @C_glitter; - set @choice$[@choices_nr], "They want Diamond and Ruby Powder for decoration."; + set @choice$[@choices_nr], "They want Topaz and Ruby Powder for decoration."; set @choices_nr, @choices_nr + 1; L_NoGlitter: @@ -239,6 +239,9 @@ L_PlushMoubooWrapping: "I don't think this is a good idea.",L_Close; if ((countitem("CottonShirt") < 1) || (countitem("OpenPresentBox") < 1) || (countitem("PlushMouboo") < 1)) goto L_NoItem; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "CottonShirt", 1; delitem "OpenPresentBox", 1; delitem "PlushMouboo", 1; @@ -261,6 +264,9 @@ L_StickReinbooWrapping: "I think the Stick Reinboo is nice!",L_Close; if ((countitem("RawLog") < 1) || (countitem("OpenPresentBox") < 1) || (countitem("StickReinboo") < 1)) goto L_NoItem; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "RawLog", 1; delitem "OpenPresentBox", 1; delitem "StickReinboo", 1; @@ -283,6 +289,9 @@ L_BallWrapping: "Come on, now you're getting really implausible.",L_Close; if ((countitem("Coal") < 1) || (countitem("OpenPresentBox") < 1) || (countitem("LeatherBall") < 1)) goto L_NoItem; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "Coal", 1; delitem "OpenPresentBox", 1; delitem "LeatherBall", 1; @@ -306,6 +315,9 @@ L_DollWrapping: "A Mouboo Figurine is lame.",L_Close; if ((countitem("MoubooFigurine") < 1) || (countitem("OpenPresentBox") < 1) || (countitem("Doll") < 1)) goto L_NoItem; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "MoubooFigurine", 1; delitem "OpenPresentBox", 1; delitem "Doll", 1; @@ -404,7 +416,7 @@ L_NoItem: L_Full_Inv: mes "[Balthasar]"; - mes "\"Oh, you have a lot of stuff with you, yes many many things. I'm going to give you some ... allowance for your effort."; + mes "\"Oh, you have a lot of stuff with you, yes many many things."; mes "Come back with less things in your backpack.\""; goto L_Close; @@ -439,5 +451,6 @@ L_Close: set @candy_amount, 0; set @sabotagepoints, 0; set @helppoints, 0; + set @inventorylist_count, 0; close; } diff --git a/world/map/npc/xmas/2011/chiefHelper.txt b/world/map/npc/xmas/2011/chiefHelper.txt index 7be2f143..6324c1c9 100644 --- a/world/map/npc/xmas/2011/chiefHelper.txt +++ b/world/map/npc/xmas/2011/chiefHelper.txt @@ -48,8 +48,12 @@ goto L_Close; L_Helping: + callfunc "xmas2011points"; mes "[Chief Warrick]"; - mes "\"I hope you're doing well.\""; + if ((@sabotagepoints + @helppoints) < $@xmas2011_totalpoints) + mes "\"I hope you're doing well.\""; + if ((@sabotagepoints + @helppoints) == $@xmas2011_totalpoints) + mes "\"It seems we're catching up with the tasks to do, thanks to your help.\""; goto L_Close; L_NoEvent: @@ -73,6 +77,8 @@ L_NoHelp: goto L_Close; L_Close: + set @sabotagepoints, 0; + set @helppoints, 0; close; } diff --git a/world/map/npc/xmas/2011/doll.txt b/world/map/npc/xmas/2011/doll.txt index a737d963..2fd4145a 100644 --- a/world/map/npc/xmas/2011/doll.txt +++ b/world/map/npc/xmas/2011/doll.txt @@ -101,6 +101,9 @@ L_Doll: "I don't have it yet.",L_Close; if ((countitem("CottonCloth") < @cotton_amount) || (countitem("LightBlueDye") < @dye_amount) || (countitem("HardSpike") < @spike_amount)) goto L_NoItems; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "CottonCloth", @cotton_amount; delitem "LightBlueDye", @dye_amount; delitem "HardSpike", @spike_amount; @@ -151,10 +154,16 @@ L_NoItems: mes "\"You don't have it!\""; goto L_Close; +L_Full_Inv: + mes "[Raimo]"; + mes "\"You have a full backpack! Come back when you're carrying less things.\""; + goto L_Close; + L_Close: set @cotton_amount, 0; set @fur_amount, 0; set @doll, 0; + set @inventorylist_count, 0; close; S_Update_Var: diff --git a/world/map/npc/xmas/2011/leatherBall.txt b/world/map/npc/xmas/2011/leatherBall.txt index b6e5b080..f7c007d8 100644 --- a/world/map/npc/xmas/2011/leatherBall.txt +++ b/world/map/npc/xmas/2011/leatherBall.txt @@ -109,6 +109,9 @@ L_LeatherBall: "I don't have it yet.",L_Close; if ((countitem("LeatherPatch") < @leather_amount) || (countitem("MaggotSlime") < @maggotslime_amount)) goto L_NoItems; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "LeatherPatch", @leather_amount; delitem "MaggotSlime", @maggotslime_amount; set @ball, 3; @@ -150,10 +153,16 @@ L_NoItems: mes "\"You don't have it!\""; goto L_Close; +L_Full_Inv: + mes "[Iivo]"; + mes "\"You have a full backpack! Come back when you're carrying less things.\""; + goto L_Close; + L_Close: set @cotton_amount, 0; set @fur_amount, 0; set @ball, 0; + set @inventorylist_count, 0; close; S_Update_Var: diff --git a/world/map/npc/xmas/2011/plushMouboo.txt b/world/map/npc/xmas/2011/plushMouboo.txt index 48719549..66c1dd77 100644 --- a/world/map/npc/xmas/2011/plushMouboo.txt +++ b/world/map/npc/xmas/2011/plushMouboo.txt @@ -133,6 +133,9 @@ L_PlushMouboo: "I'm still working on that.",L_Close; if ((countitem("CottonCloth") < @cotton_amount) || (countitem("WhiteFur") < @fur_amount)) goto L_NoItems; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "CottonCloth", @cotton_amount; delitem "WhiteFur", @fur_amount; set @plushmouboo, 3; @@ -187,10 +190,16 @@ L_NoItems: mes "\"You don't have it!\""; goto L_Close; +L_Full_Inv: + mes "[Launo]"; + mes "\"You have a full backpack! Come back when you're carrying less things.\""; + goto L_Close; + L_Close: set @cotton_amount, 0; set @fur_amount, 0; set @plushmouboo, 0; + set @inventorylist_count, 0; close; S_Update_Var: diff --git a/world/map/npc/xmas/2011/reinboos.txt b/world/map/npc/xmas/2011/reinboos.txt index d1553842..ea606bef 100644 --- a/world/map/npc/xmas/2011/reinboos.txt +++ b/world/map/npc/xmas/2011/reinboos.txt @@ -68,6 +68,65 @@ L_Search: mes "Imagine what would happen if they don't arrive in time!\""; next; mes "\"And remember, don't give them candy, but red apples. Those are the best ones."; + + + cleararray @choice_idx, 0, 5; + cleararray @choice$, "", 5; + + set @C_r1, 1; + set @C_r2, 2; + set @C_r3, 3; + set @C_r4, 4; + set @C_nevermind, 5; + + // counter of available answers + set @choices_nr, 0; + + if (!(xmas11 & $@xmas11_firstReinbooDone)) + goto L_NoR1; + set @choice_idx[@choices_nr], @C_r1; + set @choice$[@choices_nr], "I found Meireles, he's about to come home."; + set @choices_nr, @choices_nr + 1; + +L_NoR1: + if (!(xmas11 & $@xmas11_secondReinbooDone)) + goto L_NoR2; + set @choice_idx[@choices_nr], @C_r2; + set @choice$[@choices_nr], "Meileres is on his way home."; + set @choices_nr, @choices_nr + 1; + +L_NoR2: + if (!(xmas11 & $@xmas11_thirdReinbooDone)) + goto L_NoR3; + set @choice_idx[@choices_nr], @C_r3; + set @choice$[@choices_nr], "Reilemes said he'll follow my smell back home."; + set @choices_nr, @choices_nr + 1; + +L_NoR3: + if (!(xmas11 & $@xmas11_fourthReinbooDone)) + goto L_NoR4; + set @choice_idx[@choices_nr], @C_r4; + set @choice$[@choices_nr], "I found Leiremes, he should be here anytime."; + set @choices_nr, @choices_nr + 1; + +L_NoR4: + set @choice_idx[@choices_nr], @C_nevermind; + set @choice$[@choices_nr], "I'm still searching."; + + menu + @choice$[0],-, + @choice$[1],-, + @choice$[2],-, + @choice$[3],-, + @choice$[4],-; + + set @menu, @menu - 1; + if (@choice_idx[@menu] == 0) + goto L_Close; + if ((@choice_idx[@menu] == @C_nevermind)) + goto L_Close; + mes "[Grombadil]"; + mes "\"Ah, that are good news!\""; goto L_Close; L_NoEvent: @@ -82,6 +141,14 @@ L_RewardTime: goto L_Close; L_Close: + cleararray @choice_idx, 0, 5; + cleararray @choice$, "", 5; + set @C_r1, 0; + set @C_r2, 0; + set @C_r3, 0; + set @C_r4, 0; + set @C_nevermind, 0; + set @choices_nr, 0; close; } diff --git a/world/map/npc/xmas/2011/stickReinboo.txt b/world/map/npc/xmas/2011/stickReinboo.txt index 23a6356d..0ed076ff 100644 --- a/world/map/npc/xmas/2011/stickReinboo.txt +++ b/world/map/npc/xmas/2011/stickReinboo.txt @@ -128,6 +128,9 @@ L_StickReinboo: "Ok, I'll bring those.",L_Close; if ((countitem("RawLog") < @log_amount) || (countitem("LeatherPatch") < @leather_amount)) goto L_NoItems; + getinventorylist; + if (@inventorylist_count == 100) + goto L_Full_Inv; delitem "RawLog", @log_amount; delitem "LeatherPatch", @leather_amount; set @stickreinboo, 3; @@ -167,10 +170,16 @@ L_NoItems: mes "\"Ha, don't speak nonsense. You don't have it, so I don't have to start working.\""; goto L_Close; +L_Full_Inv: + mes "[Kalevi]"; + mes "\"You have a full backpack! Come back when you're carrying less things.\""; + goto L_Close; + L_Close: set @log_amount, 0; set @leather_amount, 0; set @stickreinboo, 0; + set @inventorylist_count, 0; close; S_Update_Var: diff --git a/world/map/npc/xmas/2011/xmas2011config.txt b/world/map/npc/xmas/2011/xmas2011config.txt index 204fe791..c2c72342 100644 --- a/world/map/npc/xmas/2011/xmas2011config.txt +++ b/world/map/npc/xmas/2011/xmas2011config.txt @@ -53,9 +53,9 @@ OnInit: set $@xmas2011_totalpoints, 4*$@xmas2011_reinboopoints + $@xmas2011_beddingpoints + $@xmas2011_glitterpoints + $@xmas2011_potionpoints + $@xmas2011_plushmouboopoints + $@xmas2011_stickreinboopoints + $@xmas2011_ballpoints + $@xmas2011_dollpoints; - set $@xmas2011_main_rewardcost, 60; + set $@xmas2011_main_rewardcost, 70; set $@xmas2011_toy_rewardcost, 30; - set $@xmas2011_gloves_rewardcost, 11; + set $@xmas2011_gloves_rewardcost, 8; set $@xmas2011_gingerbreadman_rewardcost, 5; set $@xmas2011_xmascake_rewardcost, 3; set $@xmas2011_candy_rewardcost, 1; @@ -169,7 +169,7 @@ L_Var: mes "Bed Bit 0: " + ((xmas11 & 0x2000) >> 13); mes "Bed Bit 1: " + ((xmas11 & 0x4000) >> 14); mes "Pot Bit 0: " + ((xmas11 & 0x8000) >> 15); - mes "Pot Bit 1" + ((xmas11 & 0x10000) >> 16); + mes "Pot Bit 1: " + ((xmas11 & 0x10000) >> 16); mes "plushmouboo b0: " + ((xmas11 & 0x20000) >> 17); mes "plushmouboo b1: " + ((xmas11 & 0x40000) >> 18); mes "plushmouboo b2: " + ((xmas11 & 0x80000) >> 19); -- cgit v1.2.3-70-g09d2