编写类满天星游戏,目前自己设定需要用到的算法内容,包括第一点点击某一个图标后,自动检查图标上下左右是有与之相同的图形,如果包括自身在内有三个以上的图形,则可以消除。第二,当界面中有图形消除后,那么需要根据列来下移图标,同时产生新的图标。第三,自动检查界面中是否还有能够匹配的图案,如果没有,那么重新生成游戏。第四,游戏机制设定为倒计时,在倒计时完成前,尽可能多消除,多得分。并且考虑每次消除4个以上,按比例增加时间。

首先完成最简单的部分,配置pygame的基本参数,并且绘制游戏界面,也就是画横纵线。

考虑把游戏界面画成一个10*10的方格,并且在上方留出空位显示等分等信息,具体还需不需要别的,待定…

直接使用之前贪食蛇的画格子和初始化的代码,先略作修改。

import random
import time
import pygame# 30帧
fps = 30
fps_clock = pygame.time.Clock()
screen_width = 1024
screen_height = 768
# 分辨率,标题
display = pygame.display.set_mode((screen_width, screen_height), 0, 32)
pygame.display.set_caption('好似满天星')
tile_size = 60
tile_width = 60
tile_height = 60x_margin = 400
y_margin = 100# 列
columns = 10
# 行
rows = 11# 配色RGB
white = (255, 255, 255)
black = 'black'
bg_color = 'sky blue'
border_color = white
body_color = 'purple'
inter_body_color = 'green'
line_color = white
directions = ['up', 'down', 'left', 'right']text_color = (144, 59, 28)
my_score = 0
snake = []# 画格子
def draw_chest():for i in range(rows + 1):pygame.draw.line(display, border_color, (x_margin/2, y_margin/2 + i * tile_size),(x_margin/2 + (columns * tile_size), y_margin/2 + i * tile_size), 2)for j in range(columns + 1):pygame.draw.line(display, border_color, (x_margin/2 + j * tile_size, y_margin/2),(x_margin/2 + j * tile_size, y_margin/2 + (rows * tile_size)), 2)if __name__ == '__main__':pygame.init()bad_touch = pygame.mixer.Sound('badswap.wav')match_three = pygame.mixer.Sound('match3.wav')match_more_than_three = pygame.mixer.Sound('match4.wav')display.fill(bg_color)while True:draw_chest()for event in pygame.event.get():if event.type == pygame.QUIT:pygame.quit()pygame.display.update()fps_clock.tick(fps)

目前不知道后续还有些什么需求,所以简单修改一下,后期有需要再来修改代码。

运行结果如下:

有一个大体的框架了,接下来就是把星星放到游戏界面当中来了。嗯,因为我们有星星,所以我找了免费的饼干来代替星星。这些饼干也是五子连珠的棋子

关于用pygame来编写类满天星游戏的全记录相关推荐

  1. 关于用pygame来编写类满天星游戏的全记录二

    继续来研究怎么实现消除后的下移,大体思想都已经说了,开始编写函数. 先找到第一轮需要下移的元素. def find_fall_stars(board):all_stars = []single_sta ...

  2. Pygame:编写一个小游戏

    大学最后的考试终于结束了,迎来了暑假和大四的漫长的"自由"假期.当然要自己好好"玩玩"了. 我最近在学习Python,本意是在机器学习深度学习上使用Python ...

  3. 使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件

    目录 一.安装Pyinstaller 1.直接安装 2.Anaconda环境下安装 二.使用Pyinstaller打包生成exe文件 三.运行生成的exe文件 四.exe文件运行中的问题 一.安装Py ...

  4. pygame只能编写游戏_游戏框架搭建

    游戏框架搭建 目标 -- 使用 面相对象 设计 飞机大战游戏类 目标 明确主程序职责 实现主程序类 准备游戏精灵组 01. 明确主程序职责 回顾 快速入门案例,一个游戏主程序的 职责 可以分为两个部分 ...

  5. Pygame制作答题类游戏的实现

    代码地址如下: http://www.demodashi.com/demo/13495.html 概述 个人比较喜欢玩这些答题类的游戏,在这类的游戏中其实存在着一些冷知识在里面.练习pygame的过程 ...

  6. pygame制作rpg类游戏或者模拟经营类游戏的思路

    Pygame 能够支持开发 RPG 类或者模拟经营类游戏.Pygame 提供了图形界面.事件处理.音频处理等基础功能,开发者可以利用这些功能实现自己的游戏逻辑. 例如,开发者可以利用 Pygame 实 ...

  7. python编写一个弹球游戏_python pygame实现挡板弹球游戏

    学了一天pygame,用python和pygame写一个简单的挡板弹球游戏 GitHub: # -*- coding:utf-8 -*- from sys import exit import pyg ...

  8. 使用Pygame制作微信打飞机游戏PC版

    前一阵子看了一篇文章:青少年如何使用Python开始游戏开发 .看完照葫芦画瓢写了一个,觉得挺好玩儿,相当于简单学了下Pygame库.这篇文章是个12岁小孩儿写的,国外小孩儿真心NB,想我12岁的时候 ...

  9. 手把手教你使用Pygame制作飞机大战小游戏,4万字超详细讲解!

    点击上方"早起Python",关注并"星标" 每日接收原创Python干货! 大家好,偷学Python系列是由小甜同学从初学者的角度学习Python的笔记,其特 ...

最新文章

  1. Openreach与华为/诺基亚签署G.fast协议
  2. 分析与设计(AD)简介(2)
  3. MVC、JSP实现mysql的增删改查功能的封装和简陋的界面交互
  4. Spread for Windows Forms高级主题(3)---单元格的编辑模式
  5. css字体的字型,CSS的字体、字型控制_css
  6. 【机器学习算法专题(蓄力计划)】十八、机器学习中SVM算法中的硬间隔和软间隔
  7. 2017年4月21号课堂笔记
  8. 如何快速理解读懂他人代码(下)——技巧学习篇
  9. TensorFlow(4)-TFRecord
  10. Tomcat 比 nio 、aio性能更好的apr介绍
  11. 最新 UI 色彩渐变素材模板|设计师好帮手
  12. 登录令牌过期,重新登录后返回当前页面
  13. 后悔当初没考研。。。
  14. 征战FPGA之制作FLASH烧写用的bin文件
  15. Android 4.2官方文档chm格式下载
  16. Cyclical Learning Rates
  17. [dp]HDOJ4960 Another OCD Patient
  18. 家用投影仪不会选?记住这几个方面,帮你选到适合你的投影仪
  19. 跨链安全隐患大,区块链下一代的互操作性该如何应对?
  20. Windows 10的最新版本是什么?

热门文章

  1. 怎么使用Vegas制作霓虹灯效果?
  2. mybatis bind 标签
  3. 赛尔号7月17日服务器维护,赛尔号7月17日新精灵资料汇总 御象灵尊喜获新皮肤 滑铲梗专用...
  4. CGrendering | 法国橡树庄园建筑可视化表现
  5. bat批量修改文件前缀名字
  6. 计算机专业学生教师节礼物,2020教师节10种实用不贵礼物推荐,最后一件老师收到最开心...
  7. java 逐行读写文件_用Java逐行读取和写入大文件的最快方法
  8. Spring Cloud Gateway自带RequestRateLimiter限流应用及扩展 | Spring Cloud 16
  9. 51单片机开发中数码管显示与应用
  10. 人力资源电子化签约步入发展快车道,君子签为HR赋能提效