summaryrefslogtreecommitdiff
path: root/world/map/npc/012-1/injured-mouboo.txt
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/012-1/injured-mouboo.txt')
-rw-r--r--world/map/npc/012-1/injured-mouboo.txt229
1 files changed, 0 insertions, 229 deletions
diff --git a/world/map/npc/012-1/injured-mouboo.txt b/world/map/npc/012-1/injured-mouboo.txt
deleted file mode 100644
index 2aefb0f7..00000000
--- a/world/map/npc/012-1/injured-mouboo.txt
+++ /dev/null
@@ -1,229 +0,0 @@
-// The following auxiliary function is used both by appropriate magic and within the regular script:
-
-function|script|QuestMoubooHeal
-{
- set @Q_MASK, NIBBLE_2_MASK;
- set @Q_SHIFT, NIBBLE_2_SHIFT;
-
- set @Q_status, (QUEST_MAGIC & @Q_MASK) >> @Q_SHIFT;
- set @Q_status_upper, @Q_status & 12;
- set @Q_status, @Q_status & 3;
-
- set @STATE_INITIAL, 0;
- set @STATE_HEALED_MOUBOO, 3;
-
- if (@Q_status != @STATE_INITIAL)
- goto L_nothing;
-
- set @Q_status, @STATE_HEALED_MOUBOO;
- callsub S_update_var;
- mes "[Injured Mouboo]";
- mes "A soft white glow surrounds the mouboo's leg, which slowly shifts back into place.";
- mes "As the glow subsides, the mouboo gets up, carefully, and takes a few steps. It seems to be fully healed!";
- mes "[5000 experience points]";
- getexp 5000, 0;
- next;
- mes "[Injured Mouboo]";
- mes "Visibly happy, the mouboo lies down on the ground and snuggles with a black piece of cloth it had been lying on.";
- mes "The healing process must have been exhausting, for it is asleep in an instant.";
- next;
- set @value, 15;
- callfunc "QuestSagathaHappy";
- close2;
- return;
-
-L_nothing:
- mes "Your spell has no effect.";
- close2;
- return;
-
-S_update_var:
- set @Q_wr_status, @Q_status | @Q_status_upper;
- set QUEST_MAGIC,
- (QUEST_MAGIC & ~(@Q_MASK)
- | (@Q_wr_status << @Q_SHIFT));
- return;
-}
-
-012-1,57,153,0|script|Mouboo|171
-{
- set @Q_MASK, NIBBLE_2_MASK;
- set @Q_SHIFT, NIBBLE_2_SHIFT;
-
- set @Q_status, (QUEST_MAGIC & @Q_MASK) >> @Q_SHIFT;
- set @Q_status_upper, @Q_status & 12;
- set @Q_status, @Q_status & 3;
-
- set @STATE_INITIAL, 0;
- set @STATE_KILLED_MOUBOO, 1;
- set @STATE_TOOK_KILL_REWARD, 2;
- set @STATE_HEALED_MOUBOO, 3;
-
- if (@Q_status == @STATE_KILLED_MOUBOO)
- goto L_dead;
- if (@Q_status == @STATE_TOOK_KILL_REWARD)
- goto L_took_reward;
- if (@Q_status == @STATE_HEALED_MOUBOO)
- goto L_healed;
-
- mes "[Injured Mouboo]";
- mes "You notice a mouboo lying on the ground, groaning, as if in pain.";
- next;
- goto L_menu;
-
-L_menu:
- menu
- "Examine the mouboo", L_examine,
- "Give the mouboo something", L_give,
- "Kill the mouboo", L_kill,
- "Leave", L_Close;
-
-L_examine:
- mes "[Injured Mouboo]";
- mes "Looking closer, you notice that the mouboo's left hind leg is bent at a very unnatural angle – that seems to be the cause for its pain.";
- next;
- mes "[Injured Mouboo]";
- mes "You also notice that the mouboo is lying on top of what appears to be a black turtleneck sweater.";
- mes "Do you want to pick up the sweater?";
- next;
- menu
- "Yes.", L_pickup_alive,
- "No.", L_menu;
-
-L_pickup_alive:
- mes "[Injured Mouboo]";
- mes "The Mouboo groans and pushes your hand away. It seems to be rather fond of the sweater.";
- next;
- goto L_menu;
-
-L_give:
- set @items_nr, 12;
- setarray @items$, "CactusDrink", "CactusPotion", "ChocolateBar", "Milk", "OrangeCupcake", "RedApple", "Beer", "BottleOfWater", "TinyHealingPotion", "SmallHealingPotion", "MediumHealingPotion", "LargeHealingPotion";
- setarray @itemnames$, "Cactus Drink", "Cactus Potion", "Chocolate Bar", "Milk", "Orange Cupcake", "Red Apple", "Beer", "Bottle of Water", "Tiny Healing Potion", "Small Healing Potion", "Medium Healing Potion", "Large Healing Potion";
- setarray @itemeat, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0;
-
- setarray @menuItems$, "", "", "", "", "", "", "", "", "", "", "", "", "";
- set @choices_nr, 0;
- setarray @menuNames$, "", "", "", "", "", "", "", "", "", "", "", "", "";
- setarray @choice_eat, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0;
-
- set @n, 0;
- set @ct, 0;
- goto L_nloop;
-
-L_nloop:
- set @k$, @items$[@n];
- if (countitem(@k$) == 0)
- goto L_nloop_skip;
-
- set @menuItems$[@ct], @itemnames$[@n];
- set @menuNames$[@ct], @k$;
- set @choice_eat[@ct], @itemeat[@n];
- set @ct, @ct + 1;
- goto L_nloop_skip;
-
-L_nloop_skip:
- set @n, @n+1;
- if (@n < @items_nr)
- goto L_nloop;
-
- set @menuItems$[@ct], "Nevermind";
-
- menu
- @menuItems$[0], L_MenuItems,
- @menuItems$[1], L_MenuItems,
- @menuItems$[2], L_MenuItems,
- @menuItems$[3], L_MenuItems,
- @menuItems$[4], L_MenuItems,
- @menuItems$[5], L_MenuItems,
- @menuItems$[6], L_MenuItems,
- @menuItems$[7], L_MenuItems,
- @menuItems$[8], L_MenuItems,
- @menuItems$[9], L_MenuItems,
- @menuItems$[10], L_MenuItems,
- @menuItems$[11], L_MenuItems,
- @menuItems$[12], L_MenuItems;
-
-L_MenuItems:
- set @menu, @menu - 1;
- if (@menu == @ct)
- goto L_menu;
- set @choice$, @menuNames$[@menu];
- set @verb$, "drinks";
- if (@choice_eat[@menu])
- set @verb$, "eats";
- if (@choice$ != "" && countitem(@choice$))
- goto L_consume;
- goto L_menu;
-
-L_consume:
- mes "[Injured Mouboo]";
- mes "The mouboo " + @verb$ + " your " + getitemlink(@choice$) + ".";
- delitem @choice$, 1;
- next;
- if (@choice$ == "LargeHealingPotion")
- goto L_do_heal;
- mes "[Injured Mouboo]";
- mes "Unfortunately, it seems to have had no effect.";
- next;
- goto L_menu;
-
-L_do_heal:
- callfunc "QuestMoubooHeal";
- end;
-
-L_kill:
- mes "[Injured Mouboo]";
- if (BaseLevel > 44)
- goto L_kill_success;
- mes "The mouboo deflects your attack and counterattacks!";
- mes "It misses you only barely.";
- mes "Injured though it may be, this mouboo is still more than a match for you!";
- next;
- goto L_menu;
-
-L_kill_success:
- mes "After some wrestling, the mouboo succumbs to your attacks.";
- mes "[100 experience points]";
- getexp 100, 0;
- set @Q_status, @STATE_KILLED_MOUBOO;
- callsub S_update_var;
- next;
- goto L_dead;
-
-L_dead:
- mes "[Dead Mouboo]";
- mes "The dead mouboo is lying on top of a black T-neck sweater.";
- getinventorylist;
- if (@inventorylist_count == 100)
- goto L_nopickup;
- getitem "BlackTurtleneck", 1;
- mes "You pull out the sweater and stuff it into your backpack.";
- set @Q_status, @STATE_TOOK_KILL_REWARD;
- callsub S_update_var;
- close;
-
-L_took_reward:
- mes "[Dead Mouboo]";
- mes "You see a dead mouboo.";
- close;
-
-L_nopickup:
- mes "Unfortunately, you can't carry any more.";
- close;
-
-L_healed:
- mes "[Mouboo]";
- mes "The mouboo is sleeping soundly, smiling in its dreams.";
- close;
-
-L_Close:
- close;
-
-S_update_var:
- set @Q_wr_status, @Q_status | @Q_status_upper;
- set QUEST_MAGIC,
- (QUEST_MAGIC & ~(@Q_MASK)
- | (@Q_wr_status << @Q_SHIFT));
- return;
-}