見出し画像

pythonでオリジナルゲームを作りました

ちょっとしたオリジナルゲームを作りました。
たいしたものではないのですが。
仮に、キング、という名前にしましょう。
まずは、お互いに5枚づつカードを持ち、
一枚づつ出して、勝負するというものです。
カエルは、ヘビに負け、猟師に負け、王様に負けるのですが、魔女には勝つ、といった具合です。
入力は、一番左のカードが0です。
いつものごとく、エラーチェック、例外処理は全く入れてません。

import random

def hantei(a,b):
    card=["カエル","へび","猟師","王様","魔女"]
    for i in range(len(card)):
        if a==card[i]:
            i1=i
            break
    for i in range(len(card)):
        if b==card[i]:
            i2=i
            break
        

    z=[[0,-1,-1,-1,1],[1,0,-1,1,-1],[1,1,0,-1,1],[1,-1,1,0,1],[-1,1,-1,-1,0]]

    return z[i1][i2]
    


card=["カエル","へび","猟師","王様","魔女"]
a=[]
b=[]

for i in range(0,4):
    a.append(card[random.randint(0,4)])
    b.append(card[random.randint(0,4)])
    
print(a,b)

you=0
com=0
hiki=0

while(True):
    if len(a)==0:
        break
    print(a)
    n1=int(input("n="))
    nn1=a[n1]
    a.remove(nn1)

    n2=random.randint(0,len(b)-1)
    nn2=b[n2]
    b.remove(nn2)
    
    f=hantei(nn1,nn2)
    if f==1:
        you=you+1
        s="YOU WIN"
    elif f==-1:
        com=com+1
        s="COM WIN"
    elif f==0:
        hiki=hiki+1
        s="DRAW"
        
    print(nn1,nn2,s)
print(str(you)+"勝 "+str(com)+"敗 "+str(hiki)+"分け")

出力結果

['王様', '王様', '魔女', '猟師'] ['カエル', '魔女', '猟師', 'へび']
['王様', '王様', '魔女', '猟師']

n=0
王様 へび COM WIN
['王様', '魔女', '猟師']

n=1
魔女 魔女 DRAW
['王様', '猟師']

n=0
王様 猟師 YOU WIN
['猟師']

n=0
猟師 カエル YOU WIN
2勝 11分け

いいなと思ったら応援しよう!