void Start() { isOffline = GameObject.FindObjectOfType<PlayersManager> ().isOffline; GameObject[] players = GameObject.FindGameObjectsWithTag (Tags.GameController); grenadeController = GetComponentInChildren<Grenade> (); grenadeController.shooterID = shooterID; rocket.GetComponent<Rocket>().shooterID = shooterID; grenadeController.damage = damage; grenadeController.radius = radius; rocketHolder = transform.gameObject; foreach (GameObject player in players) { if (player.name == shooterID) { _inputManager = player.GetComponentInChildren<InputManager> (); _inputManager.SetRocketMode (true); grenadeController.isDecider = true; // find camera if (!isOffline && _inputManager._isLocalPlayer) { // online mainCamera = Camera.main.GetComponent<CameraController> (); mainCamera.target = this.gameObject; } } } Quaternion initialRotation = Quaternion.LookRotation (initialVelocity, Vector3.back); initialRotation.x = 0f; initialRotation.y = 0f; transform.rotation = initialRotation; lastVelocities = new Vector2[velocityBuffer]; volume = audioSource.volume; audioSource.volume = 0f; audioSource.Play(); }
//at start void GetObjects () { _weaponHolder = transform.parent.gameObject.GetComponent<WeaponHolder> (); foreach (Transform child in transform) { if (child.gameObject.name == "shootFrom") { _shootFrom = child.gameObject; } } GameObject gameController = transform.root.gameObject; var playerObjectsRef = gameController.GetComponent<PlayerObjectReferences> (); character = playerObjectsRef.character; _jetPackController = character.jetPack; _edgeAnimator = GameObject.FindObjectOfType<edgeIndicator> ().gameObject.GetComponent<Animator> (); _characterAnimator = character.animator; _isOffline = GameObject.FindObjectOfType<PlayersManager> ().isOffline; if (_isOffline) { // offline _isLocalPlayer = true; _OfflinePlayerController = gameController.GetComponent<OfflinePlayerController> (); ID = _OfflinePlayerController.ID; //_combatOffline = gameController.GetComponent<CombatOffline> (); } else { // online _MultiplayerPlayerController = gameController.GetComponent<MultiplayerPlayerController> (); _isLocalPlayer = _MultiplayerPlayerController.isLocalPlayer; ID = _MultiplayerPlayerController.ID; combat = gameController.GetComponent<Combat> (); _CombatAmmoSync = transform.root.gameObject.GetComponent<CombatAmmoSync> (); } _audioPlayer = gameController.GetComponent<AudioPlayerCharacter> (); _cameraCont = GameObject.FindGameObjectWithTag ("MainCamera").GetComponent<CameraController> (); _inputManager = playerObjectsRef.inputManager; _fire = transform.FindChild ("Fire").GetComponent<ParticleSystem> (); if (weaponType == WeaponType.Shocker) { shocker = GetComponent<Shocker> (); shocker.totalEnergy = damage; shocker.range = range; } weaponsHud = FindObjectOfType<WeaponsHud> (); statusIndicators = playerObjectsRef.statusIndicators; }