亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我的 python 程序不啟動 pygame?

為什么我的 python 程序不啟動 pygame?

瀟湘沐 2023-03-16 15:29:40
我正在用 pygame 制作游戲并練習 OOP。我讀過一個 pygame 教程,因為我的游戲有點不同,所以我只采用了我需要的部分,例如移動、pygame.init() 等。當我運行腳本時,沒有任何錯誤只是pygame 歡迎信息。我已經檢查過我是否真的添加了代碼行來啟動程序并且我確實添加了。我還檢查了我是否制作了屏幕,我也這樣做了。  1 import pygame  2 from pygame.locals import *  3   4 class character:  5     def __init__(self, Name, Picture, Attack1, WaitAttack1, Attack2, WaitAttack2, Heal1, WaitHeal1, SuperAttack1, WaitSuperAttack1):  6         self.Name = Name  7         self.Player = pygame.image.load(Picture)  8         self.Coins = 0  9         self.Backpack = "Empty" 10         self.WorldMap = "Comming soon" 11         self.Health = 250 12         self.Attack1 = Attack1 13         self.WaitAttack1 = WaitAttack1 14         self.Attack2 = Attack2 15         self.WaitAttack2 = WaitAttack2 16         self.Heal1 = Heal1 17         self.WaitHeal1 = WaitHeal1 18         self.SuperAttack1 = SuperAttack1 19         self.WaitSuperAttack1 = WaitSuperAttack1 20         self.Keys = [False, False, False, False] 21         self.playerpos = [100,100] 22  23     def directions(self): 24  25         if self.Keys[0]: 26             self.playerpos[1] -= 5 27         elif self.Keys[2]: 28             self.playerpos[1] += 5 29         if self.Keys[1]: 30             self.playerpos[0] -= 5 31         elif self.Keys[3]: 32             self.playerpos[0] += 5 33  34  35  36 class Slade(character): 37     def __init__(self): 38         character.__init__(self, "Slade", "Slade.png", 40, 20, 50, 25, 10, 5, 30, 25)PS:我是 OOP 的新手。所以請盡量忽略我的代碼很糟糕的事實。
查看完整描述

2 回答

?
海綿寶寶撒

TA貢獻1809條經驗 獲得超8個贊

首先,您必須將類分配給一個變量。然后調用一個函數,因為在分配類之后,唯一會運行的就是函數__init__()。例如

if __name__ == '__main__':
    obj = Slade()
    obj.movement()

您的代碼中還有一些其他問題,例如def __init__(self): 37     def __init__(self):將一個類分配給一個變量然后調用一個函數將運行所需的函數。另請注意,您只能使用該類__init__()一次。


查看完整回答
反對 回復 2023-03-16
?
幕布斯6054654

TA貢獻1876條經驗 獲得超7個贊

我實際上對此也不太了解,但看起來只有 init 函數在運行,而不是 movement 函數,它具有pygame.init().



查看完整回答
反對 回復 2023-03-16
  • 2 回答
  • 0 關注
  • 112 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號