- included wrap_oal.dll in the build (may help with the OpenAL exceptions?)

- medics always have a high enough medical skill to fabricate any drug
- respawned characters get the same ID card tags they would've gotten if they had spawned inside the main sub
- highlighted characters glow in the dark
This commit is contained in:
Regalis
2016-08-22 21:06:01 +03:00
parent d476ebdc8d
commit f03d3b2f61
6 changed files with 25 additions and 11 deletions

View File

@@ -148,6 +148,7 @@
<Compile Include="Source\Map\TransitionCinematic.cs" />
<Compile Include="Source\Networking\BanList.cs" />
<Compile Include="Source\Networking\ChatMessage.cs" />
<Compile Include="Source\Networking\Client.cs" />
<Compile Include="Source\Networking\FileStreamReceiver.cs" />
<Compile Include="Source\Networking\FileStreamSender.cs" />
<Compile Include="Source\Networking\GameServerLogin.cs" />
@@ -991,6 +992,9 @@
<Content Include="README.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="wrap_oal.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Service References\" />

View File

@@ -79,7 +79,7 @@
<Skill name="Weapons" level="10,20"/>
<Skill name="Construction" level="10,20"/>
<Skill name="Electrical Engineering" level="10,20"/>
<Skill name="Medical" level="55,70"/>
<Skill name="Medical" level="60,70"/>
</Skills>
<Items>
<Item name="ID Card"/>

View File

@@ -82,7 +82,7 @@ namespace Barotrauma
default:
SlotPositions[i] = new Vector2(
spacing * 2 + rectWidth + (spacing + rectWidth) * ((i - 6)%5),
GameMain.GraphicsHeight - (spacing + rectHeight) * ((i>10) ? 1 : 2));
GameMain.GraphicsHeight - (spacing + rectHeight) * ((i>10) ? 2 : 1));
break;
}
}

View File

@@ -132,10 +132,17 @@ namespace Barotrauma.Lights
light.Draw(spriteBatch);
}
if (Character.Controlled != null && Character.Controlled.ClosestItem != null)
if (Character.Controlled != null)
{
Character.Controlled.ClosestItem.Draw(spriteBatch, false, true);
Character.Controlled.ClosestItem.IsHighlighted = true;
if (Character.Controlled.ClosestItem != null)
{
Character.Controlled.ClosestItem.Draw(spriteBatch, false, true);
Character.Controlled.ClosestItem.IsHighlighted = true;
}
else if (Character.Controlled.ClosestCharacter != null)
{
Character.Controlled.ClosestCharacter.Draw(spriteBatch);
}
}
spriteBatch.End();

View File

@@ -398,7 +398,11 @@ namespace Barotrauma.Networking
List<CharacterInfo> characterInfos = clients.Select(c => c.characterInfo).ToList();
if (server.Character != null && server.Character.IsDead) characterInfos.Add(server.CharacterInfo);
var waypoints = WayPoint.SelectCrewSpawnPoints(characterInfos, respawnShuttle);
//the spawnpoints where the characters will spawn
var shuttleSpawnPoints = WayPoint.SelectCrewSpawnPoints(characterInfos, respawnShuttle);
//the spawnpoints where they would spawn if they were spawned inside the main sub
//(in order to give them appropriate ID card tags)
var mainSubSpawnPoints = WayPoint.SelectCrewSpawnPoints(characterInfos, Submarine.MainSub);
ItemPrefab divingSuitPrefab = ItemPrefab.list.Find(ip => ip.Name == "Diving Suit") as ItemPrefab;
ItemPrefab oxyPrefab = ItemPrefab.list.Find(ip => ip.Name == "Oxygen Tank") as ItemPrefab;
@@ -411,7 +415,7 @@ namespace Barotrauma.Networking
{
bool myCharacter = i >= clients.Count;
var character = Character.Create(characterInfos[i], waypoints[i].WorldPosition, !myCharacter, false);
var character = Character.Create(characterInfos[i], shuttleSpawnPoints[i].WorldPosition, !myCharacter, false);
if (myCharacter)
{
@@ -426,11 +430,10 @@ namespace Barotrauma.Networking
spawnedCharacters.Add(character);
Vector2 pos = cargoSp == null ? character.Position : cargoSp.Position;
Vector2 pos = cargoSp == null ? character.Position : cargoSp.Position;
if (divingSuitPrefab != null && oxyPrefab != null)
{
var divingSuit = new Item(divingSuitPrefab, pos, respawnShuttle);
var oxyTank = new Item(oxyPrefab, pos, respawnShuttle);
@@ -452,8 +455,8 @@ namespace Barotrauma.Networking
}
spawnedItems.ForEach(s => Item.Spawner.AddToSpawnedList(s));
character.GiveJobItems(waypoints[i]);
character.GiveJobItems(mainSubSpawnPoints[i]);
GameMain.GameSession.CrewManager.characters.Add(character);
}

BIN
Subsurface/wrap_oal.dll Normal file

Binary file not shown.