level 6
问题2:sprite_set_alpha_from_sprite(ind,spr)这是用一个精灵设置另一个精灵的透明度,GMS的实例比GM的用法复杂很多,请问是什么原因。
GM里:
sprite_set_alpha_from_sprite(ind,spr);
draw_sprite(ind, 0, x, y);
GMS里:
spr_create = false;
var surf, spr;
surf = surface_create(sprite_get_width(spr_Explosion_Alpha), sprite_get_height(spr_Explosion_Alpha));
surface_set_target(surf);
draw_clear_alpha(c_black, 0);
draw_sprite(spr_Gradient, 0, 0, 0);
sprite_index = sprite_create_from_surface(surf, 0, 0, sprite_width, sprite_height, false, false, sprite_get_xoffset(spr_Gradient), sprite_get_xoffset(spr_Gradient));
draw_clear_alpha(c_black, 0);
draw_sprite(spr_Explosion_Alpha, 0, sprite_get_xoffset(spr_Gradient), sprite_get_xoffset(spr_Gradient));
spr = sprite_create_from_surface(surf, 0, 0, sprite_width, sprite_height, false, false, sprite_get_xoffset(spr_Gradient), sprite_get_xoffset(spr_Gradient));
surface_reset_target();
surface_free(surf);
sprite_set_alpha_from_sprite(sprite_index, spr);
sprite_delete(spr);
draw_sprite(sprite_index, 0, x, y);
2014年06月03日 12点06分

