summaryrefslogtreecommitdiff
path: root/world/map/npc/annuals/check_time.txt
blob: 1d37ecbcdaa4a40ff51e21b9e97c8dfec7a2ac62 (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
// check a date
// Wushin
// $@start_month
// $@end_month
// $@start_day
// $@end_day
// $@reward_start_month
// $@reward_start_day

function|script|GetEventTime
{
    set $@month, gettime(6);
    set $@day, gettime(5);

    if ($@start_month > $@end_month)
        goto L_YearWrap;
    goto L_Normal;

L_Normal:
    if(($@month < $@start_month)
        || ($@month == $@start_month && $@day < $@start_day))
        goto L_NoEventTime;
    if(($@month > $@end_month)
        || ($@month == $@end_month && $@day > $@end_day))
        goto L_NoEventTime;
    if(($@month > $@reward_start_month)
        || ($@month == $@reward_start_month && $@day >= $@reward_start_day))
        goto L_RewardTime;
    goto L_EventTime;

L_YearWrap:
    if(($@month == $@reward_start_month && $@day >= $@reward_start_day
            && ($@day <= $@end_day && $@reward_start_month == $@end_month
                || !($@reward_start_month == $@end_month)))
        || ($@month == $@end_month && $@day <= $@end_day
            && ($@day >= $@reward_start_day && $@reward_start_month == $@end_month
                || !($@reward_start_month == $@end_month)))
        || ($@month < $@end_month && $@month > $@reward_start_month))
        goto L_RewardTime;
    if (($@month >= $@start_month && $@day >= $@start_day) || ($@month <= $@end_month && $@day <= $@end_day))
        goto L_EventTime;
    goto L_NoEventTime;

L_NoEventTime:
    set $@event_time, 0;
    return;

L_EventTime:
    set $@event_time, 1;
    return;

L_RewardTime:
    set $@event_time, 2;
    return;
}