虽然卡在无尽的循环中

时间:2014-04-17 18:40:43

标签: loops while-loop gml

我试图在房间里找到一个没有位置与col_obj相撞的随机位置,这是我的代码:

w = room_width; 
h = room_height;
of = 32;
// zoek nieuwe lege plaats voor volgende letter op
tx = irandom_range(of,w - of * 2);

ty = irandom_range(of, 570);

var col_obj;
switch(global.room_sel)
{
  case lava_room:
  col_obj = lava_obj;
  break;

  case ice_room:
  col_obj = test;
  break;

  case space_room:
  col_obj = test;
  break;
}

while(place_meeting(tx, ty, col_obj))
{
  ty = irandom_range(of, 570);
  tx = irandom_range(of,w - of * 2);
}

global.room_sel总是在这里lava_room,所以col_obj应该是正确的.. 当我执行这个脚本时,我继续循环并且游戏崩溃,我不知道为什么。 是的,房间里有免费的地方没有被' col_obj'

带走

1 个答案:

答案 0 :(得分:0)

修正了问题,使用了

do { //code } until(!place_meeting(tx, ty, col_obj)) 

相反..不确定为什么虽然不起作用。