Skip to content

Commit 7f3fc15

Browse files
committed
s3-s4 scripted sequence, unfinished
1 parent 9cbb487 commit 7f3fc15

File tree

5 files changed

+64
-3
lines changed

5 files changed

+64
-3
lines changed

Data/Browncoats.rte/Activities/RefineryAssault.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,7 @@ function RefineryAssault:StartActivity(newGame)
185185
table.insert(self.stageFunctionTable, self.MonitorStage2);
186186
table.insert(self.stageFunctionTable, self.MonitorStage3);
187187
table.insert(self.stageFunctionTable, self.MonitorStage4);
188+
table.insert(self.stageFunctionTable, self.MonitorStage5);
188189

189190
if newGame then
190191

Data/Browncoats.rte/Activities/RefineryAssaultFunctions.lua

Lines changed: 49 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,7 @@ function RefineryAssault:HandleMessage(message, object)
177177
self.stage3ConsolesBroken = 3
178178
self.HUDHandler:RemoveObjective(self.humanTeam, "S3DestroyConsoles");
179179
self.saveTable.enemyActorTables.stage3FacilityOperator = {};
180+
self.stage3DrillOverloaded = true;
180181
end
181182

182183

@@ -381,6 +382,19 @@ function RefineryAssault:SetupStartingActors()
381382

382383
table.insert(self.saveTable.enemyActorTables.stage3FacilityOperator, facilityOperator);
383384

385+
-- Stage 3 and 4 door stuff, might as well save it
386+
387+
self.saveTable.stage3Doors = {};
388+
self.saveTable.stage4Door = {};
389+
390+
for actor in MovableMan.AddedActors do
391+
if actor:NumberValueExists("BlastDoorOpening") then
392+
table.insert(self.saveTable.stage3Doors, actor);
393+
elseif actor:NumberValueExists("BlastDoorStuck") then
394+
table.insert(self.saveTable.stage4Door, actor);
395+
end
396+
end
397+
384398
end
385399

386400
function RefineryAssault:SetupFirstStage()
@@ -733,21 +747,53 @@ function RefineryAssault:MonitorStage3()
733747

734748
end
735749

736-
if self.stage3ConsolesBroken == 3 and self.stage3FacilityOperatorKilled and self.stage3DrillOverloaded then
750+
if self.stage3ConsolesBroken == 3 and self.stage3FacilityOperatorKilled and self.stage3DrillOverloaded and not self.stage3DoorSequenceTimer then
751+
752+
-- initiate scripted sequence
753+
754+
self.stage3DoorSequenceTimer = Timer();
737755

738756
self.HUDHandler:RemoveObjective(self.humanTeam, "S3OpenDoors");
757+
758+
local pos = SceneMan.Scene:GetOptionalArea("RefineryAssault_S3DoorSequenceArea").Center;
759+
760+
local soundContainer = CreateSoundContainer("Yskely Refinery Blast Door Alarm", "Browncoats.rte");
761+
soundContainer:Play(pos);
762+
763+
self.HUDHandler:QueueCameraPanEvent(self.humanTeam, "S3DoorSequence", pos, 0.08, 10000, true);
764+
765+
elseif self.stage3DoorSequenceTimer and self.stage3DoorSequenceTimer:IsPastSimMS(7000) then
739766

767+
-- Find doors
768+
769+
for k, door in pairs(self.saveTable.stage3Doors) do
770+
print("hellotard")
771+
if MovableMan:ValidMO(door) then
772+
ToADoor(door):OpenDoor();
773+
end
774+
end
775+
740776
self:GetBanner(GUIBanner.YELLOW, 0):ShowText("DOORS OPEN WOW!", GUIBanner.FLYBYLEFTWARD, 1500, Vector(FrameMan.PlayerScreenWidth, FrameMan.PlayerScreenHeight), 0.4, 4000, 0)
741777
self.Stage = 4;
742778

743779
-- Capturables
744780

745-
MovableMan:SendGlobalMessage("ActivateCapturable_RefineryS3BuyDoorConsole4");
746-
781+
MovableMan:SendGlobalMessage("ActivateCapturable_RefineryS3BuyDoorConsole4");
782+
747783
end
748784

749785
end
750786

751787
function RefineryAssault:MonitorStage4()
752788

789+
for k, door in pairs(self.saveTable.stage4Door) do
790+
if not door or not MovableMan:ValidMO(door) then
791+
-- stage 5 crap
792+
end
793+
end
794+
795+
end
796+
797+
function RefineryAssault:MonitorStage5()
798+
753799
end

Data/Browncoats.rte/Scenes/Sounds.ini

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@ AddSoundContainer = SoundContainer
66
Immobile = 1
77
Priority = 127 // just above the default
88
AddSound = Browncoats.rte/Scenes/Sounds/Refinery_OilSpoutEngage.flac
9+
10+
AddSoundContainer = SoundContainer
11+
PresetName = Yskely Refinery Blast Door Alarm
12+
AttenuationStartDistance = 400
13+
Priority = 127 // just above the default
14+
AddSound = Browncoats.rte/Scenes/Sounds/Refinery_BlastDoorAlarm.flac
915

1016
AddSoundContainer = SoundContainer
1117
PresetName = Yskely Refinery Ambience Ext
Binary file not shown.

Data/Browncoats.rte/Scenes/Yskely Refineryv3.ini

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128139,6 +128139,14 @@ AddScene = Scene
128139128139
Width = 84
128140128140
Height = 63
128141128141
Name = CaptureArea_RefineryS3DrillOverloadConsole
128142+
AddArea = Area
128143+
AddBox = Box
128144+
Corner = Vector
128145+
X = 11808
128146+
Y = 5181.5
128147+
Width = 120
128148+
Height = 81
128149+
Name = RefineryAssault_S3DoorSequenceArea
128142128150
GlobalAcceleration = Vector
128143128151
X = 0
128144128152
Y = 20

0 commit comments

Comments
 (0)