public Enemy CreateEnemy(
        GameObject prefab,
        HealthType healthType,
        AttackerType attackerType,
        MoverType moverType,
        PerceptionType perceptionType,
        ICharacter target)
    {
        var newGameObject = UnityEngine.Object.Instantiate(prefab);

        newGameObject.name  = "Enemy";
        newGameObject.layer = LayerMask.NameToLayer("Enemy");

        var enemy = newGameObject.AddComponent <Enemy>();

        enemy.InitializeBrain();
        enemy.InitializePathfindingAgent();
        enemy.InitializeHealth(GetHealthData(healthType));
        enemy.InitializeAttacker(GetAttackerData(attackerType));
        enemy.InitializeMover(GetMoverData(moverType));
        enemy.InitializeLoot();
        enemy.InitializePerception(GetPerceptionData(perceptionType));
        enemy.InitializeTarget(target);

        return(enemy);
    }
Esempio n. 2
0
        /// <summary>
        /// Genera Documento de Perecepcion
        /// </summary>
        /// <param name="doc">Pereception UBL2.0</param>
        /// <returns>Path of XML</returns>
        public XmlFileResult GenerateDocPerception(PerceptionType doc)
        {
            var filename = $"{doc.AgentParty.PartyIdentification[0].ID.Value}-40-{doc.ID.Value}";

            return(new XmlFileResult
            {
                Success = true,
                FileName = filename,
                Content = UtilsXmlDoc.GenFile(ref _result, doc, _certificado)
            });
        }
    private PerceptionData GetPerceptionData(PerceptionType perceptionType)
    {
        switch (perceptionType)
        {
        case PerceptionType.Low:
            return(new PerceptionData(Constants.LOW_PERCEPTION_UPDATE_INTERVAL, Constants.LOW_INNER_RADIUS, Constants.LOW_OUTER_RADIUS));

        case PerceptionType.Medium:
            return(new PerceptionData(Constants.MEDIUM_PERCEPTION_UPDATE_INTERVAL, Constants.MEDIUM_INNER_RADIUS, Constants.MEDIUM_OUTER_RADIUS));

        case PerceptionType.High:
            return(new PerceptionData(Constants.HIGH_PERCEPTION_UPDATE_INTERVAL, Constants.HIGH_INNER_RADIUS, Constants.HIGH_OUTER_RADIUS));

        default:
            throw new NotImplementedException("PerceptionType not implemented: " + perceptionType);
        }
    }
Esempio n. 4
0
 public static CreatureTypeFilter Perception(PerceptionType perceptionType)
 => new CreatureTypeFilter(CreatureType.Perception, (int)perceptionType);
Esempio n. 5
0
 public Perceptron(PerceptionType perceptionType, ActionvationFunction activeType)
 {
     m_perceptionType = perceptionType;
     m_activeFuncType = activeType;
 }
Esempio n. 6
0
 public Perceptron(PerceptionType perceptionType, ActionvationFunction activeType)
 {
     m_perceptionType = perceptionType;
     m_activeFuncType = activeType;
 }
Esempio n. 7
0
 public static CreatureTypeFilter Perception(PerceptionType perceptionType)
 {
     return(new CreatureTypeFilter(CreatureType.Perception, (int)perceptionType));
 }