Use QueueFree instead of RemoveChild

main
copygirl 5 years ago
parent 9888c53d04
commit 4f0d5a537e
  1. 3
      src/Extensions.cs
  2. 4
      src/Network.cs

@ -2,9 +2,6 @@ using Godot;
public static class Extensions public static class Extensions
{ {
public static void RemoveFromParent(this Node @this)
=> @this.GetParent().RemoveChild(@this);
public static T Init<T>(this PackedScene @this) public static T Init<T>(this PackedScene @this)
where T : Node where T : Node
{ {

@ -78,7 +78,7 @@ public class Network : Node
LocalPlayer.Instance.NetworkID = -1; LocalPlayer.Instance.NetworkID = -1;
foreach (var player in _playersById.Values) foreach (var player in _playersById.Values)
if (!player.IsLocal) if (!player.IsLocal)
player.RemoveFromParent(); player.QueueFree();
_playersById.Clear(); _playersById.Clear();
} }
@ -224,7 +224,7 @@ public class Network : Node
private void OnPeerDisconnected(int id) private void OnPeerDisconnected(int id)
{ {
GetPlayer(id)?.RemoveFromParent(); GetPlayer(id)?.QueueFree();
_playersById.Remove(id); _playersById.Remove(id);
} }
} }

Loading…
Cancel
Save