一个简单的游戏框架

questgame的Python项目详细描述


探索

Quest为python的Arcade库提供了一个更简单的接口。在

安装

任务在Python3上运行。Quest将在PyPI上发布,这样您就可以用pip安装它了。但现在,你必须手动安装。 与往常一样,建议使用虚拟env,但不是必需的。在

$ python3 -m venv env
$ source env/bin/activate
$ git clone https://github.com/cproctor/quest.git
$ cd quest
$ pip install -r requirements.txt
$ pip install -e .
$ cd quest/examples
$ python maze_demo.py

关键是将框架中提供的类进行子类化,以制作自己的游戏。将有文档解释所有代码是如何工作的,但它还不存在。所以你只要读一下资料来源就行了!在

创建精灵和贴图

托多

  • 测试用例:创建野兽游戏。
    • TilePhysics引擎
    • NPC战略
      • 在更简单的类中包装精灵(包括动画纹理、声音、回调)
      • 目前不工作。在
  • 编写文档

教育学

目标

技能

  • 面向对象程序设计
    • 班级
    • 继承
  • 计时制
  • 介绍算法
    • 地形/迷宫生成
    • NPC行为
  • 使用日志进行评估

练习
  • 合作(学生将分组创作游戏)
  • 计划(特别是考虑其他可能的实施方案)
  • 阅读文档
  • 读取源代码;导航多个文件项目
  • 子类化以更改现有系统的行为

可能的活动

  • 让学生追踪类的继承链,列出方法实例。在
  • 让学生通过类方法跟踪调用的执行
  • 让学生用方法钩子实现子类
  • 观察现有框架的默认行为并跟踪代码库以查找位置
  • 通过子类化进行微小的更改。可以通过添加单个属性来实现:
    • 更改播放器精灵文件名
    • 将玩家精灵缩放为更大或更小。在
    • 改变玩家速度
  • 通过重写方法进行小的更改(任务复杂度较低)
    • 更改输入键
    • 添加一个“运行”模式:当按下空格键时,字符速度更快
    • 一个迷宫(如改变地图上的负荷)
  • 计划可能的实施策略
    • 给学生一个可能的游戏机制的列表(例如敌人追你;添加一个目录;在地图之间移动;赢得游戏的方法;一把钥匙打开一扇门),并让他们写一个计划,说明什么可以被覆盖/扩展以使之发生。在
  • 当团队开始开发游戏时,将所需的特性作为一个类进行头脑风暴,并协作实现它们。(这将奖励优秀的设计,因为我们需要一个库存系统或敌人的行为系统,可以为每个人工作。)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
SpringWeb中的java更新/通知其他用户   java Lambda性能测试   java Bukkit插件:空白符号   java在按下按钮后改变彩色正方形的大小   javajavac相当于“D”?   java序列化接口   属性无法从属性文件返回值   java我应该使用什么查询来使用Jsoup从html页面提取符号?   java Android Studio项目结构问题   JAVA方法和返回值/公共变量(基础)   java将NativeQuery映射到POJO   java如何在下面的程序中消除NumberFormatException?   在java中获取链表与数组中的对象   java Android Firebase将用户发送到聊天室