GameMaker 日本語掲示板

便利な自作スクリプトを教えてください / 23

24 コメント
views
18 フォロー
23
asa 2023/06/27 (火) 18:47:29 修正

指定xy位置がspriteの中央位置になるように表示します
(spriteの原点を無視します)

原点がバラバラの複数の画像を上下左右中央揃えで表示するのに使ってます

// 指定xy位置がspriteの中央位置になるように表示する
/// @param {Asset.GMSprite} sprite
/// @param {Real} image_index
/// @param {Real} x
/// @param {Real} y
/// @param {Real} image_xscale
/// @param {Real} image_yscale
/// @param {Real} image_angle
/// @param {Real} image_blend
/// @param {Real} image_alpha
function scr_draw_sprite_ext_vcentered(_spr, _idx, _x, _y, _xscl, _yscl, _angle, _color, _alpha)
{
	var _offsetx = (sprite_get_xoffset(_spr) - sprite_get_width(_spr)/2) * _xscl;
	var _offsety = (sprite_get_yoffset(_spr) - sprite_get_height(_spr)/2) * _yscl;
	draw_sprite_ext(_spr, _idx, _x+_offsetx, _y+_offsety, _xscl, _yscl, _angle, _color, _alpha);
}

2023/06/28: 拡大率を反映させるよう修正

通報 ...