level 8
anheimfb
楼主
下面是简化之后的代码,一共3个对象,就是发子弹打移动的怪的,打到怪子弹消失,
(触发子弹消失的条件已经简化成y轴位置的判定了)
o_renwu(人物)
beginstep:
if keyboard_check_pressed(ord(*F*))
{
instance_create(x+60*image_xscale,y,o_zidan)
}
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
o_guai(怪)
create:
y1=y
beginstep:
if y>=y1
vspeed=-40
if y<=y1-200
vspeed=40
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
o_zidan(子弹)
create:
hspeed=20
y=o_renwu.y-110
beginstep:
if o_guai.y>y-50
{
instance_deactivate_object(id)
}
if x>room_width
instance_destroy()
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
问题是:如果连续快速按space,就有可能出现游戏卡主无法执行的情况。
经过我反复试验,好像是出现两个子弹同时满足销毁的情况就会卡住
但是不知道为什么,是不是instance_deactivate_object(id)的用法不对
2014年10月10日 05点10分
1
(触发子弹消失的条件已经简化成y轴位置的判定了)
o_renwu(人物)
beginstep:
if keyboard_check_pressed(ord(*F*))
{
instance_create(x+60*image_xscale,y,o_zidan)
}
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
o_guai(怪)
create:
y1=y
beginstep:
if y>=y1
vspeed=-40
if y<=y1-200
vspeed=40
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
o_zidan(子弹)
create:
hspeed=20
y=o_renwu.y-110
beginstep:
if o_guai.y>y-50
{
instance_deactivate_object(id)
}
if x>room_width
instance_destroy()
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
问题是:如果连续快速按space,就有可能出现游戏卡主无法执行的情况。
经过我反复试验,好像是出现两个子弹同时满足销毁的情况就会卡住
但是不知道为什么,是不是instance_deactivate_object(id)的用法不对
