From c55acba1b6060fdf777851f0fdbb0d24f2054070 Mon Sep 17 00:00:00 2001 From: yogurt Date: Wed, 30 Aug 2017 16:26:28 -0500 Subject: [PATCH 1/2] Changed primary key for characters_hotbar.sql and removed id column. --- sql/characters_hotbar.sql | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sql/characters_hotbar.sql b/sql/characters_hotbar.sql index 8b6a1523..b9c2ce4d 100644 --- a/sql/characters_hotbar.sql +++ b/sql/characters_hotbar.sql @@ -23,13 +23,12 @@ DROP TABLE IF EXISTS `characters_hotbar`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `characters_hotbar` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `characterId` int(10) unsigned NOT NULL, `classId` smallint(5) unsigned NOT NULL, `hotbarSlot` smallint(5) unsigned NOT NULL, `commandId` int(10) unsigned NOT NULL, `recastTime` int(10) unsigned DEFAULT NULL, - PRIMARY KEY (`id`) + PRIMARY KEY (`characterId`, `classId`, `hotbarSlot`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; From 50b4f517f210f0911b15899f61d5cd5b9e4a2854 Mon Sep 17 00:00:00 2001 From: yogurt Date: Sun, 3 Sep 2017 11:18:35 -0500 Subject: [PATCH 2/2] Fix FindFirstCommandSlotById to be able to find empty slots again --- FFXIVClassic Map Server/actors/chara/player/Player.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/FFXIVClassic Map Server/actors/chara/player/Player.cs b/FFXIVClassic Map Server/actors/chara/player/Player.cs index b2d591dd..89fda7eb 100644 --- a/FFXIVClassic Map Server/actors/chara/player/Player.cs +++ b/FFXIVClassic Map Server/actors/chara/player/Player.cs @@ -1932,7 +1932,9 @@ namespace FFXIVClassic_Map_Server.Actors //If the returned value is outside the hotbar, it indicates it wasn't found. private ushort FindFirstCommandSlotById(uint commandId) { - commandId |= 0xA0F00000; + if(commandId != 0) + commandId |= 0xA0F00000; + ushort firstSlot = (ushort)(charaWork.commandBorder + 30); for (ushort i = charaWork.commandBorder; i < charaWork.commandBorder + 30; i++)