diff options
Diffstat (limited to 'npc/031-3/_mobs.txt')
-rw-r--r-- | npc/031-3/_mobs.txt | 69 |
1 files changed, 59 insertions, 10 deletions
diff --git a/npc/031-3/_mobs.txt b/npc/031-3/_mobs.txt index a724d985..eced7914 100644 --- a/npc/031-3/_mobs.txt +++ b/npc/031-3/_mobs.txt @@ -24,39 +24,88 @@ 031-3.gat,285,216,66,59 monster Santa Slime 1015,5,100000,30000,Mob031-3::On1015 031-3.gat,128,272,66,59 monster Santa Slime 1015,5,100000,30000,Mob031-3::On1015 031-3.gat,212,279,66,59 monster Santa Slime 1015,5,100000,30000,Mob031-3::On1015 -031-3.gat,141,229,40,9 monster yeti 1072,3,100000,30000,Mob031-3::On1072 -031-3.gat,34,288,10,13 monster yeti 1072,3,100000,30000,Mob031-3::On1072 -031-3.gat,25,166,10,13 monster yeti 1072,3,100000,30000,Mob031-3::On1072 -031-3.gat,132,160,10,13 monster yeti 1072,3,100000,30000,Mob031-3::On1072 -031-3.gat,228,37,10,13 monster yeti 1072,3,100000,30000,Mob031-3::On1072 -031-3.gat,44,73,33,11 monster yeti 1072,1,100000,30000,Mob031-3::On1072 031-3.gat,0,0,0 script Mob031-3 -1,{ On1015: set @mobID, 1015; callfunc "MobPoints"; + goto Boxes1015; break; On1017: set @mobID, 1017; callfunc "MobPoints"; + goto Boxes1017; break; On1058: set @mobID, 1058; callfunc "MobPoints"; + goto Boxes1058; break; On1061: set @mobID, 1061; callfunc "MobPoints"; + goto Boxes1061; break; -On1072: - set @mobID, 1072; - callfunc "MobPoints"; - break; + end; + +Boxes1015: + set @yellow, rand(30); + set @white, rand(60); + if (@yellow == 1) goto L_GetYellow; + if (@white == 1) goto L_GetWhite; + return; + +Boxes1017: + set @yellow, rand(50); + set @white, rand(100); + if (@yellow == 1) goto L_GetYellow; + if (@white == 1) goto L_GetWhite; + return; + + +Boxes1058: + set @yellow, rand(50); + set @white, rand(100); + if (@yellow == 1) goto L_GetYellow; + if (@white == 1) goto L_GetWhite; + return; + + +Boxes1061: + set @yellow, rand(25); + set @white, rand(50); + if (@yellow == 1) goto L_GetYellow; + if (@white == 1) goto L_GetWhite; + return; +L_GetYellow: + if (Yellow >= 40) goto L_FinishYellow; + set Yellow, Yellow + 1; + if (Yellow == 10) message strcharinfo(0), "I still need 30 Yellow Boxes."; + if (Yellow == 30) message strcharinfo(0), "I need only 10 Yellow Boxes."; + getitem 3194, 1; end; + +L_GetWhite: + if (White >= 30) goto L_FinishWhite; + set White, White + 1; + if (White == 10) message strcharinfo(0), "I still need 20 White Boxes."; + if (White == 20) message strcharinfo(0), "I need only 10 White Boxes."; + getitem 3195, 1; + end; + +L_FinishYellow: + message strcharinfo(0), "I collected all the Yellow Boxes!"; + end; + +L_FinishWhite: + message strcharinfo(0), "I collected all the White Boxes!"; + end; + + } |