Project1
标题:
抛物线(初版)
[打印本页]
作者:
px.凤翔九天
时间:
2011-8-26 12:56
标题:
抛物线(初版)
恩,这几天无聊了,随手写了个这玩意,很简单的东西,而且貌似也没什么大用...........
就是给定速度,初始点和抛物线顶点让一个sprite做抛物线运动的代码而已...
暂时好像可以改改去做fruit ninja~
不算很完善的东西,欢迎吐槽。
class Scene_Fly
def main
@obj=Sprite.new
@obj.bitmap=Bitmap.new("Graphics/Icons/041-Item10")
@obj.x,@obj.y=0,480
Graphics.transition
throw([100,480],[300,85],1)
throw([100,480],[200,150],4)
throw([300,480],[150,150],3)
loop do
Graphics.update
if $scene != self
break
end
end
end
def throw(start=[0,480],climax=[200,200],speedup=1)
@obj.x,@obj.y=start[0],start[1]
a_count=(start[1]-climax[1])/((start[0]-climax[0])*(start[0]-climax[0])).to_f
count=(climax[0]-start[0])*2 / speedup
count*=-1 if count <=0
count.times{|index|
@obj.x+=1*speedup if climax[0]>=start[0]
@obj.x-=1*speedup if climax[0]<=start[0]
@obj.y=a_count*(@obj.x-climax[0])*(@obj.x-climax[0])+climax[1]
Graphics.update
}
end
end
#抛物线那个scene
复制代码
范例:
抛物线测试.rar
(187.91 KB, 下载次数: 473)
2011-8-26 12:56 上传
点击文件名下载附件
作者:
summer92
时间:
2011-8-26 15:43
好东西啊,最不懂抛物线,三角型这些东西了,数学烂啊。。。
作者:
R-零
时间:
2011-8-26 19:33
本帖最后由 R-零 于 2011-8-26 21:44 编辑
貌似重力加速度没有很好体现
其实如果不用二次函数而是从抛物线的产生(斜向上初速度和竖直向下的重力加速)去考虑,这样或许更自然吧
作者:
新手小白
时间:
2011-9-21 21:42
抛口袋妖怪球?
可能要更复杂么......?
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1