Inheritance: MonoBehaviour
Ejemplo n.º 1
0
    void OnHitCheck(Collider collider)
    {
        IDamageable damageableObject = collider.GetComponent <IDamageable>();

        if (collider.CompareTag("Enemy"))
        {
            m_State = collider.GetComponent <StatePatternEnemy>();

            if (damageableObject != null)
            {
                damageableObject.TakeDamage(damage);
            }

            if (m_State.currentState != m_State.chaseState)
            {
                m_State.currentState = m_State.alertState;
            }

            GameObject.Destroy(gameObject);
        }
        else if (collider.CompareTag("Boss"))
        {
            if (damageableObject != null)
            {
                damageableObject.TakeDamage(damage);
            }

            GameObject.Destroy(gameObject);
        }
    }
Ejemplo n.º 2
0
 void OnEnable()
 {
     ai_target      = (StatePatternEnemy)target;
     ai_types_index = ai_target.current_preset;
     show_data      = new AnimBool(ai_target.customType);
     show_data.valueChanged.AddListener(Repaint);
 }
Ejemplo n.º 3
0
    void Update()
    {
        //Only execute if hit.collider has a reference
        if (hit.collider != null)
        {
            //checks if EnemyMovement reference is not null, if it is then use HiddenPathEnemy reference
            if (hit.collider.name.Contains("Hidden"))
            {
                m_HiddenEnemy = hit.collider.GetComponent <HiddenPathEnemy>();

                m_HPText.text       = m_HiddenEnemy.m_Health.ToString();
                m_AgroText.text     = m_HiddenEnemy.isAggressive.ToString();
                m_DurationText.text = m_HiddenEnemy.Duration.ToString();
                m_CerebText.text    = m_HiddenEnemy.m_Cereb.ToString();
            }

            else
            {
                m_Enemy          = hit.collider.GetComponent <EnemyMovement>();
                m_AgroText.text  = m_Enemy.isAggressive.ToString();
                m_HPText.text    = m_Enemy.m_Health.ToString();
                m_CerebText.text = m_Enemy.m_Cereb.ToString();
            }

            m_EnemyState = hit.collider.GetComponent <StatePatternEnemy>();
        }
    }
Ejemplo n.º 4
0
    void OnHitCheck(RaycastHit hit)
    {
        IDamageable damageableObject = hit.collider.GetComponent <IDamageable>();

        //check the tag of the object that was hit
        if (hit.collider.CompareTag("Enemy"))
        {
            m_State = hit.collider.GetComponent <StatePatternEnemy>();

            if (damageableObject != null)
            {
                damageableObject.TakeHit(damage, hit);
            }

            if (m_State.currentState != m_State.chaseState)
            {
                m_State.currentState = m_State.alertState;
            }

            GameObject.Destroy(gameObject);
        }
        else if (hit.collider.CompareTag("Boss"))
        {
            if (damageableObject != null)
            {
                damageableObject.TakeHit(damage, hit);
            }

            GameObject.Destroy(gameObject);
        }
        else if (hit.collider.CompareTag("Obstacles"))
        {
            GameObject.Destroy(gameObject);
        }
    }
Ejemplo n.º 5
0
    public void CreateState(StatePatternEnemy pEnemy)
    {
        enemy = pEnemy;
        enemy.numberOfStates++;

        Debug.Log("Idle State Created " + enemy.numberOfStates);
    }
Ejemplo n.º 6
0
 public void loadData(StatePatternEnemy target)
 {
     target.sightRange = sightRange_;
     target.sightAngle = sightAngle_;
     target.suspiciousCheckRange = suspiciousCheckRange_;
     target.alert = alert_;
 }
Ejemplo n.º 7
0
 override protected void Awake()
 {
     base.Awake();
     statePattern = GetComponent <StatePatternEnemy>();
     animations   = GetComponent <Animation>();
     InitComponentToKeep();
     RecalcAtkSpeed();
 }
Ejemplo n.º 8
0
    void IEnemyState.CreateState(StatePatternEnemy pEnemy)
    {
        enemy = pEnemy;

        enemy.numberOfStates++;

        Debug.Log("Engage State Created " + enemy.numberOfStates);
    }
    public FleeState(StatePatternEnemy statePatternEnemy)
    {
        manager = statePatternEnemy;
        manager.ModelSwap(manager.FleeModel);

        //Sets the powerup timer
        manager.powerUpTimer = 20f;
        Debug.Log("Flee");
    }
Ejemplo n.º 10
0
    void Awake()
    {
        player       = GameObject.FindGameObjectWithTag("Player");
        playerHealth = player.GetComponent <PlayerHealth>();

        enemyHealth = GetComponentInParent <EnemyHealth>();

        enemy = GetComponentInParent <StatePatternEnemy>();
    }
