private void OnTriggerExit(Collider other) { if (other.gameObject.tag == "Enemy" && other.GetType() == typeof(CapsuleCollider)) { eController = (EnemyAIController)other.gameObject.GetComponent(typeof(EnemyAIController)); eController.editFloorValue(-1); } else if (other.gameObject.tag == "Player" && other.gameObject.tag != "Ragdoll") { pController.editFloorValue(-1); foreach (MeshRenderer mesh in renderers) { mesh.enabled = true; } } else if (other.gameObject.name == "ChestP") { GameObject pRagdoll = GameObject.FindWithTag("PlayerRagdoll"); prController = (PlayerRagdollHandler)pRagdoll.gameObject.GetComponent(typeof(PlayerRagdollHandler)); prController.editFloorValue(-1); foreach (MeshRenderer mesh in renderers) { mesh.enabled = false; } } else if (other.gameObject.name == "PelvisE") { GameObject parent1 = other.transform.parent.gameObject; GameObject parent2 = parent1.transform.parent.gameObject; erController = (RagdollHandler)parent2.gameObject.GetComponent(typeof(RagdollHandler)); erController.editFloorValue(-1); } }
// Update is called once per frame void Update() { //dies if (health <= 0 && alive) { WinLoseScript wlScript = (WinLoseScript)winLose.GetComponent(typeof(WinLoseScript)); wlScript.Lose(); alive = false; health--; AimTowardMouse aimer = (AimTowardMouse)GetComponent(typeof(AimTowardMouse)); MovePlayer mover = (MovePlayer)GetComponent(typeof(MovePlayer)); Shoot shooter = (Shoot)bulletEmitter.GetComponent(typeof(Shoot)); aimer.kill(); mover.kill(); shooter.kill(); GameObject tempRD = Instantiate(ragdoll, transform.position, transform.rotation); PlayerRagdollHandler rHandler = (PlayerRagdollHandler)tempRD.GetComponent(typeof(PlayerRagdollHandler)); rHandler.pushRagdoll(pushValue); Destroy(gameObject); } }
void Update() { int pFloorValue = 0; //finds proper player gameobject if (GameObject.FindWithTag("Player") != null) { GameObject player = GameObject.FindWithTag("Player"); PlayerController pController = (PlayerController)player.GetComponent(typeof(PlayerController)); pFloorValue = pController.floorValue; } else if (GameObject.FindWithTag("PlayerRagdoll") != null) { GameObject player = GameObject.FindWithTag("PlayerRagdoll"); PlayerRagdollHandler pController = (PlayerRagdollHandler)player.GetComponent(typeof(PlayerRagdollHandler)); pFloorValue = pController.floorValue; //Debug.Log("Player ragdoll floorValue: " + pFloorValue); } //hides enemies based on floor values foreach (GameObject enemy in enemyList) { if (enemy != null) { int eFloorValue = 0; //finds proper enemy controller script if (enemy.tag == "Enemy") { EnemyAIController controller = (EnemyAIController)enemy.GetComponent(typeof(EnemyAIController)); if (controller != null) { eFloorValue = controller.floorValue; } } else if (enemy.tag == "EnemyRagdoll") { RagdollHandler controller = (RagdollHandler)enemy.GetComponent(typeof(RagdollHandler)); if (controller != null) { eFloorValue = controller.floorValue; } } //hides enemies based on floor values if (eFloorValue > 0 && eFloorValue < pFloorValue) { foreach (Transform child in enemy.transform) { if (child.gameObject.name == "Body") { child.gameObject.GetComponent <SkinnedMeshRenderer> ().enabled = false; } if (child.gameObject.name == "Gun") { child.gameObject.GetComponent <MeshRenderer> ().enabled = false; } if (child.gameObject.name == "Cube") { child.gameObject.GetComponent <SkinnedMeshRenderer>().enabled = false; } } } else { foreach (Transform child in enemy.transform) { if (child.gameObject.name == "Body") { child.gameObject.GetComponent <SkinnedMeshRenderer> ().enabled = true; } if (child.gameObject.name == "Gun") { child.gameObject.GetComponent <MeshRenderer> ().enabled = true; } if (child.gameObject.name == "Cube") { child.gameObject.GetComponent <SkinnedMeshRenderer>().enabled = true; } } } } } }