人狗大戰的遊戲實現

2022-07-18 10:03:11 字數 1687 閱讀 6209

#實現人狗大戰

class dog:

def __init__(self,*args):

self.name=args[0]

self.age=args[1]

self.blood=args[2]#血量

self.king=args[3]#攻擊力

def yaoni(self,person): #狗的方法:咬人

#狗咬人 人掉血

# person.blood-=dog.gking

person.blood -= self.king

class person:

def __init__(self,*args):

self.name=args[0]

self.age=args[1]

self.blood=args[2]#血量

self.king=args[3]#攻擊力

self.money = args[4]

def dagao(self,dog):#人的方法:打狗

dog.blood-=self.king#人打狗 狗掉血

def get_weapon(self,weapon):# 人的方法: 給人裝備『打狗棒』

if self.money>=weapon.price:

self.money-=weapon.price

self.weapon=weapon

#裝備上**中後血量增加

self.blood+=weapon.blood #自己的血量加上**的血量

else:

print('餘額不足請充值')

class weapon: #裝備類

def __init__(self,name,blood,njd,price):

self.name=name

self.blood=blood

self.njd=njd #裝備的耐久度 和血量差不多

self.price=price#裝備的**

#給裝備設計乙個大招 加乙個方法

def hand(self,person): #這個裝備可以攻擊乙個人

if self.njd >0:

person.blood-=self.blood*2 #可以掉雙倍的血量

self.njd-=1 #狗的耐久度減一

alex=person('alex',11,2000,200,300) #例項化乙個人

jin=dog('金老闆',543,1000,100) #例項化乙個狗

w=weapon('打狗棒',100,3,998)

#怎樣給alex裝備打狗棒

alex.money+=5415

alex.get_weapon(w)

print(alex.weapon)

print(alex.blood)

alex.dagao(jin)#alx開始打狗了 呼叫了person中的dagou方法

print(jin.blood)#檢視一下狗的血量

alex.weapon.hand(jin)#alex有乙個weap屬性 是另外乙個類的物件 alex使用裝備中的大招開始打狗

print(jin.blood)

#******該遊戲中涉及到了乙個物件導向的知識點 組合:乙個物件的屬性是另乙個類的物件 alex.weapon是weapon類的物件

物件導向方法實戰 人狗大戰

class animal 定義乙個動物類 def init self,name,hp,attack self.name name self.hp hp self.attack attack class person animal 繼承動物類 def dg self,dog 建立人打狗的方法 dog....

基於QT實現的飛機大戰遊戲

一 課程設計內容與目標 通過類的繼承等來實現乙個飛機小遊戲,首先實現控制台版的飛機遊戲,然後修改與顯示相關的部分 完成從控制台到圖形介面的遷移過程。飛機遊戲中要實現以下幾個基本要素 玩家飛機發射子彈攻擊敵機 敵機可以發射子彈攻擊玩家 玩家飛機可以自由移動,敵機可以定向移動 玩家飛機與敵機只有在真正邊...

js實現飛機大戰小遊戲

一開始先定義乙個變數state記錄遊戲的狀態 預備遊戲開始前的準備介面的內容 畫布的寬高 遊戲的各種狀態 自定義的規則,定義常量來實現 繪製不斷運動的背景,建立物件,給定的src屬性 載入 設定背景物件的詳細資訊,寬度,高度,物件,自定義建構函式 設定基本的資料 設定繪圖的需要的座標 兩張需要不斷的...