예제 #1
0
 private void onStateChange(pChainedPuzzleState arg1, int arg2)
 {
     if (arg1.status == eChainedPuzzleStatus.Active && id == arg2)
     {
         DoorSequence();
     }
     if (arg1.status == eChainedPuzzleStatus.Solved && id == arg2)
     {
         Patch_StateChange.TriggerEnd();
         GuiManager.PlayerLayer.m_wardenIntel.ShowSubObjectiveMessage("", "<color=orange><size=200%>PRIORITY WARNING</size></color>\nLarge active bio-mass detected in <color=orange>ZONE_894</color>", false, null);
         try
         {
             foreach (CollectedLight light in lightCollection.collectedLights)
             {
                 light.light.ChangeIntensity(0.8f);
                 light.light.ChangeColor(new Color(1, 1, 1, 1));
             }
         }
         catch { }
         sound.Post(EVENTS.LIGHTS_ON_INTENSITY_1);
     }
 }
예제 #2
0
 public static void Postfix(pChainedPuzzleState newState, ChainedPuzzleInstance __instance)
 {
     OnInteract?.Invoke(newState, __instance.GetInstanceID());
 }