簡體   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