private void PlaySE(SoundPack.SystemSE se) { if (!Singleton <Resources> .IsInstance()) { return; } SoundPack soundPack = Singleton <Resources> .Instance.SoundPack; if (Object.op_Equality((Object)soundPack, (Object)null)) { return; } soundPack.Play(se); }
public void PlaySE(SoundPack.SystemSE se) { if (!this.Initialized || !this.IsActiveControl) { return; } SoundPack soundPack = !Singleton <Resources> .IsInstance() ? (SoundPack)null : Singleton <Resources> .Instance.SoundPack; if (Object.op_Equality((Object)soundPack, (Object)null)) { return; } soundPack.Play(se); }
private void Initialize(PlayerActor player) { this.hasAnimal.SetState(AnimalState.WithPlayer, (Action)null); player.CameraControl.CrossFade.FadeStart(-1f); Quaternion quaternion = Quaternion.LookRotation(Vector3.op_Subtraction(this.hasAnimal.Position, player.Position), Vector3.get_up()); Vector3 eulerAngles = ((Quaternion) ref quaternion).get_eulerAngles(); eulerAngles.x = (__Null)(double)(eulerAngles.z = (__Null)0.0f); player.Rotation = Quaternion.Euler(eulerAngles); this.hasAnimal.SetWithActorGetPoint((Actor)player); this.hasAnimal.PlayInAnim(AnimationCategoryID.Idle, 0, (Action)null); int _poseID = !this.getAnimalFlag ? 1 : 0; this.SetPlayerAnimationState(player, _poseID); this.onEndGetAnimal = new Subject <Unit>(); DisposableExtensions.AddTo <IDisposable>((M0)ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>(Observable.TakeUntilDestroy <Unit>((IObservable <M0>) this.onEndGetAnimal, (Component)player), 1), (Action <M0>)(_ => { this.hasAnimal.Destroy(); this.ToEnd(player); })), (ICollection <IDisposable>) this.disposable); this.onEndInAnimation = new Subject <Unit>(); DisposableExtensions.AddTo <IDisposable>((M0)ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>(Observable.TakeUntilDestroy <Unit>((IObservable <M0>) this.onEndInAnimation, (Component)player), 1), (Action <M0>)(_ => { if (this.getAnimalFlag) { this.hasAnimal.PlayInAnim(AnimationCategoryID.Locomotion, 0, (Action)null); this.hasAnimal.SetFloat(Singleton <Resources> .Instance.AnimalDefinePack.AnimatorInfo.LocomotionParamName, 0.5f); this.isWait = (Func <PlayerActor, bool>)(actor => !this.isNextEnabled); this.onEndAction = this.onEndGetAnimal; IConnectableObservable <TimeInterval <float> > iconnectableObservable = (IConnectableObservable <TimeInterval <float> >)Observable.Publish <TimeInterval <float> >((IObservable <M0>)Observable.FrameTimeInterval <float>((IObservable <M0>)ObservableEasing.Linear(1f, true), false)); iconnectableObservable.Connect(); Vector3 _start = this.hasAnimal.Position; Vector3 _end = Vector3.op_Addition(_start, Vector3.op_Multiply(this.hasAnimal.Forward, 1f)); DisposableExtensions.AddTo <IDisposable>((M0)ObservableExtensions.Subscribe <TimeInterval <float> >(Observable.TakeUntilDestroy <TimeInterval <float> >((IObservable <M0>)iconnectableObservable, (Component)player), (Action <M0>)(x => this.hasAnimal.Position = Vector3.Lerp(_start, _end, ((TimeInterval <float>) ref x).get_Value()))), (ICollection <IDisposable>) this.disposable); DisposableExtensions.AddTo <IDisposable>((M0)ObservableExtensions.Subscribe <TimeInterval <float>[]>(Observable.TakeUntilDestroy <TimeInterval <float>[]>((IObservable <M0>)Observable.WhenAll <TimeInterval <float> >((IObservable <M0>[]) new IObservable <TimeInterval <float> >[1] { (IObservable <TimeInterval <float> >)iconnectableObservable }), (Component)player), (Action <M0>)(__ => this.isNextEnabled = true)), (ICollection <IDisposable>) this.disposable); if (!Singleton <Resources> .IsInstance()) { return; } SoundPack soundPack = Singleton <Resources> .Instance.SoundPack; AnimalDefinePack.SoundIDInfo soundId = Singleton <Resources> .Instance.AnimalDefinePack.SoundID; AudioSource audioSource = (AudioSource)null; switch (this.hasAnimal.AnimalType) { case AnimalTypes.Cat: audioSource = soundPack.Play(soundId.GetCat, Sound.Type.GameSE3D, 0.0f); break; case AnimalTypes.Chicken: audioSource = soundPack.Play(soundId.GetChicken, Sound.Type.GameSE3D, 0.0f); break; } if (!Object.op_Inequality((Object)audioSource, (Object)null)) { return; } audioSource.Stop(); ((Component)audioSource).get_transform().SetPositionAndRotation(this.hasAnimal.Position, this.hasAnimal.Rotation); audioSource.Play(); } else { if (this.hasAnimal is WildGround) { (this.hasAnimal as WildGround).StartAvoid(player.Position, (Action)null); } else { this.hasAnimal.BadMood = true; this.hasAnimal.PlayOutAnim((Action)(() => this.hasAnimal.SetState(AnimalState.Locomotion, (Action)null))); } this.isWait = (Func <PlayerActor, bool>)(actor => true); this.ToEnd(player); } })), (ICollection <IDisposable>) this.disposable); this.onStart = new Subject <Unit>(); DisposableExtensions.AddTo <IDisposable>((M0)ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>(Observable.TakeUntilDestroy <Unit>((IObservable <M0>) this.onStart, (Component)player), 1), (Action <M0>)(_ => { player.Animation.PlayInAnimation(this.playerPlayState.MainStateInfo.InStateInfo.EnableFade, this.playerPlayState.MainStateInfo.InStateInfo.FadeSecond, this.playerPlayState.MainStateInfo.FadeOutTime, this.playerPlayState.Layer); this.isWait = (Func <PlayerActor, bool>)(actor => actor.Animation.PlayingInAnimation); this.onEndAction = this.onEndInAnimation; })), (ICollection <IDisposable>) this.disposable); this.onEndAction = this.onStart; }