c# - C#中简单的口袋妖怪战斗的麻烦
问题描述
我正在用 C# 制作一个非常简单的口袋妖怪对战游戏。主要思想是每 5 回合,第一个Pokemon
( Squirtle
) 会通过一个函数增强他的伤害。但是当我编译它时,它的损坏Squirtle
是一样的。知道发生了什么吗?
这是代码:
using System;
namespace FirstProgram
{
class MainClass
{
static void Main(string[]args)
{
int turn = 1;
int potion1 = 0;
//Creando y declarando Pikachu
Pokemon Pikachu = new Pokemon();
Pikachu.health = 190;
Pikachu.damage = 40;
//Creando y declarando Squirtle
Pokemon Squirtle = new Pokemon();
Squirtle.health = 190;
Squirtle.damage = 40;
while (Pikachu.health > 0 && Squirtle.health > 0)
{
if(turn == 1)
{
Squirtle.health = Squirtle.health - Pikachu.damage;
turn = 0;
potion1++;
Console.WriteLine("Pikachu atacks!");
Console.WriteLine("Squirtle has only " + Squirtle.health + " PV!");
if(potion1 == 5)
{
potion1 = 0;
Squirtle.MoreDamage(Squirtle.damage);
Console.WriteLine("Squirtle damage now it's " + Squirtle.damage);
}
}
else
{
Pikachu.health = Pikachu.health - Squirtle.damage;
turn = 1;
Console.WriteLine("Squirtle atacks!");
Console.WriteLine("Pikachu has only " + Pikachu.health + " PV!");
}
}
if(Pikachu.health > 0)
{
Console.WriteLine("Pikachu wins!");
}
else if(Squirtle.health > 0)
{
Console.WriteLine("Squirtle wins!");
}
}
}
}
口袋妖怪.cs
class Pokemon
{
//Declarando la vida y el ataque
public int health;
public int damage;
//Creando metodo para aumentar el ataque
public void MoreDamage(powerup)
{
powerup= powerup+ 5;
}
}
我尝试做其他事情,比如更改函数的代码,但所有尝试都有相同的结果:damage
没有启动。
解决方案
该MoreDamage()
方法只是修改powerup
参数。您需要改为编辑Pokemon
'damage
属性。
改变这个:
public void MoreDamage(powerup)
{
powerup= powerup+ 5;
}
对此:
public void MoreDamage(int powerup)
{
damage += powerup;
}
然后,将您的调用更改MoreDamage()
为传递您希望通过以下方式增加口袋妖怪伤害的值:
Squirtle.MoreDamage(5);
推荐阅读
- javascript - 如何向 window.addEventListener 添加时间
- ionic-framework - 离子组件在框架中不起作用
- java - 使用 apache poi 循环数组数据
- c++ - 如何检查位枚举中是否存在值?
- javascript - 如何在 D3 饼图中动态放置标签
- visual-c++ - msft c 未解决的外部绑定以在 win32 控制台应用程序中使用 dll 函数
- xamarin.forms - 如何在默认选择的母版页中显示侧边菜单而不点击 xamarin 表单中的母版页项目?
- c# - 当我们通过 id 获取记录时使用 Linq 查询如何将该值分配给另一列?
- php - 如何在不硬编码我的 mysqli 查询的情况下更新我的表单
- javascript - classList.add() 不会在单击事件中立即激活