From 282095da8dbe229cfbc40cfcaf5923f1604dabbb Mon Sep 17 00:00:00 2001
From: Ny Bruker <robinhs@stud.ntnu.no>
Date: Thu, 27 Oct 2022 11:10:33 +0200
Subject: [PATCH] Added definable icons to items.

---
 MrBigsock/Assets/Code/Item/Base/IItem.cs      |  6 ++++++
 MrBigsock/Assets/Code/Item/Base/ItemBase.cs   | 21 +++++++++++++++++++
 .../Assets/Code/Item/Items/ItemFourEyes.cs    |  1 +
 .../Code/Item/Items/ItemRunningShoes.cs       |  2 ++
 4 files changed, 30 insertions(+)

diff --git a/MrBigsock/Assets/Code/Item/Base/IItem.cs b/MrBigsock/Assets/Code/Item/Base/IItem.cs
index 720fa112..5782cede 100644
--- a/MrBigsock/Assets/Code/Item/Base/IItem.cs
+++ b/MrBigsock/Assets/Code/Item/Base/IItem.cs
@@ -26,5 +26,11 @@ namespace BigSock.Item {
 		*/
 		ulong Id { get; }
 
+		/*
+			The icon of the item.
+		*/
+		Sprite Icon { get; }
+
+
 	}
 }
\ No newline at end of file
diff --git a/MrBigsock/Assets/Code/Item/Base/ItemBase.cs b/MrBigsock/Assets/Code/Item/Base/ItemBase.cs
index 24ee2654..606f8ef5 100644
--- a/MrBigsock/Assets/Code/Item/Base/ItemBase.cs
+++ b/MrBigsock/Assets/Code/Item/Base/ItemBase.cs
@@ -4,6 +4,8 @@ using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.InputSystem;
 
+using BigSock.Service;
+
 
 namespace BigSock.Item {
 
@@ -26,5 +28,24 @@ namespace BigSock.Item {
 		*/
 		public abstract ulong Id { get; }
 
+		/*
+			The icon of the item.
+		*/
+		public Sprite Icon => SpriteService.SINGLETON.Get(IconName);
+		
+		/*
+			The name of the icon this item uses.
+				Override this to change what icon the item uses.
+		*/
+		public virtual string IconName { get; } = "item/tilesetnice";
+
+
+		public ItemBase() {
+			//Icon = SpriteService.SINGLETON.Get(IconName);
+		}
+
+
+
+
 	}
 }
\ No newline at end of file
diff --git a/MrBigsock/Assets/Code/Item/Items/ItemFourEyes.cs b/MrBigsock/Assets/Code/Item/Items/ItemFourEyes.cs
index d70670cf..e3d62a61 100644
--- a/MrBigsock/Assets/Code/Item/Items/ItemFourEyes.cs
+++ b/MrBigsock/Assets/Code/Item/Items/ItemFourEyes.cs
@@ -14,6 +14,7 @@ namespace BigSock.Item {
 		public override ulong Id => 201;
 		public override string Name => "Four Eyes";
 		public override string Description => "30% chance to deal double dammage. Has a 2 second cooldown.";
+		public override string IconName => "item/chest";
 
 		public static readonly double CHANCE = 0.3;
 		public static readonly TimeSpan COOLDOWN = new TimeSpan(0, 0, 0, 2, 0);
diff --git a/MrBigsock/Assets/Code/Item/Items/ItemRunningShoes.cs b/MrBigsock/Assets/Code/Item/Items/ItemRunningShoes.cs
index bc30d62e..9e5deb1d 100644
--- a/MrBigsock/Assets/Code/Item/Items/ItemRunningShoes.cs
+++ b/MrBigsock/Assets/Code/Item/Items/ItemRunningShoes.cs
@@ -14,6 +14,8 @@ namespace BigSock.Item {
 		public override ulong Id => 101;
 		public override string Name => "Running Shoes";
 		public override string Description => "Increases movement speed by 50%";
+		public override string IconName => "item/breadwithjamx16";
+
 
 		public ItemRunningShoes() {
 			Modifier = new CharacterStats{
-- 
GitLab