public void VoidTargetable(TargetableEntityBehaviour entity) { if (targets.ContainsKey(entity.SymbolChain)) { var message = string.Format("unregistering {0}: {1}", entity.SymbolChain, entity); EditorDebug.Log(message); targets.Remove(entity.SymbolChain); entity.SymbolChain = string.Empty; return; } }
public void RegisterTargetable(TargetableEntityBehaviour entity) { if (entity == null) { EditorDebug.Log("targetable is null"); return; } entity.SymbolChain = GenerateSymbolChain(entity.SymbolRange); var message = string.Format("registering {0}: {1}", entity.SymbolChain, entity); EditorDebug.Log(message); targets.Add(entity.SymbolChain, entity); }
public AttackEffect(TargetableEntityBehaviour targetable) { this.targetable = targetable; }
public HideSymbolsEffect(TargetableEntityBehaviour entity) { this.entity = entity; }
public void DeactivateTargetable(TargetableEntityBehaviour targetable) { symbolManager.VoidTargetable(targetable); }
private void AdjustSymbolChainRange(TargetableEntityBehaviour behaviour) { var @from = behaviour.SymbolRange.From + SymbolRangeModifer.From; var to = behaviour.SymbolRange.To + SymbolRangeModifer.To; if (to < from) { to = from; } behaviour.SymbolRange = new Range(@from, to); }
public void VoidTargetable(TargetableEntityBehaviour targetable) { if (targetable == null) { return; } DeactivateTargetable(targetable); entities.Remove(targetable); GameObject.Destroy(targetable.gameObject); }
public void ThrowSnowball(TargetableEntityBehaviour target) { target.TargetHit += OnTargetHit; var snowball = DisplaySnowball(); snowball.DedicatedTarget = target; snowball.Speed = DefaultBallSpeed * SnowballSpeedModifier; snowball.Throw(target.gameObject); }
public NukeEffect(TargetableEntityBehaviour e) : base() { entity = e; }
public TargetableSymbolProjector(TargetableEntityBehaviour targetable) { this.targetable = targetable; this.symbolProjections = new List<TargetableSymbolBehaviour>(); }
// Event Invoke private void InvokePlayerHit(TargetableEntityBehaviour target) { if (!entityManager.Player.IsPlaying("throw")) { entityManager.Player.PlayAnimation("throw"); } var effect = new ActionEffect(() => { entityManager.ThrowSnowball(target); }); ApplyEffect(new DelayedEffect(effect,TimeSpan.FromMilliseconds(200))); }