summaryrefslogtreecommitdiff
path: root/world/map/npc/056-1/flowerpentagram5.txt
blob: 6562d8e87d7b719ae524dde348444efa878ec399 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
// Author: Jenalya
// $@Flower_Pentagram_Time saves the time when the last summoning happened

056-1.gat,62,31,0|script|#FlowerPentagram5|400,
{
    if (OrumQuest >= 31) goto L_PlacedFifthFlower;

    if (OrumQuest == 30) goto L_FifthFlower;

    message strcharinfo(0), "Something is odd with this place.";
    end;

L_FifthFlower:
    mes "This have to be the place for the last magical flower. When you place it, the pentagram will be completed.";
    menu
        "Place the flower.", -,
        "Leave.", L_Close;

    if (isin("056-1.gat", 61, 30, 63, 32))
        goto L_Place;

    mes "This doesn't work, you're too far away.";
    goto L_Close;

L_Place:
    set @localMonsterCount,
        mobcount("013-1.gat", "#FlowerPentagram5::OnSquirrelDeath") +
        mobcount("013-1.gat", "#FlowerPentagram5::OnMushroomDeath") +
        mobcount("013-1.gat", "#FlowerPentagram5::OnBlueparDeath") +
        mobcount("013-1.gat", "#FlowerPentagram5::OnMoubooDeath") +
        mobcount("013-1.gat", "#FlowerPentagram5::OnScorpionDeath") +
        mobcount("013-1.gat", "#FlowerPentagram5::OnRScorpionDeath") +
        mobcount("013-1.gat", "#FlowerPentagram5::OnAScorpionDeath") +
        mobcount("013-1.gat", "#FlowerPentagram5::OnBScorpionDeath") +
        8; // the mobcount function has an offset of -1, so we add 8 to have the actual amount of monsters
    if (@localMonsterCount > 4)
        goto L_MonstersAlive;

    mes "Nervous of what's going to happen, you take the last of the flowers and put it into place.";
    next;
    mes "Tension builds up around you, much stronger than all the times before. It pressures your head, your nose starts bleeding.";
    heal -5, 0;
    next;
    callfunc "FlowerPentagramCount";
    if (($@Flower_Pentagram_Time > gettimetick(2) - 3600) && ($@Flower_Pentagram_Mobcount > 15))
        goto L_TooEarly;
    set $@Flower_Pentagram_Time, gettimetick(2);
    if (countitem("RedSummonFlower") < 1)
        goto L_NoFlower;
    delitem "RedSummonFlower", 1;

    mes "The moment you think you can't endure it anymore, the webbing of the world seems to tear apart.";
    set OrumQuest, 31;
    close2;
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1105, 3, "#FlowerPentagram5::OnSquirrelDeath";
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1106, 2, "#FlowerPentagram5::OnMushroomDeath";
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1107, 3, "#FlowerPentagram5::OnBlueparDeath";
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1104, 2, "#FlowerPentagram5::OnMoubooDeath";
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1003, 3, "#FlowerPentagram5::OnScorpionDeath";
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1004, 2, "#FlowerPentagram5::OnRScorpionDeath";
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1057, 2, "#FlowerPentagram5::OnAScorpionDeath";
    areamonster "056-1.gat", 56, 26, 80, 46, "", 1009, 2, "#FlowerPentagram5::OnBScorpionDeath";
    set @value, 15;
    callfunc "QuestSagathaAnnoy";
    set @value, 0;
    donpcevent "#FlowerPentagram::OnSummon";
    end;

OnSquirrelDeath:
    set @mobID, 1105;
    callfunc "MobPoints";
    end;

OnMushroomDeath:
    set @mobID, 1106;
    callfunc "MobPoints";
    end;

OnBlueparDeath:
    set @mobID, 1107;
    callfunc "MobPoints";
    end;

OnMoubooDeath:
    set @mobID, 1104;
    callfunc "MobPoints";
    end;

OnScorpionDeath:
    set @mobID, 1003;
    callfunc "MobPoints";
    end;

OnRScorpionDeath:
    set @mobID, 1004;
    callfunc "MobPoints";
    end;

OnAScorpionDeath:
    set @mobID, 1057;
    callfunc "MobPoints";
    end;

OnBScorpionDeath:
    set @mobID, 1009;
    callfunc "MobPoints";
    end;

L_TooEarly:
    mes "Then everything calms down again and then tension vanishes. You're unsure what's going on.";
    next;
    mes "You pick up the flower again.";
    next;
    mes "Looking at the place more closely, it seems another summoning has happened just before, leaving the path between this world and the astral plane drained and exhausted.";
    next;
    mes "You should wait a while until it recovers, or go and search the creatures that got summoned.";
    goto L_Close;

L_MonstersAlive:
    mes "As you get closer to the place, you feel an unnerving presence.";
    mes "The place has recently been used to summon something! And the beings are still near!";
    next;
    mes "You should get rid of them before attempting the summoning yourself.";
    goto L_Close;

L_NoFlower:
    mes "You reach into your pocket, but you can't find the flower! You're so close to completing your task.";
    mes "How could you lose the last flower? If you can't get it back, you have to tell Orum.";
    goto L_Close;

L_PlacedFifthFlower:
    mes "This is the place where you put the last one of Orum's magical flowers.";
    mes "But after the pentagram was finished and the summoning happened, everything is back to normal with this spot.";
    goto L_Close;

L_Close:
    set @localMonsterCount, 0;
    close;
}