private List <TownSizeDigest> shuffleTownSize(int little, int midium, int big) { List <TownSizeDigest> sizes = new List <TownSizeDigest>(); for (int i = 0; i < little; i++) { sizes.Add(TownSizeDigest.SMALL); } for (int i = 0; i < midium; i++) { sizes.Add(TownSizeDigest.MEDIUM); } for (int i = 0; i < big; i++) { sizes.Add(TownSizeDigest.BIG); } int index = little + midium + big - 1; while (index > 1) { TownSizeDigest size = sizes[index]; int rand = Random.Range(0, index + 1); sizes[index] = sizes[rand]; sizes[rand] = size; index--; } return(sizes); }
private int getSize(TownSizeDigest digest) { switch (digest) { case TownSizeDigest.SMALL: return(Random.Range(1, 8)); case TownSizeDigest.MEDIUM: return(Random.Range(8, 16)); case TownSizeDigest.BIG: return(Random.Range(16, 25)); } throw new System.ArgumentException("unkonwn sizeDigest"); }