Example #1
0
    protected virtual void Start()
    {
        player = GameObject.FindGameObjectWithTag("green");

        try
        {
            target = player.GetComponent <Player>();
        }
        catch (NullReferenceException)
        {
            Debug.Log("Player não encontrado!");
        }

        try
        {
            sceneManagerObject = GameObject.FindGameObjectWithTag("SceneManager");
            enemyManager       = sceneManagerObject.GetComponent <enemyManager>();
            healthBarManager   = sceneManagerObject.GetComponent <HealthBarManager>();

            enemyObject   = GameObject.FindGameObjectWithTag("Enemy");
            animatorEnemy = enemyObject.GetComponentInChildren <Animator>();
        }
        catch (NullReferenceException)
        {
            Debug.Log("erros");
        }


        health    = startingHealth;
        auxHealth = health;
        //spawnControlAux = spawnControl.GetComponent<Spawner> ().enemiesRemainingAlive;
    }
Example #2
0
    private void OnTriggerEnter(Collider collision)
    {
        if (collision.gameObject.tag == "Player")
        {
            mng = collision.gameObject.GetComponent <gameManager>();

            if (mng.escudo > 0)
            {
                mng.escudo -= danoJ;
            }
            else
            {
                mng.vida -= danoJ;
            }
            Destroy(this.gameObject);
        }


        if ((collision.gameObject.tag == "enemigo") || (collision.gameObject.tag == "enemigoArmado"))
        {
            enemy       = collision.gameObject.GetComponent <enemyManager>();
            enemy.vida -= danno;
            Destroy(this.gameObject);
        }

        if (collision.tag == "elMuro")
        {
            Debug.Log("pipo");
            Destroy(this.gameObject);
        }
    }
Example #3
0
    private void OnTriggerEnter(Collider collision)
    {
        explode();
        if (collision.gameObject.tag == "enemigo")
        {
            Instantiate(explosion, transform.position, transform.rotation);
            enemy       = collision.gameObject.GetComponent <enemyManager>();
            enemy.vida -= danno;
        }
        Destroy(this.gameObject);

        if (collision.gameObject.tag == "enemigoArmado")
        {
            Instantiate(explosion, transform.position, transform.rotation);
            enemy       = collision.gameObject.GetComponent <enemyManager>();
            enemy.vida -= dannoArm;
        }
        Destroy(this.gameObject);

        if (collision.gameObject.tag == "pared")
        {
            Instantiate(explosion, transform.position, transform.rotation);
            Destroy(collision.gameObject);
        }
        Destroy(this.gameObject);
    }
Example #4
0
 void Idle(enemyManager agent, GameObject player)
 {
     if (Vector2.Distance(agent.transform.position, player.transform.position) < agent.sensorRange && agent.lineOfSight(player))
     {
         Debug.Log("Seek");
         state = STATES.SEEK;
     }
 }
Example #5
0
    private void OnTriggerStay(Collider collision)
    {
        if ((collision.gameObject.tag == "enemigo") || (collision.gameObject.tag == "enemigoArmado"))
        {
            enemy       = collision.gameObject.GetComponent <enemyManager>();
            quemar      = true;
            enemy.vida -= danno * Time.deltaTime;

            Invoke("apagar", 5f);
        }
    }
Example #6
0
 void PathFollow(enemyManager agent, List <GameObject> nodes)
 {
     for (int i = 0; i < nodes.Count; ++i)
     {
         if (Vector3.Distance(agent.gameObject.transform.position, nodes[i].transform.position) > 3)
         {
             i--;
         }
         if (Vector3.Distance(agent.gameObject.transform.position, nodes[i].transform.position) < 3)
         {
             pathFollowing = false;
         }
         Seek(agent, nodes[i]);
     }
 }
Example #7
0
    void Start()
    {
        //make health show at start
        pm = player.GetComponent <playerManager>();
        em = enemy.GetComponent <enemyManager>();

        heart1.SetActive(true);
        heart2.SetActive(true);
        heart3.SetActive(true);
        heart4.SetActive(true);
        heart5.SetActive(true);

        //
        scrnColor = scrnDark.color;
    }
