python實現簡單飛行棋
阿新 • • 發佈:2020-02-06
本人剛開始學習python,看了一段時間視訊教程之後,決定做一個小遊戲來鞏固一下知識點,就做了一個文字版飛行棋,暫不具備圖形介面。把程式碼貼出來,給自己留個標記。
chess_main.py
import chess_tools # 輸入玩家資訊 chess_tools.input_player() while chess_tools.end_flag: for player in chess_tools.player_list: chess_tools.ironman(player) input(player["name"]+",請按enter擲骰子") chess_tools.throw(player) if chess_tools.judge(player) == 1: break chess_tools.hit(player) chess_tools.speedup(player) print("")
chess_tools.py
from random import randint player_list = [] end_flag = 1 def input_player(): num = input("資料玩家數量:") i = 0 while i < int(num): player_name = input("輸入第" + str(i + 1) + "位玩家名字:") play_info = {"name": player_name,"score": 0} player_list.append(play_info) i = i + 1 def throw(player): """ 玩家扔骰子,隨機1-6點 :param player: 當前玩家 :return: """ points = randint(1,6) # 首先判定是否起飛 if player["score"] == 0 and points == 6: player["score"] = 1 print("%d 點,恭喜起飛!當前在第%d格" % (points,player["score"])) elif player["score"] == 0 and points < 6: print("%d 點,起飛失敗!" % points) return # 分數大於100,要後退,多幾分退幾步 elif player["score"] + points > 100: player["score"] = player["score"] - (player["score"]+ points) % 100 + 1 print("%d 點,飛過頭了!回到%d格" % (points,player["score"])) else: player["score"] += points print("%d 點!當前在第%d格" % (points,player["score"])) def judge(player): global end_flag if player["score"] == 100: end_flag = 0 print(player["name"]+"贏了") return 1 def hit(player): """ 判斷當前玩家是否會將領先的玩家撞回起飛位置 :param player: 當前玩家名字 """ for other_player in player_list: if player["score"] == other_player["score"] \ and other_player["name"] != player["name"]: other_player["score"] = 0 def speedup(player): if player["score"] == 15 or \ player["score"] == 35 or \ player["score"] == 85: player["score"] += 5 print("加速5格,當前在%d格" % player["score"]) def ironman(player): """ 主角光環,名字中含有指定字元的人可以獲得50分加成 :param player:當前玩家的名字 """ master = player["name"].count("t") if master > 0 and player["score"] == 0: player["score"] = 50 print("- I am Iron Man!賈維斯,先給我加50分。") print("- 好的,%s 。當前已走到第50格。" % player["name"]) print("")
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。