diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs
index 0e2c9961..66d2477f 100755
--- a/TShockAPI/GetDataHandlers.cs
+++ b/TShockAPI/GetDataHandlers.cs
@@ -309,9 +309,9 @@ namespace TShockAPI
///
public byte Hair { get; set; }
///
- /// Gender (male = true)
+ /// Clothing style. 0-3 are for male characters, and 4-7 are for female characters.
///
- public bool Male { get; set; }
+ public int Style { get; set; }
///
/// Character difficulty
///
@@ -327,7 +327,7 @@ namespace TShockAPI
///
public static HandlerList PlayerInfo;
- private static bool OnPlayerInfo(byte _plrid, byte _hair, bool _male, byte _difficulty, string _name)
+ private static bool OnPlayerInfo(byte _plrid, byte _hair, int _style, byte _difficulty, string _name)
{
if (PlayerInfo == null)
return false;
@@ -336,7 +336,7 @@ namespace TShockAPI
{
PlayerId = _plrid,
Hair = _hair,
- Male = _male,
+ Style = _style,
Difficulty = _difficulty,
Name = _name,
};
@@ -1373,8 +1373,9 @@ namespace TShockAPI
private static bool HandlePlayerInfo(GetDataHandlerArgs args)
{
- var playerid = args.Data.ReadInt8();
- var male = args.Data.ReadByte() == 0;
+ byte playerid = args.Data.ReadInt8();
+ // 0-3 male; 4-7 female
+ int skinVariant = args.Data.ReadByte();
var hair = args.Data.ReadInt8();
string name = args.Data.ReadString();
byte hairDye = args.Data.ReadInt8();
@@ -1382,15 +1383,15 @@ namespace TShockAPI
BitsByte hideVisual2 = args.Data.ReadInt8();
BitsByte hideMisc = args.Data.ReadInt8();
Color hairColor = new Color(args.Data.ReadInt8(), args.Data.ReadInt8(), args.Data.ReadInt8());
- args.Data.ReadInt8(); args.Data.ReadInt8(); args.Data.ReadInt8(); // skin color
- args.Data.ReadInt8(); args.Data.ReadInt8(); args.Data.ReadInt8(); // eye color
+ Color skinColor = new Color(args.Data.ReadInt8(), args.Data.ReadInt8(), args.Data.ReadInt8());
+ Color eyeColor = new Color(args.Data.ReadInt8(), args.Data.ReadInt8(), args.Data.ReadInt8());
Color shirtColor = new Color(args.Data.ReadInt8(), args.Data.ReadInt8(), args.Data.ReadInt8());
Color underShirtColor = new Color(args.Data.ReadInt8(), args.Data.ReadInt8(), args.Data.ReadInt8());
Color pantsColor = new Color(args.Data.ReadInt8(), args.Data.ReadInt8(), args.Data.ReadInt8());
Color shoeColor = new Color(args.Data.ReadInt8(), args.Data.ReadInt8(), args.Data.ReadInt8());
var difficulty = args.Data.ReadInt8();
- if (OnPlayerInfo(playerid, hair, male, difficulty, name))
+ if (OnPlayerInfo(playerid, hair, skinVariant, difficulty, name))
{
TShock.Utils.ForceKick(args.Player, "A plugin cancelled the event.", true);
return true;
@@ -1407,6 +1408,9 @@ namespace TShockAPI
args.Player.TPlayer.hair = hair;
args.Player.TPlayer.hairColor = hairColor;
args.Player.TPlayer.hairDye = hairDye;
+ args.Player.TPlayer.skinVariant = skinVariant;
+ args.Player.TPlayer.skinColor = skinColor;
+ args.Player.TPlayer.eyeColor = eyeColor;
args.Player.TPlayer.pantsColor = pantsColor;
args.Player.TPlayer.shirtColor = shirtColor;
args.Player.TPlayer.underShirtColor = underShirtColor;