PotionGui
This commit is contained in:
@@ -13,7 +13,7 @@ GameObject:
|
|||||||
- component: {fileID: 535055519960375857}
|
- component: {fileID: 535055519960375857}
|
||||||
- component: {fileID: 2492104367656422644}
|
- component: {fileID: 2492104367656422644}
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Text (TMP)
|
m_Name: HealthBig
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
@@ -35,7 +35,7 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
m_AnchoredPosition: {x: 100, y: 0}
|
m_AnchoredPosition: {x: 150, y: 0}
|
||||||
m_SizeDelta: {x: 200, y: 50}
|
m_SizeDelta: {x: 200, y: 50}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!222 &3729392411308814688
|
--- !u!222 &3729392411308814688
|
||||||
@@ -297,7 +297,7 @@ GameObject:
|
|||||||
- component: {fileID: 4795552151069639100}
|
- component: {fileID: 4795552151069639100}
|
||||||
- component: {fileID: 4576974581871443905}
|
- component: {fileID: 4576974581871443905}
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Text (TMP)
|
m_Name: HealthBig
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
@@ -319,7 +319,7 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
m_AnchoredPosition: {x: 100, y: 0}
|
m_AnchoredPosition: {x: 150, y: 0}
|
||||||
m_SizeDelta: {x: 200, y: 50}
|
m_SizeDelta: {x: 200, y: 50}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!222 &5692096231889078255
|
--- !u!222 &5692096231889078255
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ public class RoomHandler : MonoBehaviour
|
|||||||
enemyPrefabsLocal.RemoveAt(0);
|
enemyPrefabsLocal.RemoveAt(0);
|
||||||
|
|
||||||
// Select a spawn point with round-robin
|
// Select a spawn point with round-robin
|
||||||
|
Debug.Log("Ammount of spawn points: " + spawnPoints.Count);
|
||||||
GameObject spawnPoint = spawnPoints[i % spawnPoints.Count];
|
GameObject spawnPoint = spawnPoints[i % spawnPoints.Count];
|
||||||
|
|
||||||
Instantiate(enemyPrefab, spawnPoint.transform.position + new Vector3(0, 1, 0), Quaternion.identity);
|
Instantiate(enemyPrefab, spawnPoint.transform.position + new Vector3(0, 1, 0), Quaternion.identity);
|
||||||
|
|||||||
@@ -1,12 +1,15 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using UnityEditor.SceneManagement;
|
||||||
|
using static PotionHandler;
|
||||||
|
|
||||||
public class PlayerSkillTree
|
public class PlayerSkillTree
|
||||||
{
|
{
|
||||||
|
|
||||||
private static PlayerSkillTree _instance;
|
private static PlayerSkillTree _instance;
|
||||||
private PotionHandler potionHandler;
|
private Dictionary<PotionHandler.PotionType, PotionHandler> potionHandlers = new Dictionary<PotionHandler.PotionType, PotionHandler>();
|
||||||
|
|
||||||
public static PlayerSkillTree Instance
|
public static PlayerSkillTree Instance
|
||||||
{
|
{
|
||||||
@@ -38,14 +41,29 @@ public class PlayerSkillTree
|
|||||||
public PlayerSkillTree()
|
public PlayerSkillTree()
|
||||||
{
|
{
|
||||||
playerSkills = new List<Skills>();
|
playerSkills = new List<Skills>();
|
||||||
potionHandler = new PotionHandler();
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegisterPotionHandler(PotionType type, PotionHandler handler)
|
||||||
|
{
|
||||||
|
if (!potionHandlers.ContainsKey(type))
|
||||||
|
{
|
||||||
|
potionHandlers.Add(type, handler);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
potionHandlers[type] = handler;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void UnlockSkill(Skills skill, PotionHandler.PotionType potionType)
|
public void UnlockSkill(Skills skill, PotionHandler.PotionType potionType)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(skill == Skills.Potion){
|
if(skill == Skills.Potion){
|
||||||
potionHandler.AddPotion(potionType);
|
if (potionHandlers.TryGetValue(potionType, out PotionHandler handler))
|
||||||
|
{
|
||||||
|
handler.AddPotion(potionType);
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,8 +74,12 @@ public class PlayerSkillTree
|
|||||||
|
|
||||||
public bool TryUsePotion(PotionHandler.PotionType potionType)
|
public bool TryUsePotion(PotionHandler.PotionType potionType)
|
||||||
{
|
{
|
||||||
if(potionHandler.IsEmpty(potionType)) return false;
|
if (potionHandlers.TryGetValue(potionType, out PotionHandler handler))
|
||||||
return potionHandler.UsePotion(potionType);
|
{
|
||||||
|
if (handler.IsEmpty(potionType)) return false;
|
||||||
|
return handler.UsePotion(potionType);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ public class PotionHandler:MonoBehaviour
|
|||||||
// Start is called once before the first execution of Update after the MonoBehaviour is created
|
// Start is called once before the first execution of Update after the MonoBehaviour is created
|
||||||
|
|
||||||
private Dictionary<PotionType, int> potions = new Dictionary<PotionType, int>();
|
private Dictionary<PotionType, int> potions = new Dictionary<PotionType, int>();
|
||||||
[SerializeField] private TextMeshProUGUI textMeshProUGUI;
|
[SerializeField] private TMP_Text textMeshProUGUI;
|
||||||
[SerializeField] private PotionType potionType;
|
[SerializeField] private PotionType potionType;
|
||||||
|
|
||||||
public enum PotionType
|
public enum PotionType
|
||||||
@@ -18,34 +18,40 @@ public class PotionHandler:MonoBehaviour
|
|||||||
None
|
None
|
||||||
}
|
}
|
||||||
|
|
||||||
public PotionHandler()
|
private void Awake()
|
||||||
{
|
{
|
||||||
foreach (PotionType type in System.Enum.GetValues(typeof(PotionType)))
|
foreach (PotionType type in System.Enum.GetValues(typeof(PotionType)))
|
||||||
{
|
{
|
||||||
potions.Add(type, 0);
|
potions.Add(type, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
//textMeshProUGUI.text = potions[potionType].ToString();
|
textMeshProUGUI.text = potions[potionType].ToString();
|
||||||
|
|
||||||
|
// Register this handler with the PlayerSkillTree
|
||||||
|
PlayerSkillTree.Instance.RegisterPotionHandler(potionType, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void AddPotion(PotionType type, int amount = 1)
|
public void AddPotion(PotionType type, int amount = 1)
|
||||||
{
|
{
|
||||||
potions[type] += amount;
|
potions[type] += amount;
|
||||||
Debug.Log(potions[type]);
|
|
||||||
|
|
||||||
if(type == potionType)
|
if(type == potionType)
|
||||||
{
|
{
|
||||||
textMeshProUGUI.text= potions[type].ToString();
|
textMeshProUGUI.text= potions[type].ToString();
|
||||||
}
|
}
|
||||||
|
|
||||||
//Debug.Log("Text is: " + textMeshProUGUI.text);
|
Debug.Log("Potion text is: " + textMeshProUGUI.text);
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool UsePotion(PotionType type, int amount = 1)
|
public bool UsePotion(PotionType type, int amount = 1)
|
||||||
{
|
{
|
||||||
potions[type] -= amount;
|
potions[type] -= amount;
|
||||||
|
|
||||||
|
if (type == potionType)
|
||||||
|
{
|
||||||
|
textMeshProUGUI.text = potions[type].ToString();
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user