1

我正在尝试在房间中获得一个随机位置,而该位置不会与 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 应该是正确的。当我执行这个脚本时,我的 while 不断循环并且游戏崩溃,我不知道为什么。是的,房间里有没有被“col_obj”占用的空闲位置

4

1 回答 1

0

Fixed the issue, used

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

instead.. not sure why while didn't work.

于 2014-04-17T19:07:48.993 回答