【问题标题】:Game maker studio place_meeting游戏制作工作室 place_meeting
【发布时间】:2016-09-06 12:10:43
【问题描述】:
//obj 1 has that:
if (place_meeting(x,y, obj_nomatter)){
 global.points -= 1;
 moveawayfromobj_nomatter();
 // obj 1 rotates.
}

问题是分数有时会下降一到七。 对算法有什么想法吗?谢谢!

【问题讨论】:

标签: variables game-maker gml


【解决方案1】:

您在 step 事件中使用它 所以如果你仍然碰撞七步,它会调用一到七次动作

一种方法是使用计时器或变量

所以: 这是使用变量的方法

var ones = false;
if(!ones) {
  if(place_meeting(x,y,obj_nomatter)) {
    global.points -= 1; 
    ones = true;
  }
}

这是使用计时器的方法

step event:
if(place_meeting(x,y,obj_nomatter)) {alarm[0] = room_speed;} 
//to use the room_speed, 30 for default (a second)

alarm[0]:
global.points -= 1;

//with this method if you collide more than room_speed global.points keeps going down

【讨论】:

    猜你喜欢
    • 2018-08-29
    • 2019-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-09
    • 1970-01-01
    相关资源
    最近更新 更多