|
1
|
if (!is_init)
|
|
2
|
exit;
|
|
3
|
if (!sprite_exists(text_sprite))
|
|
4
|
{
|
|
5
|
if (!surface_exists(bg_surface))
|
|
6
|
bg_surface = surface_create(camera_get_view_width(0), camera_get_view_height(0));
|
|
7
|
surface_set_target(bg_surface);
|
|
8
|
draw_clear_alpha(c_black, 0);
|
|
9
|
draw_set_color(c_white);
|
|
10
|
draw_set_font(scr_84_get_fontscr_84_get_font
function scr_84_get_font(arg0)
{
if (!variable_global_exists("chemg_last_get_font"))
global.chemg_last_get_font = "";
if (arg0 != global.chemg_last_get_font)
global.chemg_last_get_font = arg0;
return ds_map_find_value(global.font_map, arg0);
} ("main"));
|
|
11
|
draw_text_transformed(x, y, current_text, 1, 1, 0);
|
|
12
|
surface_reset_target();
|
|
13
|
text_sprite = sprite_create_from_surface(bg_surface, x, y, x + string_width(current_text), y + string_height(current_text), false, true, 0, 0);
|
|
14
|
sprite_set_offset(text_sprite, sprite_get_width(text_sprite) / 2, sprite_get_height(text_sprite) / 2);
|
|
15
|
surface_free(bg_surface);
|
|
16
|
if (!surface_exists(outline_surface))
|
|
17
|
outline_surface = surface_create(camera_get_view_width(0), camera_get_view_height(0));
|
|
18
|
surface_set_target(outline_surface);
|
|
19
|
draw_clear_alpha(c_black, 0);
|
|
20
|
draw_set_color(c_white);
|
|
21
|
var _x_pos = 40;
|
|
22
|
var _y_pos = 40;
|
|
23
|
draw_text_transformed(_x_pos + 1, _y_pos + 1, current_text, 1, 1, 0);
|
|
24
|
draw_text_transformed(_x_pos - 1, _y_pos - 1, current_text, 1, 1, 0);
|
|
25
|
draw_text_transformed(_x_pos, _y_pos + 1, current_text, 1, 1, 0);
|
|
26
|
draw_text_transformed(_x_pos + 1, _y_pos, current_text, 1, 1, 0);
|
|
27
|
draw_text_transformed(_x_pos, _y_pos - 1, current_text, 1, 1, 0);
|
|
28
|
draw_text_transformed(_x_pos - 1, _y_pos, current_text, 1, 1, 0);
|
|
29
|
draw_text_transformed(_x_pos + 1, _y_pos - 1, current_text, 1, 1, 0);
|
|
30
|
draw_text_transformed(_x_pos - 1, _y_pos + 1, current_text, 1, 1, 0);
|
|
31
|
surface_reset_target();
|
|
32
|
outline_sprite = sprite_create_from_surface(outline_surface, _x_pos - 1, _y_pos - 1, string_width(current_text) + 1, string_height(current_text) + 1, false, true, 0, 0);
|
|
33
|
sprite_set_offset(outline_sprite, (sprite_get_width(outline_sprite) / 2) + 1, (sprite_get_height(outline_sprite) / 2) + 1);
|
|
34
|
surface_free(outline_surface);
|
|
35
|
}
|
|
36
|
else
|
|
37
|
{
|
|
38
|
timer++;
|
|
39
|
if (timer == 60)
|
|
40
|
fade_out(8);
|
|
41
|
if (flashing)
|
|
42
|
current_alpha += 0.4;
|
|
43
|
draw_sprite_ext(outline_sprite, 0, camerax() + (view_wport[0] / 2), y + 90, 4, 4, 0, current_outline_color, image_alpha + sin(current_alpha));
|
|
44
|
if (is_love)
|
|
45
|
{
|
|
46
|
shader_set(shd_rainbow);
|
|
47
|
_uniUV = shader_get_uniform(shd_rainbow, "u_uv");
|
|
48
|
_uniTime = shader_get_uniform(shd_rainbow, "u_time");
|
|
49
|
_uniSpeed = shader_get_uniform(shd_rainbow, "u_speed");
|
|
50
|
_time -= bonus_color_speed;
|
|
51
|
var uv = sprite_get_uvs(text_sprite, 0);
|
|
52
|
shader_set_uniform_f(_uniUV, uv[0], uv[2]);
|
|
53
|
shader_set_uniform_f(_uniSpeed, _speed);
|
|
54
|
shader_set_uniform_f(_uniTime, _time);
|
|
55
|
}
|
|
56
|
var _offset = (global.lang == "ja") ? -4 : 0;
|
|
57
|
draw_sprite_ext(text_sprite, 0, camerax() + (view_wport[0] / 2), y + 90 + _offset, 4, 4, 0, current_color, image_alpha + sin(current_alpha));
|
|
58
|
if (is_love)
|
|
59
|
shader_reset();
|
|
60
|
}
|