Пример #1
0
		IEnumerator DelayedInit ()
		{
			yield return new WaitForSeconds (0.2f);
			moveJoystick.Init ();
			aimJoystick.Init ();
	
			moveJoystick.OnMove += UpdateMovement;
			aimJoystick.OnAim += UpdateAim;
			aimJoystick.OnMelee += DoMelee;
	
			var inputManagers = FindObjectsOfType<InputManager> ();
			inputManager = inputManagers.FirstOrDefault (j => j._isLocalPlayer);
	
			var weaponHolders = FindObjectsOfType<WeaponHolder> ();
			weaponHolder = weaponHolders.FirstOrDefault (w => w.GetId() == inputManager.ID);
	
			var statusIndicatorses = FindObjectsOfType<StatusIndicators> ();
			statusIndicators = statusIndicatorses.FirstOrDefault (s => s.transform.GetComponentInParent<NetworkIdentity> ().isLocalPlayer);
	
			animator = GetComponent<Animator> ();
			if (showTutorial)
				animator.SetTrigger ("StartTutorial");
			
			initialized = true;
	
		}
Пример #2
0
        // Use this for initialization
        void Start()
        {
            //find childs
            gameController = this.gameObject;

            foreach (Transform child in transform) {

                if (child.gameObject.name == "Character") {
                    character = child.gameObject;

                    foreach (Transform child2 in character.transform) {
                        if (child2.gameObject.name == "weaponHolder") {
                            weaponHolder = child2.gameObject;
                            _weaponHolderController = weaponHolder.GetComponent<WeaponHolder> ();
                        }
                    }
                }
                if (child.gameObject.name == "Player Input") {
                    _inputManager = child.gameObject.GetComponent<InputManager> ();
                }
            }
            //get Hud Components
            foreach (Transform child in gameObject.transform) {
                if (child.gameObject.name == "HUD") {

                    foreach (Transform grandchild in child.gameObject.transform) {
                        if (grandchild.gameObject.name == "Edge Indicators") {
                            ui_edgeIndicator = grandchild.gameObject;
                        }
                    }
                }
            }
            // get components
            gameController.GetComponent<OfflinePlayerController> ();
            RegisterPlayer (); // set name of game controller
        }
Пример #3
0
        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();
        }
Пример #4
0
		//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;

		}