View difference between Paste ID: 2zY8f8yL and UQtpDXUc
SHOW: | | - or go back to the newest paste.
1
/==\ CREATE EVENT /==\
2
/// Game System Initialize
3
 
4
game_time_pause = false;
5
game_time_seconds = 0;
6
game_time_minutes = 0;
7
game_time_hours = 14;
8
game_time_day = 1;
9
game_time_month = 1;
10
game_time_year = 1;
11
game_time_speed = 0;
12
game_world_date = string(game_time_day)+"/"+string(game_time_month)+" Year "+string(game_time_year);
13
 
14
// Write out month and day names
15
game_day_name = ds_list_create();
16
ds_list_add(game_day_name,"Monday");
17
ds_list_add(game_day_name,"Tuesday");
18
ds_list_add(game_day_name,"Wednesday");
19
ds_list_add(game_day_name,"Thursday");
20
ds_list_add(game_day_name,"Friday");
21
ds_list_add(game_day_name,"Saturday");
22
ds_list_add(game_day_name,"Sunday");
23
 
24
game_month_name = ds_list_create();
25
ds_list_add(game_month_name,"January");
26
ds_list_add(game_month_name,"February");
27
ds_list_add(game_month_name,"March");
28
ds_list_add(game_month_name,"April");
29
ds_list_add(game_month_name,"May");
30
ds_list_add(game_month_name,"June");
31
ds_list_add(game_month_name,"July");
32
ds_list_add(game_month_name,"August");
33
ds_list_add(game_month_name,"September");
34
ds_list_add(game_month_name,"October");
35
ds_list_add(game_month_name,"November");
36
ds_list_add(game_month_name,"December");
37
 
38
game_month_day_count = ds_list_create();
39
ds_list_add(game_month_day_count,31);
40
ds_list_add(game_month_day_count,28);
41
ds_list_add(game_month_day_count,31);
42
ds_list_add(game_month_day_count,30);
43
ds_list_add(game_month_day_count,31);
44
ds_list_add(game_month_day_count,30);
45
ds_list_add(game_month_day_count,31);
46
ds_list_add(game_month_day_count,31);
47
ds_list_add(game_month_day_count,30);
48
ds_list_add(game_month_day_count,31);
49
ds_list_add(game_month_day_count,30);
50
ds_list_add(game_month_day_count,31);
51
 
52
 
53
 
54
/==\ STEP EVENT /==\
55
 
56
/// game_time_step()
57
 
58
/*
59
   This script allows the game to step forward in time
60
   while also accounting for various condition. This script
61
   should be called in each step that you would like time
62
   to step forward.
63
 
64
   You can increment the seconds by up to 60,
65
   minutes by up to 60, hours by up to 24,
66
   days by up to however many days are in that month,
67
   months by up to 12, and years by as many as you want.
68
*/
69
 
70
gml_pragma("forceinline"); // Boosts YYC performance, increases memory usage
71
 
72
// game_time_speed is a mode of time progression
73
switch(game_time_speed)
74
{
75
case 0:{game_time_seconds+=2/room_speed;break;} // Normal Speed
76
case 1:{game_time_seconds+=45/room_speed;break;} // Fast Speed
77
case 2:{game_time_seconds+=30+5/room_speed;break;} // Sanic Speed
78
}
79
 
80
// Seconds
81
if ( game_time_seconds > 59 )
82
{
83
game_time_minutes++;
84
game_time_seconds -= 60;
85
game_time_seconds = clamp(game_time_seconds,0,60);
86
}
87
88
// Minutes
89
if ( game_time_minutes > 59 )
90
{
91
game_time_hours++;
92
game_time_minutes -= 60;
93
game_time_minutes = clamp(game_time_minutes,0,60);
94
}
95
96
// Hours
97
if ( game_time_hours > 24 )
98
{
99-
game_world_date = string(game_time_day)+"/"+string(game_time_month)+"/"+string(game_time_year);
99+
100
game_time_hours = clamp(game_time_hours,1,25);
101
game_time_day++;
102
game_world_date = string(game_time_day)+"/"+string(game_time_month)+" Year "+string(game_time_year);
103
}
104
105
// Months
106
if ( game_time_day > game_month_day_count[|game_time_month] )
107-
game_world_date = string(game_time_day)+"/"+string(game_time_month)+"/"+string(game_time_year);
107+
108
game_time_day = 1;
109
game_time_month ++;
110
game_time_month = clamp(game_time_month,1,13);
111
game_world_date = string(game_time_day)+"/"+string(game_time_month)+" Year "+string(game_time_year);
112
}
113
114
// Years
115-
game_world_date = string(game_time_day)+"/"+string(game_time_month)+"/"+string(game_time_year);
115+
116
{
117
game_time_month = 1;
118
game_time_year++;
119
game_world_date = string(game_time_day)+"/"+string(game_time_month)+" Year "+string(game_time_year);
120
}