本章主要确定战斗系统

因为本游戏属于文字游戏类,所以战斗系统必须别出心裁,经过许久的思考,我决定将战斗模式分为两种,一种为进攻模式,另外一种为玩家对拼模式。

战斗模式为了能够循环使用,并判断有和建筑或者和人物必须确定字典,格式如下:

玩家字典=[]
def xx():战斗内容添加字典内容战斗胜与否结束

在游戏中既是如下:

ww=random.randint(1,17)
弓箭塔="弓箭塔"
加农炮="加农炮"
迫击炮="迫击炮"
火炮="火炮"
隐形炸弹="隐形炸弹"
新手=[]
def a():print("派出部队遭遇隐形炸弹,销毁。")
def b():print("")
def c():print("")
def d():print("")def 流星石李磕():while True:print("系统提示:法术类卡牌,无需附魂")教程=input("请选择攻击的目标\n>")if 教程 in 新手教程可攻击列表:if 教程=="弓箭塔":新手.append(弓箭塔)else:新手.append(加农炮)print("流星石打爆了%s,收复程度一颗星"%教程)breakelse:print("请正确选择")
def 新手教程流程():if ww==1:a()elif ww==7 or 8 or 3 or 9 or 10:b()elif ww==2 or 11 or 12:c()else:d()
print("这个哥布林势力放了:\n 弓箭塔\n 加农炮\n您可以攻击的目标为\n %s\n %s"%(弓箭塔,加农炮))time.sleep(1.5)print("目前您的卡牌有:\n 流星石\n 炮手\n 弓弩手\n 炸弹敢死小队")time.sleep(1.5)流星石=1炮手=1弓弩手=1炸弹敢死小队=1while True:www=input("请选择您打出的卡牌(名字)\n系统提示:如果乱出,将会由系统随机出牌\n>")if www=="流星石":if 流星石==0:print("卡牌已用完")else:流星石-=1流星石李磕()else:教程2=input("请选择攻击的目标\n>")if 教程2=="弓箭塔":if "弓箭塔"in 新手:print("已打击!!!")else:if www=="炮手":if 炮手==0:print("卡牌已用完")else:炮手-=1新手教程流程()if www=="弓弩手":if 弓弩手==0:print("卡牌已用完")else:弓弩手-=1新手教程流程()if www=="炸弹敢死小队":if 炸弹敢死小队==0:print("卡牌已用完")else:炸弹敢死小队-=1新手教程流程()elif 教程2=="加农炮":if "加农炮"in 新手:print("已打击!!!")else:if www=="炮手":if 炮手==0:print("卡牌已用完")else:炮手-=1新手教程流程()if www=="弓弩手":if 弓弩手==0:print("卡牌已用完")else:弓弩手-=1新手教程流程()if www=="炸弹敢死小队":if 炸弹敢死小队==0:print("卡牌已用完")else:炸弹敢死小队-=1新手教程流程()else:print("请正确选择  >>>攻击目标<<<  ")

既然如此

第1种战斗系统变已经基本构建完成,接下来便是对战斗系统文字的扩充,下一章将会讲到

另外本章主要介绍一个Python考点:append

这个append可以在字典后面添加内容

案例代码如下:

字典=[]
a="这是一段话,需要添加进字典里"
字典.append(a)
print("",字典)

在游戏中既是如下:

新手教程可攻击列表=[]print("哥布林部落是一个古老的种族,存在于这个世界很久了,但是作恶多端四处袭击村民\n首领,您奉命前来剿灭哥布林部落一些残存势力\n")
time.sleep(1.2)print("您需要拿到手中的卡牌并合理运用,您可以在打出卡牌以后进行附魂,来行动您所打出的卡牌\n您的目标是攻破对方的大本营\n但是哥布林们在周围放了很多防御建筑,现在开始勘测")
time.sleep(1.2)#添加可攻击列表
新手教程可攻击列表.append(弓箭塔)
新手教程可攻击列表.append(加农炮)print("这个哥布林势力放了:\n 弓箭塔\n 加农炮\n您可以攻击的目标为\n %s\n %s"%(弓箭塔,加农炮))

大家可以去试一试

这一段话也可以进行用户输入,把用户输入的内容转化为字典内容并进行输出

这就是购物车的原理

目前源代码确定如下:

