基于python的游戏设计论文,基于python的游戏设计

大家好,给大家分享一下关于python小游戏的毕业论文,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!

摘要

本次实验设计了一款迷宫小游戏,采用用Python开发技术实现。以往经典的的游戏中有魂斗罗,拳皇,超级玛丽,贪吃蛇,俄罗斯方块等;发展到现在,玩游戏已经成为生活的一部分了,尤其是现在的很多游戏都已经网络社交化了,游戏种类也更加丰富了python编程代码画樱花。Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。因此,利用Python语言制作一个简单的迷宫小游戏,将是本次论文讨论的内容。该迷宫小游戏使用几个模块绘制呈现,并实现可以自由操作的功能。
This experiment designed a small maze game, using Python development technology to achieve.Past classic games have contra, Boxing Emperor, Super Mary, snake, Tetris and so on,Up to now, playing games has become a part of life, especially now many games have been social network, games have become more diversified. Python’s adherence to a clear and uniform style of design has made it an easy-to-read, maintainable, and versatile language that is popular with a large number of users. Therefore, using Python language to make a simple maze game will be the content of this paper.The maze game USES several modules to draw and render, and to achieve the function of free operation.

1.引言

1.1研究的背景及意义

Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
当Python作为游戏脚本内嵌在游戏中,这样做即可以利用游戏引擎的高性能,又可以受益于脚本化开发的优点。即游戏剧本、数据、玩法逻辑这类需要灵活修改和调整的部分可以写在脚本中,只需要修改脚本内容就可以调整游戏内容,不需要重新编译游戏。简单的小游戏可以直接用Python一类的脚本语言开发,善用一些库应该也可以达到不错的性能。

1.2研究的内容

为了了解Python的模块脚本的使用,本次实验使用Python语言实现的一款迷宫小游戏,从而去更深度认识Python的功能。本次实验分三个模块绘制,首先用Maze类绘制出迷宫地图,再用Player类实现玩家的方向动作,再由Controller类实现操作器让玩家方便操作,最后在主函数中运行实现迷宫小游戏。

2.系统结构

2.1系统的结构

本次项目由主函数、maze模块、player模块和controller模块组成。如下图所示。
图2-1

2.2基本思路

先创建maze模块绘制迷宫地图;再定义玩家移动前后的位置方向;再设计操作器实现玩家自由操作;最后由主函数将各个模块集合。其流程图如下图所示。
图2-2

3.实现代码

在迷宫问题中,首先解决的就是迷宫的地图,我们从实现的效果以及主函数中,不难得知在主函数中的maze_list里,1表示迷宫的墙,0表示迷宫内的通道,如下图所示:
图3-1

3.1Maze类

而实际实现迷宫的绘制在Maze类中,以下为maze模块中的代码及解析。在Maze类中,先调用Turtle父类初始化方法,方便后面调用,再绘制出迷宫内的一格墙,最后由一格墙循环打印出整个迷宫。

from turtle import Turtle
import turtle

#设置游戏的窗口大小和背景颜色
turtle.screensize(800,600, "pink")

class Maze(Turtle):
  size = 20    #迷宫内一格墙的长宽
  
  def __init__(self, maze_list):
    # 需要先调用父类的初始化方法才能在初始化方法中调用父类的方法
    Turtle.__init__(self)
    self.maze_list = maze_list
    # 为了加快绘图速度隐藏海龟,速度设为最快
    self.hideturtle()
    self.speed(0)
    self.draw_walls()

#绘制迷宫内一格墙的过程
  def draw_wall(self):
    self.pendown()
    self.begin_fill()
    #绘制墙的颜色
    self.fillcolor('red')
    #首先画一个距离为20的横线,再向右旋转90度,循环4次形成方形
    for i in range(4):
      self.forward(self.size)
      self.right(90)
    self.end_fill()
    self.penup()

#绘制整个迷宫的墙
  def draw_walls(self):
    self.penup()
    # 从 (-130, 130) 开始
    self.goto(-130, 130)
    #打印墙,横纵循环13次(整个迷宫的长和宽由13格墙组成)
    for row in range(13):
      for col in range(13):
        #主函数中的maze_list里面的1则打印出一格墙
        if self.maze_list[row][col] == 1:
          self.draw_wall()
        # 右移一列
        self.goto(self.size * (col + 1
  • 21
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值