c# - 如何使用 C# 在 Unity 中创建 Lifesteal 系统?
问题描述
我想在我的游戏中制作一个吸血系统,我不知道怎么做。在谷歌上进行了大量研究后,我一无所获。有人可以帮忙吗?我并不是要给我诅咒的代码,而是要帮助我想想它是如何工作的。我在 C# 上工作
游戏是这样的:
我的玩家有一些统计数据,比如生命值、伤害等。玩家用剑攻击敌人。敌人有自己的生命值,当它死亡时,它会给玩家 xp。我的播放器中有治疗功能,因此可以通过健康药水添加治疗。问题是它应该如何根据他的命中来治疗玩家?我的意思是你命中 = 20 伤害你会得到 2hp(例如 10% 吸血)。
解决方案
我认为每次玩家攻击敌人时你都必须执行健康功能,你可以这样做:
public float playerHealth = 100;
int percentage = 20;
public void healPlayer()
{
playerHealth += (attackDamage * (percentage / 10));
}
这段代码将玩家对敌人造成的伤害量的 20% 相加,将百分比除以 10 再乘以伤害量。
您可以在敌人死亡时为玩家添加经验,执行如下功能:
public float playerExperience = 10;
public void addExperience()
{
playerExperience += 2;
}
推荐阅读
- python - 在 Python 中,对于 POST 请求,是否可以从 POST 请求对象中获取用于请求的 IP 地址?
- javascript - 无法使用引导程序 4 和 jquery 在多项目轮播中显示 3 张幻灯片
- java - 准备响应主体的逻辑应该在@Service 上还是@Controller 上?
- javascript - 进度条的多个顺序递归javascript函数
- c# - HTML AgilityPack 注释查找标题
- youtube - YouTube Data API - 如何提取视频和频道信息?
- yaml - 我可以删除响应架构表吗?只保留示例值
- angular - Angular 6子路由不起作用
- c# - VS 2010 C# 文件没有错误,但是当我调试时说它找不到神秘文件
- java - MySQL 语法错误 Java 表创建