Hello, I’m very new to programming and scripting and i got some problem with my Script.
I wanted ot write an Upgrade script for my clicker game. And “The name … does not exist in the current context” appears.
Here’s the script:
using System.Runtime.InteropServices;
using System.Threading;
using UnityEngine;
using UnityEngine.UI;
public class Upgrades : MonoBehaviour
{
public Text gearText;
public double gears;
public double gearsClickValue;
public Text gearsPerSecText;
public Text ClickUpgradeText;
public Text IdleUpgradeText;
public double gearsPerSecond;
public double ClickUpgradeCost;
public int IdleUpgradeLevel;
public void Start()
{
gearsClickValue = 1;
ClickUpgradeCost = 10;
IdleUpgradeCost = 25;
}
public void Update()
{
gearsPerSecond = IdleUpgradeLevel;
gearText.text = "Gears: " + gears.ToString("F0");
gearsPerSecText.text = gearsPerSecond.ToString("F0") + " gears/s";
ClickUpgradeText.text = "Click Upgrade 1\nCost: " + ClickUpgradeCost.ToString("F0") + " coins\nPower: +1 Click\nLevel: " + ClickUpgradeLevel;
IdleUpgradeText.text = "Production Upgrade 1\nCost: " + IdleUpgradeCost.ToString("F0") + " gears\npower: +1 gears/s\nLevel: " + IdleUpgradeLevel;
gears += gearsPerSecond * Timeout.deltaTime;
}
public void Click()
{
gears += gearsClickValue;
}
public void BuyClickUpgrade()
{
if (gears >= ClickUpgradeCost)
{
ClickUpgradeLevel++;
gears -= ClickUpgradeCost;
ClickUpgradeCost += 1.07;
gearsClickValue++;
}
}
public void BuyIdleUpgrade()
{
if (gears >= IdleUpgradeCost)
{
IdleUpgradeLevel++;
gears -= IdleUpgradeCost;
productionsUpgrade1Cost *= 1.07;
}
}
}
scene screen