public void SelectUnit(string msg, int n, bool bEnd, Void0ParamsDelegate fnc, delegateConstraint constr, Void0ParamsDelegate fnc_end, bool bVC = false)
 {
     if(n == 0)
     {
         fnc_end();
         if(bEnd)
         {
             EndEffect();
         }
     }
     else
     {
         _SU_n = n;
         _SU_fnc = fnc;
         _SU_Active = true;
         EnableMouse(msg + "\n\nRight-Click to end the effect. (If the effect says \"up to\", for example)");
         _SU_EndEffect = bEnd;
         _SU_constraint = constr;
         _SU_fnc_end = fnc_end;
         bSelectVanguard = bVC;
     }
 }
 public void SelectInHand(int n, bool bEnd, Void0ParamsDelegate fnc, delegateConstraint constraint, Void0ParamsDelegate fnc_end, string msg)
 {
     _SIH_n = n;
     _SIH_Active = true;
     _SIH_fnc = fnc;
     _SIH_constraint = constraint;
     _SIH_fnc_end = fnc_end;
     _SIH_End = bEnd;
     EnableMouse(msg);
 }
 void SelectUnit(string msg, int n, bool bEnd, Void0ParamsDelegate fnc, delegateConstraint constr, Void0ParamsDelegate fnc_end, bool bVC = false)
 {
     _SU_n = n;
     _SU_fnc = fnc;
     _SU_Active = true;
     EnableMouse(msg);
     _SU_EndEffect = bEnd;
     _SU_constraint = constr;
     _SU_fnc_end = fnc_end;
     bSelectVanguard = bVC;
 }
 public void SelectEnemyUnit(string msg, int n, bool bEndEffect, Void0ParamsDelegate fnc, delegateConstraint constraint, Void0ParamsDelegate fncEnd)
 {
     if(n == 0)
     {
         fncEnd();
         if(bEndEffect)
         {
             EndEffect();
         }
     }
     else
     {
         SEU_Func = fnc;
         SEU_Constraint = constraint;
         SEU_End = fncEnd;
         SEU_bEndEffect = bEndEffect;
         SEU_num = n;
         SEU_Active = true;
         EnableMouse(msg);
     }
 }
 void SelectUnit(string msg, int n, Void0ParamsDelegate fnc, bool bEnd = true)
 {
     _SU_n = n;
     _SU_fnc = fnc;
     _SU_Active = true;
     EnableMouse(msg);
     _SU_EndEffect = bEnd;
     _SU_constraint = null;
     _SU_fnc_end = null;
     bSelectVanguard = false;
 }