mirror of
https://github.com/thegeneralist01/Scene-Manager-DevRepo
synced 2026-01-11 15:40:29 +01:00
Refactored to allow barriers to be respawned if they were deleted outside of the plugin
This commit is contained in:
parent
ca6a272276
commit
91e154a866
1 changed files with 14 additions and 13 deletions
|
|
@ -179,24 +179,25 @@ namespace SceneManager
|
||||||
{
|
{
|
||||||
RemoveBarrier();
|
RemoveBarrier();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (selectedItem == resetBarriers)
|
if (selectedItem == resetBarriers)
|
||||||
{
|
{
|
||||||
var currentBarriers = barriers.Where(b => b.Object && b.Object.Model.Name != "0xa2c44e80").ToList();
|
var currentBarriers = barriers.Where(b => b.Model.Name != "0xa2c44e80").ToList(); // 0xa2c44e80 is the flare weapon hash
|
||||||
foreach (Barrier oldBarrier in currentBarriers)
|
foreach (Barrier barrier in currentBarriers)
|
||||||
{
|
{
|
||||||
if (oldBarrier.Object)
|
var newBarrier = new Rage.Object(barrier.Model, barrier.Position, barrier.Rotation);
|
||||||
{
|
newBarrier.SetPositionWithSnap(barrier.Position);
|
||||||
var newBarrier = new Rage.Object(oldBarrier.Object.Model, oldBarrier.Position, oldBarrier.Rotation);
|
Rage.Native.NativeFunction.Natives.SET_ENTITY_DYNAMIC(newBarrier, true);
|
||||||
newBarrier.SetPositionWithSnap(oldBarrier.Position);
|
newBarrier.IsPositionFrozen = false;
|
||||||
Rage.Native.NativeFunction.Natives.SET_ENTITY_DYNAMIC(newBarrier, true);
|
Rage.Native.NativeFunction.Natives.SET_DISABLE_FRAG_DAMAGE(newBarrier, true);
|
||||||
newBarrier.IsPositionFrozen = false;
|
barriers.Add(new Barrier(newBarrier, newBarrier.Position, newBarrier.Heading));
|
||||||
Rage.Native.NativeFunction.Natives.SET_DISABLE_FRAG_DAMAGE(newBarrier, true);
|
|
||||||
barriers.Add(new Barrier(newBarrier, newBarrier.Position, newBarrier.Heading));
|
|
||||||
|
|
||||||
oldBarrier.Object.Delete();
|
|
||||||
barriers.Remove(oldBarrier);
|
if (barrier.Object)
|
||||||
|
{
|
||||||
|
barrier.Object.Delete();
|
||||||
}
|
}
|
||||||
|
barriers.Remove(barrier);
|
||||||
}
|
}
|
||||||
currentBarriers.Clear();
|
currentBarriers.Clear();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue