void Start() { _camera = FindObjectOfType <Camera>(); _camera_height = _camera.transform.position.y; _level_manager = FindObjectOfType <LevelManager>(); _players = GameObject.FindGameObjectsWithTag("Player"); _djIcon1 = GameObject.Find("DoubleJump1"); _djIcon2 = GameObject.Find("DoubleJump2"); _gIcon1 = GameObject.Find("Gun1"); _gIcon2 = GameObject.Find("Gun2"); _rIcon1 = GameObject.Find("Reload1"); _rIcon2 = GameObject.Find("Reload2"); _player_components = new List <PlayerComponents>(); _leader = GameObject.Find("Fake Leader"); _leader_num = 0; Player1Health = GameObject.Find("P1Health").GetComponent <Healthbars>(); Player2Health = GameObject.Find("P2Health").GetComponent <Healthbars>(); Player1Icon = GameObject.Find("ObiWanHealthBarPic").GetComponent <ImageMoving>(); Player2Icon = GameObject.Find("AnakinHealthBarPic").GetComponent <ImageMoving>(); //the point of player_components is we don't want to be calling GetComponent every Update cycle //apparently it can make the game laggy, so we want to "stash" those components int i = -1; foreach (GameObject player in _players) { _player_components.Add(new PlayerComponents(player, GetPlayerNumber(player), MaxHealth)); player.transform.position = new Vector3(i, 4, 0); i++; } _level_manager.UpdateCurrentLevel(0); _respawn_points.AddRange(_level_manager.GetRespawnPoints()); _djIcon1.SetActive(true); _djIcon2.SetActive(true); _gIcon1.SetActive(false); _gIcon2.SetActive(false); _rIcon1.SetActive(false); _rIcon2.SetActive(false); }
//Called only when a quiz begins. Loads a question AND sets health/attack. public void LoadMonster() { if (!healthBar) { healthBar = FindObjectOfType <Healthbars>(); } sprite = Instantiate(MonsterPrefab, monsterSpot.transform); Animator = sprite.GetComponent <Animator>(); startingPosition = sprite.transform.localPosition; startingRotation = sprite.transform.localRotation; MakeQuestion(); health = 6; attack = 1; healthBar.setMaxHealth(health, false); healthBar.wait = false; }
// Update is called once per frame void Update() { player = GameObject.Find ("NecroFT(Clone)"); try{ absDeltaDistanceX = Mathf.Abs(transform.position.x - player.transform.position.x); bars = player.GetComponent ("Healthbars") as Healthbars; }catch(UnityException e){ Debug.Log (e); } if (absDeltaDistanceX > 7f && !recoverState) { MoveIdleState (); } else if (absDeltaDistanceX < 7f && absDeltaDistanceX > 3f && !recoverState) { StartCoroutine("ChasingNumerator"); } else if(recoverState){ RecoverState(); }else{ StartCoroutine("DiveNumerator"); StopCoroutine ("ChasingNumerator"); } if(recoverState){ Debug.Log (rigidbody2D.velocity); } //Debug.Log (recoverTimer); }
// Use this for initialization void Start() { bar = FindObjectOfType <Healthbars>(); }
// Update is called once per frame void Update() { player = GameObject.FindGameObjectWithTag ("Player"); try{ deltaDistanceX = Mathf.Abs(transform.position.x - player.transform.position.x); deltaDistanceY = Mathf.Abs(transform.position.y - player.transform.position.y); playerHealth = player.GetComponent<Healthbars>(); }catch(UnityException e){ Debug.Log(e); } // if(deltaDistanceX < 9f && deltaDistanceX > 4f && chaseAble == true){ idleState = false; diveStateTimer = 0f; StartCoroutine ("ChaseState"); StopCoroutine ("DiveState"); }else if(deltaDistanceX < 4f && diveAble == true && deltaDistanceY < 4f){ idleState = false; StartCoroutine ("DiveState"); StopCoroutine ("ChaseState"); } if(fired){ diveStateTimer += Time.deltaTime; }else{ diveStateTimer = 0; } if(diveStateTimer > 0.7f){ StopCoroutine ("DiveState"); StartCoroutine ("BrakeState"); } if(idleState){ MoveIdleState(); } if(diveStateTimer != 0){ Debug.Log (diveStateTimer); } //Debug.Log (health); //Destroy instance on health = 0 if(health <= 0){ DestroyObject (this.gameObject); } }