diff options
author | Saulc <lucashelaine14@gmail.com> | 2018-01-13 20:50:42 +0100 |
---|---|---|
committer | Saulc <lucashelaine14@gmail.com> | 2018-01-13 20:50:42 +0100 |
commit | 20df2abc1aca00d6aa5dc78347133890f36b32f3 (patch) | |
tree | 4ad4a8bb8b0605473a702e314799a4626347721a /npc/001-1/rumly.txt | |
download | serverdata-20df2abc1aca00d6aa5dc78347133890f36b32f3.tar.gz serverdata-20df2abc1aca00d6aa5dc78347133890f36b32f3.tar.bz2 serverdata-20df2abc1aca00d6aa5dc78347133890f36b32f3.tar.xz serverdata-20df2abc1aca00d6aa5dc78347133890f36b32f3.zip |
Initial commit
Diffstat (limited to 'npc/001-1/rumly.txt')
-rw-r--r-- | npc/001-1/rumly.txt | 226 |
1 files changed, 226 insertions, 0 deletions
diff --git a/npc/001-1/rumly.txt b/npc/001-1/rumly.txt new file mode 100644 index 000000000..4a1103fbb --- /dev/null +++ b/npc/001-1/rumly.txt @@ -0,0 +1,226 @@ +// Evol scripts. +// Author: +// Vasily_Makarov +// Description: +// Stat resetter. +// Variables: +// General_Rumly +// Values: +// 0 Player hasn't met Rumly +// 1 Last time player has told that he will never come back +// 2 Last time player has told that he will come back later +// 3 Player has already reset his stat +// Others: +// .@visited - Rumly actual variable +// .@wasSP - free status points before reset + +001-1,35,125,0 script Rumly#001-1 NPC_RUMLY,{ + + setnpcdir "Rumly#001-1", 2; + stopnpctimer; + initnpctimer; + + speech S_LAST_NEXT, + l("Hey you, do you have any @@s?", getitemlink(Plushroom)); + +L_Menu: + .@visited = getq(General_Rumly); + .@plush_count = lognbaselvl(1, 10); + + select + l("Plushrooms you say?"), + l("Who are you?"), + rif(.@visited > 0, l("Can you reset my stats please?")), + lg("You are weird, I have to go sorry."); + + switch (@menu) + { + case 1: + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("Wind and grass is nice and cool, so juicy sweet..."), + l("Our only wish to eat a plush, so juicy sweet..."); + goto L_Menu; + case 2: + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + lg("Why are you asking? And who are you too? I've never seen you around before..."), + lg("Wait, are you one of those from the Legion of Gasaron? I didn't do anything wrong, I promise!"), + l("I... I just like to eat the purple and delightful... And natural, and..."); + + switch (select(l("Chill out I won't say anything."), + l("Yes I am and you are going to face justice!"))) + { + case 1: break; + case 2: + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("No! No, no, my precious plushrooms! Don’t take me to them, they wants my precious."); + goto L_Quit; + } + + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("I won't forget it, I swear on my precious plushrooms!"), + l("There is an unknown side effect to these plushrooms, they can free you from your past mistakes."), + l("You can use it to clear your stats, to start freshly if you see what I mean..."), + l("Bring me some of these plushrooms and I will show you how it works!"), + l("Although the more powerful you are, the more plushrooms you will need."); + + select + l("Sounds good!"), + rif(countitem(Plushroom) >= .@plush_count, lg("I think I have enough plushrooms on me.")), + l("We will talk about it later."), + l("My stats are too good, I won't need it."); + + switch (@menu) + { + case 1: + if (.@visited < 2) + { + setq General_Rumly, 2; + } + + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("Great! Can't wait for some tasty mushrooms!"); + + goto L_Menu; + case 2: + goto L_ResetStats; + case 3: + goto L_Later; + case 4: + goto L_Never; + } + + case 3: + goto L_ResetStats; + case 4: + if (.@visited < 2) goto L_Quit; + + .@rand = rand(2); + + if (.@rand) + { + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("See you! And come back with the plushrooms!"); + } + else + { + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("Oh noes!"), + l("A rabbit!"), + l("He has a guns!"), + l("*Bang bang*"); + narrator S_LAST_NEXT, + l("Rumly is hiding behind the tree."); + } + + goto L_Quit; + } + +L_ResetStats: + if (.@visited == 1) + { + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + lg("Changed your mind, uh?"), + l("Very good."), + l("Status point reset can't be undone. Do you really want this?"), + lg("Are you sure about this?"); + } + else + { + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + lg("Are you sure about this?"); + } + +L_ConfirmReset: + switch (select(lg("Yes, I am sure."), + lg("I need to think about it..."), + lg("I won't need it, thank you."))) + { + case 1: + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("Let me just have a quick look at you. Hm... I will need @@ @@s to reset your stats.", .@plush_count, getitemlink(Plushroom)); + + select + rif(countitem(Plushroom) >= .@plush_count, lg("Here, take as many as you need, I have plenty!")), + rif(countitem(Plushroom) > 0 && countitem(Plushroom) < .@plush_count, lg("I don't have enough plushrooms...")), + rif(countitem(Plushroom) == 0, lg("Oh no, I don't have any plushroom on me right now.")), + lg("I have to go, sorry."); + + if (@menu > 1) + { + goto L_Later; + } + + delitem Plushroom, .@plush_count; + + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("Thank you."), + l("Now stand still... It should not take much time..."); + + .@wasSP = StatusPoint; + resetstatus; + if (.@visited < 3) + { + setq General_Rumly, 3; + } + if (StatusPoint == .@wasSP) + { + speech S_LAST_NEXT, + l("It seems that you have no status points to reset!"), + lg("But the plushroom you brought was really awesome you know."), + lg("Come back when you will really need me. And bring more plushrooms with you!"); + } + else + { + speech S_LAST_NEXT, + l("Let's see... @@ of your status points have just been reset!", StatusPoint - .@wasSP), + l("Spend it wisely this time."), + lg("But you are welcome to reset your stats again if you bring me some more plushrooms!"); + } + goto L_Quit; + + case 2: + goto L_Later; + case 3: + goto L_Never; + } + +L_Later: + if (.@visited < 2) + { + setq General_Rumly, 2; + } + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + l("Come back soon, and bring @@s!", getitemlink(Plushroom)); + + goto L_Quit; + +L_Never: + if (.@visited < 2) + { + setq General_Rumly, 1; + } + + speech S_FIRST_BLANK_LINE | S_LAST_NEXT, + lg("I am sure that you will change your mind."); + + goto L_Quit; + +L_Quit: + setnpcdir "Rumly#001-1", 4; + stopnpctimer; + initnpctimer; + + goodbye; + +OnTimer1800: + stopnpctimer; + + if (getnpcdir("Rumly#001-1") == 2) setnpcdir "Rumly#001-1", 6; + if (getnpcdir("Rumly#001-1") == 4) setnpcdir "Rumly#001-1", 8; + + end; + +OnInit: + .sex = G_MALE; + end; +} |