private void Start() { enimies = enimies + 1; //Chaneded Here player = GameObject.FindGameObjectWithTag("Player"); playerHealth = player.GetComponent <PlayerStats>(); animator = GetComponent <Animator>(); chest = animator.GetBoneTransform(HumanBodyBones.Chest); source = GetComponent <AudioSource>(); navMeshAgent = GetComponent <NavMeshAgent>(); aiControl = GetComponent <AIControl>(); vision = GetComponentInChildren <NPCVision>(); hitFXManager = GetComponent <HitFXManager>(); states = GetComponent <NPCStates>(); visibilityCheckObject = new GameObject(); visibilityCheckObject.name = this.name + " visibilityCheckObject"; visibilityCheckObject.AddComponent <SphereCollider>().radius = 0.3f; visibilityCheckObject.GetComponent <SphereCollider>().enabled = false; foreach (Collider collider in GetComponentsInChildren <Collider>()) { collider.enabled = false; } foreach (Rigidbody rigidbody in GetComponentsInChildren <Rigidbody>()) { rigidbody.isKinematic = true; } GetComponent <Rigidbody>().isKinematic = false; GetComponent <Collider>().enabled = true; StartCoroutine(CheckFriends()); //Set own position as NavMesh target on start desiredPosition = transform.position; //Controller variables m_Rigidbody = GetComponent <Rigidbody>(); m_Capsule = GetComponent <CapsuleCollider>(); m_CapsuleHeight = m_Capsule.height; m_CapsuleCenter = m_Capsule.center; m_Rigidbody.constraints = RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationY | RigidbodyConstraints.FreezeRotationZ; m_OrigGroundCheckDistance = m_GroundCheckDistance; }
private void Start() { GetWeaponSettings(); if (weaponType != WeaponType.Melee && weaponType != WeaponType.Grenade) { BalisticProjectilesPool(); } if (GetComponent <Animator>()) { animator = GetComponent <Animator>(); } else { Debug.LogError("Please attach animator to your weapon object"); } if (GetComponent <AudioSource>()) { audioSource = GetComponentInParent <AudioSource>(); } else { Debug.LogError("Please attach AudioSource to your weapon object"); } cam = Camera.main; controller = FindObjectOfType <FPSController>(); normalSensX = controller.sensitivity.x; normalSensY = controller.sensitivity.y; normalFOV = cam.fieldOfView; weaponManager = FindObjectOfType <WeaponManager>(); scope = weaponManager.scopeImage; ammoText = GameObject.Find("AmmoText").GetComponent <Text>(); weaponNameText = GameObject.Find("WeaponText").GetComponent <Text>(); recoilComponent = FindObjectOfType <Recoil>(); sway = FindObjectOfType <Sway>(); if (weaponType != WeaponType.Melee && weaponType != WeaponType.Grenade) { if (shell) { ShellsPool(); } else { Debug.LogError("No shell gameobject attached to weapon settings object"); } if (MuzzleFlashParticlesFX) { temp_MuzzleFlashParticlesFX = Instantiate(MuzzleFlashParticlesFX, muzzleFlashTransform.position, muzzleFlashTransform.rotation, muzzleFlashTransform); } else { Debug.LogWarning("There is no shot particle system attached to weapon settings"); } } hitFXManager = FindObjectOfType <HitFXManager>(); ricochetSource = hitFXManager.gameObject.GetComponent <AudioSource>(); ricochetSounds = hitFXManager.ricochetSounds; inventory = FindObjectOfType <Inventory>(); input = FindObjectOfType <InputManager>(); if (weaponManager.UseNonPhysicalReticle) { if (GameObject.Find("StaticReticle") != null) { staticReticle = GameObject.Find("StaticReticle"); } } else { if (GameObject.Find("DynamicReticle") != null) { dynamicReticle = GameObject.Find("DynamicReticle").GetComponent <RectTransform>(); } } var item = new Item(ammoItemID, "ammo", "ammo", ItemType.ammo); item.ammo = 100; inventory.GiveItem(item); }