原创 python037(英雄01—需求分析和類設計)

目標 設計英雄和子彈類 使用pygame.key.get_passed()移動英雄 發射子彈 設計英雄和子彈類 英雄需求 遊戲啓動後,英雄出現在屏幕的水平中間位置,距離屏幕底部120像素 英雄每隔0.5秒發射一次子彈,每次連發三枚子彈 英

原创 python038(英雄02—準備英雄類)

在plane_sprites新建Hero類 重寫初始化方法,直接指定圖片名稱,並且初始速度設置爲0 設置英雄的初始位置 pygame.Rect x,y, left,top,bottom,right, center,centerx,cen

原创 python030(背景圖像04—利用初始化方法簡化背景精靈創建)

class Background(GameSprite): def __init__(self, is_alt): super().__init__("./images/background.png")

原创 python031(敵機01—定時器語法介紹)

定時器 在pygame中可以使用pygame.time.set_timer()來添加定時器 所謂定時器,就是每隔一段時間,去執行一些動作 set_timer(eventid, ,milliseconds) set_timer可以創建一個

原创 圖的存儲結構01—數組表示法

圖的數組(鄰接矩陣)存儲表示 代碼實現(C語言) 定義鄰接矩陣 // ----- 圖的數組(鄰接矩陣)存儲表示 ----- typedef int VRType; //頂點關係類型,無權圖用1或0表示相鄰否,帶權圖則爲權值類型 ty

原创 python027(背景圖像01—交替滾動實現思路分析)

遊戲啓動後,背景圖像會連續不斷地向下方移動 在視覺上產生英雄的飛機不斷向上方飛行的錯覺 遊戲的背景不斷變化 遊戲的主角位置保持不變  

原创 python026(框架搭建05—搭建啓動遊戲方法結構)

def start_game(self): while True: self.clock.tick(60) self.__event_Handler() self.__

原创 嚴書中序遍歷線索樹的線索化&遍歷

二叉樹的二叉線索存儲表示 // -----二叉樹的二叉線索存儲表示----- typedef enum{Link,Thread}PointerTag; // 指針標誌:0爲指針,1爲線索 typedef struct BiThrNod

原创 python032(敵機02—定義並且監聽創建敵機的定時器事件)

pygame的定時器使用套路非常固定: 定義定時器常量——eventid 在初始化方法中,調用set_timer方法設置定時器事件 在遊戲循環中,監聽定時器事件

原创 圖的存儲結構02—鄰接表表示法

圖的鄰接表存儲表示 代碼實現(C語言) 定義鄰接表 #define MAX_VERTEX_NUM 20 // 最大結點數 typedef int VertexType; // 定義結點信息的類型 typedef char* Info

原创 C#實戰(NotePad_Prepare)

原文鏈接:http://jinxuliang.com/course/CoursePortal/Details/543b979c137e481e6cbdb267 這一應用主要功能“克隆”自Wind

原创 python028(背景圖像02—背景類的設計與基本實現)

初始化方法 直接指定背景圖片 is_alt判斷是否是另一張圖片 False表示第一張圖像,需要與屏幕重合 True表示第二張圖片,在屏幕正上方 update方法 判斷是否移動出屏幕,如果是,將圖像設置到屏幕正上方,從而實現交替滾動  

原创 二叉樹的遍歷問題

遞歸算法 先序遍歷 // 遞歸先序遍歷 Status PreOrderTraverse(BiTree T) { if (T==NULL) return OK; printf("%d\n",T->data); PreO

原创 python024(框架搭建03—遊戲初始化)

遊戲初始化 設置遊戲窗口 創建遊戲時鐘 創建精靈、精靈組 def __init__(self): self.screen = pygame.display.set_mode() self.clock = pyg

原创 python025(框架搭建04—使用常 量定義窗口大小)

使用常量代替固定的數值 常量——不變化的量 變量——可以變化的量 常量的定義 定義常量和定義變量的語法完全一樣,都是使用賦值語句 常量的命名應該所有字母都使用大寫,單詞與單詞之間使用下劃線連接 常量的好處 閱讀代碼時,通過常量名見名知義,