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);
    }