void OnTriggerStay2D(Collider2D trig) { if (trig.name == "SneakySneekTrigger") { sneekparent = trig.transform.parent.gameObject; sneekbody = sneekparent.transform.GetChild(1).gameObject; sneekenemyscript sneekscript = sneekbody.GetComponent <sneekenemyscript>(); sneekscript.playerisinsneekrange = true; //if it hasn't been done yet, check where sneek is in relation to player if (needtoestablishsneeklocation == true) { sneekxvalue = sneekbody.transform.position.x; if (transform.position.x < sneekxvalue) { playerisleftofsneek = true; } if (transform.position.x > sneekxvalue) { playerisleftofsneek = false; } needtoestablishsneeklocation = false; } if (sneekscript.sneekisaggro == false) { checkforsneekaggro(); } } }
//if you die, sneek is no longer aggro and re-establish location of sneek compared to player private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.tag == "Hazard") { sneekenemyscript sneekscript = sneekbody.GetComponent <sneekenemyscript>(); sneekscript.sneekisaggro = false; needtoestablishsneeklocation = true; sneekscript.sneekseesplayer = false; } }
void checkforsneekaggro() { if (playerisleftofsneek == true && transform.position.x > sneekxvalue + 16) { sneekenemyscript sneekscript = sneekbody.GetComponent <sneekenemyscript>(); sneekscript.sneekisaggro = true; } if (playerisleftofsneek == false && transform.position.x < sneekxvalue - 16) { sneekenemyscript sneekscript = sneekbody.GetComponent <sneekenemyscript>(); sneekscript.sneekisaggro = true; } }
void OnTriggerExit2D(Collider2D trig) { if (trig.name == "SneakySneekTrigger") { sneekparent = trig.transform.parent.gameObject; sneekbody = sneekparent.transform.GetChild(1).gameObject; sneekenemyscript sneekscript = sneekbody.GetComponent <sneekenemyscript>(); sneekscript.playerisinsneekrange = false; sneekscript.needtoresetposition = true; sneekscript.sneekisaggro = false; needtoestablishsneeklocation = true; } }