Example #8
0
    void Seek(enemyManager agent, GameObject targetThing)
    {
        if (agent.myTarget == null || Vector3.Distance(agent.transform.position, agent.myTarget.transform.position) < 0.5f)
        {
            agent.myTarget = targetThing;
        }
        Transform target = agent.myTarget.transform;

        agent.transform.position = Vector2.MoveTowards(agent.transform.position, target.position, agent.speed * Time.deltaTime);
        Vector2 moveDirection = agent.GetComponent <Rigidbody2D>().velocity;

        if (moveDirection != Vector2.zero)
        {
            float angle = Mathf.Atan2(moveDirection.y, moveDirection.x) * Mathf.Rad2Deg;
            agent.transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);
        }
    }
Example #9
0
    public void Update(enemyManager agent, List <GameObject> nodes)
    {
        GameObject player = GameObject.FindWithTag("Player");

        //Debug.Log(state, agent);
        switch (state)
        {
        case STATES.IDLE:
            Idle(agent, player);     // checks if player is within range -> switches to seek
            break;

        case STATES.SEEK:
            //Seek(agent, nodes[Random.Range(0, nodes.Length)]);
            Seek(agent, player);
            if (Vector3.Distance(agent.transform.position, player.transform.position) < 3)
            {
                state = STATES.ATTACK;
            }
            if (!agent.lineOfSight(player))
            {
                state = STATES.PATHFOLLOW;
            }
            break;

        case STATES.PATHFOLLOW:
            if (!pathFollowing)
            {
                pathFollowing = true;
                if (Astar(agent.gameObject, nodes, path, player, 0))
                {
                    Debug.Log("Astar");
                }
            }
            PathFollow(agent, path);
            break;

        case STATES.ATTACK:
            if (Vector3.Distance(agent.transform.position, player.transform.position) > 3)
            {
                state = STATES.SEEK;
            }
            break;
        }
    }
Example #10
0
    // Use this for initialization
    void Start()
    {
        //mat = renderer.material;//Freddy's Code Thing



        currentState = State.Normal;

        score = 0;
        timer = 64;
        UpdateGUI();

        playerCursor = (GameObject)Instantiate(playerCursor);
        eMan         = (enemyManager)Instantiate(eMan);


        colorBlockArray = new colorBlock[xSize, ySize];
        initBlocksRandomly();
    }
Example #11
0
        /// <summary>
        ///     Se llama una sola vez, al principio cuando se ejecuta el ejemplo.
        ///     Escribir aquí todo el código de inicialización: todo procesamiento que podemos pre calcular para nuestro juego.
        /// </summary>
        protected override void Initialize()
        {
            // World = Matrix.CreateTranslation(new Vector3(0, 0, 0));
            View       = Matrix.CreateLookAt(new Vector3(0, 0, 20), Vector3.Zero, Vector3.Up);
            Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians(45), 800f / 600f, 0.1f, 1000f);


            //World = Matrix.Identity;
            //View = Matrix.CreateLookAt(Vector3.UnitZ * 150, Vector3.Zero, Vector3.Up);
            //Projection =
            //    Matrix.CreatePerspectiveFieldOfView(MathHelper.PiOver4, GraphicsDevice.Viewport.AspectRatio, 1, 500);

            centerPosition = new Vector3(0, 0, 0);

            Graphics.PreferredBackBufferWidth  = 1024;
            Graphics.PreferredBackBufferHeight = 768;
            Graphics.ApplyChanges();

            EM = new enemyManager();
            for (int i = 0; i < 10; i++)
            {
                EM.CrearEnemigo();
            }
            EM.CrearEnemigoVigilante(_spaceshipPosition);

            _trench       = new Trench();
            _laserManager = new LaserManager();

            finalBossPosition = new Vector3(4f, 1f, -43f);

            State = GameState.Playing;

            TargetLightCamera = new TargetCamera(1f, LightPosition, Vector3.Zero);
            TargetLightCamera.BuildProjection(1f, LightCameraNearPlaneDistance, LightCameraFarPlaneDistance,
                                              MathHelper.PiOver2);

            base.Initialize();
        }
