gif 将更好地解释我正在尝试做的事情。 弓瞄准。
如您所见,我无法使箭头跟随目标。问题是我的弓和箭是分开的,所以弓会产生箭头,这就是我无法计算箭头的 hspeed 和 vspeed 以及重力以匹配被宠爱的目标的弓绘制事件的问题。我将发布点目标代码和箭头重力/运动代码箭头的生成代码在释放按钮时很简单,它在弓的 x、y 位置生成箭头。如果您需要任何其他代码,我会发布它。抱歉,如果没有很好地解释。
箭头代码:结束步骤
///Check if parent still exists
if (parent != noone)
if (!instance_exists(parent))
{
parent = noone;
}
///Gravity
if (grav != 0)
{
hsp += lengthdir_x(grav, grav_dir);
vsp += lengthdir_y(grav, grav_dir);
}
///Increase gravity over time, up until a maximum amount
grav = min(grav+grav_add, grav_max);
///Limit speed
hsp = clamp(hsp, -hsp_max, hsp_max);
vsp = clamp(vsp, -vsp_max, vsp_max);
///Calculate directional speed
var sp = point_distance(0, 0, hsp, vsp);
direction = point_direction(0, 0, hsp, vsp);
弓:
绘图事件:
var _f_x = x;
var _f_y = y;
var _f_spd_x = draw_aim_circle_max * dcos(controler_angle)
var _f_spd_y = draw_aim_circle_max *-dsin(controler_angle)
while (!instance_place(_f_x,_f_y,objAimCircleKiller))
{
draw_sprite(sprAimCircleSmall,0,_f_x,_f_y+1);
_f_x += _f_spd_x
_f_spd_y += grav_aimCircle
_f_y += _f_spd_y;
}