このディクショナリを使用して、ゲーム内のいくつかのリソースを追跡する小さな c# ブラウザ ゲームに取り組んでいます。
public Dictionary <String, int> resource = new Dictionary<string,int>();
その中でも、目盛りごとに変化する「金」。
protected void timerMinute_Tick(object sender, EventArgs e)
{
resource["gold"] += (resProduction["gold"] - resConsumption["gold"])
}
現在、消費が生産よりも多い場合、数は減少します。リソースがマイナスになるのを否定したい。私はティックごとにこれを行うことができることを知っています:
if (resource["gold"] < 0)
{
resource["gold"] = 0;
}
ただし、追跡するリソースは他にもたくさんあるので、それぞれについて前述のコードを書くことはできましたが、誰かが辞書リソースのすべての値をチェックし、マイナスをゼロにする賢い方法を持っているかどうか疑問に思いました.
編集: ここの問題に対するすべての素晴らしい提案をありがとう! C# の初心者として、私はすべてに精通しているわけではありません ^^