private static void EnsureValidRole(eEnemyGroupType type, eEnemyRoleDifficulty difficulty, ref eEnemyRole role)
 {
     if (type == eEnemyGroupType.Patrol)
     {
         role = eEnemyRole.Scout;
     }
 }
 public pAvailableEnemyTypes(uint id, float cost, eEnemyRoleDifficulty diff, eEnemyRole role, float weight)
 {
     enemyID     = id;
     enemyCost   = cost;
     difficulty  = diff;
     this.role   = role;
     this.weight = weight;
 }
Ejemplo n.º 3
0
        static EnemyRoleData CreateCustomData(eEnemyRoleDifficulty difficulty, eEnemyRole role, float cost, uint enemyId, float weightMult = 1)
        {
            EnemyRoleData data = new EnemyRoleData();

            data.Difficulty = difficulty;
            data.Enemy      = enemyId;
            data.Cost       = cost;
            data.Role       = role;
            data.Weight     = Mathf.Min(2f, Mathf.Max(0.2f, UnityEngine.Random.value * weightMult));
            return(data);
        }
Ejemplo n.º 4
0
        public pGroupDataBlock(EnemyGroupDataBlock copyBlock)
        {
            string debugStr = $"Original - Difficulty: {copyBlock.Difficulty}";

            roleCache = new List <Tuple <eEnemyRole, eEnemyRoleDistribution> >();
            foreach (EnemyGroupCompositionData data in copyBlock.Roles)
            {
                debugStr += $"\n Role: {data.Role} Distr: {data.Distribution}";
                roleCache.Add(new Tuple <eEnemyRole, eEnemyRoleDistribution> (data.Role, data.Distribution));
            }
            difficulty     = copyBlock.Difficulty;
            placement      = copyBlock.SpawnPlacementType;
            maxScore       = copyBlock.MaxScore;
            RelativeWeight = copyBlock.RelativeWeight;
            groupType      = copyBlock.Type;

            LoggerWrapper.Log(debugStr);
            LoggerWrapper.Log(ToString());
        }