求助!
-
@用户202533636 实例变量是跟随实例的,而不是跟随对象;所以应该换用其他数据存储方式,例如上一楼提到的全局变量。当然如果数据只在这个场景内有用的话,使用静态局部变量也是很好的选择。或者,如果你的计数文本是场景内唯一且一直存在的,还可以把数据放在文本的实例变量上。
以下是几种写法的参考:(全局变量的方法跟局部变量是一样的)
-
@其余 谢谢!谢谢!谢谢!谢谢!
-
@zjxdiu 谢谢!谢谢!谢谢!谢谢!
-
@其余 杀一个怪,全屏到怪都死了。只死我打的那个怎么写?
-
@用户202533636 要选中实例才能销毁指定的敌人;论坛里有一个教程可以参考 https://bbs.evkworld.cn/topic/1134
具体写法可以是这样:
如果前面的条件是碰撞等的话,还可以更简单:
如果需要血量最低值限制为0,可以加一个表达式:
(注意这里的999也变成了子弹的实例变量,这样就可以在游戏内更改子弹的伤害值)
-
此回复已被删除!
-
@用户202533636 你这条事件操作的就是当前已有的实例,对之后新创建的实例没有影响的,所以新实例自然还是初始值,如果除了当前的实例之外还要之后新增的实例也有这块加成,应该在创建实例时也加上这段设置值的动作
-
@zjxdiu 好的。谢谢了。我试试。
-
此回复已被删除!
-
@zjxdiu 在角色附近100距离外随机刷新敌人该怎么写呢?
-
@用户202533636
是需要在100距离以内还是以外?不过思路是一样的:
1.当需要刷新的时候,生成一个随机数,范围是(0,100),保存到一个变量中,假设为tx;
2.生成第二个随机数,范围设定为(0,√(100²-tx²)),设为ty变量;
3.使用系统里的创建实例,生成怪物;坐标为(角色.x+tx-50,角色.y+ty-50)。
因为距离要在100以内,所以实际上需要满足的就是tx²+ty²≤100。
坐标减去50的目的是让刷怪范围的圆心位于角色身上,而不是只在某一侧。
如果需要距离大于100,需要设定最远生成位置限制(例如场景边界),包括x和y方向的,然后分别减去tx和ty即可,或者修改随机数范围。
-
@用户202533636 一个取巧的方法:找一个透明实例用来定位,先对这个实例设置位置到角色坐标上,然后用另一个按角度设置位置的动作,距离填100(或以上的值,甚至是100加上一个随机数也可以,因为你说的是“100以外”),然后角度填random(360),再在这个实例上创建你要生成的实例即可,这样就确保了位置是100以外的随机位置