Example #12
0
    void Start()
    {
        attack        = new Attacks(player, BlocksArray, enemy);
        screenManager = new screenManager(player, BlocksArray, ButtonsCanvas, background, enemy, courtPositionsArray);
        playerManager = new PlayerClass(PlayerData.Level, PlayerData.Hp, PlayerData.Stamina);
        enemyManager  = new enemyManager(PlayerData.Hp, PlayerData.Stamina, winOrLose.isBoss);//fix enemy hp

        for (int i = 0; i < MoveOrderArray.Length; i++)
        {
            MoveOrderArray[i] = "";
        }

        for (int i = 0; i < StaminaArray.Length; i++)
        {
            StaminaArray[i] = 0f;
        }

        for (int i = 0; i < DamageArray.Length; i++)
        {
            DamageArray[i] = 0f;
        }

        staiminabarPlayer.resetStats(PlayerData.Stamina);
        hpbarPlayer.resetStats(PlayerData.Hp);

        if (winOrLose.isBoss)
        {
            staiminabarEnemy.resetStats(PlayerData.Stamina + 15f);
            hpbarEnemy.resetStats(PlayerData.Hp + 15f);
        }

        else
        {
            staiminabarEnemy.resetStats(PlayerData.Stamina);
            hpbarEnemy.resetStats(PlayerData.Hp);
        }
    }
Example #13
0
 void Start() { manager = FindObjectOfType<enemyManager>(); }
Example #14
0
 void Idle(enemyManager agent, GameObject player)
 {
     if (Vector2.Distance(agent.transform.position, player.transform.position) < agent.sensorRange && agent.lineOfSight(player)) {
         Debug.Log("Seek");
         state = STATES.SEEK;
     }
 }
Example #15
0
 public void Update(enemyManager agent, List<GameObject> nodes)
 {
     GameObject player = GameObject.FindWithTag("Player");
     //Debug.Log(state, agent);
     switch (state) {
         case STATES.IDLE:
             Idle(agent, player); // checks if player is within range -> switches to seek
             break;
         case STATES.SEEK:
             //Seek(agent, nodes[Random.Range(0, nodes.Length)]);
             Seek(agent, player);
             if (Vector3.Distance(agent.transform.position, player.transform.position) < 3)
                 state = STATES.ATTACK;
             if (!agent.lineOfSight(player))
                 state = STATES.PATHFOLLOW;
             break;
         case STATES.PATHFOLLOW:
             if (!pathFollowing) {
                 pathFollowing = true;
                 if (Astar(agent.gameObject, nodes, path, player, 0)) {
                     Debug.Log("Astar");
                 }
             }
             PathFollow(agent, path);
             break;
         case STATES.ATTACK:
             if (Vector3.Distance(agent.transform.position, player.transform.position) > 3)
                 state = STATES.SEEK;
             break;
     }
 }
Example #16
0
 void PathFollow(enemyManager agent, List<GameObject> nodes)
 {
     for (int i = 0; i < nodes.Count; ++i) {
         if (Vector3.Distance(agent.gameObject.transform.position, nodes[i].transform.position) > 3)
             i--;
         if (Vector3.Distance(agent.gameObject.transform.position, nodes[i].transform.position) < 3)
             pathFollowing = false;
         Seek(agent, nodes[i]);
     }
 }
Example #17
0
 void Seek(enemyManager agent, GameObject targetThing)
 {
     if (agent.myTarget == null || Vector3.Distance(agent.transform.position, agent.myTarget.transform.position) < 0.5f)
         agent.myTarget = targetThing;
     Transform target = agent.myTarget.transform;
     agent.transform.position = Vector2.MoveTowards(agent.transform.position, target.position, agent.speed * Time.deltaTime);
     Vector2 moveDirection = agent.GetComponent<Rigidbody2D>().velocity;
     if (moveDirection != Vector2.zero) {
         float angle = Mathf.Atan2(moveDirection.y, moveDirection.x) * Mathf.Rad2Deg;
         agent.transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward);
     }
 }
 void Start ()
 {
     manager = FindObjectOfType<enemyManager>();
     shotTimerAttack = 1f;
 }
Example #19
0
 // Use this for initialization
 void Start()
 {
     manager = GetComponentInParent <enemyManager> ();
     text    = GetComponent <TextMesh> ();
 }
Example #20
0
    bool start = false; //used to allow breaks, similar to enemy manager

    // Start is called before the first frame update
    void Start()
    {
        score          = 0;
        style.fontSize = 25;
        em             = GetComponent <enemyManager>();
    }