// // CPT operator / SondeerGame // This source file is (c) by Deltares. // - October 2014 // /* This is the entire interior of the SondeerWagen which can easily be spawned where needed */ class SondeerWagenInterior_Geomil extends SondeerWagenInterior placeable; //var OfficeObject osondeerbuis1; //var OfficeObject osondeerbuis2; //var OfficeObject odeur; //var OfficeObject opcknoppen; //var OfficeObject opcscherm; //var OfficeObject ostaalborstel; //var OfficeObject osondeertoren; //var OfficeObject okoffiebrief; var OfficeObject obuizenhouder; function PostBeginPlay() { SpawnInteriorActors(); } function Stempelen() { local rotator rrot; local vector vpos; super.Stempelen(); /// Reset object positions: rrot = self.Rotation; vpos = self.Location; obuizenhouder.SetLocation(vpos); obuizenhouder.Setrotation(rrot); } /// Spawn our interior actors /// Tags are used in "MouseItemInteraction.uc", which opens all the dialogs as well. function SpawnInteriorActors() { local GeoPlayerController GeoPC; local PlayerController P; local bool brokenconusleft; Log("Geomil interior"); //local vector loc; // osondeerbuis1 = Spawn(class'OfficeObject', self,'sondeerstang', Location, Rotation); odeur = Spawn(class'OfficeObject', self, 'sondeerdeur',Location,Rotation); odeur.bMouseEnabled = false; opcknoppen = Spawn(class'OfficeObject', self, 'stempelen',Location,Rotation); opcscherm = Spawn(class'OfficeObject', self, 'sondeercomputer' ,Location,Rotation); ostaalborstel = Spawn(class'OfficeObject', self, 'borstel',Location,Rotation); // ocomputer = Spawn(class'OfficeObject', self,,',Rotation); osondeertoren = Spawn(class'OfficeObject', self, 'sondeertoren',Location,Rotation); okoffiebrief = Spawn(class'OfficeObject', self, 'koffiebrief',Location,Rotation); obuizenhouder = Spawn(class'OfficeObject', self, 'buizenhouder',Location,Rotation); obuizenhouder.bMouseEnabled = false; oontluchten = Spawn(class'OfficeObject', self, 'ontluchten',Location,Rotation); foreach AllActors(class'PlayerController', P) { if(P.IsA('GeoPlayerController')) { GeoPC = GeoPlayerController(P); } GeoPC.bCableBroken = Rand(2) == 1; } if (GeoPC.bCableBroken) { ocable = Spawn(class'OfficeObject', self, 'cablebroken',Location,Rotation); ocable.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_kabel_gebroken' ); } else { ocable = Spawn(class'OfficeObject', self, 'cable',Location,Rotation); ocable.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_kabel' ); ocable.bMouseEnabled = false; } odeur.SetStaticMesh( StaticMesh'SondeerMeester2.interior.binnenkant_auto_deur' ); opcknoppen.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_pcknoppen' ); opcscherm.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_pcscherm' ); osondeertoren.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_sondeertoren' ); ostaalborstel.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_staalborstel' ); ostaalborstel.bMouseEnabled = false; okoffiebrief.SetStaticMesh( StaticMesh'SondeerMeester2.interior.binnenkant_auto_koffiebrief' ); oontluchten.SetStaticMesh( StaticMesh'SondeerMeester2.interior_Geomil.Geomil_binnenkant_auto_ontluchten' ); //ocomputer.SetStaticMesh( StaticMesh'SondeerMeester2.interior.binnenkant_auto_pcs' ); brokenconusleft = (Rand(2) == 1); osondeerbuis1 = Spawn(class'OfficeObject_PickupSondeerConus', self,'pickupconus1', Location, Rotation); OfficeObject_PickupSondeerConus(osondeerbuis1).SetOldConus(true, brokenconusleft); osondeerbuis2 = Spawn(class'OfficeObject_PickupSondeerConus', self,'pickupconus2', Location, Rotation); OfficeObject_PickupSondeerConus(osondeerbuis2).SetOldConus(false, brokenconusleft); oopdrachtbon = Spawn(class'OfficeObject', self, 'opdrachtboninterior',Location,Rotation); oopdrachtbon.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_opdrachtbon' ); /// In this class we only toggle between Deltares or AP: oCabine = Spawn(class'OfficeObject', self, 'cabine',Location,Rotation); oCabine.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.binnenkant_auto_cabine_geomil' ); oCabine.bMouseEnabled = false; obuizenhouder.SetStaticMesh( StaticMesh'SondeerMeester2.interior_geomil.geomil_binnenkant_auto_buizenhouder' ); } event Destroyed() { Super.Destroyed(); DestroyInteriorActors(); } function DestroyInteriorActors() { osondeerbuis1.destroy(); osondeerbuis2.destroy(); opcknoppen.destroy(); opcscherm.destroy(); ostaalborstel.destroy(); osondeertoren.destroy(); okoffiebrief.destroy(); odeur.destroy(); oontluchten.destroy(); obuizenhouder.destroy(); oopdrachtbon.destroy(); oCabine.destroy(); //ocomputer.destroy(); } defaultproperties { StaticMesh=StaticMesh'SondeerMeester2.interior_geomil.Geomil_binnenkant_auto' DrawType=DT_StaticMesh bBlockActors = true; bBlockPlayers = true; bBlockKarma = true; bCollideActors = true; }