diff --git a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/Elimination/EliminationHud.cs b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/Elimination/EliminationHud.cs index ccdfb9277..ecbbeccfa 100644 --- a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/Elimination/EliminationHud.cs +++ b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/Elimination/EliminationHud.cs @@ -122,6 +122,7 @@ public void Update() public void MatchEnded(IMyFaction winner) { + Log.Info("EliminationHud.cs:125 MatchEnded (" + winner?.Name + ")"); _matchEnded = true; var winnerPoints = 0; foreach (var banner in Banners) diff --git a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHGamemode.cs b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHGamemode.cs index 274dd7ffd..151ea2ae9 100644 --- a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHGamemode.cs +++ b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHGamemode.cs @@ -58,7 +58,7 @@ public override void StartRound(string[] arguments = null) public override void StopRound() { - _winningFaction = ControlPoint._zoneOwner; + _winningFaction = ControlPoint?._zoneOwner; base.StopRound(); SUGMA_SessionComponent.I.GetComponent("KOTHHud")?.MatchEnded(_winningFaction); diff --git a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHHud.cs b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHHud.cs index 0a8c4756c..2a899b44c 100644 --- a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHHud.cs +++ b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/GameModes/KingOfTheHill/KOTHHud.cs @@ -130,6 +130,7 @@ public void Update() public void MatchEnded(IMyFaction winner) { + Log.Info("KOTHHud.cs:133 MatchEnded (" + winner?.Name + ")"); _captureIndicator.Visible = false; _captureLabel.Visible = false; diff --git a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/Utilities/SUtils.cs b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/Utilities/SUtils.cs index 525c171a9..aec9bd4a1 100644 --- a/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/Utilities/SUtils.cs +++ b/Gamemode Mods/StarCore SUGMA Gamemodes/Data/Scripts/SUGMA/Utilities/SUtils.cs @@ -124,7 +124,7 @@ public static void ClearBoard(bool resetFactions) foreach (var player in PlayerTracker.I.AllPlayers) { (player.Value.Controller.ControlledEntity as IMyCockpit)?.RemovePilot(); - player.Value.Character?.SetPosition(spawnPos + RandVector(-50, 50) * Vector3D.Right); + player.Value.Character?.Teleport(MatrixD.CreateWorld(spawnPos + RandVector(-50, 50) * Vector3D.Right)); } } else