summaryrefslogtreecommitdiff
path: root/npc/functions/seasons.txt
blob: 3fe8f12d1165c369839a44757df3cbab09fc48c3 (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
// TMW2 Script.
// Authors:
//    Jesusalva
// Description:
//    Season functions

// Function authored by Reid and edited by Jesusalva
// season({day, month})
// SQuest_Summer
//    returns the current season (approximation)
//      WINTER:      Winter, 21/12
//      SPRING:      Spring, 20/03
//      SUMMER:      Summer, 21/06
//      AUTUMN:      Autumn, 22/09

function	script	season	{
    .@current_month = getarg(0, gettime(GETTIME_MONTH));

    if (.@current_month % 3 == 0) {
        .@current_day = getarg(1, gettime(GETTIME_DAYOFMONTH));

        switch (.@current_month) {
            case MARCH:     .@season_day = 20; break;
            case JUNE:      .@season_day = 21; break;
            case SEPTEMBER: .@season_day = 22; break;
            case DECEMBER:  .@season_day = 21; break;
            default: break;
        }

        .@is_after_season_day = .@current_day >= .@season_day ? 0 : -1;
    }

    return (.@current_month / 3 + .@is_after_season_day) % 4;
}

000-0,0,0,0	script	#SeasonCore	NPC_HIDDEN,{
    end;

OnInit:
OnHour00:
    if ($@SEASON != season()) {

        // Summer extra drops
        if (season() == SUMMER && $@SEASON != SUMMER) {
            addmonsterdrop(Duck, CherryCocktail, 360);
            addmonsterdrop(Croc, CherryCocktail, 180);
            addmonsterdrop(SaxsoGhost, CherryCocktail, 450);
            addmonsterdrop(RedButterfly, CherryCocktail, 100);

            addmonsterdrop(Maggot, CactusCocktail, 140);
            addmonsterdrop(DesertMaggot, CactusCocktail, 190);
            addmonsterdrop(Scorpion, CactusCocktail, 165);
            addmonsterdrop(GiantMaggot, CactusCocktail, 290);
            addmonsterdrop(Centaur, CactusCocktail, 1000);

            addmonsterdrop(AlphaMouboo, AppleCocktail, 850);
            addmonsterdrop(OceanCroc, AppleCocktail, 480);
            addmonsterdrop(Mouboo, AppleCocktail, 280);
            addmonsterdrop(Pinkie, AppleCocktail, 70);

            addmonsterdrop(Duck, Sunglasses, 1);
            addmonsterdrop(Croc, Sunglasses, 1);
            addmonsterdrop(SaxsoGhost, Sunglasses, 1);
            addmonsterdrop(DesertMaggot, Sunglasses, 1);
            addmonsterdrop(Scorpion, Sunglasses, 1);
            addmonsterdrop(GiantMaggot, Sunglasses, 1);
            addmonsterdrop(Centaur, Sunglasses, 3);
            addmonsterdrop(AlphaMouboo, Sunglasses, 1);
            addmonsterdrop(OceanCroc, Sunglasses, 1);
            addmonsterdrop(Mouboo, Sunglasses, 1);
            addmonsterdrop(Pinkie, Sunglasses, 1);
            addmonsterdrop(Moonshroom, Sunglasses, 2);
            addmonsterdrop(RedButterfly, Sunglasses, 1);

        }
        // Summer end delete drops
        if (season() == AUTUMN && $@SEASON == SUMMER) {
            delmonsterdrop(Duck, CherryCocktail);
            delmonsterdrop(Croc, CherryCocktail);
            delmonsterdrop(SaxsoGhost, CherryCocktail);
            delmonsterdrop(RedButterfly, CherryCocktail);
            delmonsterdrop(Maggot, CactusCocktail);
            delmonsterdrop(DesertMaggot, CactusCocktail);
            delmonsterdrop(Scorpion, CactusCocktail);
            delmonsterdrop(GiantMaggot, CactusCocktail);
            delmonsterdrop(Centaur, CactusCocktail);
            delmonsterdrop(AlphaMouboo, AppleCocktail);
            delmonsterdrop(OceanCroc, AppleCocktail);
            delmonsterdrop(Mouboo, AppleCocktail);
            delmonsterdrop(Pinkie, AppleCocktail);
            delmonsterdrop(Duck, Sunglasses);
            delmonsterdrop(Croc, Sunglasses);
            delmonsterdrop(SaxsoGhost, Sunglasses);
            delmonsterdrop(DesertMaggot, Sunglasses);
            delmonsterdrop(Scorpion, Sunglasses);
            delmonsterdrop(GiantMaggot, Sunglasses);
            delmonsterdrop(Centaur, Sunglasses);
            delmonsterdrop(AlphaMouboo, Sunglasses);
            delmonsterdrop(OceanCroc, Sunglasses);
            delmonsterdrop(Mouboo, Sunglasses);
            delmonsterdrop(Pinkie, Sunglasses);
            delmonsterdrop(Moonshroom, Sunglasses);
            delmonsterdrop(RedButterfly, Sunglasses);
        }

        $@SEASON=season();
    }
    end;
}