public static void Postfix(pReactorState newState, pReactorState oldState, LG_WardenObjective_Reactor __instance) { if (newState.status == oldState.status) { return; } if (newState.status == eReactorStatus.Shutdown_intro) { __instance.m_sound.Post(EVENTS.LIGHTS_OFF_GLOBAL); __instance.m_sound.Post(EVENTS.REACTOR_SHUTDOWN); var noise = new NM_NoiseData() { noiseMaker = null, position = __instance.m_terminalAlign.position, radiusMin = 7, radiusMax = 100, yScale = 1f, node = __instance.SpawnNode, type = NM_NoiseType.InstaDetect, includeToNeightbourAreas = false, raycastFirstNode = false }; NoiseManager.MakeNoise(noise); } }
public void Activate(uint enemyID, int count, LG_LayerType layer, eLocalZoneIndex zoneIndex, string areaName) { var enemies = UnityEngine.Object.FindObjectsOfType <EnemyAgent>(); int curCount = 0; for (int index = 0; index < enemies.Count && (count == -1 || curCount < count); index++) { var enemy = enemies[index]; var node = enemy.CourseNode; if (node != null && node.LayerType == layer && node.m_zone.LocalIndex == zoneIndex && node.m_area.m_navInfo.Suffix.ToLower() == areaName) { if (enemy.EnemyData.persistentID == enemyID && enemy.AI != null && enemy.Alive) { NM_NoiseData data = new NM_NoiseData() { noiseMaker = null, position = enemy.Position, radiusMin = 0f, radiusMax = 100f, yScale = 1f, node = enemy.CourseNode, type = NM_NoiseType.InstaDetect, includeToNeightbourAreas = true, raycastFirstNode = false }; NoiseManager.MakeNoise(data); curCount++; } } } }
public void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.tag == "Wall") { NoiseManager.MakeNoise(transform.position, noiseAmount); Destroy(this.gameObject); } }
void FixedUpdate() { float horizontal = player.GetAxis("Horizontal"); float vertical = player.GetAxis("Vertical"); bool running = player.GetButton("Run"); Vector2 dir = new Vector2(horizontal, vertical); float speed = running ? runSpeed : walkSpeed; float noiseLevel = rb.velocity.magnitude * volumeMultiplier; rb.AddForce(dir * speed); if (noiseLevel > 0) { NoiseManager.MakeNoise(transform.position, noiseLevel); } // DEBUG noiseCircle.localScale = Vector2.one * noiseLevel * 2; }
IEnumerator Shoot() { while (App.Instance.isPlaying) { if (weapon != null && !dead && fire) { if (weapon.melee) { float elapsedTime = 0; if (weapon.swingRotate.magnitude != 0) { Quaternion startRot = gun.transform.rotation; while (elapsedTime <= weapon.swingTime) { elapsedTime += Time.deltaTime; gun.transform.rotation = Quaternion.Lerp(startRot, Quaternion.Euler(weapon.swingRotate), elapsedTime / weapon.swingTime); yield return(null); } elapsedTime = 0; while (elapsedTime <= weapon.swingTime * 1.5f) { elapsedTime += Time.deltaTime; gun.transform.rotation = Quaternion.Lerp(Quaternion.Euler(weapon.swingRotate), startRot, elapsedTime / (weapon.swingTime * 1.5f)); yield return(null); } if (GetComponentInChildren <MeleeWeapon>()) { GetComponentInChildren <MeleeWeapon>().senderTag = gameObject.tag; } } else { Vector3 startPos = gunPos.position; Vector3 moveTo = startPos + (gun.transform.right); while (elapsedTime <= weapon.swingTime / 2) { elapsedTime += Time.deltaTime; gun.transform.position = Vector3.Lerp(startPos, moveTo, elapsedTime / (weapon.swingTime / 2)); yield return(null); } elapsedTime = 0; while (elapsedTime <= weapon.swingTime / 2) { elapsedTime += Time.deltaTime; gun.transform.position = Vector3.Lerp(moveTo, gunPos.position, elapsedTime / (weapon.swingTime / 2)); yield return(null); } } weapon.durability--; if (weapon.durability <= 0) { Destroy(gun); weapon = null; } yield return(null); } else if (ammo > 0) { //create bullet foreach (Transform t in shootPos) { Vector3 pos = new Vector3(t.position.x, t.position.y, -1); Bullet b = Instantiate(weapon.bullet, pos, t.rotation).GetComponent <Bullet>(); b.speed += rig.velocity.normalized.magnitude; b.senderTag = gameObject.tag; } StartCoroutine(MuzzleFlash()); NoiseManager.MakeNoise(transform.position, 0.2f, 12.5f, "gun"); if (gameObject.CompareTag("Player")) { App.Instance.cameraController.Shake(weapon.shakeTime); } // Instantiate(weapon.muzzle, shootPos.position, shootPos.rotation); AudioController.PlaySound(weapon.GetRandomClip()); ammo--; if (ammo <= 0) { if (weapon.destroyAfterThrow) { Destroy(gun); } else { ThrowGun(); } if (charAnim != null) { charAnim.SetInteger("weapon", 0); } weapon = null; } if (weapon != null) { yield return(new WaitForSeconds(weapon.fireRate)); } } } yield return(null); } yield return(null); }
// Use this for initialization void Start() { NoiseManager.MakeNoise(transform.position, noiseAmount); Destroy(this.gameObject); }