Ejemplo n.º 11
0
    /// <summary>
    /// Initializes a new instance of the <see cref="ChaseState"/> class.
    /// </summary>
    /// <param name="statePatternEnemy">State pattern enemy.</param>
    /// <param name="zombie">Zombie.</param>
    public ChaseState(StatePatternEnemy statePatternEnemy, HorrorAI zombie)
    {
        this.enemy = statePatternEnemy;
        this.zombie = zombie;

        MakeDecisionTree();
        SetNodes();

        decisionTree = new DecisionTree(decisions, actions, enemy.AddActionToQueue);
    }
Ejemplo n.º 12
0
    /// <summary>
    /// Initializes a new instance of the <see cref="PatrolState"/> class.
    /// </summary>
    /// <param name="statePatternEnemy">State pattern enemy.</param>
    /// <param name="zombie">Zombie.</param>
    /// <param name="grid">Grid.</param>
    public PatrolState(StatePatternEnemy statePatternEnemy, HorrorAI zombie, Grid grid)
    {
        this.enemy = statePatternEnemy;
        this.zombie = zombie;
        this.grid = grid;

        MakeDecisionTree();
        SetNodes();

        decisionTree = new DecisionTree(decisions, actions, enemy.AddActionToQueue);
    }
Ejemplo n.º 13
0
    void Start()
    {
        if(GetComponent<StatePatternEnemy>() == null)
        {
            Debug.Warning("level", "Redcoat " + gameObject.name + " has no state pattern to animate on.");
            return;
        }

        animController = GetComponent<Animator>();
        animParams = animController.parameters;
        redcoat = GetComponent<StatePatternEnemy>();
        state = redcoat.currentState;
    }
Ejemplo n.º 14
0
    void IEnemyState.CreateState(StatePatternEnemy pEnemy)
    {
        enemy = pEnemy;
        enemy.numberOfStates++;

        Debug.Log("Patorl State Created " + enemy.numberOfStates);

        globalWayPoints = new Vector3[enemy.localWaypoints.Length];

        for (int i = 0; i < enemy.localWaypoints.Length; i++)
        {
            globalWayPoints[i] = enemy.localWaypoints[i] + enemy.transform.position;
        }

        cyclicArray = true;
    }
Ejemplo n.º 15
0
    protected override void Start()
    {
        base.Start();


        //initialize variables
        player   = GameObject.FindGameObjectWithTag("Player");
        m_State  = GetComponent <StatePatternEnemy>();
        nav      = GetComponent <NavMeshAgent>();
        m_Cereb  = Random.Range(20, 2020);
        m_WCereb = Random.Range(100, 50000);

        m_State.currentState = m_State.alertState;
        if (player != null)
        {
            nav.SetDestination(player.transform.position);
        }
        else
        {
            nav.SetDestination(m_ReturnPosition);
        }
    }
Ejemplo n.º 16
0
 void Start()
 {
     destructorTransforms = new List <Transform>();
     m_patternEnemy       = GetComponent <StatePatternEnemy>();
     m_patternEnemyRanged = GetComponent <StatePatternEnemyRanged>();
     m_animator           = GetComponent <Animator>();
     m_navMesh            = GetComponent <NavMeshAgent>();
     m_capsuleCollider    = GetComponent <CapsuleCollider>();
     if (m_skinnedRenderer == null)
     {
         print("skinned renderer is null, assign in scene(AI) hpscript");
     }
     if (m_health > 0)
     {
         m_alive = true;
     }
     else
     {
         m_alive = false;
         Debug.Log("Spawned with 0 health, instadeath");
     }
 }
Ejemplo n.º 17
0
    IEnumerator Death()
    {
        if (player)
        {
            Debug.Log("load");
            SceneManager.LoadScene(0);
        }
        if (anim != null)
        {
            anim.SetTrigger("Death");
        }
        audioSource.clip = deathSound;
        audioSource.Play();
        gameObject.GetComponent <Collider2D>().enabled = false;
        StatePatternEnemy pattern = gameObject.GetComponent <StatePatternEnemy>();

        if (pattern != null)
        {
            pattern.enabled = false;
        }
        const float amount = 330f;
        int         sign   = 1;

        if (Random.Range(0, 10) > 5)
        {
            sign = -1;
        }
        for (float i = 0; i < 4; i++)
        {
            CharacterSprite.material.SetFloat("_OffsetBlueX", -sign * (i / amount));
            CharacterSprite.material.SetFloat("_OffsetBlueY", sign * (i / amount));
            CharacterSprite.material.SetFloat("_OffsetRedX", -sign * (i / amount));
            CharacterSprite.material.SetFloat("_OffsetRedY", -sign * (i / amount));
            CharacterSprite.material.SetFloat("_OffsetGreenX", sign * (i / amount));
            yield return(new WaitForSeconds(.13f));
        }
        gameObject.SetActive(false);
    }
