[Unity学习教程] python版《羊了个羊》游戏开发第一天

[复制链接]
查看1029 | 回复0 | 2023-8-16 16:29:44 | 显示全部楼层 |阅读模式 来自 中国北京
Python小型项目实战讲授课《羊了个羊》

一、项目开发大纲(低级)

版本1.0:根本开发

课次

内容

技能

第一天

根本游戏舆图数据

面向过程

第二天

鼠标点击和移动

面向对象

第三天

消除

计划模式:单例模式

第四天

完整游戏过程

架构:Model-View-ViewModel

第五天

多层重叠的方块

数据布局

(计算机考研数据布局课程)

第六天

多层重叠的方块

数据布局

(计算机考研数据布局课程)

二、项目开发大纲(中级、高级)

版本2.0:游戏道具

技能:计划模式

版本3.0:单机版改为网络版多人联机游戏

技能:网络编程、多人对战

版本4.0:JS改写,发布小步伐

版本5.0:安卓编程、苹果ios编程,发布APP

版本6.0:小步伐、APP,接入广告联盟,收费赢利!

版本7.0:游戏道具,接入付出接口,道具收费!

版本8.0:多层重叠方块的高级实现方法

第一天功能描述:

    舆图数据绘制,包罗空格。
第一天截图:




版本1.0,第一天源码:

  1. import pygame
  2. import random
  3. #导入exit方法
  4. from sys import exit
  5. #定义函数
  6. #  当用户点击关闭,关闭窗口
  7. def handleEvent():
  8.     global events
  9.     for e in pygame.event.get():
  10.         if e.type==pygame.QUIT:
  11.             pygame.quit()
  12.             sys.exit()
  13.             
  14. #地图初始化 2023.7.5 lyy
  15. def gameMapInit():
  16.     for i in range(9):
  17.         for j in range(7):
  18.             # 0 无效值;    1-6 有效值
  19.             matrix[i][j]=random.randint(0, 6)
  20. #- ---------------------------------------------------- main
  21. #初始化pygame
  22. pygame.init()
  23. back=pygame.image.load('images/background.png')
  24. cardBox=pygame.image.load('images/box.png')
  25. c1=pygame.image.load('images/card1.png')
  26. c2=pygame.image.load('images/card2.png')
  27. c3=pygame.image.load('images/card3.png')
  28. c4=pygame.image.load('images/card4.png')
  29. c5=pygame.image.load('images/card5.png')
  30. c6=pygame.image.load('images/card6.png')
  31. cardAll=[c1,c2,c3,c4,c5,c6]
  32. #设置窗口大小
  33. canvas=pygame.display.set_mode((400,700))
  34. #数据 MVVM模式
  35. # 纯数据  MODEL
  36. matrix = [[0 for i in range(8)] for i in range(10)]
  37. #设置窗口标题
  38. pygame.display.set_caption('羊了个羊')
  39. gameMapInit()
  40. print(matrix)
  41. #循环语句
  42. #重复绘制画面,重复检测用户是否点击了关闭按钮
  43. while True:
  44.     #绘制背景
  45.     canvas.blit(back,(0,0))
  46.     #绘制卡牌空槽
  47.     canvas.blit(cardBox,(20,550))
  48.     #循环语句 输出多行多列图片
  49.     x=25
  50.     y=50
  51.     for i in range(9):
  52.         x=25
  53.         for j in range(7):
  54.                     card_id= matrix[i][j]
  55.                     if card_id!=0:
  56.                         canvas.blit(cardAll[ card_id-1 ],(x,y))
  57.                     x=x+50
  58.         y=y+50
  59.     #调用函数,当用户点击关闭,关闭窗口
  60.     handleEvent()
  61.     #刷新画面
  62.     pygame.display.update()
复制代码

    

来源:https://blog.csdn.net/weixin_42644456/article/details/132166370
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则