(30c3f2268) Fixed server crashing when attempting to send voip from living players to spectators
This commit is contained in:
@@ -84,6 +84,9 @@ namespace Barotrauma.Networking
|
|||||||
//both spectating, no need to do radio/distance checks
|
//both spectating, no need to do radio/distance checks
|
||||||
if (recipientSpectating && senderSpectating) { return true; }
|
if (recipientSpectating && senderSpectating) { return true; }
|
||||||
|
|
||||||
|
//spectators can hear non-spectators
|
||||||
|
if (!senderSpectating && recipientSpectating) { return false; }
|
||||||
|
|
||||||
//sender can't speak
|
//sender can't speak
|
||||||
if (sender.Character != null && sender.Character.SpeechImpediment >= 100.0f) { return false; }
|
if (sender.Character != null && sender.Character.SpeechImpediment >= 100.0f) { return false; }
|
||||||
|
|
||||||
|
|||||||
@@ -126,6 +126,10 @@ namespace Barotrauma.Networking
|
|||||||
|
|
||||||
public static float GetGarbleAmount(Entity listener, Entity sender, float range, float obstructionmult = 2.0f)
|
public static float GetGarbleAmount(Entity listener, Entity sender, float range, float obstructionmult = 2.0f)
|
||||||
{
|
{
|
||||||
|
if (listener == null || sender == null)
|
||||||
|
{
|
||||||
|
return 0.0f;
|
||||||
|
}
|
||||||
if (listener.WorldPosition == sender.WorldPosition) { return 0.0f; }
|
if (listener.WorldPosition == sender.WorldPosition) { return 0.0f; }
|
||||||
|
|
||||||
float dist = Vector2.Distance(listener.WorldPosition, sender.WorldPosition);
|
float dist = Vector2.Distance(listener.WorldPosition, sender.WorldPosition);
|
||||||
|
|||||||
Reference in New Issue
Block a user