//:://///////////////////////////////////////////// //:: OnUse: Toggle Activate //:: x2_plc_used_act //:: Copyright (c) 2003 Bioware Corp. //::////////////////////////////////////////////// /* Simple script to toggle the placeable animation state for placeables that support Activate and DeActivate Animations Placeables are best set to be DeActivated by default with this script. */ //::////////////////////////////////////////////// //:: Created By: Georg Zoeller //:: Created On: 2003-09-10 //::////////////////////////////////////////////// #include "nw_i0_tool" void main() { // * note that nActive == 1 does not necessarily mean the placeable is active // * that depends on the initial state of the object int nActive = GetLocalInt (OBJECT_SELF,"X2_L_PLC_ACTIVATED_STATE"); // * Play Appropriate Animation if (!nActive) { ActionPlayAnimation(ANIMATION_PLACEABLE_ACTIVATE); } else { ActionPlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE); } // * Store New State SetLocalInt(OBJECT_SELF,"X2_L_PLC_ACTIVATED_STATE",!nActive); object oEntered = GetLastUsedBy(); if ((GetLocalInt(GetModule(),"MithPowered") ==9) && (GetLocalInt(OBJECT_SELF, "Once") == 0)) { if (HasItem(oEntered, "AmonsEssense2")) { if (HasItem(oEntered, "TheCrimsonOrchid")) { object oItemToTake1; object oItemToTake2; oItemToTake1 = GetItemPossessedBy(oEntered, "TheCrimsonOrchid"); oItemToTake2 = GetItemPossessedBy(oEntered, "AmonsEssense"); DestroyObject(oItemToTake1); DestroyObject(oItemToTake2); SetLocalInt(OBJECT_SELF, "Once", 1); object oReceptor = GetObjectByTag("AmonSound"); object oDoor1 = GetObjectByTag("ClonePod1"); object oDoor2 = GetObjectByTag("ClonePod2"); ActionSpeakString ("System Powering.."); AssignCommand(OBJECT_SELF, PlaySound("as_cv_boilergrn2")); DelayCommand(1.0, ActionSpeakString ("System Diagnostic..")); DelayCommand(1.0, AssignCommand(OBJECT_SELF, PlaySound("al_mg_crystalnt1"))); DelayCommand(4.0, ActionSpeakString ("All Systems Functioning Within Specified Parameters.")); DelayCommand(6.0, ActionSpeakString ("Accessing and Coding DNA Samples")); DelayCommand(6.0, AssignCommand(OBJECT_SELF, PlaySound("al_mg_pillrlght1"))); DelayCommand(10.0, ActionSpeakString ("Powering Cloning Pods.")); DelayCommand(10.0, AssignCommand(OBJECT_SELF, PlaySound("al_mg_ballmagic1"))); DelayCommand(12.0, ActionSpeakString ("Beginning Synthesis.")); DelayCommand(12.0, AssignCommand(OBJECT_SELF, PlaySound("al_mg_x2eldbrain"))); DelayCommand(12.0, ExecuteScript("proclight1", oReceptor)); DelayCommand(13.0, AssignCommand(OBJECT_SELF, PlaySound("as_na_steamlong1"))); DelayCommand(14.0, AssignCommand(OBJECT_SELF, PlaySound("as_na_steamlong2"))); DelayCommand(16.0, ActionSpeakString ("Beginning Molecular Activation.")); DelayCommand(16.0, AssignCommand (oReceptor, PlaySound ("as_cv_furnace1"))); DelayCommand(16.0, ExecuteScript("proclight2", oReceptor)); DelayCommand(18.0, AssignCommand (oReceptor, PlaySound ("al_mg_pillrlght1"))); DelayCommand(20.0, ExecuteScript("proclight3", oReceptor)); DelayCommand(23.0, ActionSpeakString ("Process Successful.")); DelayCommand(24.0, AssignCommand(oDoor1, PlaySound("as_cv_shopmetal2"))); DelayCommand(24.5, AssignCommand(oDoor2, PlaySound("as_hr_x2chnratl1"))); DelayCommand(25.0, ExecuteScript("create_amon", oReceptor)); DelayCommand(25.0, SetLocked (oDoor1, FALSE)); DelayCommand(25.0, SetLocked (oDoor2, FALSE)); DelayCommand(25.5, ActionOpenDoor(oDoor1)); DelayCommand(25.5, ActionOpenDoor(oDoor2)); } } } else { ActionSpeakString ("Primary Systems Are Offline, or you do not have Amon's Essense or the Crimson Orchid."); } }