在你的code中,错误主要出现在以下几点:

  1. 缺少自定义对象定义。这是因为你使用了OBJ_Walls这个变量,但是没有定义这个对象。

  2. 没有定义ground这个变量之前就使用了它。

  3. 使用了未定义的h,v等变量。

你可以先定义这些变量,然后再使用它们。例如:

/// 创建事件
对象定义 ground = false;
变量 _x, _y;

/// limits
如果 (hspeed > hspeedl) 然后 hspeed = hspeedl;
如果 (hspeed < Neghspeedl) 然后 hspeed = Neghspeedl;
如果 (vspeed > vspeedl) 然后 vspeed = vspeedl;
如果 (vspeed < Negvspeedl) 然后 vspeed = Negvspeedl;

// h movement
如果 (hspeed > 0)
{
    不会冲突(_x, _y);
    _x += 1;
    // 不会冲突检查
}

如果 (hspeed < 0)
{
    不会冲突(_x, _y);
    _x -= 1;
    // 不会冲突检查
}

// v movement
如果 (vspeed > 0)
{
    不会冲突(_x, _y);
    _y += 1;
    // 不会冲突检查
}

如果 (vspeed < 0)
{
    // 不会冲突检查
    _y -= 1;
    // 不会冲突检查
}

// 等待冲突

会不会 (_x, _y);
不会冲突(_x, _y);

// 降落
如果 (vspeed>=0 && !ground 和 会不会 (_x, _y+16))
{
    vspeed = 0;
    ground = true;
}

// 离开 地面
如果 (!会不会 (_x-16, _y) 且 ground) 
{
    ground = false;
}

// 重力
如果 (!ground) 然后 vspeed += grv;

定义自定义对象和变量:

/// 对象事件
// walls 
_实例变量  _x, _y;
_属性  _width = 16, _height = 16;
_实例变量 ground = false;
/// walls 
如果 (_instance == object_walls) 
{
    // wall
}

定义重力相关变量:

/// 速度
变量 hspeed = 0;
变量 vspeed = 0;
变量 hspeedl = 16;
变量 Neghspeedl = -16;
变量 vspeedl = 16;
变量 Negvspeedl = -16;
变量 acc = 0.046875;
变量 dcc = 0.5;
变量 frc = 0.046875;
变量 grv = 0.21875;