繁体   English   中英

如何阻止对象在Corona SDK的同一路径上移动

[英]How to stop objects moving on the same path in Corona sdk

我在现场有玩家和敌人的物体。 敌人是在指定路径上随机生成的,另一个是从敌人另一侧生成的玩家。 如果这两个物体在同一条路径上相距一定距离,并且两个物体中的任何一个被射击击毁,那么我要停止这两个物体,然后剩下的另一个物体(无论是敌人还是玩家)必须开始移动。

我已经实现了下面的代码,并且当它们彼此面对面并且相距200距离时,它第一次起作用。 假设玩家射击敌人,然后敌人被消灭,并且玩家开始移动,但是如果现在有另一个敌人出现在玩家面前,则玩家不会停止,它会继续移动,但是敌人会停止。 请提出一些解决方案。 谢谢...

for j=#enemy, 1, -1 do
  if(enemy[j].y~=nil and player.y~=nil then
   diff=player.y-enemy[j].y 
   if(enemy[j].x==player.x) then 
     if(diff<=200) then
       enemy[j].Speed=0
       player.speed=0
     end
   end
  else
  player.speed=-50
  enemy[j].Speed=2
  end
end

您正在为任何nil enemy[j].y设置player.speed=-50 enemy[j].y

也许你应该改变思路

player.speed=-50

for循环之上。 这样,玩家将默认移动,但可以被任何敌人阻止。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM