Pygame,角色移动速度

2024-02-08

我是犹他大学的一名学生,正在使用 Pygame 进行一个项目,但遇到了一些小问题。我已经编写了整个游戏的代码,并且运行完美,但我希望我的角色在走过某些地形时减慢移动速度。例如,如果他/她走过沙砖,我希望他/她的速度减半。我无法自己解决这个问题,因为我仍在学习。我的代码的链接如下。任何帮助将非常感激!

我相信解决方案将包含在以下代码行中:

if keys[pygame.K_LEFT]:
    is_facing_left = True
    movement_x -= tile_rect.width
    mapx -= 1
if keys[pygame.K_RIGHT]:
    is_facing_left = False
    movement_x += tile_rect.width
    mapx += 1
if keys[pygame.K_UP]:
    movement_y -= tile_rect.height
    mapy -= 1
if keys[pygame.K_DOWN]:
    movement_y += tile_rect.height
    mapy += 1

if mapx < 0:
    mapx = 0
    movement_x = 0
if mapx > world.get_width()-1 - map_tile_width:
    mapx = world.get_width()-1 - map_tile_width
    movement_x = 0
if mapy < 0:
    mapy = 0
    movement_y = 0
if mapy > world.get_height()-1 - map_tile_height:
    mapy = world.get_height()-1 - map_tile_height
    movement_y = 0

如果您想查看完整的代码,请点击这里:

https://github.com/DanPatWils/AdventureGame/blob/master/Almost https://github.com/DanPatWils/AdventureGame/blob/master/Almost


您有多行表格mapx -= 1。您可以在该循环之外使用一个变量来跟踪您的速度,然后您可以使用mapx -= current_speed移动你的角色。然后您可以根据不同的情况修改您的速度。

您应该确保游戏的事件循环和地图大小足够大,这样您的角色就不会看起来像是在传送而不是在高速奔跑。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pygame,角色移动速度 的相关文章

  • 是否有解决方法可以通过 CoinGecko API 安全检查?

    我在工作中运行我的代码 一切都很顺利 但在不同的网络 家庭 WiFi 上 我不断收到403访问时出错CoinGecko V3 API https www coingecko com api documentations v3 可以观察到 在
  • 如何用python脚本控制TP LINK路由器

    我想知道是否有一个工具可以让我连接到路由器并关闭它 然后从 python 脚本重新启动它 我知道如果我写 import os os system ssh l root 192 168 2 1 我可以通过 python 连接到我的路由器 但是
  • 使用 Python 从文本中删除非英语单词

    我正在 python 上进行数据清理练习 我正在清理的文本包含我想删除的意大利语单词 我一直在网上搜索是否可以使用像 nltk 这样的工具包在 Python 上执行此操作 例如给出一些文本 Io andiamo to the beach w
  • 删除flask中的一对一关系

    我目前正在使用 Flask 开发一个应用程序 并且在删除一对一关系中的项目时遇到了一个大问题 我的模型中有以下结构 class User db Model tablename user user id db Column db String
  • 立体太阳图 matplotlib 极坐标图 python

    我正在尝试创建一个与以下类似的简单的立体太阳路径图 http wiki naturalfrequent com wiki Sun Path Diagram http wiki naturalfrequency com wiki Sun Pa
  • Python beautifulsoup 仅限 1 级文本

    我看过其他 beautifulsoup 得到相同级别类型的问题 看来我的有点不同 这是网站 我正试图拿到右边那张桌子 请注意表的第一行如何展开为该数据的详细细分 我不想要那个数据 我只想要最顶层的数据 您还可以看到其他行也可以展开 但在本例
  • Docker 中的 Python 日志记录

    我正在 Ubuntu Web 服务器上的 Docker 容器中测试运行 python 脚本 我正在尝试查找由 Python Logger 模块生成的日志文件 下面是我的Python脚本 import time import logging
  • 如何通过索引列表从 dask 数据框中选择数据?

    我想根据索引列表从 dask 数据框中选择行 我怎样才能做到这一点 Example 假设我有以下 dask 数据框 dict A 1 2 3 4 5 6 7 B 2 3 4 5 6 7 8 index x1 a2 x3 c4 x5 y6 x
  • 如何使用 pybrain 黑盒优化训练神经网络来处理监督数据集?

    我玩了一下 pybrain 了解如何生成具有自定义架构的神经网络 并使用反向传播算法将它们训练为监督数据集 然而 我对优化算法以及任务 学习代理和环境的概念感到困惑 例如 我将如何实现一个神经网络 例如 1 以使用 pybrain 遗传算法
  • pyspark 将 twitter json 流式传输到 DF

    我正在从事集成工作spark streaming with twitter using pythonAPI 我看到的大多数示例或代码片段和博客是他们从Twitter JSON文件进行最终处理 但根据我的用例 我需要所有字段twitter J
  • Numpy - 根据表示一维的坐标向量的条件替换数组中的值

    我有一个data多维数组 最后一个是距离 另一方面 我有距离向量r 例如 Data np ones 20 30 100 r np linspace 10 50 100 最后 我还有一个临界距离值列表 称为r0 使得 r0 shape Dat
  • 加快网络抓取速度

    我正在使用一个非常简单的网络抓取工具抓取 23770 个网页scrapy 我对 scrapy 甚至 python 都很陌生 但设法编写了一个可以完成这项工作的蜘蛛 然而 它确实很慢 爬行 23770 个页面大约需要 28 小时 我看过scr
  • Python3 在 DirectX 游戏中移动鼠标

    我正在尝试构建一个在 DirectX 游戏中执行一些操作的脚本 除了移动鼠标之外 我一切都正常 是否有任何可用的模块可以移动鼠标 适用于 Windows python 3 Thanks I used pynput https pypi or
  • 仅第一个加载的 Django 站点有效

    我最近向 stackoverflow 提交了一个问题 标题为使用mod wsgi在apache上多次请求后Django无限加载 https stackoverflow com questions 71705909 django infini
  • 使用特定颜色和抖动在箱形图上绘制数据点

    我有一个plotly graph objects Box图 我显示了箱形 图中的所有点 我需要根据数据的属性为标记着色 如下所示 我还想抖动这些点 下面未显示 Using Box我可以绘制点并抖动它们 但我不认为我可以给它们着色 fig a
  • 如何在 Windows 命令行中使用参数运行 Python 脚本

    这是我的蟒蛇hello py script def hello a b print hello and that s your sum sum a b print sum import sys if name main hello sys
  • python import inside函数隐藏现有变量

    我在我正在处理的多子模块项目中遇到了一个奇怪的 UnboundLocalError 分配之前引用的局部变量 问题 并将其精简为这个片段 使用标准库中的日志记录模块 import logging def foo logging info fo
  • Scipy Sparse:SciPy/NumPy 更新后出现奇异矩阵警告

    我的问题是由大型电阻器系统的节点分析产生的 我基本上是在设置一个大的稀疏矩阵A 我的解向量b 我正在尝试求解线性方程A x b 为了做到这一点 我正在使用scipy sparse linalg spsolve method 直到最近 一切都
  • Pandas 每周计算重复值

    我有一个Dataframe包含按周分组的日期和 ID df date id 2022 02 07 1 3 5 4 2022 02 14 2 1 3 2022 02 21 9 10 1 2022 05 16 我想计算每周有多少 id 与上周重
  • 安装 Python 3.5 包“socket”pycharm 时出错

    仅使用 PyCharm 或命令提示符无法安装此软件包 Collecting socket Using cached socket 0 5 tar gz Complete output from command python setup py

随机推荐

  • 尽管设置为超过两分钟,但套接字在两分钟后超时

    下列的这个帖子 https stackoverflow com questions 12406628 java socket read time out exception 我有同样的问题 我设法通过一个简单的测试来重现它 我希望你能帮助我
  • 导入错误:无法导入名称“阶乘”

    我想使用 logit 模型并尝试导入 statsmodels 库 我的版本 Python 3 6 8 我得到的最好建议是降级 scipy 但不清楚如何降级以及应该降级到什么版本 请帮忙如何解决 https github com statsm
  • 在iOS 5中,如何使用AudioSession来确保插入耳机时通过扬声器播放音频?

    void viewDidLoad super viewDidLoad NSString filePath NSBundle mainBundle pathForResource 1 ofType mp3 Convert the file p
  • Genymotion不会停止优化应用程序

    我尝试将 Genymotion 与 Android Studio 结合使用 以便可以测试应用程序 但每当我尝试启动模拟器时 它都会显示 Android 正在启动 正在优化应用程序 of 74 并且它会优化一段时间 最终它停止优化 但随后它只
  • 在 eclipse 中为项目生成 Ant 构建文件

    我有一个使用 eclipse 用 Ja va 编写的项目 我想为其生成一个 Ant 构建文件 如何做呢 我经常需要使其与源代码保持同步 以便在修改项目结构时可以将其与代码一起提升到公共存储库 我很抱歉问这样一个愚蠢的问题 我浏览了各个论坛
  • JS:如何处理从 API url 返回的 400 Bad Request 错误

    仍然很缺乏经验 我正在尝试错误处理 400 Bad Request 我有一个带有搜索栏的网站 然后 输入到搜索栏中的值将被放入返回对象的 api url 中 每当输入拼写错误的搜索值时 站点的控制台都会针对 api url 返回 400 错
  • 在 C 中使用变量文件名读取多个具有相似名称的文件?

    我有多个名为sensor0 txt sensor1 txt sensor2 txt 等的文件 我需要打开这些文件 用它们进行计算 并将它们打印在屏幕上 所以我想到了类似的事情 for i 0 i lt N Number of files i
  • 通过JTAG恢复STM32 MCU磨掉的标记

    我有一块可能带有 STM32 MCU 的板 我想为该板制作定制固件 因为库存板有很多问题 不幸的是 电路板制造商很友善地磨掉了所有标记 有没有办法通过 jtag 获取设备 系列 ID 并将其交叉引用到型号 我能找到的一切都是关于获取芯片的唯
  • 非常大的非线性最小二乘优化的收敛

    我正在尝试解决以下问题 我有很多 80000 正在生长的器官表面斑块 我随着时间的推移 18 个时间点 测量它的每个面积 并希望拟合一条增长曲线 双逻辑模型 例如 只是两个逻辑函数 bcs 的总和 在观察期 我有框约束来确保指数项不会爆炸
  • 如何在 MongoDB 中执行 SQL Join 等效操作?

    如何在 MongoDB 中执行 SQL Join 等效操作 例如 假设您有两个集合 用户和评论 我想提取 pid 444 的所有评论以及每个集合的用户信息 comments uid 12345 pid 444 comment blah ui
  • 使用 Google Play 提供的上传密钥签署 APK

    我正在尝试了解如何在使用 Google Play 应用签名时将应用上传到 Google Play 这是我所做的 创建了一个应用程序 使用 keytool exe 为该应用程序生成密钥 已将应用上传至 Google Play 已注册 Goog
  • 在图的顶层绘制圆圈

    我正在制作一个图形 试图在组合颜色图和等高线图的顶部绘制一个圆圈 圆圈不断地绘制在轮廓下方而不是轮廓上方 参见下图 我尝试重新排序如何调用 imshow contour 和 Circle 看看是否能让圆圈显示在顶部 但我没有任何运气 有没有
  • .NET 3.5 是媒体中心插件的合理先决条件吗?

    我们有一个开源媒体中心插件 目前它的下载大小只有区区一兆字节 如果我将插件更改为需要 NET 3 5 用户可能需要下载197 megs http www west wind com weblog posts 292203 aspx只是为了能
  • Django:子查询的注释

    我正在尝试注释一个查询集Station与id最近邻的Station使用 Django 2 0 3 和 PostGIS GeoDjango 功能 简化版Station model class Station models Model name
  • 如何将整个 python 解释器打包到 Android APK 中?

    我了解 SL4A 以及如何在 Android 中运行 Python 脚本 我需要知道如何将整个 Python 解释器打包到我的 APK 中 这样我的最终用户就不必在运行我的应用程序之前下载并安装 SL4A Thanks 尝试看看kivy o
  • 如何在Windows Phone 7.1中捕获解锁屏幕事件?

    如何捕获屏幕解锁事件 然后在 Window Phone 7 1 中屏幕解锁时从我的应用程序触发一些事件 您可以处理PhoneApplicationFrame Unobscured http msdn microsoft com en US
  • Firefox 中不遵循 SVG 的百分比变换来源,仅有时在 WebKit 中遵循

    我有这个蛋卷冰淇淋 SVG 图形 我想用一个transform origin of 50 100 中心底部 Firefox 声称遵守 即检查员记录了正确的transform origin 但实际上是围绕左上角进行变换 奇怪的是 WebKit
  • 使按钮一次仅打开一个窗口(通过关闭顶级窗口来启用按钮)

    I want NewWinButton一次只创建一个新窗口 这意味着如果 if NewWin winfo exists 1 NewWinButton config state disabled else NewWinButton confi
  • iOS7 UIScrollView 在状态栏下方显示偏移内容

    我正在开发我的应用程序以与 iOS7 配合使用 我有一个 UINavigationController 我正在推送一个 UIViewController 里面有一个 ScrollView 在scrollView 里面我有一个tableVie
  • Pygame,角色移动速度

    我是犹他大学的一名学生 正在使用 Pygame 进行一个项目 但遇到了一些小问题 我已经编写了整个游戏的代码 并且运行完美 但我希望我的角色在走过某些地形时减慢移动速度 例如 如果他 她走过沙砖 我希望他 她的速度减半 我无法自己解决这个问