"""
创作团队:创文工作室
创作作品:万率之领
更新日志:
2021-8-4-16:06
2021-8-4-19:28
2021-8-5-11:36
2021-8-6-11:02
2021-8-7-10:20
"""
import random
import timeww=random.randint(1,17)
弓箭塔="弓箭塔"
加农炮="加农炮"
迫击炮="迫击炮"
火炮="火炮"
隐形炸弹="隐形炸弹"
新手=[]
def a():print("派出部队遭遇隐形炸弹,销毁。")
def b():print("")
def c():print("")
def d():print("")def 流星石李磕():while True:print("系统提示:法术类卡牌,无需附魂")教程=input("请选择攻击的目标\n>")if 教程 in 新手教程可攻击列表:if 教程=="弓箭塔":新手.append(弓箭塔)else:新手.append(加农炮)print("流星石打爆了%s,收复程度一颗星"%教程)breakelse:print("请正确选择")
def 新手教程流程():if ww==1:a()elif ww==7 or 8 or 3 or 9 or 10:b()elif ww==2 or 11 or 12:c()else:d()
#随机部落名字
name=["w","qfd","as","味","按时吃","撒","俺现在","dfv","eg","干活","治疗","部落","啊放假就好"]
name_2=["分担分担","下次","帮","辅导班地方","霍建华","任天堂","贝多芬","45","sfs","SD","刚发的"]
yu=["别人","gh","e","h","888","989","54188","dfbg","fs"]
ron=random.choice(name)
er=random.choice(name_2)
tlist=[]
新手教程可攻击列表=[]
#列表
print('-'*40)
print('\t欢迎来到万率之领')
print('-'*40)
time.sleep(1.5)
print("")
登陆用户名=input("请输入用部落名:")
print("")
服务器=input("请选择服务器:\n 1.野蛮人草原\n 2.科技都\n 3.炮火世界\n >")
time.sleep(1)
if 服务器.lower()=="1"or"2"or"3":print("")
else:print("请正确选择服务器!")
print("正在加载服务器....")
time.sleep(10)
print("服务器消息:成功进入服务器!")
time.sleep(2)
print('请为自己的部落取名字')
role=input('>')
部落名=[]
部落名.append(role)
coins=100
coins_two=100
print("服务器消息:欢迎%s部落来到万率之领\n"%部落名)
time.sleep(1)
print("尊敬的首长,您目前的部落信誉是%s,部落有%s金币\n"%(coins,coins_two))
#选择:if
while True:d=input("是否进入新手教程?\n 1=好的,我想看看呢\n 2=算了,我是老手\n >")if d=="1":print("万率之领是一个塔防,经营融为一体的游戏,你需要通过经营来获得战斗机会以体验游戏")w=input("现在来体验一把,好嘛?\n 1=ok\n 2=不要!\n >")if w=="2":print("不行,你必须参加,谁叫你选择了新手教程呢")else:print("好了!开始了")weq=int(1)tlist.append(weq)print("哥布林部落是一个古老的种族,存在于这个世界很久了,但是作恶多端四处袭击村民\n首领,您奉命前来剿灭哥布林部落一些残存势力\n")time.sleep(1.2)print("您需要拿到手中的卡牌并合理运用,您可以在打出卡牌以后进行附魂,来行动您所打出的卡牌\n您的目标是攻破对方的大本营\n但是哥布林们在周围放了很多防御建筑,现在开始勘测")time.sleep(1.2)#添加可攻击列表新手教程可攻击列表.append(弓箭塔)新手教程可攻击列表.append(加农炮)print("这个哥布林势力放了:\n 弓箭塔\n 加农炮\n您可以攻击的目标为\n %s\n %s"%(弓箭塔,加农炮))time.sleep(1.5)print("目前您的卡牌有:\n 流星石\n 炮手\n 弓弩手\n 炸弹敢死小队")time.sleep(1.5)流星石=1炮手=1弓弩手=1炸弹敢死小队=1while True:www=input("请选择您打出的卡牌(名字)\n系统提示:如果乱出,将会由系统随机出牌\n>")if www=="流星石":if 流星石==0:print("卡牌已用完")else:流星石-=1流星石李磕()else:教程2=input("请选择攻击的目标\n>")if 教程2=="弓箭塔":if "弓箭塔"in 新手:print("已打击!!!")else:if www=="炮手":if 炮手==0:print("卡牌已用完")else:炮手-=1新手教程流程()if www=="弓弩手":if 弓弩手==0:print("卡牌已用完")else:弓弩手-=1新手教程流程()if www=="炸弹敢死小队":if 炸弹敢死小队==0:print("卡牌已用完")else:炸弹敢死小队-=1新手教程流程()elif 教程2=="加农炮":if "加农炮"in 新手:print("已打击!!!")else:if www=="炮手":if 炮手==0:print("卡牌已用完")else:炮手-=1新手教程流程()if www=="弓弩手":if 弓弩手==0:print("卡牌已用完")else:弓弩手-=1新手教程流程()if www=="炸弹敢死小队":if 炸弹敢死小队==0:print("卡牌已用完")else:炸弹敢死小队-=1新手教程流程()else:print("请正确选择  >>>攻击目标<<<  ")elif d=="2":print("好的")time.sleep(1.0)breakelse:print("首领,请您正确选择!")
def one():print("尊敬的%s部落的首长,欢迎来到我的店铺,请您选尽情的选购"%role)
#循环插入
while True:s=input("首领,请选择您现在的操作:\n 1.商人的店铺\n 2.招募村民\n 3.远征\n 4.攻打哥布林部落\n 5.查看部落情况\n 6.退出\n >")if s=="1":one()elif s=="6":we=input("首领,您真的要退出吗\n 1=yes 2=no")if we=="1":exit()else:print("看吧,我说您不会退出的")else:print("首领,请您正确选择")

