Exemple #1
0
    /// <summary>
    /// Generate a random pawn data
    /// </summary>
    /// <returns>The random pawn.</returns>
    public static Pawn GetRandomPawn(PawnSide side)
    {
        Func <string> GetName = () =>
        {
            string[] availables = new string[] {
                "Fighter",
                "Mage",
                "Hunter",
                "Orc",
                "Goblin"
            };
            int count       = availables.Length;
            int resultIndex = UnityEngine.Random.Range(0, count);
            return(availables [resultIndex]);
        };

        Func <string, PawnClassesDef> GetDef =
            (string name) => Resources.Load <PawnClassesDef> ("Mercs/Data/" + name);


        return(GeneratePawn(
                   GetDef(GetName()),
                   side
                   ));
    }
Exemple #2
0
 public static Pawn GeneratePawn(PawnClassesDef defData, PawnSide side)
 {
     return(new Pawn(defData, side));
 }
Exemple #3
0
 // Prevent instantiating a pawn
 private Pawn(PawnClassesDef defData, PawnSide side)
 {
     PawnDef  = defData;
     pawnSide = side;
 }