我是跟著書裡一步步寫到橫向移動後 我就想怎麼縱向移動,放上自己寫的**,如果有問題的話,請指出來,我也是剛剛學習python,希望可以跟大家多多交流。
新增的就是有關up和down的**了。
我自己是成功了,肯定有其他的更優化的,那就等我在學習一段時間吧。
附上**:
game_function:
import sys
import pygame
# 監視鍵盤和滑鼠事件
def check_keydown_events(event,ship):
if event.key==pygame.k_right:
ship.moving_right=true
elif event.key==pygame.k_left:
ship.moving_left=true
elif event.key==pygame.k_up:
ship.moving_up=true
elif 程式設計客棧event.key==pygame.k_down:
ship.moving_down=true
def check_keyup_events(event,ship):
if event.key==pygame.k_right:
ship.moving_right=false
elif event.key==pygame.k_left:
sh程式設計客棧ip.moving_left=false
elif event.key==py程式設計客棧game.k_up:
ship.moving_up=false
elif event.key==pygame.k_down:
ship.moving_down=false
def check_events(ship):
for event in pygame.event.get():
if event.type==pygame.quit:
sys.exit()
elif event.type==pygame.keydown:
check_keydown_events(event,ship)
eli程式設計客棧f event.type==pygame.keyup:
check_keyup_events(event,ship)
def update_screen(ai_settings,screen,ship):
screen.fill(ai_settings.bg_color)
ship.blitme()
pygame.display.flip() #讓最近回執的螢幕可見(重新整理)
ship:
import pygame
class ship():
def __init__(self,ai_settings,screen):
self.screen=screen
self.ai_settings=ai_settings
#載入飛船影象
self.image=pygame.image.load('chengyan_ship.bmp')
self.rect=self.image.get_rect()
self.screen_rect=screen.get_rect()
self.rect.centerx=self.screen_rect.centerx #x的座標
self.rect.centery=self.screen_rect.centery #y的座標
self.rect.bottom=self.screen_rect.bottom
self.moving_right=false
self.moving_left=false
self.moving_up=false
self.moving_down=false
#得到飛船移動到最下面的值(我不知道有沒有表述清楚...就是只能飛到介面的最下面)
self.screen_top=self.rect.top
def update(self):
#橫向移動
if self.moving_right and self.rect.right0:
self.rect.centerx-=self.ai_settings.ship_speed_factor
if self.moving_up and self.rect.top>0:
self.rect.centery-=self.ai_settings.ship_speed_factor
if self.moving_down and self.rect.top
本文標題: python實現飛船遊戲的縱向移動
本文位址: /jiaoben/python/310029.html
python飛船遊戲(三)
ship.py class ship sprite def init self,ai settings,screen 初始化飛船並設定其初始位置 super ship,self init self.screen screen self.ai settings ai settings 載入飛船影象並獲...
跳躍遊戲的python實現
給定乙個非負整數列表,假定你的初始位置為列表第乙個下標。列表中的每個元素代表你在那個位置能夠跳躍的最大長度。請確認你是否能夠跳躍到列表的最後乙個下標。例如 輸入 a 2,3,1,1,4 輸出 true 輸入 a 3,2,1,0,4 輸出 false 採用貪心演算法方式,主要思想就是從列表中的第乙個元...
Python 生命遊戲的實現
給定乙個包含 m n 個格仔的面板,每乙個格仔都可以看成是乙個細胞。每個細胞都具有乙個初始狀態 1 即為活細胞 live 或 0 即為死細胞 dead 每個細胞與其八個相鄰位置 水平,垂直,對角線 的細胞都遵循以下四條生存定律 如果活細胞周圍八個位置的活細胞數少於兩個,則該位置活細胞死亡 如果活細胞...