void Spawn() { int team = ChooseTeam(); if (team == 0 && team1.Count >= maxTeamSize) { return; } else if (team == 1 && team2.Count >= maxTeamSize) { return; } int[] i = RandomFaceAndSpawnPoint(); BackgroundFace face = (BackgroundFace)Instantiate(faces[i[0]], spawnpoints[i[1]].position, Quaternion.identity); face.BM = this; face.team = team; face.teamIndicator.color = GameManager.instance.teamColors[team]; face.target = ChooseTarget(team); if (team == 0) { team1.Add(face); } else { team2.Add(face); } StartCoroutine(DelaySpawn(spawnDelay)); }
void Start() { //Spawn first two faces here int[] i = RandomFaceAndSpawnPoint(); BackgroundFace face1 = (BackgroundFace)Instantiate(faces[i[0]], spawnpoints[i[1]].position, Quaternion.identity); face1.BM = this; face1.team = 0; face1.teamIndicator.color = GameManager.instance.teamColors[0]; i = RandomFaceAndSpawnPoint(); BackgroundFace face2 = (BackgroundFace)Instantiate(faces[i[0]], spawnpoints[i[1]].position, Quaternion.identity); face2.BM = this; face2.team = 1; face2.teamIndicator.color = GameManager.instance.teamColors[1]; face2.target = face1; face1.target = face2; team1.Add(face1); team2.Add(face2); StartCoroutine(DelaySpawn(spawnDelay)); //Add ability to get a new target to Background Face script }
void Start() { if (background) { face = GetComponentInParent <BackgroundFace>(); } else { enemy = GetComponentInParent <Enemy>(); } }
void Start() { if (background) { bkgFace = GetComponent <BackgroundFace>(); } else { character = GetComponent <Character>(); } playerHealth = GetComponent <CharacterHealth>(); }
void Update() { if (!target) { target = BM.ChooseTarget(team); return; } if (horizontal > 0) { image.localScale = new Vector3(1, 1, 1); } else if (horizontal < 0) { image.localScale = new Vector3(-1, 1, 1); } if (shouldAttack && canAttack && !lost) { Attack(); } if (anim.GetCurrentAnimatorStateInfo(0).IsName("PlayerIdle")) { weapon.isAttacking = false; } else { weapon.isAttacking = true; } if (target.level.level == level.level) { MoveToTarget(); toHigherLevel = false; return; } if (level.level <= target.level.level) { Vector3 playerSide = target.transform.InverseTransformPoint(0, 0, 0); playerSide.Normalize(); if (playerSide.x > 0) { path = pathFinding.rightPath; horizontal = 1; } else { path = pathFinding.leftPath; horizontal = -1; } toHigherLevel = true; MoveToNode(path[(int)level.level].position); } else { velocity = new Vector2(side.x * speed, _rigidbody.velocity.y); _rigidbody.velocity = velocity; } UpdatePowerSlider(engaged); }