| 1 |
with (other) |
| 2 |
{ |
| 3 |
surface_set_target(reflection_surf); |
| 4 |
draw_clear_alpha(c_black, 0); |
| 5 |
shader_set(sh_reflection); |
| 6 |
var sprite_uvs = sprite_get_uvs(obj_pl.sprite_index, obj_pl.image_index); |
| 7 |
shader_uvs = shader_get_uniform(sh_reflection, "spriteUVs"); |
| 8 |
shader_set_uniform_f(shader_uvs, sprite_uvs[0], sprite_uvs[1], sprite_uvs[2], sprite_uvs[3]); |
| 9 |
var alpha_uniform = shader_get_uniform(sh_reflection, "Alpha"); |
| 10 |
shader_set_uniform_f(alpha_uniform, 0.08); |
| 11 |
with (obj_pl) |
| 12 |
{ |
| 13 |
draw_set_blend_mode_ext(bm_one, bm_inv_src_alpha); |
| 14 |
draw_sprite_ext(sprite_index, -1, x - __view_get(e__VW.XView, 0), (y + (sprite_height * 2)) - (sprite_yoffset * 2) - __view_get(e__VW.YView, 0), 1, -1, 0, c_white, 1); |
| 15 |
draw_set_blend_mode(bm_normal); |
| 16 |
} |
| 17 |
shader_reset(); |
| 18 |
draw_set_blend_mode(bm_subtract); |
| 19 |
draw_sprite_ext(spr_snowdin_04_reflection_mask, 0, -__view_get(e__VW.XView, 0), -__view_get(e__VW.YView, 0), 4, 4, 0, c_white, 1); |
| 20 |
draw_set_blend_mode(bm_normal); |
| 21 |
surface_reset_target(); |
| 22 |
draw_surface(reflection_surf, __view_get(e__VW.XView, 0), __view_get(e__VW.YView, 0)); |
| 23 |
} |
| 24 |
|
| 25 |
enum e__VW |
| 26 |
{ |
| 27 |
XView, |
| 28 |
YView, |
| 29 |
WView, |
| 30 |
HView, |
| 31 |
Angle, |
| 32 |
HBorder, |
| 33 |
VBorder, |
| 34 |
HSpeed, |
| 35 |
VSpeed, |
| 36 |
Object, |
| 37 |
Visible, |
| 38 |
XPort, |
| 39 |
YPort, |
| 40 |
WPort, |
| 41 |
HPort, |
| 42 |
Camera, |
| 43 |
SurfaceID |
| 44 |
} |