前言
我相信很多小伙伴是有玩过阴阳师这个游戏的,但是有没有想过说自己可以制作出来了?
今天的话给大家带来的是一个简单版本的阴阳师小游戏,Python简化版的吧,纯文本的,虽然玩起来可能不是很爽,但是给一些刚刚入门的小伙伴来学习还是绰绰有余的!
准备好了我们就要开始啦!
相关文件
想学Python的小伙伴可以关注小编的公众号【Python日志】
有很多的资源可以白嫖的哈,不定时会更新一下Python的小知识的哈!!
需要源码的小伙伴可以在公众号回复阴阳师
Python源码、问题解答学习交流群:773162165
开发环境
Python版本:3.6.7
相关模块:
pygame
time
game_select
以及一些python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
效果实现
进入游戏场景,选择我们的人物
看上去多少有点简易,希望大家不要喷我,哈哈
代码实现
主函数
# -*- coding: utf-8 -*-
"""
阴阳师主程序
1、创建一个SSR、一个SR以及R 游戏人物,分别是:
大天狗,男,式神:是,主人:黑晴明,攻击力3136、生命10026
雪女,女,式神:是,主人:黑晴明,攻击力 3048、生命 10634
九命猫,女,式神:否;主人:黑晴明,攻击力2968、生命力 9905
2、游戏场景,分别:
请在每一个场景里输出(“敌人还有五秒到达战场”)
如果生命或者攻击力没有这么多,则失败,回程
阴界裂缝,消耗220攻击力、2000生命。。
鬼王封印,消耗3100攻击力、3000生命力
回城, 回复原来的攻击力和生命力
知识点:
代码重构
"""
from yinyangshi import *
import game_select as gs
import time
# 进入游戏场景
while True:
# 游戏欢迎界面
gs.welcome()
time.sleep(3)
# 游戏人物介绍
gs.introduction_game_character()
gs.please_select_game_character()
input_figure = int(input('请输入您使用的游戏人物'))
game_figure = gs.select_figure(input_figure)
time.sleep(2)
# 游戏场景介绍以及选择
gs.introduction_game_scene()
gs.please_select_scene()
time.sleep(2)
select_game = int(input('请输入您要进入的游戏场景'))
# 开始游戏
gs.enter_scene(game_figure, select_game)
# 是否进入下一轮游戏
print()
end_game = input(" 是否接着开始下一次挑战(Y/N)")
if end_game == 'N':
print()
print("游戏结束!")
break
elif end_game == 'Y':
print()
print("接着开始")
创建游戏人物和界面
# -*- coding: utf-8 -*-
from yinyangshi import *
import time
# 创建游戏人物
datiangou = Yinyangshi('大天狗', '男', '是', '黑晴明', 3136, 10026)
xuenv = Yinyangshi('雪女', '女', '是', '黑晴明', 3048, 10634)
niumingbao = Yinyangshi('九命猫', '女', '否', '黑晴明', 2698, 9905)
def welcome ():
"""
欢迎界面
:return:
"""
print('++++++++++++++++++++')
print()
print('欢迎进入阴阳师游戏世界')
print()
print('++++++++++++++++++++')
def introduction_game_character():
"""
游戏人物介绍
:return:
"""
print('阴阳师人物介绍')
datiangou.get_information()
xuenv.get_information()
niumingbao.get_information()
def please_select_game_character():
"""
选择人物界面
:return:
"""
print()
print('-------------------')
print('请根据游戏人物介绍,选择喜欢的人物')
print('1 大天狗')
print('2 雪女')
print('3 九命猫')
def select_figure(value):
if value == 1:
print()
print('您选择的游戏人物是')
datiangou.get_information()
print()
return datiangou
elif value == 2:
print()
print('您选择的游戏人物是')
xuenv.get_information()
print()
return xuenv
elif value == 3:
print()
print('您选择的游戏人物是')
niumingbao.get_information()
print()
return niumingbao
else:
print('请输入正确的选择数字')
def please_select_scene():
"""
游戏场景
:return:
"""
print()
print("===================")
print('请选择游戏场景')
print('4 阴界裂缝')
print('5 鬼王封印')
print("===================")
def introduction_game_scene():
"""
介绍游戏场景
:return:
"""
print()
print("您将进入游戏场景选择\n")
print("此版本阴阳师,共设置两个游戏场景")
print(" 阴界裂缝,消耗220攻击力、2000 生命。。")
print(" 鬼王封印,消耗3100攻击力、3000 生命力..")
print(" 在每一个场景里,如果生命或者攻击力没有这么多,则失败.")
print(" 回城恢复原来的攻击力和生命力")
def enter_scene(game_figure, select_game):
"""
进入游戏场景,开始游戏
:param game_figure:
:param select_game:
:return:
"""
if select_game == 4:
print()
print(F'欢迎 {
game_figure.name} 来到 阴界裂缝,请开始您的游戏')
game_figure.game_scene('阴界裂缝', 220, 2000)
time.sleep(5)
elif select_game ==5:
print(f'欢迎{
game_figure.name}来到 鬼王封印,请开始您的游戏')
game_figure.game_scene('鬼王封印', 3100, 3000)
time.sleep(5)
人物类
class Yinyangshi:
"""
定义阴阳师类:
包括阴阳师人物(属性)和游戏场景(方法)
"""
def __init__(self,name, gender, shishen, boss, attack, life):
''' 定义属性:游戏人物的属性 '''
self.name = name
self.gender = gender
self.shishen = shishen
self.boss = boss
self.attack = attack
self.life = life
# 添加两个新的属性,保存最初的生命力和攻击力
# 也可以写成方法
self.init_vale(attack, life)
# self.attack_init = attack
# self.life_init = life
def init_vale(self, attack, life):
"""
回城以后,恢复攻击力和生命力
:param attack:
:param life:
:return: none
"""
self.attack_init = attack
self.life_init = life
def get_information(self):
"""
描述游戏人物信息
:return:
"""
# print('阴阳师人物介绍:')
information = ' {n}、{g}、式神:{s}、主人:{b}、攻击力{a}、生命值{l}'
mess = information.format(n = self.name,
g = self.gender,
s = self.shishen,
b = self.boss,
a = self.attack,
l = self.life)
print(mess)
大致是这样子的一个情况啦,对于新手小白来说,应该不算太难理解
公众号【Python日志】
需要源码的小伙伴可以在公众号回复阴阳师
Python源码、问题解答学习交流群:773162165