1
Fork 0
mirror of https://github.com/thegeneralist01/Scene-Manager-DevRepo synced 2026-01-11 07:30:40 +01:00

Fixed remove all barriers sometimes spawning barriers. Fixed replace barriers sometimes duplicating barriers.

This commit is contained in:
Rich Dunne 2021-05-23 08:29:45 -06:00
parent 20f6cf0df5
commit 58dd8afa22

View file

@ -215,10 +215,9 @@ namespace SceneManager.Managers
case 2: case 2:
foreach (Barrier barrier in Barriers) foreach (Barrier barrier in Barriers)
{ {
path = PathManager.Paths.FirstOrDefault(x => x != null && x.Barriers.Contains(barrier)); if(barrier.Path != null)
if (path != null)
{ {
path.Barriers.Remove(barrier); barrier.Path.Barriers.Remove(barrier);
} }
barrier.Delete(); barrier.Delete();
@ -237,22 +236,19 @@ namespace SceneManager.Managers
internal static void ResetBarriers() internal static void ResetBarriers()
{ {
GameFiber.StartNew(() => //GameFiber.StartNew(() =>
{ //{
var currentBarriers = Barriers.Where(b => b.ModelName != "0xa2c44e80").ToList(); // 0xa2c44e80 is the flare weapon hash var currentBarriers = Barriers.Where(b => b.ModelName != "0xa2c44e80").ToList(); // 0xa2c44e80 is the flare weapon hash
foreach (Barrier barrier in currentBarriers) foreach (Barrier barrier in currentBarriers)
{ {
var newBarrier = new Barrier(barrier, barrier.Invincible, barrier.Immobile, barrier.TextureVariation, barrier.LightsEnabled); var newBarrier = new Barrier(barrier, barrier.Invincible, barrier.Immobile, barrier.TextureVariation, barrier.LightsEnabled);
Barriers.Add(newBarrier); Barriers.Add(newBarrier);
if (barrier.IsValid()) //barrier.Delete();
{
barrier.Delete();
}
Barriers.Remove(barrier); Barriers.Remove(barrier);
} }
currentBarriers.Clear(); currentBarriers.Clear();
}, "Barrier Reset Fiber"); //}, "Barrier Reset Fiber");
} }