From 2490ad5d31fe2ac778ff9303776f0e91f47a2862 Mon Sep 17 00:00:00 2001 From: uzvkl Date: Tue, 11 Jun 2019 22:46:57 +0200 Subject: Organize groups to seperate connention management form gamelogic --- .gitignore | 3 + DSACore/Controllers/CommandsController.cs | 1 + DSACore/Controllers/LobbyController.cs | 3 +- DSACore/DSACore.csproj | 5 +- DSACore/Hubs/Login.cs | 18 +- DSACore/Models/Network/Group.cs | 43 +++ DSACore/Models/Network/Token.cs | 21 ++ DSACore/Models/Network/User.cs | 9 + DSACore/Properties/DSACore-Audio-Sound.json | 7 - .../Properties/DSACore-Auxiliary-CommandInfo.json | 101 ------- .../DSACore-DSA_Game-Characters-Character.json | 290 --------------------- .../Properties/DSALib-Auxiliary-CommandInfo.json | 101 +++++++ .../DSALib-DSA_Game-Characters-Character.json | 290 +++++++++++++++++++++ DSALib/Auxiliary/WeaponImporter.cs | 2 +- DSALib/FireBase/Database.cs | 46 ++-- DSALib/Models/Database/DSA/Advantage.cs | 2 +- DSALib/Models/Database/DSA/CharSpell.cs | 2 +- DSALib/Models/Database/DSA/DatabaseChar.cs | 6 +- DSALib/Models/Database/DSA/Field.cs | 2 +- DSALib/Models/Database/DSA/GeneralSpell.cs | 2 +- DSALib/Models/Database/DSA/GroupChar.cs | 2 +- DSALib/Models/Database/DSA/Inventory.cs | 2 +- DSALib/Models/Database/DSA/Talent.cs | 2 +- DSALib/Models/Database/DSA/Weapon.cs | 2 +- DSALib/Models/Database/DSA/WeaponTalent.cs | 2 +- DSALib/Models/Database/Groups/DSAGroup.cs | 4 +- DSALib/Models/Network/Group.cs | 43 --- DSALib/Models/Network/Token.cs | 21 -- DSALib/Models/Network/User.cs | 9 - .../Properties-DSACore-Auxiliary-CommandInfo.json | 101 +++++++ ...ties-DSACore-DSA_Game-Characters-Character.json | 290 +++++++++++++++++++++ DSALib/PropertiesDSACore-Audio-Sound.json | 7 - .../PropertiesDSACore-Auxiliary-CommandInfo.json | 101 ------- ...rtiesDSACore-DSA_Game-Characters-Character.json | 290 --------------------- DiscoBot.sln | 11 +- 35 files changed, 920 insertions(+), 921 deletions(-) create mode 100644 DSACore/Models/Network/Group.cs create mode 100644 DSACore/Models/Network/Token.cs create mode 100644 DSACore/Models/Network/User.cs delete mode 100644 DSACore/Properties/DSACore-Audio-Sound.json delete mode 100644 DSACore/Properties/DSACore-Auxiliary-CommandInfo.json delete mode 100644 DSACore/Properties/DSACore-DSA_Game-Characters-Character.json create mode 100644 DSACore/Properties/DSALib-Auxiliary-CommandInfo.json create mode 100644 DSACore/Properties/DSALib-DSA_Game-Characters-Character.json delete mode 100644 DSALib/Models/Network/Group.cs delete mode 100644 DSALib/Models/Network/Token.cs delete mode 100644 DSALib/Models/Network/User.cs create mode 100644 DSALib/Properties-DSACore-Auxiliary-CommandInfo.json create mode 100644 DSALib/Properties-DSACore-DSA_Game-Characters-Character.json delete mode 100644 DSALib/PropertiesDSACore-Audio-Sound.json delete mode 100644 DSALib/PropertiesDSACore-Auxiliary-CommandInfo.json delete mode 100644 DSALib/PropertiesDSACore-DSA_Game-Characters-Character.json diff --git a/.gitignore b/.gitignore index 90ff30a..fec9b91 100644 --- a/.gitignore +++ b/.gitignore @@ -269,3 +269,6 @@ Cargo.lock # dont save that target (bad boy) /game_server/target +/DSACore/PropertiesDSALib-Auxiliary-CommandInfo.json +/DSACore/PropertiesDSALib-DSA_Game-Characters-Character.json +/DSACore/PropertiesNewtonsoft-Json-Linq-JProperty.json diff --git a/DSACore/Controllers/CommandsController.cs b/DSACore/Controllers/CommandsController.cs index 2ab9c96..b6e0be2 100644 --- a/DSACore/Controllers/CommandsController.cs +++ b/DSACore/Controllers/CommandsController.cs @@ -1,4 +1,5 @@ using System; +using DSACore.Models.Network; using DSALib.Commands; using DSALib.Models.Network; using Microsoft.AspNetCore.Mvc; diff --git a/DSACore/Controllers/LobbyController.cs b/DSACore/Controllers/LobbyController.cs index c861eac..7890b4f 100644 --- a/DSACore/Controllers/LobbyController.cs +++ b/DSACore/Controllers/LobbyController.cs @@ -1,6 +1,7 @@ using System; -using DSALib.Models.Network; +using DSACore.Models.Network; using DSALib.Commands; +using DSALib.Models.Network; using Microsoft.AspNetCore.Mvc; namespace DSACore.Controllers diff --git a/DSACore/DSACore.csproj b/DSACore/DSACore.csproj index d730ea4..f7def31 100644 --- a/DSACore/DSACore.csproj +++ b/DSACore/DSACore.csproj @@ -6,7 +6,10 @@ - + + + + diff --git a/DSACore/Hubs/Login.cs b/DSACore/Hubs/Login.cs index ebe0bae..f08c24a 100644 --- a/DSACore/Hubs/Login.cs +++ b/DSACore/Hubs/Login.cs @@ -4,12 +4,13 @@ using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; +using DSACore.Models.Network; using DSALib.Commands; using DSALib.DSA_Game.Characters; -using DSALib.Models.Network; using DSALib.FireBase; +using DSALib.Models.Network; using Microsoft.AspNetCore.SignalR; -using Group = DSALib.Models.Network.Group; +using Group = DSACore.Models.Network.Group; namespace DSACore.Hubs { @@ -19,9 +20,8 @@ namespace DSACore.Hubs private const string ReceiveMethod = "ReceiveMessage"; //receiveMethod; - static Users() - { - DsaGroups = Database.GetGroups().Result; + static Users() { + DsaGroups = Database.GetGroups().Result.Select(x=>new Group(x.Item1, x.Item2)).ToList(); DsaGroups.Add(new Group("login", "")); DsaGroups.Add(new Group("online", "")); //AddGroups(); @@ -103,11 +103,9 @@ namespace DSACore.Hubs .First(z => z.ConnectionId.Equals(id)); } - public async Task GetGroups() - { + public async Task GetGroups() { var test = await Database.GetGroups(); - - foreach (var group in test) + foreach (var group in test.Select(x => new Group(x.Item1, x.Item2)).ToList()) if (!DsaGroups.Exists(x => x.Name.Equals(group.Name))) DsaGroups.Add(group); @@ -128,7 +126,7 @@ namespace DSACore.Hubs { var group = getGroup(Context.ConnectionId); - await Database.AddChar(new Character(new MemoryStream(Encoding.UTF8.GetBytes(xml))), group); + await Database.AddChar(new Character(new MemoryStream(Encoding.UTF8.GetBytes(xml))), group.Name); //throw new NotImplementedException("add database call to add groups"); } diff --git a/DSACore/Models/Network/Group.cs b/DSACore/Models/Network/Group.cs new file mode 100644 index 0000000..efe12ee --- /dev/null +++ b/DSACore/Models/Network/Group.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; + +namespace DSACore.Models.Network +{ + public class Group + { + public Group(string name, string password) + { + Name = name; + Password = password; + } + + public Group(string name, int userOnline) + { + Name = name ?? throw new ArgumentNullException(nameof(name)); + } + + public string Name { get; set; } + public string Password { get; set; } + public List Users { get; set; } = new List(); + + public int UserCount => Users.Count; + + public SendGroup SendGroup() + { + return new SendGroup(Name, UserCount); + } + } + + public class SendGroup + { + public SendGroup(string name, int userCount) + { + Name = name ?? throw new ArgumentNullException(nameof(name)); + UserCount = userCount; + } + + public string Name { get; set; } + + public int UserCount { get; set; } + } +} \ No newline at end of file diff --git a/DSACore/Models/Network/Token.cs b/DSACore/Models/Network/Token.cs new file mode 100644 index 0000000..451cafc --- /dev/null +++ b/DSACore/Models/Network/Token.cs @@ -0,0 +1,21 @@ +using System; + +namespace DSACore.Models.Network +{ + public class Token + { + private readonly DateTime creation = DateTime.Now; + + public Token(string group) + { + Group = group; + } + + public string Group { get; set; } + + public bool IsValid() + { + return DateTime.Now - creation < TimeSpan.FromMinutes(1); + } + } +} \ No newline at end of file diff --git a/DSACore/Models/Network/User.cs b/DSACore/Models/Network/User.cs new file mode 100644 index 0000000..8b8008c --- /dev/null +++ b/DSACore/Models/Network/User.cs @@ -0,0 +1,9 @@ +namespace DSACore.Models.Network +{ + public class User + { + public string Name { get; set; } + public string ConnectionId { get; set; } + public int Char { get; set; } + } +} \ No newline at end of file diff --git a/DSACore/Properties/DSACore-Audio-Sound.json b/DSACore/Properties/DSACore-Audio-Sound.json deleted file mode 100644 index 87a0e6b..0000000 --- a/DSACore/Properties/DSACore-Audio-Sound.json +++ /dev/null @@ -1,7 +0,0 @@ -[ - { - "Name": "Test", - "Url": "http", - "Volume": 100 - } -] \ No newline at end of file diff --git a/DSACore/Properties/DSACore-Auxiliary-CommandInfo.json b/DSACore/Properties/DSACore-Auxiliary-CommandInfo.json deleted file mode 100644 index b9941f2..0000000 --- a/DSACore/Properties/DSACore-Auxiliary-CommandInfo.json +++ /dev/null @@ -1,101 +0,0 @@ -[ - { - "Name": "ich bin", - "Scope": "All", - "Brief": "Setzt den gespielten Charakter fest", - "Description": [ - "Mit \"!Ich bin\" kann der gespielte Charakter definiert, bzw. gewechselt werden.\n", - " Die Charaktere müssen als *.xml Dateien hinterlegt sein.\n\n", - " !ich Zeigt an welcher Charakter zur Zeit gespielt wird\n", - " !ich bin Zalibius Wechsel zum Helden Zalibius\n", - " !ich Rhoktar Orkische Variante von !ich bin.\n", - " Wechselt zu Rhoktar.\n\n", - " !list chars Zeigt die Liste verfügbarer Charaktere.\n", - " \n" - ] - }, - { - "Name": "List", - "Scope": "All", - "Brief": "Anzeige vonSpielrelevanten Listen", - "Description": [ - "Mit \"!list\" lassen sich spielrelevante Listen ausgeben. Die Angezeigte Liste wird nach einiger Zeit wieder gelöscht.\n", - "\n", - " !list chars Liste aller verfügbaren Helden (eingelesen per *.xml)\n", - " und NSCs.\n", - " (Mit \"!ich bin\" kann der Held ausgewählt werden.)\n", - " !list commands Liste aller verwendbaren Bot-Kommandos.\n", - " !list sounds Liste der Soundeffekte." - ] - }, - { - "Name": "Held", - "Scope": "All", - "Brief": "Anzeige von Heldenwerten", - "Description": [ - "Mit \"!Held\" lassen sich Heldenwerte ausgeben. Mehrere Werte können gleichzeitig angefordert werde. \"!Held LE Waffen\" liefert so z.B. Informationen zur Lebensenergie und den Kampfwerten.\n Bis auf wenige Ausnahmen wird die Angezeigte Liste nach einiger Zeit wieder gelöscht.\n", - "\n", - " !Held Zeigt den Heldenbrief an.\n", - " (Diese Liste wird nicht automatisch gelöscht)\n", - " !Held Eigenschaften Zeigt die Eigenschaften MU/KL/CH/IN/KK/GE/FF/KO.\n", - " !Held e Kurzform von \"!Held Eigenschaften\".\n", - " !Held LE Zeigt LE an.\n", - " !Held AE Zeigt AE an.\n", - " !Held stats Zeigt Eigenschaften und zusätzlich SO/LE/AE.\n", - " !Held Kampfwerte Zeigt AT/PA für aktivierte Waffentalente.\n", - " !Held Waffe/!list w Kurzformen von \"!Held Kampfwerte\".\n", - " !Held Vorteile Zeigt Vor- und Nachteile an.\n", - " !Held v Kurzform von \"!Held Vorteile\".\n", - " !Held Talente Zeigt die Liste aller aktivierten Talente, deren TaW,\n", - " sowie die Probe.\n", - " !Held t Kurzform von \"!Held Talente\".\n", - " !Held Zauber Zeigt die Liste aller aktivierten Zauber, deren ZaW,\n", - " sowie die Probe.\n", - " !Held z Kurzform von \"!Held Zauber\".\n" - ] - }, - { - "Name": "LE", - "Scope": "All", - "Brief": "Ändert dein Leben - im wahrsten Sinne des Wortes", - "Description": [ - "Mit !LE zeigt man die Lebensenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", - " !LE Zeigt Lebensenergie an\n", - " !LE 30 Setzt LE auf 30\n", - " !LE +5 Erhöht LE um 5 (bis zum Maximum)\n", - " !LE ++5 Erhöht LE um 5 (ignoriert Maximum)\n", - " !LE -5 Verringert LE um 5\n \n" - ] - }, - { - "Name": "AE", - "Scope": "All", - "Brief": "Ändert Astralenergie", - "Description": [ - "Mit !AE (oder !Asp) zeigt man die Astralenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", - " !AE Zeigt Astralenergie an\n", - " !AE 30 Setzt Asp auf 30\n", - " !AE +5 Erhöht Asp um 5 (bis zum Maximum)\n", - " !AE ++5 Erhöht Asp um 5 (ignoriert Maximum)\n", - " !AE -5 Verringert Asp um 5 (Minimum 0)\n" - ] - }, - { - "Name": "Gm", - "Scope": "Meister", - "Brief": "Kontrolliere andere Charaktere", - "Description": [ - "Mit !GM fürhrt man commands als eine andere Person aus.", - " !GM [charaktername] [command] [commandattribut] [mofifier]", - " Unterstützte [commands]'s:", - " !GM [name] LE", - " !GM [name] AE", - " !GM [name] Talent", - " !GM [name] Fernkampf", - " !GM [name] Eigenschaft", - " !GM [name] Zauber", - " !GM [name] Angriff", - " !GM [name] Parade" - ] - } -] \ No newline at end of file diff --git a/DSACore/Properties/DSACore-DSA_Game-Characters-Character.json b/DSACore/Properties/DSACore-DSA_Game-Characters-Character.json deleted file mode 100644 index fd387f5..0000000 --- a/DSACore/Properties/DSACore-DSA_Game-Characters-Character.json +++ /dev/null @@ -1,290 +0,0 @@ -[ - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 30, - "Lebenspunkte_Aktuell": 30, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 20, - "Astralpunkte_Aktuell": 20, - "Name": "Felis Exodus Schattenwald" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 29, - "Lebenspunkte_Aktuell": 29, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Gardist" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 31, - "Lebenspunkte_Aktuell": 31, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Hartmut Reiher" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 21, - "Lebenspunkte_Aktuell": 21, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 35, - "Astralpunkte_Aktuell": 35, - "Name": "Helga vom Drachenei, Tausendsasserin" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 25, - "Lebenspunkte_Aktuell": 25, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Krenko" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 39, - "Lebenspunkte_Aktuell": 39, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Ledur Torfinson" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 26, - "Lebenspunkte_Aktuell": 26, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 13, - "Astralpunkte_Aktuell": 13, - "Name": "Morla" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 28, - "Lebenspunkte_Aktuell": 28, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 40, - "Astralpunkte_Aktuell": 40, - "Name": "Numeri Illuminus" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 39, - "Lebenspunkte_Aktuell": 39, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 16, - "Astralpunkte_Aktuell": 16, - "Name": "Potus" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 18, - "Lebenspunkte_Aktuell": 18, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 13, - "Astralpunkte_Aktuell": 13, - "Name": "Pump aus der Gosse" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 34, - "Lebenspunkte_Aktuell": 34, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 17, - "Astralpunkte_Aktuell": 17, - "Name": "Rhoktar4" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 28, - "Lebenspunkte_Aktuell": 28, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 43, - "Astralpunkte_Aktuell": 43, - "Name": "Volant" - } -] \ No newline at end of file diff --git a/DSACore/Properties/DSALib-Auxiliary-CommandInfo.json b/DSACore/Properties/DSALib-Auxiliary-CommandInfo.json new file mode 100644 index 0000000..b9941f2 --- /dev/null +++ b/DSACore/Properties/DSALib-Auxiliary-CommandInfo.json @@ -0,0 +1,101 @@ +[ + { + "Name": "ich bin", + "Scope": "All", + "Brief": "Setzt den gespielten Charakter fest", + "Description": [ + "Mit \"!Ich bin\" kann der gespielte Charakter definiert, bzw. gewechselt werden.\n", + " Die Charaktere müssen als *.xml Dateien hinterlegt sein.\n\n", + " !ich Zeigt an welcher Charakter zur Zeit gespielt wird\n", + " !ich bin Zalibius Wechsel zum Helden Zalibius\n", + " !ich Rhoktar Orkische Variante von !ich bin.\n", + " Wechselt zu Rhoktar.\n\n", + " !list chars Zeigt die Liste verfügbarer Charaktere.\n", + " \n" + ] + }, + { + "Name": "List", + "Scope": "All", + "Brief": "Anzeige vonSpielrelevanten Listen", + "Description": [ + "Mit \"!list\" lassen sich spielrelevante Listen ausgeben. Die Angezeigte Liste wird nach einiger Zeit wieder gelöscht.\n", + "\n", + " !list chars Liste aller verfügbaren Helden (eingelesen per *.xml)\n", + " und NSCs.\n", + " (Mit \"!ich bin\" kann der Held ausgewählt werden.)\n", + " !list commands Liste aller verwendbaren Bot-Kommandos.\n", + " !list sounds Liste der Soundeffekte." + ] + }, + { + "Name": "Held", + "Scope": "All", + "Brief": "Anzeige von Heldenwerten", + "Description": [ + "Mit \"!Held\" lassen sich Heldenwerte ausgeben. Mehrere Werte können gleichzeitig angefordert werde. \"!Held LE Waffen\" liefert so z.B. Informationen zur Lebensenergie und den Kampfwerten.\n Bis auf wenige Ausnahmen wird die Angezeigte Liste nach einiger Zeit wieder gelöscht.\n", + "\n", + " !Held Zeigt den Heldenbrief an.\n", + " (Diese Liste wird nicht automatisch gelöscht)\n", + " !Held Eigenschaften Zeigt die Eigenschaften MU/KL/CH/IN/KK/GE/FF/KO.\n", + " !Held e Kurzform von \"!Held Eigenschaften\".\n", + " !Held LE Zeigt LE an.\n", + " !Held AE Zeigt AE an.\n", + " !Held stats Zeigt Eigenschaften und zusätzlich SO/LE/AE.\n", + " !Held Kampfwerte Zeigt AT/PA für aktivierte Waffentalente.\n", + " !Held Waffe/!list w Kurzformen von \"!Held Kampfwerte\".\n", + " !Held Vorteile Zeigt Vor- und Nachteile an.\n", + " !Held v Kurzform von \"!Held Vorteile\".\n", + " !Held Talente Zeigt die Liste aller aktivierten Talente, deren TaW,\n", + " sowie die Probe.\n", + " !Held t Kurzform von \"!Held Talente\".\n", + " !Held Zauber Zeigt die Liste aller aktivierten Zauber, deren ZaW,\n", + " sowie die Probe.\n", + " !Held z Kurzform von \"!Held Zauber\".\n" + ] + }, + { + "Name": "LE", + "Scope": "All", + "Brief": "Ändert dein Leben - im wahrsten Sinne des Wortes", + "Description": [ + "Mit !LE zeigt man die Lebensenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", + " !LE Zeigt Lebensenergie an\n", + " !LE 30 Setzt LE auf 30\n", + " !LE +5 Erhöht LE um 5 (bis zum Maximum)\n", + " !LE ++5 Erhöht LE um 5 (ignoriert Maximum)\n", + " !LE -5 Verringert LE um 5\n \n" + ] + }, + { + "Name": "AE", + "Scope": "All", + "Brief": "Ändert Astralenergie", + "Description": [ + "Mit !AE (oder !Asp) zeigt man die Astralenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", + " !AE Zeigt Astralenergie an\n", + " !AE 30 Setzt Asp auf 30\n", + " !AE +5 Erhöht Asp um 5 (bis zum Maximum)\n", + " !AE ++5 Erhöht Asp um 5 (ignoriert Maximum)\n", + " !AE -5 Verringert Asp um 5 (Minimum 0)\n" + ] + }, + { + "Name": "Gm", + "Scope": "Meister", + "Brief": "Kontrolliere andere Charaktere", + "Description": [ + "Mit !GM fürhrt man commands als eine andere Person aus.", + " !GM [charaktername] [command] [commandattribut] [mofifier]", + " Unterstützte [commands]'s:", + " !GM [name] LE", + " !GM [name] AE", + " !GM [name] Talent", + " !GM [name] Fernkampf", + " !GM [name] Eigenschaft", + " !GM [name] Zauber", + " !GM [name] Angriff", + " !GM [name] Parade" + ] + } +] \ No newline at end of file diff --git a/DSACore/Properties/DSALib-DSA_Game-Characters-Character.json b/DSACore/Properties/DSALib-DSA_Game-Characters-Character.json new file mode 100644 index 0000000..fd387f5 --- /dev/null +++ b/DSACore/Properties/DSALib-DSA_Game-Characters-Character.json @@ -0,0 +1,290 @@ +[ + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 30, + "Lebenspunkte_Aktuell": 30, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 20, + "Astralpunkte_Aktuell": 20, + "Name": "Felis Exodus Schattenwald" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 29, + "Lebenspunkte_Aktuell": 29, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Gardist" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 31, + "Lebenspunkte_Aktuell": 31, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Hartmut Reiher" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 21, + "Lebenspunkte_Aktuell": 21, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 35, + "Astralpunkte_Aktuell": 35, + "Name": "Helga vom Drachenei, Tausendsasserin" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 25, + "Lebenspunkte_Aktuell": 25, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Krenko" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 39, + "Lebenspunkte_Aktuell": 39, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Ledur Torfinson" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 26, + "Lebenspunkte_Aktuell": 26, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 13, + "Astralpunkte_Aktuell": 13, + "Name": "Morla" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 28, + "Lebenspunkte_Aktuell": 28, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 40, + "Astralpunkte_Aktuell": 40, + "Name": "Numeri Illuminus" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 39, + "Lebenspunkte_Aktuell": 39, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 16, + "Astralpunkte_Aktuell": 16, + "Name": "Potus" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 18, + "Lebenspunkte_Aktuell": 18, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 13, + "Astralpunkte_Aktuell": 13, + "Name": "Pump aus der Gosse" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 34, + "Lebenspunkte_Aktuell": 34, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 17, + "Astralpunkte_Aktuell": 17, + "Name": "Rhoktar4" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 28, + "Lebenspunkte_Aktuell": 28, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 43, + "Astralpunkte_Aktuell": 43, + "Name": "Volant" + } +] \ No newline at end of file diff --git a/DSALib/Auxiliary/WeaponImporter.cs b/DSALib/Auxiliary/WeaponImporter.cs index 12d243f..61eb33e 100644 --- a/DSALib/Auxiliary/WeaponImporter.cs +++ b/DSALib/Auxiliary/WeaponImporter.cs @@ -4,8 +4,8 @@ using System.Linq; using System.Net.Http; using System.Text.RegularExpressions; using System.Threading.Tasks; -using DSALib.Models.Database.DSA; using DSALib.FireBase; +using DSALib.Models.Database.Dsa; namespace DSALib.Auxiliary { diff --git a/DSALib/FireBase/Database.cs b/DSALib/FireBase/Database.cs index 2debd27..1edd699 100644 --- a/DSALib/FireBase/Database.cs +++ b/DSALib/FireBase/Database.cs @@ -1,11 +1,12 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using System.IO; using System.Linq; +using System.Text.RegularExpressions; using System.Threading.Tasks; using DSALib.DSA_Game; using DSALib.DSA_Game.Characters; -using DSALib.Models.Database.DSA; -using DSALib.Models.Network; +using DSALib.Models.Database.Dsa; using Firebase.Database; using Firebase.Database.Query; @@ -21,14 +22,13 @@ namespace DSALib.FireBase public static Dictionary RangedWeapons = new Dictionary(); - public static Dictionary Talents = new Dictionary(); + public static Dictionary Talents = new Dictionary(); public static Dictionary Spells = new Dictionary(); static Database() { - var auth = File.ReadAllText(Dsa.rootPath + "Token"); - ; // your app secret + var auth = File.ReadAllText(Dsa.rootPath + "Token"); // your app secret Firebase = new FirebaseClient( "https://heldenonline-4d828.firebaseio.com/", new FirebaseOptions @@ -36,16 +36,18 @@ namespace DSALib.FireBase AuthTokenAsyncFactory = () => Task.FromResult(auth) }); - Initialize(); + Task.Run(Initialize); } - private static void Initialize() - { - IntializeCollection("Chars", Chars).Start(); - IntializeCollection("MeleeWeapons", MeleeList).Start(); - IntializeCollection("RangedWeapons", RangedWeapons).Start(); - IntializeCollection("Talents", Talents).Start(); - IntializeCollection("Spells", Spells).Start(); + private static void Initialize() { + var waiting = new[] { + // ToDo IntializeCollection("Chars", Chars), + IntializeCollection("MeleeWeapons", MeleeList), + IntializeCollection("RangedWeapons", RangedWeapons), + IntializeCollection("Talents", Talents), + IntializeCollection("Spells", Spells), + }; + Task.WaitAll(waiting); } private static async Task IntializeCollection(string path, Dictionary list) @@ -58,7 +60,7 @@ namespace DSALib.FireBase foreach (var firebaseObject in temp) list.Add(firebaseObject.Key, firebaseObject.Object); } - public static async Task AddChar(Character file, Group group) + public static async Task AddChar(Character file, string group) { DatabaseChar.LoadChar(file, out var groupChar, out var data); @@ -136,7 +138,7 @@ namespace DSALib.FireBase .PutAsync(inv); } - public static async Task AddTalent(DSALib.Models.Database.DSA.Talent tal) + public static async Task AddTalent(DSALib.Models.Database.Dsa.Talent tal) { await Firebase .Child("Talents") @@ -152,7 +154,7 @@ namespace DSALib.FireBase .DeleteAsync(); } - public static DSALib.Models.Database.DSA.Talent GetTalent(string talent) + public static DSALib.Models.Database.Dsa.Talent GetTalent(string talent) { /* return await firebase @@ -180,10 +182,6 @@ namespace DSALib.FireBase public static GeneralSpell GetSpell(string spell) { - /*return await firebase - .Child("Spells") - .Child(spell) - .OnceSingleAsync();*/ return Spells[spell]; } @@ -215,16 +213,16 @@ namespace DSALib.FireBase .OnceSingleAsync(); } - public static async Task> GetGroups() + public static async Task>> GetGroups() { var groups = await Firebase .Child("Groups") .OrderByKey() .OnceAsync(); - var ret = new List(); + var ret = new List>(); foreach (var firebaseObject in groups) - ret.Add(new Group(firebaseObject.Object.Name, firebaseObject.Object.Password)); + ret.Add(new Tuple(firebaseObject.Object.Name, firebaseObject.Object.Password)); return ret; } diff --git a/DSALib/Models/Database/DSA/Advantage.cs b/DSALib/Models/Database/DSA/Advantage.cs index 500cf6d..2ed0bf9 100644 --- a/DSALib/Models/Database/DSA/Advantage.cs +++ b/DSALib/Models/Database/DSA/Advantage.cs @@ -1,6 +1,6 @@ using System; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class Advantage { diff --git a/DSALib/Models/Database/DSA/CharSpell.cs b/DSALib/Models/Database/DSA/CharSpell.cs index 77a8dc8..d08bc74 100644 --- a/DSALib/Models/Database/DSA/CharSpell.cs +++ b/DSALib/Models/Database/DSA/CharSpell.cs @@ -1,6 +1,6 @@ using System; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class CharSpell { diff --git a/DSALib/Models/Database/DSA/DatabaseChar.cs b/DSALib/Models/Database/DSA/DatabaseChar.cs index cfd7174..1312f95 100644 --- a/DSALib/Models/Database/DSA/DatabaseChar.cs +++ b/DSALib/Models/Database/DSA/DatabaseChar.cs @@ -3,7 +3,7 @@ using System.Collections.Generic; using System.Linq; using DSALib.DSA_Game.Characters; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class DatabaseChar { @@ -16,7 +16,7 @@ namespace DSALib.Models.Database.DSA { Id = id; Name = name ?? throw new ArgumentNullException(nameof(name)); - Rasse = rasse ?? throw new ArgumentNullException(nameof(rasse)); + Race = rasse ?? throw new ArgumentNullException(nameof(rasse)); Skills = skills ?? throw new ArgumentNullException(nameof(skills)); Talents = talents ?? throw new ArgumentNullException(nameof(talents)); Advantages = advantages ?? throw new ArgumentNullException(nameof(advantages)); @@ -28,7 +28,7 @@ namespace DSALib.Models.Database.DSA public string Name { get; set; } - public string Rasse { get; set; } + public string Race { get; set; } public List Skills { get; set; } = new List(); diff --git a/DSALib/Models/Database/DSA/Field.cs b/DSALib/Models/Database/DSA/Field.cs index 1b10232..6d1b82e 100644 --- a/DSALib/Models/Database/DSA/Field.cs +++ b/DSALib/Models/Database/DSA/Field.cs @@ -1,6 +1,6 @@ using System; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class Field { diff --git a/DSALib/Models/Database/DSA/GeneralSpell.cs b/DSALib/Models/Database/DSA/GeneralSpell.cs index 6fe6a78..964c38e 100644 --- a/DSALib/Models/Database/DSA/GeneralSpell.cs +++ b/DSALib/Models/Database/DSA/GeneralSpell.cs @@ -1,4 +1,4 @@ -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class GeneralSpell : Talent { diff --git a/DSALib/Models/Database/DSA/GroupChar.cs b/DSALib/Models/Database/DSA/GroupChar.cs index 0c1ecf1..a0115cd 100644 --- a/DSALib/Models/Database/DSA/GroupChar.cs +++ b/DSALib/Models/Database/DSA/GroupChar.cs @@ -1,4 +1,4 @@ -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class GroupChar { diff --git a/DSALib/Models/Database/DSA/Inventory.cs b/DSALib/Models/Database/DSA/Inventory.cs index 086564c..f3f5d7a 100644 --- a/DSALib/Models/Database/DSA/Inventory.cs +++ b/DSALib/Models/Database/DSA/Inventory.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class Inventory { diff --git a/DSALib/Models/Database/DSA/Talent.cs b/DSALib/Models/Database/DSA/Talent.cs index 578d93c..214aecc 100644 --- a/DSALib/Models/Database/DSA/Talent.cs +++ b/DSALib/Models/Database/DSA/Talent.cs @@ -1,6 +1,6 @@ using System; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class Talent : DSALib.Models.Database.DataObject { diff --git a/DSALib/Models/Database/DSA/Weapon.cs b/DSALib/Models/Database/DSA/Weapon.cs index 8ed63d7..308c6c5 100644 --- a/DSALib/Models/Database/DSA/Weapon.cs +++ b/DSALib/Models/Database/DSA/Weapon.cs @@ -1,6 +1,6 @@ using System; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class Weapon { diff --git a/DSALib/Models/Database/DSA/WeaponTalent.cs b/DSALib/Models/Database/DSA/WeaponTalent.cs index f65fb3f..2ab921b 100644 --- a/DSALib/Models/Database/DSA/WeaponTalent.cs +++ b/DSALib/Models/Database/DSA/WeaponTalent.cs @@ -1,6 +1,6 @@ using System; -namespace DSALib.Models.Database.DSA +namespace DSALib.Models.Database.Dsa { public class WeaponTalent { diff --git a/DSALib/Models/Database/Groups/DSAGroup.cs b/DSALib/Models/Database/Groups/DSAGroup.cs index 377376e..adbd0ac 100644 --- a/DSALib/Models/Database/Groups/DSAGroup.cs +++ b/DSALib/Models/Database/Groups/DSAGroup.cs @@ -1,9 +1,9 @@ using System.Collections.Generic; -using DSALib.Models.Database.DSA; +using DSALib.Models.Database.Dsa; namespace DSALib.Models.Database.Groups { - public class DSAGroup : Group + public class DsaGroup : Group { public List Chars { get; set; } = new List(); } diff --git a/DSALib/Models/Network/Group.cs b/DSALib/Models/Network/Group.cs deleted file mode 100644 index 608e5ea..0000000 --- a/DSALib/Models/Network/Group.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace DSALib.Models.Network -{ - public class Group - { - public Group(string name, string password) - { - Name = name; - Password = password; - } - - public Group(string name, int userOnline) - { - Name = name ?? throw new ArgumentNullException(nameof(name)); - } - - public string Name { get; set; } - public string Password { get; set; } - public List Users { get; set; } = new List(); - - public int UserCount => Users.Count; - - public SendGroup SendGroup() - { - return new SendGroup(Name, UserCount); - } - } - - public class SendGroup - { - public SendGroup(string name, int userCount) - { - Name = name ?? throw new ArgumentNullException(nameof(name)); - UserCount = userCount; - } - - public string Name { get; set; } - - public int UserCount { get; set; } - } -} \ No newline at end of file diff --git a/DSALib/Models/Network/Token.cs b/DSALib/Models/Network/Token.cs deleted file mode 100644 index 2310607..0000000 --- a/DSALib/Models/Network/Token.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; - -namespace DSALib.Models.Network -{ - public class Token - { - private readonly DateTime creation = DateTime.Now; - - public Token(string group) - { - Group = group; - } - - public string Group { get; set; } - - public bool IsValid() - { - return DateTime.Now - creation < TimeSpan.FromMinutes(1); - } - } -} \ No newline at end of file diff --git a/DSALib/Models/Network/User.cs b/DSALib/Models/Network/User.cs deleted file mode 100644 index 314a0bf..0000000 --- a/DSALib/Models/Network/User.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace DSALib.Models.Network -{ - public class User - { - public string Name { get; set; } - public string ConnectionId { get; set; } - public int Char { get; set; } - } -} \ No newline at end of file diff --git a/DSALib/Properties-DSACore-Auxiliary-CommandInfo.json b/DSALib/Properties-DSACore-Auxiliary-CommandInfo.json new file mode 100644 index 0000000..b9941f2 --- /dev/null +++ b/DSALib/Properties-DSACore-Auxiliary-CommandInfo.json @@ -0,0 +1,101 @@ +[ + { + "Name": "ich bin", + "Scope": "All", + "Brief": "Setzt den gespielten Charakter fest", + "Description": [ + "Mit \"!Ich bin\" kann der gespielte Charakter definiert, bzw. gewechselt werden.\n", + " Die Charaktere müssen als *.xml Dateien hinterlegt sein.\n\n", + " !ich Zeigt an welcher Charakter zur Zeit gespielt wird\n", + " !ich bin Zalibius Wechsel zum Helden Zalibius\n", + " !ich Rhoktar Orkische Variante von !ich bin.\n", + " Wechselt zu Rhoktar.\n\n", + " !list chars Zeigt die Liste verfügbarer Charaktere.\n", + " \n" + ] + }, + { + "Name": "List", + "Scope": "All", + "Brief": "Anzeige vonSpielrelevanten Listen", + "Description": [ + "Mit \"!list\" lassen sich spielrelevante Listen ausgeben. Die Angezeigte Liste wird nach einiger Zeit wieder gelöscht.\n", + "\n", + " !list chars Liste aller verfügbaren Helden (eingelesen per *.xml)\n", + " und NSCs.\n", + " (Mit \"!ich bin\" kann der Held ausgewählt werden.)\n", + " !list commands Liste aller verwendbaren Bot-Kommandos.\n", + " !list sounds Liste der Soundeffekte." + ] + }, + { + "Name": "Held", + "Scope": "All", + "Brief": "Anzeige von Heldenwerten", + "Description": [ + "Mit \"!Held\" lassen sich Heldenwerte ausgeben. Mehrere Werte können gleichzeitig angefordert werde. \"!Held LE Waffen\" liefert so z.B. Informationen zur Lebensenergie und den Kampfwerten.\n Bis auf wenige Ausnahmen wird die Angezeigte Liste nach einiger Zeit wieder gelöscht.\n", + "\n", + " !Held Zeigt den Heldenbrief an.\n", + " (Diese Liste wird nicht automatisch gelöscht)\n", + " !Held Eigenschaften Zeigt die Eigenschaften MU/KL/CH/IN/KK/GE/FF/KO.\n", + " !Held e Kurzform von \"!Held Eigenschaften\".\n", + " !Held LE Zeigt LE an.\n", + " !Held AE Zeigt AE an.\n", + " !Held stats Zeigt Eigenschaften und zusätzlich SO/LE/AE.\n", + " !Held Kampfwerte Zeigt AT/PA für aktivierte Waffentalente.\n", + " !Held Waffe/!list w Kurzformen von \"!Held Kampfwerte\".\n", + " !Held Vorteile Zeigt Vor- und Nachteile an.\n", + " !Held v Kurzform von \"!Held Vorteile\".\n", + " !Held Talente Zeigt die Liste aller aktivierten Talente, deren TaW,\n", + " sowie die Probe.\n", + " !Held t Kurzform von \"!Held Talente\".\n", + " !Held Zauber Zeigt die Liste aller aktivierten Zauber, deren ZaW,\n", + " sowie die Probe.\n", + " !Held z Kurzform von \"!Held Zauber\".\n" + ] + }, + { + "Name": "LE", + "Scope": "All", + "Brief": "Ändert dein Leben - im wahrsten Sinne des Wortes", + "Description": [ + "Mit !LE zeigt man die Lebensenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", + " !LE Zeigt Lebensenergie an\n", + " !LE 30 Setzt LE auf 30\n", + " !LE +5 Erhöht LE um 5 (bis zum Maximum)\n", + " !LE ++5 Erhöht LE um 5 (ignoriert Maximum)\n", + " !LE -5 Verringert LE um 5\n \n" + ] + }, + { + "Name": "AE", + "Scope": "All", + "Brief": "Ändert Astralenergie", + "Description": [ + "Mit !AE (oder !Asp) zeigt man die Astralenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", + " !AE Zeigt Astralenergie an\n", + " !AE 30 Setzt Asp auf 30\n", + " !AE +5 Erhöht Asp um 5 (bis zum Maximum)\n", + " !AE ++5 Erhöht Asp um 5 (ignoriert Maximum)\n", + " !AE -5 Verringert Asp um 5 (Minimum 0)\n" + ] + }, + { + "Name": "Gm", + "Scope": "Meister", + "Brief": "Kontrolliere andere Charaktere", + "Description": [ + "Mit !GM fürhrt man commands als eine andere Person aus.", + " !GM [charaktername] [command] [commandattribut] [mofifier]", + " Unterstützte [commands]'s:", + " !GM [name] LE", + " !GM [name] AE", + " !GM [name] Talent", + " !GM [name] Fernkampf", + " !GM [name] Eigenschaft", + " !GM [name] Zauber", + " !GM [name] Angriff", + " !GM [name] Parade" + ] + } +] \ No newline at end of file diff --git a/DSALib/Properties-DSACore-DSA_Game-Characters-Character.json b/DSALib/Properties-DSACore-DSA_Game-Characters-Character.json new file mode 100644 index 0000000..fd387f5 --- /dev/null +++ b/DSALib/Properties-DSACore-DSA_Game-Characters-Character.json @@ -0,0 +1,290 @@ +[ + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 30, + "Lebenspunkte_Aktuell": 30, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 20, + "Astralpunkte_Aktuell": 20, + "Name": "Felis Exodus Schattenwald" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 29, + "Lebenspunkte_Aktuell": 29, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Gardist" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 31, + "Lebenspunkte_Aktuell": 31, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Hartmut Reiher" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 21, + "Lebenspunkte_Aktuell": 21, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 35, + "Astralpunkte_Aktuell": 35, + "Name": "Helga vom Drachenei, Tausendsasserin" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 25, + "Lebenspunkte_Aktuell": 25, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Krenko" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 39, + "Lebenspunkte_Aktuell": 39, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 0, + "Astralpunkte_Aktuell": 0, + "Name": "Ledur Torfinson" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 26, + "Lebenspunkte_Aktuell": 26, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 13, + "Astralpunkte_Aktuell": 13, + "Name": "Morla" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 28, + "Lebenspunkte_Aktuell": 28, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 40, + "Astralpunkte_Aktuell": 40, + "Name": "Numeri Illuminus" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 39, + "Lebenspunkte_Aktuell": 39, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 16, + "Astralpunkte_Aktuell": 16, + "Name": "Potus" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 18, + "Lebenspunkte_Aktuell": 18, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 13, + "Astralpunkte_Aktuell": 13, + "Name": "Pump aus der Gosse" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 34, + "Lebenspunkte_Aktuell": 34, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 17, + "Astralpunkte_Aktuell": 17, + "Name": "Rhoktar4" + }, + { + "Eigenschaften": {}, + "Talente": [], + "Zauber": [], + "Kampftalente": [], + "Vorteile": [], + "PropTable": { + "MU": "Mut", + "KL": "Klugheit", + "IN": "Intuition", + "CH": "Charisma", + "FF": "Fingerfertigkeit", + "GE": "Gewandtheit", + "KO": "Konstitution", + "KK": "Körperkraft" + }, + "Lebenspunkte_Basis": 28, + "Lebenspunkte_Aktuell": 28, + "Ausdauer_Basis": 0, + "Ausdauer_Aktuell": 0, + "Astralpunkte_Basis": 43, + "Astralpunkte_Aktuell": 43, + "Name": "Volant" + } +] \ No newline at end of file diff --git a/DSALib/PropertiesDSACore-Audio-Sound.json b/DSALib/PropertiesDSACore-Audio-Sound.json deleted file mode 100644 index 87a0e6b..0000000 --- a/DSALib/PropertiesDSACore-Audio-Sound.json +++ /dev/null @@ -1,7 +0,0 @@ -[ - { - "Name": "Test", - "Url": "http", - "Volume": 100 - } -] \ No newline at end of file diff --git a/DSALib/PropertiesDSACore-Auxiliary-CommandInfo.json b/DSALib/PropertiesDSACore-Auxiliary-CommandInfo.json deleted file mode 100644 index b9941f2..0000000 --- a/DSALib/PropertiesDSACore-Auxiliary-CommandInfo.json +++ /dev/null @@ -1,101 +0,0 @@ -[ - { - "Name": "ich bin", - "Scope": "All", - "Brief": "Setzt den gespielten Charakter fest", - "Description": [ - "Mit \"!Ich bin\" kann der gespielte Charakter definiert, bzw. gewechselt werden.\n", - " Die Charaktere müssen als *.xml Dateien hinterlegt sein.\n\n", - " !ich Zeigt an welcher Charakter zur Zeit gespielt wird\n", - " !ich bin Zalibius Wechsel zum Helden Zalibius\n", - " !ich Rhoktar Orkische Variante von !ich bin.\n", - " Wechselt zu Rhoktar.\n\n", - " !list chars Zeigt die Liste verfügbarer Charaktere.\n", - " \n" - ] - }, - { - "Name": "List", - "Scope": "All", - "Brief": "Anzeige vonSpielrelevanten Listen", - "Description": [ - "Mit \"!list\" lassen sich spielrelevante Listen ausgeben. Die Angezeigte Liste wird nach einiger Zeit wieder gelöscht.\n", - "\n", - " !list chars Liste aller verfügbaren Helden (eingelesen per *.xml)\n", - " und NSCs.\n", - " (Mit \"!ich bin\" kann der Held ausgewählt werden.)\n", - " !list commands Liste aller verwendbaren Bot-Kommandos.\n", - " !list sounds Liste der Soundeffekte." - ] - }, - { - "Name": "Held", - "Scope": "All", - "Brief": "Anzeige von Heldenwerten", - "Description": [ - "Mit \"!Held\" lassen sich Heldenwerte ausgeben. Mehrere Werte können gleichzeitig angefordert werde. \"!Held LE Waffen\" liefert so z.B. Informationen zur Lebensenergie und den Kampfwerten.\n Bis auf wenige Ausnahmen wird die Angezeigte Liste nach einiger Zeit wieder gelöscht.\n", - "\n", - " !Held Zeigt den Heldenbrief an.\n", - " (Diese Liste wird nicht automatisch gelöscht)\n", - " !Held Eigenschaften Zeigt die Eigenschaften MU/KL/CH/IN/KK/GE/FF/KO.\n", - " !Held e Kurzform von \"!Held Eigenschaften\".\n", - " !Held LE Zeigt LE an.\n", - " !Held AE Zeigt AE an.\n", - " !Held stats Zeigt Eigenschaften und zusätzlich SO/LE/AE.\n", - " !Held Kampfwerte Zeigt AT/PA für aktivierte Waffentalente.\n", - " !Held Waffe/!list w Kurzformen von \"!Held Kampfwerte\".\n", - " !Held Vorteile Zeigt Vor- und Nachteile an.\n", - " !Held v Kurzform von \"!Held Vorteile\".\n", - " !Held Talente Zeigt die Liste aller aktivierten Talente, deren TaW,\n", - " sowie die Probe.\n", - " !Held t Kurzform von \"!Held Talente\".\n", - " !Held Zauber Zeigt die Liste aller aktivierten Zauber, deren ZaW,\n", - " sowie die Probe.\n", - " !Held z Kurzform von \"!Held Zauber\".\n" - ] - }, - { - "Name": "LE", - "Scope": "All", - "Brief": "Ändert dein Leben - im wahrsten Sinne des Wortes", - "Description": [ - "Mit !LE zeigt man die Lebensenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", - " !LE Zeigt Lebensenergie an\n", - " !LE 30 Setzt LE auf 30\n", - " !LE +5 Erhöht LE um 5 (bis zum Maximum)\n", - " !LE ++5 Erhöht LE um 5 (ignoriert Maximum)\n", - " !LE -5 Verringert LE um 5\n \n" - ] - }, - { - "Name": "AE", - "Scope": "All", - "Brief": "Ändert Astralenergie", - "Description": [ - "Mit !AE (oder !Asp) zeigt man die Astralenergie an, ändert sie, oder setzt sie auf einen neuen Wert\n\n", - " !AE Zeigt Astralenergie an\n", - " !AE 30 Setzt Asp auf 30\n", - " !AE +5 Erhöht Asp um 5 (bis zum Maximum)\n", - " !AE ++5 Erhöht Asp um 5 (ignoriert Maximum)\n", - " !AE -5 Verringert Asp um 5 (Minimum 0)\n" - ] - }, - { - "Name": "Gm", - "Scope": "Meister", - "Brief": "Kontrolliere andere Charaktere", - "Description": [ - "Mit !GM fürhrt man commands als eine andere Person aus.", - " !GM [charaktername] [command] [commandattribut] [mofifier]", - " Unterstützte [commands]'s:", - " !GM [name] LE", - " !GM [name] AE", - " !GM [name] Talent", - " !GM [name] Fernkampf", - " !GM [name] Eigenschaft", - " !GM [name] Zauber", - " !GM [name] Angriff", - " !GM [name] Parade" - ] - } -] \ No newline at end of file diff --git a/DSALib/PropertiesDSACore-DSA_Game-Characters-Character.json b/DSALib/PropertiesDSACore-DSA_Game-Characters-Character.json deleted file mode 100644 index fd387f5..0000000 --- a/DSALib/PropertiesDSACore-DSA_Game-Characters-Character.json +++ /dev/null @@ -1,290 +0,0 @@ -[ - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 30, - "Lebenspunkte_Aktuell": 30, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 20, - "Astralpunkte_Aktuell": 20, - "Name": "Felis Exodus Schattenwald" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 29, - "Lebenspunkte_Aktuell": 29, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Gardist" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 31, - "Lebenspunkte_Aktuell": 31, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Hartmut Reiher" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 21, - "Lebenspunkte_Aktuell": 21, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 35, - "Astralpunkte_Aktuell": 35, - "Name": "Helga vom Drachenei, Tausendsasserin" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 25, - "Lebenspunkte_Aktuell": 25, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Krenko" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 39, - "Lebenspunkte_Aktuell": 39, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 0, - "Astralpunkte_Aktuell": 0, - "Name": "Ledur Torfinson" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 26, - "Lebenspunkte_Aktuell": 26, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 13, - "Astralpunkte_Aktuell": 13, - "Name": "Morla" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 28, - "Lebenspunkte_Aktuell": 28, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 40, - "Astralpunkte_Aktuell": 40, - "Name": "Numeri Illuminus" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 39, - "Lebenspunkte_Aktuell": 39, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 16, - "Astralpunkte_Aktuell": 16, - "Name": "Potus" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 18, - "Lebenspunkte_Aktuell": 18, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 13, - "Astralpunkte_Aktuell": 13, - "Name": "Pump aus der Gosse" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 34, - "Lebenspunkte_Aktuell": 34, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 17, - "Astralpunkte_Aktuell": 17, - "Name": "Rhoktar4" - }, - { - "Eigenschaften": {}, - "Talente": [], - "Zauber": [], - "Kampftalente": [], - "Vorteile": [], - "PropTable": { - "MU": "Mut", - "KL": "Klugheit", - "IN": "Intuition", - "CH": "Charisma", - "FF": "Fingerfertigkeit", - "GE": "Gewandtheit", - "KO": "Konstitution", - "KK": "Körperkraft" - }, - "Lebenspunkte_Basis": 28, - "Lebenspunkte_Aktuell": 28, - "Ausdauer_Basis": 0, - "Ausdauer_Aktuell": 0, - "Astralpunkte_Basis": 43, - "Astralpunkte_Aktuell": 43, - "Name": "Volant" - } -] \ No newline at end of file diff --git a/DiscoBot.sln b/DiscoBot.sln index 72ea5dd..2016e7e 100644 --- a/DiscoBot.sln +++ b/DiscoBot.sln @@ -11,7 +11,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DSALib", "DSALib\DSALib.csp EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DiscordBot", "DiscordBot\DiscordBot.csproj", "{F1418B62-F043-4761-9BDD-AE078B6A99FB}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NUnitTest", "NUnitTestProject1\NUnitTest.csproj", "{CF821E64-B50E-420F-98A2-07315B362ED0}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NUnitTest", "NUnitTestProject1\NUnitTest.csproj", "{CF821E64-B50E-420F-98A2-07315B362ED0}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DSA", "DSA", "{2EAC96BE-4273-409B-AE1A-99542E8BAA02}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -43,6 +45,13 @@ Global GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {35A5E2CC-0FD4-4BC0-ACBF-38599CAED1C4} = {2EAC96BE-4273-409B-AE1A-99542E8BAA02} + {87CC30E6-CBEA-4282-A3CC-FD5119A1993B} = {2EAC96BE-4273-409B-AE1A-99542E8BAA02} + {C5D9AFDF-70E2-4A47-96FF-1EC47C1DE38D} = {2EAC96BE-4273-409B-AE1A-99542E8BAA02} + {F1418B62-F043-4761-9BDD-AE078B6A99FB} = {2EAC96BE-4273-409B-AE1A-99542E8BAA02} + {CF821E64-B50E-420F-98A2-07315B362ED0} = {2EAC96BE-4273-409B-AE1A-99542E8BAA02} + EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {CADA01A3-B80B-4979-8397-7CB5B825CE34} EndGlobalSection -- cgit v1.2.3-54-g00ecf