Python考点内容:append 巨型文字游戏开发(2)相关推荐

  1. 二级Python考点总结

    二级Python考点总结 二级Python考点总结 变量命名 数据类型 字符串,列表,元组的索引及切片 字符串,列表,元组的方法 字符串的方法 列表的方法 字典的方法 集合的方法 分支语句 for循环 ...

  2. 探索 Python、机器学习和 NLTK 库 开发一个应用程序,使用 Python、NLTK 和机器学习对 RSS 提要进行分类

    挑战:使用机器学习对 RSS 提要进行分类 最近,我接到一项任务,要求为客户创建一个 RSS 提要分类子系统.目标是读取几十个甚至几百个 RSS 提要,将它们的许多文章自动分类到几十个预定义的主题领域 ...

  3. python实现erp系统后端_python开发erp教程《PYTHON编一套完整ERP系统,15万元能下来吗》...

    python开发erp教程<PYTHON编一套完整ERP系统,15万元能下来吗> python开发erp教程2020-10-09 13:08:31人已围观 PYTHON编一套完整ERP系统 ...

  4. 基于python 的股票行情查询系统开发(一)

    基于python 的股市行情查询系统开发(一) 一.前言 1.开发背景 二.开发计划 1.开发语言 2.数据api获取 3.后续计划 今日进度 1.前期准备 2.获取股票代码 一.前言 1.开发背景 ...

  5. python怎么做软件程序_看 Python 超级程序员使用什么开发工具

    Python超级程序员使用的开发工具 我以个人的身份采访了几个顶尖的Python程序员,问了他们以下5个简单的问题: 当前你的主要开发任务是什么? 你在项目中使用的电脑是怎样的? 你使用什么IDE开发 ...

  6. Python之简单的网页爬虫开发

    Python之简单的网页爬虫开发 文章目录 Python之简单的网页爬虫开发 下面简单介绍一下request: 简单介绍一下什么是第三方库: 结合requests与正则表达式 多线程爬虫 多进程库(m ...

  7. python哲学内容 多行胜于单行_Python程序设计(胡新明)-中国大学mooc-题库零氪

    一.引子(51min) 章节一测验 1."程序"就是做一件事情或者解决一个问题所采取的一系列()步骤. A.固定 B.无序 C.随机 D.重复 2.Python语言程序中的语句的行 ...

  8. python保存内容到文件(text、json、csv)

    python保存内容到文件(text.json.csv) 在开发人员的日常中,将数据保存到文件是最常见的编程任务之一. 通常,程序需要一些输入并产生一些输出.在许多情况下,我们希望将这些结果持久化.我 ...

  9. python是基于什么语言开发-python是哪个国家的人开发的语言

    python是Google的吉多·范罗苏姆设计的,Python是一种跨平台的计算机程序设计语言.作为一种面向对象的动态类型语言,它最初设计用于编写自动化脚本. 是Google的吉多·范罗苏姆设计的. ...

最新文章

  1. epubbuilder 过期_记者调查|浠水县思源实验学校向学生发过期牛奶,生产日期2019年12月14日...
  2. 面向对象方法为何有利于软件复用?
  3. Matplotlib绘图双纵坐标轴设置及控制设置时间格式
  4. python redis_Python操作Redis大全
  5. github创建项目,并提交本地文件
  6. GDCM:读取和转储DICOMDIR文件的测试程序
  7. MFC多标签页对话框
  8. Swift coreAnimation 加计时器写的游戏《飞机大战》
  9. python坐标系教程_python Shapely使用指南详解
  10. 微软官方出的各种dll丢失的修复工具
  11. 【Struts】ActionForm
  12. npm安装opencv4nodejs(Windows)
  13. Axure基本使用(一)
  14. 标准差(standard deviation)
  15. 用C++实现QQ自动登陆器,仿佛开了外挂,秒杀各种神操作!
  16. 【软件设计】CS客户端整体架构
  17. jvav是什么梗?jvav是什么?jvav史上最牛语言
  18. filco蓝牙不好用_蓝牙党+精简布局键位的选择:Filco Minila Air青轴两个月使用体验...
  19. 10月书讯丨10本新书为你充电
  20. gets、puts函数和fgets、fputs函数的区别与联系

热门文章

  1. 加速云原生应用落地,焱融 YRCloudFile 与天翼云完成兼容性认证
  2. 【Ruby on Rails全栈课程】3.5 注册功能
  3. OWASP Top10 2020
  4. Google Blink开发者大会浅议
  5. win10 设置共享文件
  6. 微信资料打印,多页可以合在一张a4纸上吗
  7. linux忽略文件系统错误,文件系统错误故障排除
  8. js前端开发案例教程之DOM购物车(动手实践:购物车)
  9. 前端面试题合集(持续更新中......)
  10. 一点学计算机后的感受,计算机心得体会