当前位置: 首页 > 知识库问答 >
问题:

基于PygameTile的移动速度

闾丘正志
2023-03-14

感谢您抽出时间阅读此文章。现在我正在制作一个非常基本的基于瓷砖的游戏。地图是大量的16x16分幅,角色图像也是16x16分幅。我的角色有自己的类,它是sprite类的扩展,x和y位置根据平铺位置保存。

要注意,我是相当缺乏经验pyplay。

我的问题是,我计划将角色移动限制在一次一个图块,我不知道如何做到这一点,即使玩家快速按下方向键几十次,(WASD或箭头键)它也只会移动以一定的速度从瓷砖到瓷砖。我怎么能实现这与pyplay一般?(类似于口袋妖怪或NexusTk的游戏运动)。一个移动会导致玩家在瓷砖中。例如,他们不能在瓷砖中间停下来。

谢谢你的时间!赖安

共有1个答案

唐法
2023-03-14

将字符位置存储为网格坐标。所以如果他在(2,0),他在(32,0)。游戏会让他在瓷砖之间移动,但是,他要么在瓷砖上,要么在瓷砖上。在移动状态下,您将呈现0到磁宽之间的(x, y)偏移量。

如果时间流逝/动画已完成,听起来您希望每个按键移动一次。因此:

  1. 在按键时,切换到:设置动画状态
  2. 设置目标平铺坐标
  3. 绘制偏移量,介于0tilewidth之间,具体取决于经过的时间<代码>偏移=(经过的μm/1000)*如果时间较短,则平铺将在0到16之间缩放

如果在动画状态下发生按键,请忽略它。

Pygame示例:对地图数组使用numpy。

 类似资料:
  • ViewPager现在的滚动方式是每个手势一个项目。无论是全屏快速投掷还是慢速拖动,它都以同样的方式对待投掷手势;最后一页只前进一步。 有没有什么项目或者例子可以添加基于速度的投掷,基于现有投掷的速度滚动多个项目(如果它还在进行中),如果投掷手势又宽又快,还可以进一步滚动? 如果没有这样的起点呢? 附言:赏金已经提供。请不要回答画廊或地平线滚动视图的引用

  • 概况 背景 看到项目上的移动框架,网上寻找了一下,发现原来这些一开始都有。于是,找了个示例开始构建一个移动平台的CMS——墨颀 CMS,方便项目深入理解的同时,也可以自己维护一个CMS系统。 Showcase GitHub: http://github.com/phodal/moqi.mobi Demo: 墨颀 CMS jQuery + Backbone + UnderScore + Requir

  • 本文向大家介绍基于Android实现随手指移动的ImageView,包括了基于Android实现随手指移动的ImageView的使用技巧和注意事项,需要的朋友参考一下 ImageView用来显示任意图像图片,可以自己定义显示尺寸,显示颜色等等. 运行效果是这样的(文字说明): 首次进入程序,手指点击屏幕上的任意位置,图片会随之移动。 布局文件 实现代码 以上内容给大家介绍了基于Android实现随

  • 本文向大家介绍JS div匀速移动动画与变速移动动画代码实例,包括了JS div匀速移动动画与变速移动动画代码实例的使用技巧和注意事项,需要的朋友参考一下 1.匀速移动代码 2.变速移动代码 common.js 以上所述是小编给大家介绍的JS div匀速移动动画与变速移动动画详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网站的支持!

  • 本文向大家介绍基于JavaScript实现鼠标箭头移动图片跟着移动,包括了基于JavaScript实现鼠标箭头移动图片跟着移动的使用技巧和注意事项,需要的朋友参考一下 我们经常在一些网站上看到,鼠标在网页上移动,有一张图片跟着鼠标移动。大家知道这种效果是怎么做出来的吗?你可能感到比较复杂,其实他是用js编一段小程序来实现的,且代码简单,比较好理解。下面我就来分享下实现代码。 关键代码如下所示: 以

  • 问题内容: 数据库中列类型的顺序是否对查询时间有影响? 例如,具有混合顺序(INT,TEXT,VARCHAR,INT,TEXT)的表的查询是否比具有连续类型(INT,INT,VARCHAR,TEXT,TEXT)的表的查询慢? 问题答案: 答案是肯定的,这确实很重要,并且可能很重要,但 通常 并不重要。 所有I / O都在页面级别完成(根据您的操作系统,通常为2K或4K)。行的列数据彼此相邻存储,除