Extra slot will now function correctly in SSC. Fixes #1036
This commit is contained in:
parent
fb401f03ef
commit
be4d741f2b
2 changed files with 10 additions and 4 deletions
|
|
@ -41,6 +41,7 @@ namespace TShockAPI.DB
|
||||||
new SqlColumn("Mana", MySqlDbType.Int32),
|
new SqlColumn("Mana", MySqlDbType.Int32),
|
||||||
new SqlColumn("MaxMana", MySqlDbType.Int32),
|
new SqlColumn("MaxMana", MySqlDbType.Int32),
|
||||||
new SqlColumn("Inventory", MySqlDbType.Text),
|
new SqlColumn("Inventory", MySqlDbType.Text),
|
||||||
|
new SqlColumn("extraSlot", MySqlDbType.Int32),
|
||||||
new SqlColumn("spawnX", MySqlDbType.Int32),
|
new SqlColumn("spawnX", MySqlDbType.Int32),
|
||||||
new SqlColumn("spawnY", MySqlDbType.Int32),
|
new SqlColumn("spawnY", MySqlDbType.Int32),
|
||||||
new SqlColumn("skinVariant", MySqlDbType.Int32),
|
new SqlColumn("skinVariant", MySqlDbType.Int32),
|
||||||
|
|
@ -92,6 +93,7 @@ namespace TShockAPI.DB
|
||||||
inventory.AddRange(new NetItem[NetItem.MaxInventory - inventory.Count]);
|
inventory.AddRange(new NetItem[NetItem.MaxInventory - inventory.Count]);
|
||||||
}
|
}
|
||||||
playerData.inventory = inventory.ToArray();
|
playerData.inventory = inventory.ToArray();
|
||||||
|
playerData.extraSlot = reader.Get<int>("extraSlot");
|
||||||
playerData.spawnX = reader.Get<int>("spawnX");
|
playerData.spawnX = reader.Get<int>("spawnX");
|
||||||
playerData.spawnY = reader.Get<int>("spawnY");
|
playerData.spawnY = reader.Get<int>("spawnY");
|
||||||
playerData.skinVariant = reader.Get<int>("skinVariant");
|
playerData.skinVariant = reader.Get<int>("skinVariant");
|
||||||
|
|
@ -172,8 +174,8 @@ namespace TShockAPI.DB
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
database.Query(
|
database.Query(
|
||||||
"INSERT INTO tsCharacter (Account, Health, MaxHealth, Mana, MaxMana, Inventory, spawnX, spawnY, skinVariant, hair, hairDye, hairColor, pantsColor, shirtColor, underShirtColor, shoeColor, hideVisuals, skinColor, eyeColor, questsCompleted) VALUES (@0, @1, @2, @3, @4, @5, @6, @7, @8, @9, @10, @11, @12, @13, @14, @15, @16, @17, @18, @19);",
|
"INSERT INTO tsCharacter (Account, Health, MaxHealth, Mana, MaxMana, Inventory, extraSlot, spawnX, spawnY, skinVariant, hair, hairDye, hairColor, pantsColor, shirtColor, underShirtColor, shoeColor, hideVisuals, skinColor, eyeColor, questsCompleted) VALUES (@0, @1, @2, @3, @4, @5, @6, @7, @8, @9, @10, @11, @12, @13, @14, @15, @16, @17, @18, @19, @20);",
|
||||||
player.User.ID, playerData.health, playerData.maxHealth, playerData.mana, playerData.maxMana, String.Join("~", playerData.inventory), player.TPlayer.SpawnX, player.TPlayer.SpawnY, player.TPlayer.skinVariant, player.TPlayer.hair, player.TPlayer.hairDye, TShock.Utils.EncodeColor(player.TPlayer.hairColor), TShock.Utils.EncodeColor(player.TPlayer.pantsColor),TShock.Utils.EncodeColor(player.TPlayer.shirtColor), TShock.Utils.EncodeColor(player.TPlayer.underShirtColor), TShock.Utils.EncodeColor(player.TPlayer.shoeColor), TShock.Utils.EncodeBoolArray(player.TPlayer.hideVisual), TShock.Utils.EncodeColor(player.TPlayer.skinColor),TShock.Utils.EncodeColor(player.TPlayer.eyeColor), player.TPlayer.anglerQuestsFinished);
|
player.User.ID, playerData.health, playerData.maxHealth, playerData.mana, playerData.maxMana, String.Join("~", playerData.inventory), playerData.extraSlot, player.TPlayer.SpawnX, player.TPlayer.SpawnY, player.TPlayer.skinVariant, player.TPlayer.hair, player.TPlayer.hairDye, TShock.Utils.EncodeColor(player.TPlayer.hairColor), TShock.Utils.EncodeColor(player.TPlayer.pantsColor),TShock.Utils.EncodeColor(player.TPlayer.shirtColor), TShock.Utils.EncodeColor(player.TPlayer.underShirtColor), TShock.Utils.EncodeColor(player.TPlayer.shoeColor), TShock.Utils.EncodeBoolArray(player.TPlayer.hideVisual), TShock.Utils.EncodeColor(player.TPlayer.skinColor),TShock.Utils.EncodeColor(player.TPlayer.eyeColor), player.TPlayer.anglerQuestsFinished);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
|
@ -186,8 +188,8 @@ namespace TShockAPI.DB
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
database.Query(
|
database.Query(
|
||||||
"UPDATE tsCharacter SET Health = @0, MaxHealth = @1, Mana = @2, MaxMana = @3, Inventory = @4, spawnX = @6, spawnY = @7, hair = @8, hairDye = @9, hairColor = @10, pantsColor = @11, shirtColor = @12, underShirtColor = @13, shoeColor = @14, hideVisuals = @15, skinColor = @16, eyeColor = @17, questsCompleted = @18, skinVariant = @19 WHERE Account = @5;",
|
"UPDATE tsCharacter SET Health = @0, MaxHealth = @1, Mana = @2, MaxMana = @3, Inventory = @4, spawnX = @6, spawnY = @7, hair = @8, hairDye = @9, hairColor = @10, pantsColor = @11, shirtColor = @12, underShirtColor = @13, shoeColor = @14, hideVisuals = @15, skinColor = @16, eyeColor = @17, questsCompleted = @18, skinVariant = @19, extraSlot = @20 WHERE Account = @5;",
|
||||||
playerData.health, playerData.maxHealth, playerData.mana, playerData.maxMana, String.Join("~", playerData.inventory), player.User.ID, player.TPlayer.SpawnX, player.TPlayer.SpawnY, player.TPlayer.hair, player.TPlayer.hairDye, TShock.Utils.EncodeColor(player.TPlayer.hairColor), TShock.Utils.EncodeColor(player.TPlayer.pantsColor), TShock.Utils.EncodeColor(player.TPlayer.shirtColor), TShock.Utils.EncodeColor(player.TPlayer.underShirtColor), TShock.Utils.EncodeColor(player.TPlayer.shoeColor), TShock.Utils.EncodeBoolArray(player.TPlayer.hideVisual), TShock.Utils.EncodeColor(player.TPlayer.skinColor), TShock.Utils.EncodeColor(player.TPlayer.eyeColor), player.TPlayer.anglerQuestsFinished, player.TPlayer.skinVariant);
|
playerData.health, playerData.maxHealth, playerData.mana, playerData.maxMana, String.Join("~", playerData.inventory), player.User.ID, player.TPlayer.SpawnX, player.TPlayer.SpawnY, player.TPlayer.hair, player.TPlayer.hairDye, TShock.Utils.EncodeColor(player.TPlayer.hairColor), TShock.Utils.EncodeColor(player.TPlayer.pantsColor), TShock.Utils.EncodeColor(player.TPlayer.shirtColor), TShock.Utils.EncodeColor(player.TPlayer.underShirtColor), TShock.Utils.EncodeColor(player.TPlayer.shoeColor), TShock.Utils.EncodeBoolArray(player.TPlayer.hideVisual), TShock.Utils.EncodeColor(player.TPlayer.skinColor), TShock.Utils.EncodeColor(player.TPlayer.eyeColor), player.TPlayer.anglerQuestsFinished, player.TPlayer.skinVariant, player.TPlayer.extraAccessory ? 1 : 0);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
|
|
||||||
|
|
@ -1156,6 +1156,7 @@ namespace TShockAPI
|
||||||
public bool exists;
|
public bool exists;
|
||||||
public int spawnX= -1;
|
public int spawnX= -1;
|
||||||
public int spawnY= -1;
|
public int spawnY= -1;
|
||||||
|
public int? extraSlot;
|
||||||
public int? skinVariant;
|
public int? skinVariant;
|
||||||
public int? hair;
|
public int? hair;
|
||||||
public byte hairDye;
|
public byte hairDye;
|
||||||
|
|
@ -1220,6 +1221,7 @@ namespace TShockAPI
|
||||||
this.spawnX = player.TPlayer.SpawnX;
|
this.spawnX = player.TPlayer.SpawnX;
|
||||||
this.spawnY = player.TPlayer.SpawnY;
|
this.spawnY = player.TPlayer.SpawnY;
|
||||||
}
|
}
|
||||||
|
extraSlot = player.TPlayer.extraAccessory ? 1 : 0;
|
||||||
this.skinVariant = player.TPlayer.skinVariant;
|
this.skinVariant = player.TPlayer.skinVariant;
|
||||||
this.hair = player.TPlayer.hair;
|
this.hair = player.TPlayer.hair;
|
||||||
this.hairDye = player.TPlayer.hairDye;
|
this.hairDye = player.TPlayer.hairDye;
|
||||||
|
|
@ -1323,6 +1325,8 @@ namespace TShockAPI
|
||||||
player.TPlayer.hairDye = this.hairDye;
|
player.TPlayer.hairDye = this.hairDye;
|
||||||
player.TPlayer.anglerQuestsFinished = this.questsCompleted;
|
player.TPlayer.anglerQuestsFinished = this.questsCompleted;
|
||||||
|
|
||||||
|
if (extraSlot != null)
|
||||||
|
player.TPlayer.extraAccessory = extraSlot.Value == 1 ? true : false;
|
||||||
if (this.skinVariant != null)
|
if (this.skinVariant != null)
|
||||||
player.TPlayer.skinVariant = this.skinVariant.Value;
|
player.TPlayer.skinVariant = this.skinVariant.Value;
|
||||||
if (this.hair != null)
|
if (this.hair != null)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue