protected override void GetCommands(Entity entity) { if (_cooldownCounter > 0) { _cooldownCounter--; return; } if (InputSource.BasicAttackHeld) { Vector2 velocity = InputSource.CursorPosition.normalized * 2; float knockbackSpeed = 0.8f; _command = (attackingEntity) => { new PlayerGunProjectile(attackingEntity, entity.Position, velocity, knockbackSpeed); _cooldownCounter = CooldownTime; TrackingCircle tc = attackingEntity.GetController <TrackingCircle>(); if (tc != null) { tc.CurrentRadius += 0.4f; } }; } }
public override IEntityCallbackUser CreateController() { TrackingCircle c = new TrackingCircle(outerCirclePrefab, innerCirclePrefab); return(c); }