GameMaker将游戏转换为HTML5,显示出巨大的漏洞

GameMaker将游戏转换为HTML5,显示出巨大的漏洞,html,game-maker,Html,Game Maker,我最近和GameMaker做了一个游戏,我试着把它转换成html5,但它有一些大错误。。。以下是html格式的游戏: 首先,文本将显示在左上角,就像您在这个屏幕截图中看到的那样:文本仅在创建组合后显示 其次,当你点击一个球体时,它意味着缩小到一半大小,然后再放大到1.5倍大小,但它会缩小到1倍大,然后无限增大。绘图代码如下: if sl=1 { if (s=0.6 or s=1) then d=d*(-1) s+=d if(frozen=1) { draw_spri

我最近和GameMaker做了一个游戏,我试着把它转换成html5,但它有一些大错误。。。以下是html格式的游戏:

首先,文本将显示在左上角,就像您在这个屏幕截图中看到的那样:文本仅在创建组合后显示

其次,当你点击一个球体时,它意味着缩小到一半大小,然后再放大到1.5倍大小,但它会缩小到1倍大,然后无限增大。绘图代码如下:

if sl=1
 {
  if (s=0.6 or s=1) then d=d*(-1)
  s+=d
  if(frozen=1)
    {
    draw_sprite_ext(sprite_index,global.skin,x,y,s,s,0,c_blue,1)
    }
}
还有其他一些小错误,比如一些文本无法显示,粒子效果似乎无法绘制,游戏返回时总是说棋盘上没有匹配。到目前为止我只找到了这些

有人知道我能做些什么来解决这个问题吗


谢谢。

因为没有人提供答案,而我自己也找到了答案,所以我会把它放在这里,这样同舟共济的其他人也能从中受益。实际上,我所有浮点数问题的根源都是不规则的,例如,它不是1,而是1.000000003,这意味着如果要检查该变量是否等于1,它将返回false。详情请参阅:

举个例子,我改变了路线

if (s=0.6 or s=1) then d=d*(-1)

如果(s1)那么d=d*(-1)

现在问题已经解决了。

我不懂任何yoyogame语言,但你可能应该做
abs(s-0.6)
,其中
accurity
0.00001
或其他什么。这样,您的代码更适合更改。
if (s<0.6 or s>1) then d=d*(-1)