Ejemplo n.º 18
0
    public void OpenDebugger()
    {
        PlayerMovement player = FindObjectOfType(typeof(PlayerMovement)) as PlayerMovement;

        if (player != null)
        {
            player.IsPaused = true;
        }

        if (hit.collider != null)
        {
            m_Enemy      = hit.collider.GetComponent <EnemyMovement>();
            m_EnemyState = hit.collider.GetComponent <StatePatternEnemy>();

            //checks if EnemyMovement reference is not null, if it is then use HiddenPathEnemy reference
            if (m_Enemy == null)
            {
                m_HiddenEnemy = hit.collider.GetComponent <HiddenPathEnemy>();

                m_HPText.text       = m_HiddenEnemy.m_Health.ToString();
                m_AgroText.text     = m_HiddenEnemy.isAggressive.ToString();
                m_DurationText.text = m_HiddenEnemy.Duration.ToString();
                m_CerebText.text    = m_HiddenEnemy.m_Cereb.ToString();
            }
            else
            {
                m_HPText.text       = m_Enemy.m_Health.ToString();
                m_AgroText.text     = m_Enemy.isAggressive.ToString();
                m_DurationText.text = m_Enemy.Duration.ToString();
                m_CerebText.text    = m_Enemy.m_Cereb.ToString();
            }

            m_AttackText.text = m_EnemyState.attackDamage.ToString();
            m_Debugger.SetActive(true);
        }
    }
Ejemplo n.º 19
0
 public AttackWindUp(StatePatternEnemy statePatternEnemy, AttackState p_attackState)
 {
     enemy       = statePatternEnemy;
     attackState = p_attackState;
 }
Ejemplo n.º 20
0
 public AlertState(StatePatternEnemy parent)
 {
     enemy = parent;
 }
Ejemplo n.º 21
0
 public LookState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 22
0
 public AttackState(StatePatternEnemy statePatternEnemy)   //Constructor
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 23
0
 public DazedState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 24
0
 public ChaseState(StatePatternEnemy parent)
 {
     enemy = parent;
 }
Ejemplo n.º 25
0
 public GuardState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 26
0
 public SearchingState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 27
0
 public DistractedState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 28
0
 public KOState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
 public FollowState(StatePatternEnemy statePatternEnemy)
 {
     manager = statePatternEnemy;
     manager.ModelSwap(manager.WanderModel);
 }
Ejemplo n.º 30
0
 public AlertState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 31
0
 public PatrolState(StatePatternEnemy parent)
 {
     enemy = parent;
 }
Ejemplo n.º 32
0
 public ChaseState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 33
0
 public AlertState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 34
0
 void Start()
 {
     statePatternEnemy = GetComponentInParent <StatePatternEnemy>();
 }
Ejemplo n.º 35
0
 void OnEnable()
 {
     ai_target = (StatePatternEnemy)target;
     ai_types_index = ai_target.current_preset;
     show_data = new AnimBool(ai_target.customType);
     show_data.valueChanged.AddListener(Repaint);
 }
 public WanderState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 37
0
 public ObserveState(StatePatternEnemy spe)
 {
     statePatternEnemy = spe;
     statePatternEnemy.anim.SetBool("Walking", false);
 }
Ejemplo n.º 38
0
 public KOState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 39
0
 public PatrolState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 40
0
 public AttackState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 41
0
 public DazedState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 42
0
 public PatrolState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 43
0
 public WalkState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 44
0
 public AlertState(StatePatternEnemy statePatternEnemy)   //Constructor
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 45
0
 public AttackOnGoing(StatePatternEnemy statePatternEnemy, AttackState p_attackState)
 {
     enemy       = statePatternEnemy;
     attackState = p_attackState;
 }
Ejemplo n.º 46
0
 public ExamineState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 47
0
 public VictimeState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
 public DeadState(StatePatternEnemy statePatternEnemy)
 {
     manager = statePatternEnemy;
     manager.ModelSwap(manager.DeadModel);
 }
Ejemplo n.º 49
0
 public PointSearchState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 50
0
 public DWaiterState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 51
0
 public AttackState(StatePatternEnemy statePatternEnenmy)
 {
     enemy = statePatternEnenmy;
 }
Ejemplo n.º 52
0
 public ChaseState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }
Ejemplo n.º 53
0
 public SuspiciousState(StatePatternEnemy statePatternEnemy)
 {
     enemy = statePatternEnemy;
 }