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?(创造解决方案的自豪感是一种平静的愉悦感)至于这个问题,我会澄清它,因为你知道它最初是一个问题,回答了问题本身,但由于我的评论,我将它拆分,我将再次编辑这个问题以澄清它。