diff --git a/CHANGELOG.md b/CHANGELOG.md
index d0906ec4..9a0712a2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -12,6 +12,7 @@ This is the rolling changelog for TShock for Terraria. Use past tense when addin
* Add SyncTilePicking event. This is called when a player damages a tile. Implementing SyncTilePickingHandler and patching tile damaging related exploits. (Preventing player sending invalid world position data which disconnects other players.)
* Fix the issue where mobs could not be fished out during bloodmoon because of Bouncer checks. (@Patrikkk)
* Update for OTAPI 2.0.0.37 and Terraria 1.4.0.5. (@hakusaro, @Patrikkk)
+* Adding missing PlayerInfo data in GetDataHandler. (@Patrikkk)
## TShock 4.4.0 (Pre-release 10)
* Fix all rope coils. (@Olink)
diff --git a/TShockAPI/ConfigFile.cs b/TShockAPI/ConfigFile.cs
index 89b3c702..996823b1 100644
--- a/TShockAPI/ConfigFile.cs
+++ b/TShockAPI/ConfigFile.cs
@@ -272,22 +272,42 @@ namespace TShockAPI
/// Disables a player and reverts their actions if this number of tile kills is exceeded within 1 second.
[Description("Disables a player and reverts their actions if this number of tile kills is exceeded within 1 second.")]
public int TileKillThreshold = 60;
+
+ /// Whether or not to kick users when they surpass the TileKill threshold.
+ [Description("Whether or not to kick users when they surpass the TileKill threshold.")]
+ public bool KickOnTileKillThresholdBroken = false;
/// Disables a player and reverts their actions if this number of tile places is exceeded within 1 second.
[Description("Disables a player and reverts their actions if this number of tile places is exceeded within 1 second.")]
public int TilePlaceThreshold = 32;
+
+ /// Whether or not to kick users when they surpass the TilePlace threshold.
+ [Description("Whether or not to kick users when they surpass the TilePlace threshold.")]
+ public bool KickOnTilePlaceThresholdBroken = false;
/// Disables a player if this number of liquid sets is exceeded within 1 second.
[Description("Disables a player if this number of liquid sets is exceeded within 1 second.")]
public int TileLiquidThreshold = 50;
+
+ /// Whether or not to kick users when they surpass the TileLiquid threshold.
+ [Description("Whether or not to kick users when they surpass the TileLiquid threshold.")]
+ public bool KickOnTileLiquidThresholdBroken = false;
/// Disable a player if this number of projectiles is created within 1 second.
[Description("Disable a player if this number of projectiles is created within 1 second.")]
public int ProjectileThreshold = 50;
+
+ /// Whether or not to kick users when they surpass the Projectile threshold.
+ [Description("Whether or not to kick users when they surpass the Projectile threshold.")]
+ public bool KickOnProjectileThresholdBroken = false;
/// Disables a player if this number of HealOtherPlayer packets is sent within 1 second.
[Description("Disables a player if this number of HealOtherPlayer packets is sent within 1 second.")]
public int HealOtherThreshold = 50;
+
+ /// Whether or not to kick users when they surpass the HealOther threshold.
+ [Description("Whether or not to kick users when they surpass the HealOther threshold.")]
+ public bool KickOnHealOtherThresholdBroken = false;
/// Whether or not to ignore shrapnel from crystal bullets for the projectile threshold count.
[Description("Whether or not to ignore shrapnel from crystal bullets for the projectile threshold count.")]
@@ -452,6 +472,10 @@ namespace TShockAPI
/// Disables a player if this number of tiles is painted within 1 second.
[Description("Disables a player if this number of tiles is painted within 1 second.")]
public int TilePaintThreshold = 15;
+
+ /// Whether or not to kick users when they surpass the TilePaint threshold.
+ [Description("Whether or not to kick users when they surpass the TilePaint threshold.")]
+ public bool KickOnTilePaintThresholdBroken = false;
/// Forces Halloween-only events to occur all year.
[Description("Forces Halloween-only events to occur all year.")]
diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs
index 496a7053..931167c0 100644
--- a/TShockAPI/GetDataHandlers.cs
+++ b/TShockAPI/GetDataHandlers.cs
@@ -2142,14 +2142,20 @@ namespace TShockAPI
byte difficulty = 0;
if (extra[0])
{
- difficulty++;
+ difficulty = 1;
}
else if (extra[1])
{
- difficulty += 2;
+ difficulty = 2;
+ }
+ else if (extra[3])
+ {
+ difficulty = 3;
}
-
bool extraSlot = extra[2];
+ BitsByte torchFlags = args.Data.ReadInt8();
+ bool usingBiomeTorches = torchFlags[0];
+ bool happyFunTorchTime = torchFlags[1];
if (OnPlayerInfo(args.Player, args.Data, playerid, hair, skinVariant, difficulty, name))
{