public static int IndexOfOther(string s, CharacterType t, PositionCode p) { Func <char, bool> isThis = x => { switch (t) { case CharacterType.Letter: return(char.IsLetter(x)); case CharacterType.NotLetter: return(!char.IsLetter(x)); case CharacterType.LetterOrSpace: return(char.IsLetter(x) || (x == Char.Space)); case CharacterType.Number: return(char.IsNumber(x)); default: return(false); } }; if (IsNullOrEmpty(s)) { return(IntValue.MinusOne); } if (p == PositionCode.Start) { for (var i = 0; i < s.Length; i++) { if (isThis(s[i])) { return(i); } } return(IntValue.MinusOne); } for (var i = s.Length - 1; i > IntValue.MinusOne; i--) { if (isThis(s[i])) { return(i); } } return(IntValue.MinusOne); }
public static string AddChars(string s, int len, char c, PositionCode p = PositionCode.Start) { if (ObjectValue.IsNull(s)) { s = string.Empty; } var r = s; if (p == PositionCode.Start) { for (var i = s.Length; i < len; i++) { r = c + r; } } else { for (var i = s.Length; i < len; i++) { r += c; } } return(r); }
public SquadMember(PositionCode position, Player player) { Position = position; Player = player; }
public SquadMember(PositionCode position, int playerId) { Position = position; PlayerId = playerId; }
public static Position FromCode(PositionCode code) { return AllPositions[code]; }
public Position(PositionCode code, Location location, Side side) { Code = code; Location = location; Side = side; }