Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 制作支付系统(游戏)(解决方案)_C#_Winforms_If Statement_Int - Fatal编程技术网

C# 制作支付系统(游戏)(解决方案)

C# 制作支付系统(游戏)(解决方案),c#,winforms,if-statement,int,C#,Winforms,If Statement,Int,我正在尝试做一个简单的“空闲”游戏,在这个游戏中,你点击“构建”,你就可以得到现金,当你有足够的现金时,你可以购买升级,比如自动构建,或者现金发生器 我需要它取现金的整数intcash=0并检查它是否有正确的金额,我正在计算每台发电机的金额为[Generators x 15=pay],但是要免费购买第一台发电机,因为[Generators[0]x 15=0],即0乘以任何东西都将始终等于0,如果(现金=15) { money.Text=现金; 锤子+=1; 现金-=15; } 否则,如果(现金=

我正在尝试做一个简单的“空闲”游戏,在这个游戏中,你点击“构建”,你就可以得到现金,当你有足够的现金时,你可以购买升级,比如自动构建,或者现金发生器


我需要它取现金的整数
intcash=0并检查它是否有正确的金额,我正在计算每台发电机的金额为[Generators x 15=pay],但是要免费购买第一台发电机,因为[Generators[0]x 15=0],即0乘以任何东西都将始终等于0,如果(现金
int pay=Hammers*15,我如何使它如此

在一款名为cookie clicker的流行空闲游戏中,有“游标”可以通过计时器自动生成货币,但它们需要确保“游标”的初始数量为0,我在游戏中也有相同的东西,但它被称为“锤子”,所以,这里是解决方案

int pay = hammers * 15 + 15;
if (hammers == 0)
{
    if (cash >= 15)
    {
        money.Text = cash; 
        hammers += 1;
        cash -= 15;
    }
    else if (cash <= 15)
    {
        notifyIcon1.BalloonTipText = "ERROR: You do not have enough cash to buy this!";
        notifyIcon1.ShowBalloonTip(1000);
     }
 }
 else if (Hammers >= 1)
 {
     if (cash < pay)
     {
         notifyIcon1.BalloonTipText = "Error: You do not have enough cash to buy this!"; notifyIcon1.ShowBalloonTip(1000);
     }
     else if (cash >= pay)
     {
         money.Text = cash;
         hammers += 1;
         cash -= pay;
     }
  }
int pay=hammers*15+15;
如果(锤=0)
{
如果(现金>=15)
{
money.Text=现金;
锤子+=1;
现金-=15;
}
否则,如果(现金=1)
{
如果(现金<支付)
{
notifyIcon1.balloodtiptext=“错误:您没有足够的现金购买此商品!”;notifyIcon1.showBalloodTip(1000);
}
否则,如果(现金>=支付)
{
money.Text=现金;
锤子+=1;
现金-=工资;
}
}

享受吧!

如果
hammers=0
那么
pay=15
,那么代码的
else
部分仍然有效。另外,内部
如果else
块应该只使用
else
,而不是
else If
@MichałTurczyn我这样做的效果很好,所以我猜它只是偏好,不会影响游戏。它的工作原理:)我毫不怀疑,这只是为了简化代码:)@Sinatr请告诉我这是如何基于观点的,我有一个问题,我解决了,我决定与其他人分享,请为我解释。我个人投票认为“太广泛”,仅通过阅读标题。不幸的是,我不清楚您到底在解决什么问题,我不妨投“不清楚”一票:“我在开始时将他们购买的物品的整数设置为0”-什么
int
?“我需要确保他们有足够的钱来支付”-这只是一个条件,又称
if
。即使通过阅读答案,我也无法理解问题和问题的原因。顺便说一句,如果你能正确提问,你可能会得到其他人更好的解决方案。@Sinatr首先,我不需要其他解决方案,这是可行的,如果我提出自己的问题,为什么我需要其他人的解决方案n?(创造解决方案的自豪感是一种平静的愉悦感)至于这个问题,我会澄清它,因为你知道它最初是一个问题,回答了问题本身,但由于我的评论,我将它拆分,我将再次编辑这个问题以澄清它。