• 大小: 10.94MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-03
  • 语言: 其他
  • 标签: python  pgame  2d  

资源简介

用pygame实现的2d弹珠游戏. 主要框架如下图所示: Client 程序入口,从这里开始游戏。 resource 图片字体等资源 GameCtrl Gamelogic 对游戏的数据进行控制,例如球的下一个位置,是否发生碰撞,速度如何。 主要接口: update():对游戏数据更新,下一次Section的回调就知道应该在什么位置绘图 logic_start(): 游戏开始或者重新开始的时候初始化数据。 logic_end(): 游戏重新开始的时候销毁以前数据 save () : 保存游戏数据到文件,下次可以继续接着玩 load(): 读取文件信息, 重新开始上次的游戏 主要类: Ball(): 对球的数据和操作封装 Brick(): 对砖的行为封装 CtrlBar(): 对玩家控制的Bar进行封装 BrickCreator(): 对砖块的生成进行封装 GameCtrl 对游戏输入,控制调用Section。 主要接口: add_section(): 加入新的section,绘制新的东西 goto_section():被触发,游戏转移到绘制另一个section中,例如在游戏中鼠标右键,触发到一个右键界面出现。 start_main_loop(): 游戏的主循环 Section GameSection(): 定义所有Section的超类 主要接口: handle_key(): 处理用户键盘输入接口 handle_mouse(): 处理用户鼠标输入接口 update(): 从logic中获取更新的数据,用来下一步的绘图 render(): 根据所拥有的image等资源,绘制图像 menu Section:从GameSection继承,定义进入游戏的界面及按键行为。 主要函数: Render(): 画出menu ball section(): 游戏的主要的Section,绘制游戏过程中的元素 主要函数: update(): 从Logic中获取数据,用来绘图 render(): 绘图 handle(): 处理用户输入。

资源截图

代码片段和文件信息

# -*- coding:gb2312 -*-
# -*- $Id: main.py 2211 2009-04-20 01:55:50Z dengzhifeng $ -*-


import sys
import os
import pygame
from pygame.locals import *
import gamectrl.const as const
from gamectrl.gamectrl import GameCtrl  GameSection
from section.menusection import MenuSection
from section.ballsection import BallSection
from section.oversection import OverSection
from logic.gamelogic import GameLogic



if __name__ == ‘__main__‘:
# 创建逻辑
game_logic = GameLogic()
game_ctrl = GameCtrl(game_logic)

# 创建游戏Section
menu_section = MenuSection()
ball_section = BallSection()
over_section = OverSection()

# 绑定Section
game_ctrl.add_section(menu_section const.MENU_SECTION)
game_ctrl.add_section(ball_section const.BALL_SECTION)
game_ctrl.add_section(over_section const.OVER_SECTION)

# 开始
game_ctrl.start_main_loop(const.MENU_SECTION)
#game_ctrl.start_main_loop(const.BALL_SECTION)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3774  2009-04-20 09:55  mini_src\favicon.ico

     文件       4242  2009-04-20 09:38  mini_src\gamectrl\const.py

     文件       3559  2009-04-15 19:56  mini_src\gamectrl\gamectrl.py

     文件          0  2009-04-03 16:55  mini_src\gamectrl\__init__.py

     文件      13115  2009-04-16 15:06  mini_src\logic\ball.py

     文件       5163  2009-04-17 16:43  mini_src\logic\brickmanager.py

     文件       7360  2009-04-20 09:38  mini_src\logic\ctrlbar.py

     文件       5104  2009-04-16 17:32  mini_src\logic\gamelogic.py

     文件       6962  2009-04-20 09:38  mini_src\logic\itemmanager.py

     文件          0  2009-04-03 16:55  mini_src\logic\__init__.py

     文件        909  2009-04-20 09:55  mini_src\main.py

     文件        882  2009-04-17 16:43  mini_src\map_gen.py

     文件        645  2009-04-15 16:18  mini_src\mymap\lv0.py

     文件        302  2009-04-17 16:43  mini_src\mymap\lv1.py

     文件        434  2009-04-17 16:43  mini_src\mymap\lv2.py

     文件        656  2009-04-17 16:43  mini_src\mymap\lv3.py

     文件        728  2009-04-17 16:43  mini_src\mymap\lv4.py

     文件        854  2009-04-17 16:43  mini_src\mymap\lv5.py

     文件         55  2009-04-17 16:43  mini_src\mymap\__init__.py

     文件        793  2009-04-20 09:55  mini_src\mysetup.py

     文件        514  2009-04-20 09:55  mini_src\readme.txt

     文件     165240  2009-04-15 22:52  mini_src\res\ball\ball_1.png

     文件     183440  2009-04-15 22:51  mini_src\res\ball\ball_2.png

     文件      92919  2009-04-15 22:52  mini_src\res\ball\ball_3.png

    ..A.SH.    106496  2009-04-16 10:23  mini_src\res\ball\Thumbs.db

     文件     137548  2009-04-17 11:30  mini_src\res\bg\bgg.jpg

     文件      37357  2009-04-17 11:43  mini_src\res\bg\help.png

     文件      75721  2009-04-02 15:03  mini_src\res\bg\info.jpg

    ..A.SH.     10752  2009-04-17 11:51  mini_src\res\bg\Thumbs.db

     文件      17024  2009-04-09 15:24  mini_src\res\brick\brick_1.png

............此处省略96个文件信息

评论

共有 条评论