我正在为一些画布练习构建一个画布游戏。它只是一张枪的幻灯片的图片,然后在它的正下方是整个东西的图片减去幻灯片,所以它看起来像一张枪的图片。单击画布时,我将让幻灯片后退然后再前进,子弹将从枪管中射出。虽然想办法让子弹移动,但我需要帮助。我尝试增加 x 坐标变量的值,也许我只是没有在那里做某事,但它没有用。你们对我有什么建议吗?
非常感谢,我真的很感激。
我正在为一些画布练习构建一个画布游戏。它只是一张枪的幻灯片的图片,然后在它的正下方是整个东西的图片减去幻灯片,所以它看起来像一张枪的图片。单击画布时,我将让幻灯片后退然后再前进,子弹将从枪管中射出。虽然想办法让子弹移动,但我需要帮助。我尝试增加 x 坐标变量的值,也许我只是没有在那里做某事,但它没有用。你们对我有什么建议吗?
非常感谢,我真的很感激。
只是增加变量不会导致画布重绘。您必须手动重绘画布以显示新的更新状态的场景。
好的...我怀疑您没有正确设置动画循环。在你的javascript里面写这样的东西
var gameThread = SetInterval(invalidate, 33);
function invalidate(){
updateBulletX();
redrawCanvas();
}
所以在一秒钟内大约 30 次,invalidate 函数将运行。updateBulletX 函数会计算子弹的当前位置,redrawCanvas 函数会擦除并重绘整个画布。
这是任何基于动画的游戏的基本概念。
我鼓励您使用基于画布的游戏引擎,让您的生活更轻松。
等等等等谷歌