private void OnBridgeBroken(object sender) { if (WPFMonoBehaviour.levelManager.gameState == LevelManager.GameState.Running || WPFMonoBehaviour.levelManager.gameState == LevelManager.GameState.PreviewWhileRunning) { if (!Bridge.achievementSent && DeviceInfo.ActiveDeviceFamily == DeviceInfo.DeviceFamily.Ios) { Singleton <SocialGameManager> .Instance.ReportAchievementProgress("grp.LPA_BRIDGE_BREAK", 100.0); } Bridge.achievementSent = true; Singleton <AudioManager> .Instance.SpawnOneShotEffect(Singleton <GameManager> .Instance.gameData.commonAudioCollection.bridgeBreak, base.transform.position); } foreach (JointBreakEvent jointBreakEvent in this.jbEvents) { JointBreakEvent jointBreakEvent2 = jointBreakEvent; jointBreakEvent2.onJointBreak = (JointBreakEvent.JointBreak)Delegate.Remove(jointBreakEvent2.onJointBreak, new JointBreakEvent.JointBreak(this.OnBridgeBroken)); } }
private void SubscribeToJointBreaks() { if (DeviceInfo.ActiveDeviceFamily != DeviceInfo.DeviceFamily.Ios) { return; } if (string.IsNullOrEmpty("grp.LPA_BRIDGE_BREAK")) { return; } if (Singleton <AchievementData> .Instance.GetAchievement("grp.LPA_BRIDGE_BREAK").completed) { return; } this.jbEvents = new List <JointBreakEvent>(base.GetComponentsInChildren <JointBreakEvent>()); foreach (JointBreakEvent jointBreakEvent in this.jbEvents) { JointBreakEvent jointBreakEvent2 = jointBreakEvent; jointBreakEvent2.onJointBreak = (JointBreakEvent.JointBreak)Delegate.Combine(jointBreakEvent2.onJointBreak, new JointBreakEvent.JointBreak(this.OnBridgeBroken)); } }