public override void OnDetached(AbstractEntity flame) { (flame as Entity).OnUpdate -= OnUpdate; flame.GetProperty <CollisionProperty>("collision").OnContact -= FlamethrowerCollisionHandler; flame.GetBoolAttribute(CommonNames.Fueled).ValueChanged -= FlameFuelChangeHandler; player.GetVector3Attribute(CommonNames.Position).ValueChanged -= PlayerPositionHandler; }
public override void OnAttached(AbstractEntity entity) { base.OnAttached(entity); if (entity.HasBool(CommonNames.Interactable)) { entity.GetBoolAttribute(CommonNames.Interactable).ValueChanged += InteractableChanged; } }
public override void OnDetached(AbstractEntity entity) { if (entity.HasVector3(CommonNames.Interactable)) { entity.GetBoolAttribute(CommonNames.Interactable).ValueChanged -= InteractableChanged; } base.OnDetached(entity); }
public override void OnDetached(AbstractEntity entity) { Game.Instance.Simulation.CurrentUpdateQueue.AddUpdate(new RemoveRenderableUpdate((Renderable)Updatable)); if (entity.HasVector3(CommonNames.Position)) { entity.GetVector3Attribute(CommonNames.Position).ValueChanged -= PositionChanged; } if (entity.HasBool(CommonNames.Hide)) { entity.GetBoolAttribute(CommonNames.Hide).ValueChanged -= HideChanged; } base.OnDetached(entity); }
public override void OnAttached(AbstractEntity entity) { base.OnAttached(entity); if (entity.HasVector3(CommonNames.Position)) { entity.GetVector3Attribute(CommonNames.Position).ValueChanged += PositionChanged; } if (entity.HasVector3(CommonNames.Velocity)) { entity.GetVector3Attribute(CommonNames.Velocity).ValueChanged += VelocityChanged; } if (entity.HasBool(CommonNames.Dead)) { entity.GetBoolAttribute(CommonNames.Dead).ValueChanged += DeadChanged; } Game.Instance.Simulation.CurrentUpdateQueue.AddUpdate(new AddRenderableUpdate((Renderable)Updatable)); }