Files
gmtk-2024/Assets/Scripts/GameManager.cs
2024-08-18 18:11:05 +02:00

93 lines
2.0 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;
public enum Resource
{
ROCK,
SAND,
CLAY,
BRICK,
TILE,
GLASS,
HOUSE,
WORKER,
TOTAL_WORKER
}
public class GameManager : MonoBehaviour
{
private int currentView = 0;
private Dictionary<Resource, int> resources = new Dictionary<Resource, int>()
{
{ Resource.ROCK, 0 },
{ Resource.SAND, 0 },
{ Resource.CLAY, 0 },
{ Resource.BRICK, 0 },
{ Resource.TILE, 0 },
{ Resource.GLASS, 0 },
{ Resource.HOUSE, 1 },
{ Resource.WORKER, 0 },
{ Resource.TOTAL_WORKER, 0 },
};
public TMPro.TMP_Text debugText;
[SerializeField]
GameObject mainViewBtn, mapViewBtn;
[SerializeField]
private Transform mainCameraPos, worldMapCameraPos;
// Start is called before the first frame update
void Start()
{
Camera.main.transform.position = mainCameraPos.position;
}
// Update is called once per frame
void Update()
{
debugText.text = "";
foreach (var item in resources)
{
debugText.text += item.ToString();
}
}
public void AddResource(Resource res, int amt)
{
resources[res] += amt;
}
public void RemoveResource(Resource res, int amt)
{
resources[res] -= amt;
}
public int GetResourceCount(Resource res)
{
return resources[res];
}
public void SetView(int view)
{
switch (view)
{
case 0: //Main view
Camera.main.transform.position = mainCameraPos.position;
mainViewBtn.SetActive(true);
mapViewBtn.SetActive(false);
break;
case 1: //Map View
Camera.main.transform.position = worldMapCameraPos.position;
mainViewBtn.SetActive(false);
mapViewBtn.SetActive(true);
break;
default:
break;
}
}
}