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; }
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); } }
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); }
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; } }
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); } }
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]); } }
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; }
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); } }
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; } }
// 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(); }
/// <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(); }
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); } }
void Start() { manager = FindObjectOfType<enemyManager>(); }
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; } }
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]); } }
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; }
// Use this for initialization void Start() { manager = GetComponentInParent <enemyManager> (); text = GetComponent <TextMesh> (); }
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>(); }