LOL游戏基本代码
class Hero:
def __init__(self, new_nickname,
new_aggressivity,
new_life_value,
new_money,
new_armor # 护甲值为:12
):
self.nickname = new_nickname
self.aggressivity = new_aggressivity
self.life = new_life_value
self.money = new_money
self.armor = new_armor
self.equip_list = []
self.count = 0 def __str__(self):
if self.count == 1:return '请不要鞭尸!谢谢合作'
if self.life == 0:
self.count += 1
return '这傻叉已经被你活活打死了哦!'
else:
msg = "(英雄)%s的攻击力为:%d,生命值为:%d,你有:%d金币,护甲值:%d" \
% (self.nickname, self.aggressivity, self.life, self.money, self.armor)
msg += " 身上的装备有%s" % (str(self.equip_list))
return msg def add_equip(self, equip):
self.money -= equip.get_price() # 装备的价钱!用自己的钱购买装备后的余额
self.aggressivity += equip.aggrev
self.equip_list.append(equip.get_name()) def attack(self, enemy):
damage_value = self.aggressivity - enemy.armor # 再减护甲值相当于掉血量damage_value
enemy.life -= damage_value
if enemy.life < 0:
enemy.life = 0 # 如果血量是负数说明已经死了!写血量为0即可
print('%s向%s发起了一次攻击' % (self.nickname, enemy.nickname))
print('%s的生命值减少了%s,剩余生命值为%s' % (enemy.nickname, damage_value, enemy.life)) class Equip:
def __init__(self, new_name, new_price, life_value, new_aggrev):
self.name = new_name
self.price = new_price # BlackCleaver
self.lif_value = life_value
self.aggrev = new_aggrev def __str__(self):
return "装备(%s)的价钱为:%d" % (self.name, self.price) def get_price(self):
return self.price def get_name(self):
return self.name Ruiwen = Hero('锐雯', 54, 414, 9999, 12)
print(Ruiwen)
shop_duolanjian = Equip('多兰之刃', 475, 100, 9)
print(shop_duolanjian)
shop_wujin = Equip('无尽之刃', 3600, 0, 80)
print(shop_wujin) Ruiwen.add_equip(shop_duolanjian)
print(Ruiwen)
Ruiwen.add_equip(shop_wujin)
print(Ruiwen)
Ruiwen.add_equip(shop_wujin)
print(Ruiwen)
Gailun = Hero('盖伦', 54, 455, 9999, 19)
print(Gailun)
Gailun.attack(Ruiwen) print(Ruiwen) # 查看锐雯是不是被攻击并血量值减少了
Ruiwen.attack(Gailun)
print()
print(Gailun)
Ruiwen.attack(Gailun)
print()
print(Gailun)
Ruiwen.attack(Gailun)
print()
# Ruiwen.attack(Gailun)#好像已经死了,不存在鞭尸的哦!- -
print(Gailun)
print('-'*50)
Ruiwen.attack(Gailun)
print()
print(Gailun)
LOL游戏基本代码的更多相关文章
- JS写小游戏(一):游戏框架
前言 前一阵发现一个不错的网站,都是一些用html5+css+js写的小游戏,于是打算学习一番,写下这个系列博客主要是为了加深理解,当然也有一些个人感悟,如果英文好可以直接Click Here. 概述 ...
- NeHe OpenGL教程 第三十二课:拾取游戏
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- Unity3D--学习太空射击游戏制作(二)
步骤三:创建主角 游戏的主角是一艘太空飞船,我们将使用一个飞船模型作为游戏的主角,并赋予他一个脚本,控制他的运动,游戏体的组件必须依赖于脚本才能运行. 01:在Project窗口找到Player.fb ...
- 【C语言探索之旅】 第二部分第九课: 实战"悬挂小人"游戏 答案
内容简介 1.课程大纲 2.第二部分第九课: 实战"悬挂小人"游戏 答案 3.第二部分第十课预告: 安全的文本输入 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题, ...
- jQuery版推箱子游戏详解和源码
前言 偶然间看到很多用js写游戏的感觉很炫酷的样子,所以就想试试,就看了一些资料和某前端站点的视屏.于是乎就自己动手实践了一下,上推箱子截图 感觉很丑陋,但是功能是实现了.再说貌似大多都是这样的吧,这 ...
- userAgent,JS这么屌的用户代理,你造吗?——判断浏览器内核、浏览器、浏览器平台、windows操作系统版本、移动设备、游戏系统
1.识别浏览器呈现引擎 为了不在全局作用域中添加多余变量,这里使用单例模式(什么是单例模式?)来封装检测脚本.检测脚本的基本代码如下所示: var client = function() { var ...
- MMORPG战斗系统随笔(四)、优化客户端游戏性能
转载请标明出处http://www.cnblogs.com/zblade/ 说到游戏性能,这是一个永恒的话题.在游戏开发的过程中,性能问题一直是我们研发需要关注的一个节点.当然,说句客观话,很多程序员 ...
- Java实现贪吃蛇游戏【代码】
花了两个下午写了一个贪吃蛇小游戏,本人想写这游戏很长时间了.作为以前诺基亚手机上的经典游戏,贪吃蛇和俄罗斯方块一样,都曾经在我们的童年给我们带来了很多乐趣.世间万物斗转星移,诺基亚曾经作为手机业的龙头 ...
- 【Unity3D】射箭打靶游戏(简单工厂+物理引擎编程)
打靶游戏: 1.靶对象为 5 环,按环计分: 2.箭对象,射中后要插在靶上: 3.游戏仅一轮,无限 trials: 增强要求: 添加一个风向和强度标志,提高难度 游戏成品图: U ...
随机推荐
- 05.Spring 资源加载 - Resource
基本概念 Spring 把所有能记录信息的载体,如各种类型的文件.二进制流等都称为资源. 对 Spring 开发者来说,最常用的资源就是 Spring 配置文件(通常是一份 XML 格式的文件). S ...
- (转)Linux下PS1、PS2、PS3、PS4使用详解
Linux下PS1.PS2.PS3.PS4使用详解 原文:http://www.linuxidc.com/Linux/2016-10/136597.htm 1.PS1——默认提示符 如下所示,可以通过 ...
- Hadoop文件压缩
1. Hadoop的文件压缩需求 文件压缩对于大容量的分布式存储系统而言是必须的,它能带来两个好处: 1)减少了文件所需的存储空间: 2)加快了文件在网络上或磁盘间的传输速度. 2. Hadoop支持 ...
- less css用法思维导图
Less 是一个Css 预编译器,可以扩展Css语言,添加功能如允许变量(variables),混合(mixins),函数(functions) 和许多其他的技术,让你的Css更具维护性,主题性,扩展 ...
- PHP面试题基础问题
1.对于大流量的网站,您采用什么样的方法来解决访问量问题? 首先,确认服务器硬件是否足够支持当前的流量 其次,优化数据库访问. 第三,禁止外部的盗链. 第四,控制大文件的下载. 第五,使用不同主机分流 ...
- .net 中的托管与非托管
托管代码 托管代码就是Visual Basic .NET和C#编译器编译出来的代码.编译器把代码编译成中间语言(IL),而不是能直接在你的电脑上运行的机器码.中间语言被封装在一个叫程序集(assemb ...
- webservice 简单实例
C# 创建.部署和调用WebService的简单示例 webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互. 概念性的东西就不说太多,下面开始创建一个简单的webservi ...
- Employees Earning More Than Their Managers
The Employee table holds all employees including their managers. Every employee has an Id, and there ...
- Storm里面fieldsGrouping和Field的概念详解
这个Field通常和fieldsGrouping分组机制一起使用,这个Field特别难理解,我自己也是在网上看了好多文章,感觉依旧讲的不是很清楚,是似而非,没有抓到重点.这个问题足足困扰了我3-4天时 ...
- Vue日历
Vue生成日历,根据返回值将日期标红 HTML: <h1>CSS 日历</h1> <div id="calendar"> <div cla ...