diff --git a/src/CraftSharp/CraftSharp.csproj b/src/CraftSharp/CraftSharp.csproj
index c9d13da..6fa0141 100644
--- a/src/CraftSharp/CraftSharp.csproj
+++ b/src/CraftSharp/CraftSharp.csproj
@@ -9,6 +9,19 @@
.
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/CraftSharp/Models/Armor.cs b/src/CraftSharp/Models/Armor.cs
new file mode 100644
index 0000000..506411d
--- /dev/null
+++ b/src/CraftSharp/Models/Armor.cs
@@ -0,0 +1,7 @@
+namespace CraftSharp.Models
+{
+ public abstract class Armor : Item
+ {
+ public int Toughness { get; set; }
+ }
+}
diff --git a/src/CraftSharp/Models/Block.cs b/src/CraftSharp/Models/Block.cs
new file mode 100644
index 0000000..22afcfd
--- /dev/null
+++ b/src/CraftSharp/Models/Block.cs
@@ -0,0 +1,6 @@
+namespace CraftSharp.Models
+{
+ public class Block : Item
+ {
+ }
+}
diff --git a/src/CraftSharp/Models/Boots.cs b/src/CraftSharp/Models/Boots.cs
new file mode 100644
index 0000000..24d1948
--- /dev/null
+++ b/src/CraftSharp/Models/Boots.cs
@@ -0,0 +1,6 @@
+namespace CraftSharp.Models
+{
+ public class Leggings : Armor
+ {
+ }
+}
diff --git a/src/CraftSharp/Models/Chestplate.cs b/src/CraftSharp/Models/Chestplate.cs
new file mode 100644
index 0000000..9ad13e5
--- /dev/null
+++ b/src/CraftSharp/Models/Chestplate.cs
@@ -0,0 +1,6 @@
+namespace CraftSharp.Models
+{
+ public class Chestplate : Armor
+ {
+ }
+}
diff --git a/src/CraftSharp/Models/Helmet.cs b/src/CraftSharp/Models/Helmet.cs
new file mode 100644
index 0000000..1ab1e4d
--- /dev/null
+++ b/src/CraftSharp/Models/Helmet.cs
@@ -0,0 +1,6 @@
+namespace CraftSharp.Models
+{
+ public class Helmet : Armor
+ {
+ }
+}
diff --git a/src/CraftSharp/Models/Item.cs b/src/CraftSharp/Models/Item.cs
new file mode 100644
index 0000000..868610f
--- /dev/null
+++ b/src/CraftSharp/Models/Item.cs
@@ -0,0 +1,10 @@
+namespace CraftSharp.Models
+{
+ public abstract class Item
+ {
+ public int Id { get; set; }
+ public string Name { get; set; }
+ public int StackSize { get; set; }
+ public Rarities Rarity { get; set; }
+ }
+}
diff --git a/src/CraftSharp/Models/Leggings.cs b/src/CraftSharp/Models/Leggings.cs
new file mode 100644
index 0000000..8a1c758
--- /dev/null
+++ b/src/CraftSharp/Models/Leggings.cs
@@ -0,0 +1,6 @@
+namespace CraftSharp.Models
+{
+ public class Boots : Armor
+ {
+ }
+}
diff --git a/src/CraftSharp/Models/Rarities.cs b/src/CraftSharp/Models/Rarities.cs
new file mode 100644
index 0000000..3fb17e1
--- /dev/null
+++ b/src/CraftSharp/Models/Rarities.cs
@@ -0,0 +1,10 @@
+namespace CraftSharp.Models
+{
+ public enum Rarities
+ {
+ Common,
+ Rare,
+ Epic,
+ Legendary
+ }
+}
diff --git a/src/CraftSharp/Models/Tool.cs b/src/CraftSharp/Models/Tool.cs
new file mode 100644
index 0000000..31cd287
--- /dev/null
+++ b/src/CraftSharp/Models/Tool.cs
@@ -0,0 +1,7 @@
+namespace CraftSharp.Models
+{
+ public class Tool : Item
+ {
+ public int Damages { get; set; }
+ }
+}
diff --git a/src/CraftSharp/Models/Trade.cs b/src/CraftSharp/Models/Trade.cs
new file mode 100644
index 0000000..6ca7cef
--- /dev/null
+++ b/src/CraftSharp/Models/Trade.cs
@@ -0,0 +1,10 @@
+namespace CraftSharp.Models
+{
+ public class Trade
+ {
+ public Item GivenItem { get; set; }
+ public int GivenItemQuantity { get; set; }
+ public Item ReceivedItem { get; set; }
+ public int ReceivedItemQuantity { get; set; }
+ }
+}
diff --git a/src/CraftSharp/Pages/Index.razor.cs b/src/CraftSharp/Pages/Index.razor.cs
index 4b50d5e..c350962 100644
--- a/src/CraftSharp/Pages/Index.razor.cs
+++ b/src/CraftSharp/Pages/Index.razor.cs
@@ -1,5 +1,6 @@
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.Localization;
+using CraftSharp.Models;
namespace CraftSharp.Pages
{
@@ -7,5 +8,6 @@ namespace CraftSharp.Pages
{
[Inject]
public IStringLocalizer Localizer { get; set; }
+
}
}
diff --git a/src/CraftSharp/wwwroot/fake-data.json b/src/CraftSharp/wwwroot/fake-data.json
new file mode 100644
index 0000000..30d311b
--- /dev/null
+++ b/src/CraftSharp/wwwroot/fake-data.json
@@ -0,0 +1,469 @@
+{
+ "blocks": [
+ {
+ "id": 1,
+ "name": "Comveyer",
+ "stacksize": 35,
+ "rarity": "rare"
+ },
+ {
+ "id": 2,
+ "name": "Uncorp",
+ "stacksize": 56,
+ "rarity": "legendary"
+ },
+ {
+ "id": 3,
+ "name": "Oatfarm",
+ "stacksize": 27,
+ "rarity": "rare"
+ },
+ {
+ "id": 4,
+ "name": "Isostream",
+ "stacksize": 21,
+ "rarity": "legendary"
+ },
+ {
+ "id": 5,
+ "name": "Deepends",
+ "stacksize": 23,
+ "rarity": "rare"
+ },
+ {
+ "id": 6,
+ "name": "Flumbo",
+ "stacksize": 26,
+ "rarity": "common"
+ },
+ {
+ "id": 7,
+ "name": "Navir",
+ "stacksize": 64,
+ "rarity": "common"
+ },
+ {
+ "id": 8,
+ "name": "Circum",
+ "stacksize": 31,
+ "rarity": "legendary"
+ },
+ {
+ "id": 9,
+ "name": "Virva",
+ "stacksize": 30,
+ "rarity": "epic"
+ },
+ {
+ "id": 10,
+ "name": "Zillanet",
+ "stacksize": 18,
+ "rarity": "common"
+ },
+ {
+ "id": 11,
+ "name": "Ezent",
+ "stacksize": 49,
+ "rarity": "legendary"
+ },
+ {
+ "id": 12,
+ "name": "Pigzart",
+ "stacksize": 48,
+ "rarity": "common"
+ },
+ {
+ "id": 13,
+ "name": "Mantrix",
+ "stacksize": 6,
+ "rarity": "rare"
+ },
+ {
+ "id": 14,
+ "name": "Aquamate",
+ "stacksize": 9,
+ "rarity": "rare"
+ },
+ {
+ "id": 15,
+ "name": "Twiist",
+ "stacksize": 54,
+ "rarity": "legendary"
+ },
+ {
+ "id": 16,
+ "name": "Mazuda",
+ "stacksize": 17,
+ "rarity": "rare"
+ },
+ {
+ "id": 17,
+ "name": "Ecolight",
+ "stacksize": 50,
+ "rarity": "epic"
+ },
+ {
+ "id": 18,
+ "name": "Greeker",
+ "stacksize": 40,
+ "rarity": "rare"
+ },
+ {
+ "id": 19,
+ "name": "Stelaecor",
+ "stacksize": 28,
+ "rarity": "legendary"
+ },
+ {
+ "id": 20,
+ "name": "Deviltoe",
+ "stacksize": 24,
+ "rarity": "epic"
+ },
+ {
+ "id": 21,
+ "name": "Comveyor",
+ "stacksize": 39,
+ "rarity": "legendary"
+ },
+ {
+ "id": 22,
+ "name": "Neptide",
+ "stacksize": 63,
+ "rarity": "common"
+ }
+ ],
+ "tools": [
+ {
+ "id": 1,
+ "name": "Applideck",
+ "stacksize": 10,
+ "rarity": "common",
+ "damages": 3
+ },
+ {
+ "id": 2,
+ "name": "Kenegy",
+ "stacksize": 7,
+ "rarity": "legendary",
+ "damages": 7
+ },
+ {
+ "id": 3,
+ "name": "Pyramis",
+ "stacksize": 47,
+ "rarity": "epic",
+ "damages": 8
+ },
+ {
+ "id": 4,
+ "name": "Xsports",
+ "stacksize": 6,
+ "rarity": "rare",
+ "damages": 7
+ },
+ {
+ "id": 5,
+ "name": "Extragen",
+ "stacksize": 11,
+ "rarity": "common",
+ "damages": 10
+ },
+ {
+ "id": 6,
+ "name": "Recrisys",
+ "stacksize": 40,
+ "rarity": "rare",
+ "damages": 3
+ },
+ {
+ "id": 7,
+ "name": "Martgo",
+ "stacksize": 39,
+ "rarity": "legendary",
+ "damages": 6
+ },
+ {
+ "id": 8,
+ "name": "Lotron",
+ "stacksize": 11,
+ "rarity": "rare",
+ "damages": 9
+ },
+ {
+ "id": 9,
+ "name": "Flum",
+ "stacksize": 14,
+ "rarity": "common",
+ "damages": 4
+ },
+ {
+ "id": 10,
+ "name": "Terrago",
+ "stacksize": 23,
+ "rarity": "common",
+ "damages": 10
+ },
+ {
+ "id": 11,
+ "name": "Stralum",
+ "stacksize": 17,
+ "rarity": "common",
+ "damages": 9
+ },
+ {
+ "id": 12,
+ "name": "Unisure",
+ "stacksize": 4,
+ "rarity": "epic",
+ "damages": 2
+ },
+ {
+ "id": 13,
+ "name": "Xleen",
+ "stacksize": 6,
+ "rarity": "rare",
+ "damages": 1
+ },
+ {
+ "id": 14,
+ "name": "Knowlysis",
+ "stacksize": 4,
+ "rarity": "rare",
+ "damages": 7
+ },
+ {
+ "id": 15,
+ "name": "Exoteric",
+ "stacksize": 56,
+ "rarity": "epic",
+ "damages": 4
+ },
+ {
+ "id": 16,
+ "name": "Elentrix",
+ "stacksize": 43,
+ "rarity": "legendary",
+ "damages": 9
+ },
+ {
+ "id": 17,
+ "name": "Exostream",
+ "stacksize": 2,
+ "rarity": "common",
+ "damages": 10
+ },
+ {
+ "id": 18,
+ "name": "Helixo",
+ "stacksize": 50,
+ "rarity": "epic",
+ "damages": 1
+ },
+ {
+ "id": 19,
+ "name": "Eventage",
+ "stacksize": 31,
+ "rarity": "common",
+ "damages": 10
+ },
+ {
+ "id": 20,
+ "name": "Isosphere",
+ "stacksize": 44,
+ "rarity": "common",
+ "damages": 9
+ },
+ {
+ "id": 21,
+ "name": "Surelogic",
+ "stacksize": 18,
+ "rarity": "epic",
+ "damages": 3
+ },
+ {
+ "id": 22,
+ "name": "Accufarm",
+ "stacksize": 36,
+ "rarity": "common",
+ "damages": 6
+ },
+ {
+ "id": 23,
+ "name": "Recognia",
+ "stacksize": 13,
+ "rarity": "epic",
+ "damages": 4
+ },
+ {
+ "id": 24,
+ "name": "Fibrodyne",
+ "stacksize": 20,
+ "rarity": "rare",
+ "damages": 7
+ },
+ {
+ "id": 25,
+ "name": "Plasmosis",
+ "stacksize": 62,
+ "rarity": "common",
+ "damages": 2
+ },
+ {
+ "id": 26,
+ "name": "Dogtown",
+ "stacksize": 58,
+ "rarity": "common",
+ "damages": 6
+ },
+ {
+ "id": 27,
+ "name": "Edecine",
+ "stacksize": 56,
+ "rarity": "rare",
+ "damages": 3
+ },
+ {
+ "id": 28,
+ "name": "Spacewax",
+ "stacksize": 51,
+ "rarity": "legendary",
+ "damages": 8
+ }
+ ],
+ "armors": [
+ {
+ "id": 1,
+ "name": "Splinx",
+ "stacksize": 59,
+ "rarity": "common",
+ "toughness": 19
+ },
+ {
+ "id": 2,
+ "name": "Digigen",
+ "stacksize": 34,
+ "rarity": "legendary",
+ "toughness": 10
+ },
+ {
+ "id": 3,
+ "name": "Geoform",
+ "stacksize": 33,
+ "rarity": "legendary",
+ "toughness": 13
+ },
+ {
+ "id": 4,
+ "name": "Ovium",
+ "stacksize": 21,
+ "rarity": "legendary",
+ "toughness": 1
+ },
+ {
+ "id": 5,
+ "name": "Slambda",
+ "stacksize": 51,
+ "rarity": "common",
+ "toughness": 8
+ },
+ {
+ "id": 6,
+ "name": "Opticon",
+ "stacksize": 34,
+ "rarity": "rare",
+ "toughness": 18
+ },
+ {
+ "id": 7,
+ "name": "Combogen",
+ "stacksize": 22,
+ "rarity": "rare",
+ "toughness": 2
+ },
+ {
+ "id": 8,
+ "name": "Talae",
+ "stacksize": 38,
+ "rarity": "epic",
+ "toughness": 3
+ },
+ {
+ "id": 9,
+ "name": "Quotezart",
+ "stacksize": 63,
+ "rarity": "common",
+ "toughness": 7
+ },
+ {
+ "id": 10,
+ "name": "Edecine",
+ "stacksize": 54,
+ "rarity": "epic",
+ "toughness": 9
+ },
+ {
+ "id": 11,
+ "name": "Geekwagon",
+ "stacksize": 16,
+ "rarity": "common",
+ "toughness": 17
+ },
+ {
+ "id": 12,
+ "name": "Buzzmaker",
+ "stacksize": 1,
+ "rarity": "epic",
+ "toughness": 1
+ },
+ {
+ "id": 13,
+ "name": "Dreamia",
+ "stacksize": 11,
+ "rarity": "legendary",
+ "toughness": 3
+ },
+ {
+ "id": 14,
+ "name": "Memora",
+ "stacksize": 64,
+ "rarity": "legendary",
+ "toughness": 2
+ },
+ {
+ "id": 15,
+ "name": "Exerta",
+ "stacksize": 10,
+ "rarity": "legendary",
+ "toughness": 13
+ },
+ {
+ "id": 16,
+ "name": "Talkola",
+ "stacksize": 12,
+ "rarity": "rare",
+ "toughness": 10
+ },
+ {
+ "id": 17,
+ "name": "Zosis",
+ "stacksize": 12,
+ "rarity": "legendary",
+ "toughness": 2
+ },
+ {
+ "id": 18,
+ "name": "Aquazure",
+ "stacksize": 40,
+ "rarity": "rare",
+ "toughness": 6
+ },
+ {
+ "id": 19,
+ "name": "Crustatia",
+ "stacksize": 25,
+ "rarity": "common",
+ "toughness": 16
+ }
+ ]
+}
\ No newline at end of file