 		hasAttacked_ = true;
 	}
 	
-	void Destroy()
-	{
-		Sprite@ nodeSprite = node.vars["Sprite"].GetPtr();
-		nodeSprite.Remove();
-		node.Remove();
-	}
-	
-	void OnHit()
-	{
-		currentHealthLevel_ -= 1;
-	}
+	void Initialise()
+	{
+		AnimatedModel@ droneBody = node.CreateComponent("AnimatedModel");
+		droneBody.model = cache.GetResource("Model", "Resources/Models/drone_body.mdl");
+		droneBody.material = cache.GetResource("Material", "Resources/Materials/alt_drone_body.xml");
+		
+		AnimatedModel@ droneArm = node.CreateComponent("AnimatedModel");
+		droneArm.model = cache.GetResource("Model", "Resources/Models/drone_arm.mdl");
+		droneArm.material = cache.GetResource("Material", "Resources/Materials/alt_drone_arm.xml");
+		
+		RigidBody@ droneRB = node.CreateComponent("RigidBody");
+		droneRB.mass = 1.0f;
+		droneRB.SetCollisionLayerAndMask(DRONE_COLLISION_LAYER, BULLET_COLLISION_LAYER | PLAYER_COLLISION_LAYER | FLOOR_COLLISION_LAYER);
+		droneRB.kinematic = true;
+		
+		CollisionShape@ droneCS = node.CreateComponent("CollisionShape");
+		droneCS.SetSphere(0.3f);
+		
+		AnimationController@ animController = node.CreateComponent("AnimationController");
+		animController.PlayExclusive("Resources/Models/open_arm.ani", 0, false);
+	}
+	
 	
 }
 

		
		if(playerObj !is null)
		{
			playerObj.OnHit();
			Destroy();
		}
	}

		node.SetAttributeAnimation("Position", valAnim);
	}
	
	void FixedUpdate(float timestep)
	{
		
