pygame入門小遊戲(外星人入侵(6) 外星飛船來啦!)
既然我們的飛船都能發射子彈了,那麼接下來我們新增一些敵機(外星飛船)給遊戲增加點樂趣。
我們的思路是讓敵機隨機從螢幕上空下來,並且在每一次迴圈中都向下移動,飛船的速度會變化,當飛出螢幕下方後,就回到螢幕上方重新開始。
import pygame
import random
class Alien():
def restart(self):
#重置外星飛船的位置和速度(self.x的範圍可以在保證敵機在螢幕內的情況下隨意給定)
self.x = random.randint(66, 734)
self.y = random.randint(-166 , -66)
self.speed = random.random() + 0.1
def __init__(self):
#初始化
self.restart()
self.image = pygame.image.load(r'images\alien.bmp')
def move(self):
if self.y < 600:
#向下移動
self.y += self.speed
else:
#重置
self.restart()
然後在update_screen()中新增外星飛船來更新它的位置,
#這裡只寫出修改的部分
def update_screen(my_setting, screen, ship, bullets, aliens):
.........................................
screen.blit(aliens.image, (aliens.x, aliens.y))
然後在主程式中匯入Alien()就好
執行程式,我們看到飛船隨機的從螢幕上方飛下
此時,發射子彈或者敵機碰到我方飛船,並不會導致我方飛船爆炸。。。。。。T-T
…………………………………………………………………………………………………………………………………………………………………..
T-T好吧 ,本來是看著課本上的程式有點無聊,想著讓外星飛船隨機的落下來。不過怎麼除錯,都不能實現擊落它(剛開始玩兒pygame……),整整搞了一天也沒成功,先這樣吧,有空了再修改下,
ppppp:寫這個東西也就是記錄下自己的學習歷程,沒課的時候寫一點,感覺挺好的,那麼,等能實現擊落敵機再見O.o
相關推薦
pygame入門小遊戲(外星人入侵(6) 外星飛船來啦!)
既然我們的飛船都能發射子彈了,那麼接下來我們新增一些敵機(外星飛船)給遊戲增加點樂趣。 我們的思路是讓敵機隨機從螢幕上空下來,並且在每一次迴圈中都向下移動,飛船的速度會變化,當飛出螢幕下方後,就回到螢幕上方重新開始。 import pygame impo
pygame入門小遊戲(外星人入侵(6) 外星飛船來啦!【二】)
看了課本和幾個例項,發現還是使用精靈中的groupcollide()來檢測碰撞比較簡單,所以我們接著第五節,把外星飛船也使用精靈來繪製,(上節因為並沒有使用Sprite,感覺實現擊落飛船有點困難,所以咱們接著5,繼續) 首先建立一個儲存外星飛船的類Alien(
pygame入門小遊戲(外星人入侵(9) )
雖然遊戲已經能正常運行了,是不是總覺得少了點什麼,下面我們給遊戲新增一個開始按鈕, 首先建立一個新類 play.py #匯入pygame.font模組(渲染文字到螢幕上) import pygame.font class Button():
Python 項目實踐一(外星人入侵小遊戲)第二篇
包含 容易 設置 調用 底部 itme 圖片 import 建立 接著上次的繼續學習。 一 創建一個設置類 每次給遊戲添加新功能時,通常也將引入一些新設置。下面來編寫一個名為settings的模塊,其中包含一個名為Settings的類,用於將所有設置存儲在一個地方,以免在代
python ---- pygame建立小遊戲《飛機射擊》(一)
建立視窗,構建飛機 **alien_invasion.py** ``` from settings import Settings from ship import Ship import pygame import game_function as gf def
react 框架入門小遊戲(三子棋)(狀態提升)
前言:本文針對react框架講述react官方教程上的入門教程(三子棋)參考網址如下:點選開啟連結主要涉及知識點是狀態提升,注:本文只講解js程式碼官網中在這個遊戲中所加的css程式碼本文不會去講述1.首先先看圖形的形狀程式碼沒有加任何的互動,只是通過react元件來實現:c
[知了堂學習筆記]_JS小遊戲之打飛機(3)-飛機之間的互相撞擊,boss的出現,以及控制boss死亡
時間 i++ score console function sss 間隔 app tint 我的小飛機和敵軍小飛機撞擊的效果的實現: 1 /** 2 * 定義我的飛機與敵機碰撞的方法: 3 */ 4 function destoryMyPlane(){ 5
Python 項目實踐一(外星人入侵)第一篇
應用 系統 循環 post 第一篇 開始遊戲 mage 安裝程序 tps python斷斷續續的學了一段實踐,基礎課程終於看完了,現在跟著做三個小項目,第一個是外星人入侵的小遊戲: 一 Pygame pygame 是一組功能強大而有趣的模塊,可用於管理圖形,動畫乃至聲音
Python小遊戲 井字棋(人機對戰,玩家對戰)
pan urn utf-8 erl ext print cef () nbsp # -*- coding:utf-8 -*-import timeimport random#井字棋 人機對戰def drawBoard(board): blank_board = '|
微信小遊戲踩坑記錄(二)
微信視訊元件 這次是關於視訊元件的,creator的視訊元件在小遊戲中是沒有用的,只能使用小遊戲自帶的元件。使用小遊戲Video的時候需要注意三點: 座標系的區別:微信使用的是UI座標系,以左上角為(0,0)點,x軸向右,y軸向下。而cocos的世界座標以左下角為(0,0)點,x軸向
creator小遊戲踩坑記錄(一)
隨手記一下今天遇到的幾個坑,先說下開發環境: cocos creator 1.9.3 開發者工具v1.02.1807120 iOS小遊戲Label元件文字被截斷的問題 描述 在iOS裝置小遊戲環境中,所有的文字上半部分被截斷。注意,只有在真實iOS裝置的小遊戲環境
cocos creator微信小遊戲優化之路(一)
目前在做一個放置類的微信小遊戲,時間過去了一個多月,大的功能已經很少了,是時候來一波優化了。策劃那邊還是在瀏覽器上檢視遊戲,反映了幾個問題,主要是操作延遲。這個分為幾個方面: 網路延遲:包括資源伺服器延遲,小程式的資源大部分都是放在資源伺服器上的,載入這些資源會出現延遲;另外還有遊戲邏輯
猜數字小遊戲+折半查詢法(二分法)+三次密碼輸入+字母大小寫轉換
猜數字小遊戲: #include<stdio.h> #include<time.h> #include<stdlib.h> /* 猜數字小遊戲 */ int menu() { printf("**********1.開始遊戲**********\n
C++小遊戲(原創)——數獨(sudoku)
#include <iostream> #include <cstring> #include <time.h> #include <cstdlib> #include<windows.h> using
微信小遊戲開發文件(2)
微信小遊戲系統API wx.getFileSystemManager() 檔案管理器 FileSystemManager.access FileSystemManager.accessSync FileSystemManager.copyFile FileSystemManager.copy
微信小遊戲開發文件(6)
微信小遊戲介面介面: wx.offKeyboardComplete wx.showKeyboard wx.setMenuStyle wx.onWindowResize wx.offWindowResize 微信小遊戲媒體介面: InnerAudioContext.offStop Inne
微信小遊戲開發文件(5)
微信小程式介面介面: wx.hideKeyboard wx.onKeyboardInput wx.offKeyboardInput wx.onKeyboardConfirm wx.offKeyboardConfirm wx.onKeyboardComplete 微信小遊戲work: wx
微信小遊戲開發文件(4)
微信小遊戲系統API: wx.onTouchEnd wx.offTouchEnd wx.onTouchCancel wx.offTouchCancel Touch 觸點 微信小遊戲資料快取介面: wx.removeStorage wx.removeStorageSync wx.setSt
Python10_專案一 :Pygame庫的安裝 及 外星人入侵遊戲01
從現在開始,做一個外星人入侵的遊戲,記錄在整個專案中所遇到的問題 首先,我們應該考慮到,用Python做遊戲需要安裝pygame庫,對於安裝pygame庫,步驟如下: 1、確定你的電腦安裝了Python環境 檢視方式為:命令列 輸入 python 得到結果如下:
學以致用——Java原始碼——騎士之旅(跳馬)小遊戲_宿命版(Knight’s Tour - Non-heuristic version)
遊戲規則: 一個8*8的棋盤上站著一個騎士(Knight),騎士在棋盤上只能走L形(橫走1步後豎走2步,或橫走2步後豎走1步),要求棋盤上每個方格只能停留一次,請問騎士應該怎麼走才能走完64個方格? 如,當騎士位於下圖中K位置時,其移動方式共有以下0-7共8種。 程式功能: