public void Start() { GameObject level_object = GameObject.Find("LevelObject"); if (level_object != null) { level_creator = level_object.GetComponent <LevelCreatorScript>(); } if (level_creator == null) { Debug.LogWarning("We're missing a LevelCreatorScript in AimScript, this might mean that some world-interactions don't work correctly."); } audiosource_effect = gameObject.AddComponent <AudioSource>(); audiosource_effect.rolloffMode = AudioRolloffMode.Linear; audiosource_effect.maxDistance = 30.0f; audiosource_effect.spatialBlend = 1.0f; object_audiosource_motor = new GameObject("motor audiosource object"); object_audiosource_motor.transform.parent = transform; object_audiosource_motor.transform.localPosition = new Vector3(0.0f, 0.0f, 0.0f); audiosource_motor = object_audiosource_motor.AddComponent <AudioSource>(); object_audiosource_motor.AddComponent <AudioLowPassFilter>(); audiosource_motor.loop = true; audiosource_motor.volume = 0.4f * Preferences.sound_volume; audiosource_motor.clip = sound_engine_loop; audiosource_motor.spatialBlend = 1.0f; switch (robot_type) { case RobotType.STATIONARY_TURRET: initial_turret_orientation = gun_pivot.transform.localRotation; initial_turret_position = gun_pivot.transform.localPosition; audiosource_motor.rolloffMode = AudioRolloffMode.Linear; audiosource_motor.maxDistance = 4.0f; break; case RobotType.SHOCK_DRONE: audiosource_motor.maxDistance = 8.0f; audiosource_foley = gameObject.AddComponent <AudioSource>(); audiosource_foley.spatialBlend = 1.0f; audiosource_taser = gameObject.AddComponent <AudioSource>(); audiosource_taser.Stop(); audiosource_taser.playOnAwake = false; audiosource_taser.spatialBlend = 1.0f; audiosource_taser.rolloffMode = AudioRolloffMode.Linear; audiosource_taser.loop = true; audiosource_taser.clip = sound_gunshot[0]; break; } initial_pos = transform.position; target_pos = initial_pos; }
public void Start() { GUISkinHolder holder = GameObject.Find("gui_skin_holder").GetComponent <GUISkinHolder>(); WeaponHolder weapon_holder = holder.weapon.GetComponent <WeaponHolder>(); Transform tile_parent = null; GameObject level_object = GameObject.Find("LevelObject"); if (level_object != null) { LevelCreatorScript level_creator = level_object.GetComponent <LevelCreatorScript>(); tile_parent = level_creator.GetPositionTileItemParent(transform.position); } else { tile_parent = transform.parent; } int num_bullets = UnityEngine.Random.Range(1, 6); for (int i = 0; i < num_bullets; ++i) { GameObject bullet = (GameObject)Instantiate(weapon_holder.bullet_object); bullet.transform.parent = tile_parent; bullet.transform.position = transform.position + new Vector3(UnityEngine.Random.Range(-0.1f, 0.1f), UnityEngine.Random.Range(0.0f, 0.2f), UnityEngine.Random.Range(-0.1f, 0.1f)); bullet.transform.rotation = BulletScript.RandomOrientation(); bullet.AddComponent <Rigidbody>(); bullet.GetComponent <ShellCasingScript>().collided = true; } if (UnityEngine.Random.Range(0, 4) == 0) { GameObject tape = (GameObject)Instantiate(holder.tape_object); tape.transform.parent = tile_parent; tape.transform.position = transform.position + new Vector3(UnityEngine.Random.Range(-0.1f, 0.1f), UnityEngine.Random.Range(0.0f, 0.2f), UnityEngine.Random.Range(-0.1f, 0.1f)); tape.transform.rotation = BulletScript.RandomOrientation(); } if (UnityEngine.Random.Range(0, 4) == 0 && !holder.has_flashlight) { GameObject flashlight = (GameObject)Instantiate(holder.flashlight_object); flashlight.transform.parent = tile_parent; flashlight.transform.position = transform.position + new Vector3(UnityEngine.Random.Range(-0.1f, 0.1f), UnityEngine.Random.Range(0.2f, 0.4f), UnityEngine.Random.Range(-0.1f, 0.1f)); flashlight.transform.rotation = BulletScript.RandomOrientation(); } }
public void Start() { GameObject level_object = GameObject.Find("LevelObject"); if (level_object != null) { level_creator = level_object.GetComponent <LevelCreatorScript>(); } if (level_creator == null) { Debug.LogWarning("We're missing a LevelCreatorScript in GunScript, this might mean that some world-interactions don't work correctly."); } line_renderer = GetComponent <LineRenderer>(); line_renderer.SetPosition(0, transform.position); line_renderer.SetPosition(1, transform.position); }
void Awake() { GameObject level_object = GameObject.Find("LevelObject"); if (level_object) { level_creator = level_object.GetComponent <LevelCreatorScript>(); if (!level_creator) { Debug.LogWarning("We're missing a LevelCreatorScript in GunScript, this might mean that some world-interactions don't work correctly."); } } // Fallback to all colliders if (own_colliders.Length <= 0) { own_colliders = GetComponents <Collider>(); } // Ignore own colliders foreach (Collider a in own_colliders) { foreach (Collider b in own_colliders) { Physics.IgnoreCollision(a, b); } } // Ignore colliders foreach (Collider own_collider in own_colliders) { foreach (Collider ignored_collider in ignored_colliders) { Physics.IgnoreCollision(own_collider, ignored_collider); } } }