【求助】关于path的问题(path本身移动的问题)
gamemaker吧
全部回复
仅看楼主
level 6
Relliks 楼主
如题,现在设定了一个path,让某个小球沿着path移动(比如这个小球在做跳跃运动,其path定义为“沿垂直于地面的直线来回运动”)。
然后我现在希望这个小球一边沿着这个path运动,一边整体上在屏幕上从左至右移动(也就是给这个path本身加上一个从左向右的矢量),请问可能直接通过设定path和物体移动来实现么?
目前测试的结果是,一个instance一旦开始沿path运动,就一直沿该path运动,即使再为之设置速度或者改变其坐标,都一律无效。

2010年11月25日 08点11分 1
level 13
不是太明白呢可以生成一个例子来看看~~~ 不过你要移动在路径上的对象,最好是更改路径而不是物体,利用path_change_point在节点原本的坐标上加上你的矢量即可
2010年11月25日 09点11分 2
level 6
Relliks 楼主
好,我稍微按上面说的做了个例子,T大可以看下。
115网盘,提取码:t1c7fd2a30
我期望的结果是,那个球在那里转,我点一下鼠标,就一边转一边向右移动。但是现在由于是沿着path在转,所以在全局鼠标事件里让其右移的效果无法实现。
(在object ball里面的create事件里set了一个path,如果把set path去掉,则鼠标点击是可以让球向右移动的)。

2010年11月25日 09点11分 3
level 13
哦这样呀,比我想的达到的功能要简单一些~~..
我看了一下 你将你鼠标的时间改成这样
step = 2 //增加值
temp_pin = path_position//将路径当前点赋予temp_pin
path_end()//结束路径
path_shift(path0, step , 0)//路径移动x轴step个单位
path_start(path0 , 5 , 1 , 1 )   //重新开始路径
path_position = temp_pin //将temp_pin赋予重新开始路径的节点
另外把你的路径改为绝对而不是相对。
为什么必须要重新启动路径呢?路径是不会更新的,如果临时修改路径会造成严重的错误,所以你需要重新开始一次路径~

2010年11月25日 10点11分 4
level 6
Relliks 楼主
原来这样,明白了,谢谢F大~~
2010年11月25日 13点11分 7
1