// \IPlayerCharacter // IDisposable void IDisposable.Dispose() { NumLives.Dispose(); Health.Dispose(); Position.Dispose(); IsActive.Dispose(); }
public void Dispose() { if (InputSource is IDisposable) { (InputSource as IDisposable).Dispose(); } _compositeDisposable.Dispose(); Health.Dispose(); }
public void SetUIMovementProperty(FloatReactiveProperty prop) { #if !UNITY_EDITOR if (m_UIMove != null) { m_UIMove.Dispose(); } #endif m_UIMove = prop; #if !UNITY_EDITOR m_UIMove.Subscribe(x => m_Moving.Value = x); #endif }
private void Logo_Update() { if (p_flag_Update) { //閾値判定を行い、引っかかるならば、透明度を変更して抜ける foreach (var item in t_Logo_opacity) { if (rp_Logo_opacity.Value >= item.x) { rp_Logo_opacity.Value -= item.y * Time.deltaTime; return; } } //すべての閾値に引っかからなければ、Streamを停止して、Logoを破壊 rp_Logo_opacity.Dispose(); Destroy(this.gameObject); } }
public void OnCollisionEnter(Collision collision) { if (collision.gameObject.GetComponent <Grinder>()) { var dot = Mathf.Clamp01(Mathf.Abs(Vector3.Dot(lastFriction.normalized, collision.relativeVelocity.normalized))); grindsLeft.Value = Mathf.Clamp(grindsLeft.Value - Mathf.Clamp(collision.relativeVelocity.magnitude * (1f - dot), 0f, Mathf.Min(grindsLeft.Value, 1f)), 0, grindsUntilSharp); lastFriction = collision.relativeVelocity; if (sparkParticlesGameObject) { var sparkCount = (int)(dot * maxSparks + 0.5f); sparkParticles.Emit(sparkCount); } if (grindsLeft.Value <= 0f) { grindsLeft.Dispose(); Replace(); } } }
protected virtual void Dispose() { _compositeDisposable.Dispose(); Health.Dispose(); }