diff --git a/BarotraumaClient/BarotraumaClient.csproj b/BarotraumaClient/BarotraumaClient.csproj
index debbea126..50f7f43e8 100644
--- a/BarotraumaClient/BarotraumaClient.csproj
+++ b/BarotraumaClient/BarotraumaClient.csproj
@@ -68,10 +68,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -89,10 +106,19 @@
+
+
+
+
+
+
+
+
+
diff --git a/BarotraumaClient/Source/Characters/Character.cs b/BarotraumaClient/Source/Characters/Character.cs
new file mode 100644
index 000000000..f55956cac
--- /dev/null
+++ b/BarotraumaClient/Source/Characters/Character.cs
@@ -0,0 +1,256 @@
+using FarseerPhysics;
+using FarseerPhysics.Dynamics;
+using FarseerPhysics.Dynamics.Joints;
+using Barotrauma.Networking;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Xml.Linq;
+using Microsoft.Xna.Framework;
+using Microsoft.Xna.Framework.Graphics;
+using Barotrauma.Particles;
+
+namespace Barotrauma
+{
+ partial class Character : Entity, IDamageable, IPropertyObject, IClientSerializable, IServerSerializable
+ {
+ private List sounds;
+
+ //the Character that the player is currently controlling
+ private static Character controlled;
+
+ public static Character Controlled
+ {
+ get { return controlled; }
+ set
+ {
+ if (controlled == value) return;
+ controlled = value;
+ CharacterHUD.Reset();
+
+ if (controlled != null)
+ {
+ controlled.Enabled = true;
+ }
+ }
+ }
+
+ private Dictionary