2
我正在搞一个简单的游戏。jQuery游戏 - 让飞行直升机更加流畅
我有一架直升机,用户可以上下飞行。
我已经得到了这个发生的基本代码工作正常(touchstart +举行直升机上升,释放它下降)。然而,这是非常“被动”的。如果你想让直升机沿直线前进,你需要快速点击屏幕,但是无论你的点击速度多快,直升机的移动速度都很快。
我需要一种运动方式来缓解上升和下降的开始,因此如果需要的话,直升机可以沿相当直线行进。
我的代码如下:
var speed = 1;
function copter_touchstart(){
clearInterval(fall);
fly = setInterval(start_fly, 2);
}
function copter_touchend(){
clearInterval(fly);
fall = setInterval(start_fall, 2);
}
function start_fly(){
var matrix = $helicopter.css('-webkit-transform').replace(/[^0-9\-.,]/g, '').split(',');
var y = matrix[5];
var new_top = parseInt(y) - speed;
$helicopter.css('-webkit-transform', 'translate3d(0, '+ new_top +'px, 0)')
}
function start_fall(){
var matrix = $helicopter.css('-webkit-transform').replace(/[^0-9\-.,]/g, '').split(',');
var y = matrix[5];
var new_top = parseInt(y) + speed;
$helicopter.css('-webkit-transform', 'translate3d(0, '+ new_top +'px, 0)')
}
$body.on('touchstart', copter_touchstart).on('touchend', copter_touchend);
JS FIDDLE:HERE
(鼠标事件触改变) 抽头屏幕反复 '悬停' 的块中,其反应性太强,但我不想要在正常飞行时降低速度
你可以做一个小提琴。 – putvande
我正在寻找相同的解决方案。然而,我所观察到的关于喷气背包兜风的是。当触摸/释放屏幕在开始时上升/下降非常缓慢并且速度随着时间逐渐增加(可能从0.00开始,以0.01(随时间)增加并且到最大允许速度1.0)。但我不确定如果这是正确的,我已经尝试了很多东西,但失败了,但让我们实施这件事,看看会发生什么。当你找到一些解决方案时,请让我知道。 –
http://stackoverflow.com/questions/22442495/smooth-fly-movement-like-flappy-bird-or-jet-pack-joy-ride-with-gravity-and-accel/ 请看看,这对我来说很有用。如果您以其他方式达到此目的,请分享该内容。 –