Characters can be left behind in levels and they will stay there until the player returns, other subs visible in sonar

This commit is contained in:
Regalis
2016-07-20 17:13:34 +03:00
parent 2bdd6ff916
commit b81417ad16
3 changed files with 64 additions and 22 deletions
+16 -8
View File
@@ -281,16 +281,24 @@ namespace Barotrauma
for (int i = 0; i < waypoints.Length; i++)
{
//WayPoint randomWayPoint = WayPoint.GetRandom(SpawnType.Human);
//Vector2 position = (randomWayPoint == null) ? Vector2.Zero : randomWayPoint.SimPosition;
Character character = Character.Create(characterInfos[i], waypoints[i].WorldPosition);
Character.Controlled = character;
Character character;
if (character.Info!=null && !character.Info.StartItemsGiven)
if (characterInfos[i].HullID != null)
{
character.GiveJobItems(waypoints[i]);
character.Info.StartItemsGiven = true;
var hull = Entity.FindEntityByID((ushort)characterInfos[i].HullID) as Hull;
if (hull == null) continue;
character = Character.Create(characterInfos[i], hull.WorldPosition);
}
else
{
character = Character.Create(characterInfos[i], waypoints[i].WorldPosition);
Character.Controlled = character;
if (character.Info != null && !character.Info.StartItemsGiven)
{
character.GiveJobItems(waypoints[i]);
character.Info.StartItemsGiven = true;
}
}
AddCharacter(character);