private void StartSmallSnoreInternal(object data) { snoreHandle.ClearScheduler(); KBatchedAnimController component = base.smi.master.GetComponent <KBatchedAnimController>(); bool symbolVisible; Matrix4x4 symbolTransform = component.GetSymbolTransform(HeadHash, out symbolVisible); if (symbolVisible) { Vector4 column = symbolTransform.GetColumn(3); Vector3 position = column; position.z = Grid.GetLayerZ(Grid.SceneLayer.FXFront); snoreEffect = FXHelpers.CreateEffect("snore_fx_kanim", position, null, false, Grid.SceneLayer.Front, false); snoreEffect.destroyOnAnimComplete = true; snoreEffect.Play("snore", KAnim.PlayMode.Loop, 1f, 0f); } }
private void Refresh() { if (!IsThereLiquid()) { if (!destroyHandle.IsValid) { destroyHandle = GameScheduler.Instance.Schedule("DestroyMoppable", 1f, delegate { TryDestroy(); }, this, null); } } else if (destroyHandle.IsValid) { destroyHandle.ClearScheduler(); } }
protected override void OnCleanUp() { updateHandle.ClearScheduler(); base.OnCleanUp(); }
public override void ClearTarget() { base.ClearTarget(); refreshHandle.ClearScheduler(); }
protected override void OnCleanUp() { base.OnCleanUp(); refreshHandle.ClearScheduler(); Components.Equipment.Remove(this); }