求解这段代码的表达式。
gamemaker吧
全部回复
仅看楼主
level 1
Gbariel_tang 楼主
有一点点 c#基础,这个a>b的方法还是第一次见到卸载表达式里面的,所以这个是啥意思?
之前猜测是true就返回1,false是返回0。
然后我在计时器事件里面写了试了这段代码
var testNum = (3 < 2) + 1;
show_debug_message(testNum);
运行的时候,控制台一直返回1。
又试了
var testNum = (3 > 2) + 1;
show_debug_message(testNum);
运行的时候,控制台还是一直返回1。。。
所以这个到底是啥意思
2017年11月05日 14点11分 1
level 15
true是1, false是0。至于你第二次测试的结果理论上不会发生,可能是由于别的问题。
2017年11月06日 05点11分 2
level 8
表达式,即flipped值为1或-1
2017年11月06日 14点11分 3
大佬,问下gml有内置的抛物线计算函数吗?翻了一遍文档貌似没发现 是只能自己写脚本吗?
2017年11月07日 07点11分
@Gbariel_tang 需要三个值,一个向前的速度,一个向上的速度,还有一个向下的重力。我以前搞过。
2017年11月07日 14点11分
level 8
几乎所有语言都支持这种运算吧
表达式当成运算项,代入表达式结果进行运算。
如果有c#的基础,这种表达式应该是很基础的东西吧
相当于c的三目运算var flipped=(mouse_x>x)?1:-1;
2017年11月07日 00点11分 4
原谅我的C#只是粗浅的学到自定义函数···还是跟siki的教程学的 没有每个点都深入 快30岁来自学代码 伤不起 哈哈
2017年11月07日 01点11分
@Gbariel_tang 这样啊 哈哈谢谢 我C
2017年11月07日 01点11分
level 4
这是写逻辑式子吧。。。
2017年11月07日 09点11分 5
不是哦 最后返回的是-1或1
2017年11月07日 13点11分
@Gbariel_tang 3<2是0,0+1为1。3>2为1,1+1为10,那么负号应该是因为数据溢出导致的。。。
2017年11月08日 08点11分
@xxbreath 3 >2返回0或1,这时候要让等式左侧始终为-1或1的话,就需要*2再减去1,就是(a>b)* 2 - 1 代码里面是拿来判断鼠标与对象的相对位置关系的,鼠标再左侧就返回-1,在右侧就返回1
2017年11月09日 02点11分
@Gbariel_tang 原来如此。。。
2017年11月09日 07点11分
1