Exemplo n.º 1
0
 void Awake()
 {
     MoveTimerMax = 0.06f;
     MoveTimer    = MoveTimerMax;
     state        = shipStates.Live;
 }
Exemplo n.º 2
0
    // Update is called once per frame
    void FixedUpdate()
    {

        state = GamePad.GetState(playerIndexNum);

        if (this.gameObject.GetComponent<AudioSource>().pitch < (state.Triggers.Right))
        {
            this.gameObject.GetComponent<AudioSource>().pitch += engineResponseSpeed;
        }
        else if (this.gameObject.GetComponent<AudioSource>().pitch > (state.Triggers.Right + engineResponseSpeed))
        {
            this.gameObject.GetComponent<AudioSource>().pitch -= engineResponseSpeed;
        }
        if (this.gameObject.GetComponent<AudioSource>().pitch < 0.05f)
            this.gameObject.GetComponent<AudioSource>().pitch = 0.05f;
        if (shipState == shipStates.rocketMode)
            this.gameObject.GetComponent<AudioSource>().pitch = 1.25f;

        //float v = -Input.GetAxis("AccelTrigger");
        float v = state.Triggers.Right;
        //float h = Input.GetAxis("Horizontal");
        float h = state.ThumbSticks.Left.X;
        //bool rstrafe = Input.GetButton("StrafeR");
        //bool lstrafe = Input.GetButton("StrafeL");
        
        //Activate Hovering
        TerrainNormalHover(hoverSensors);



        if (h > 0.1f)
        {
            LFlap.GetComponent<Animator>().SetBool("flapOpen", true);
        }
        else
        {
            LFlap.GetComponent<Animator>().SetBool("flapOpen", false);
        }
        if (h < -0.1f)
        {
            RFlap.GetComponent<Animator>().SetBool("flapOpen", true);
        }
        else
        {
            RFlap.GetComponent<Animator>().SetBool("flapOpen", false);
        }

        if (shipState == shipStates.normalMode)
        {
            if (playerCamera.fieldOfView > normalFOV)
            {
                playerCamera.fieldOfView = playerCamera.fieldOfView - 1;
            }
            else if (playerCamera.fieldOfView < normalFOV)
            {
                playerCamera.fieldOfView = normalFOV;
            }
            if (playerCamera.gameObject.GetComponent<ThirdPersonCamera>().distance < 8f)
            {
                playerCamera.gameObject.GetComponent<ThirdPersonCamera>().distance += 1;
            }


            //ShipStabilizer();

            //Forward Motion
            //Boost ();
            shipRigid.AddRelativeForce(Vector3.forward * v * shipVelocity, ForceMode.Force);
            //shipRigid.AddRelativeForce(0f, 0f, 5f * h * shipRigid.velocity.x, ForceMode.Force);
            shipRigid.AddRelativeTorque(0f, h * turnSpeed, 0f, ForceMode.Force);

            

            //Strafing
            //if (rstrafe)
            if (state.Buttons.RightShoulder == ButtonState.Pressed)
                shipRigid.AddRelativeForce(Vector3.right * 90, ForceMode.Force);
            //else if (lstrafe)
            if (state.Buttons.LeftShoulder == ButtonState.Pressed)
                shipRigid.AddRelativeForce(Vector3.left * 90, ForceMode.Force);
            //Boost ();        
            //Leaning
            //shipRigid.AddRelativeTorque(-Vector3.forward * h * leanForce, ForceMode.Force);
            //Debug.Log(shipRigid.velocity.magnitude + ", " + curCharge.ToString());
            Lance();
        }
        else if (shipState == shipStates.rocketMode)
        {

            if (playerCamera.fieldOfView < rocketFOV)
            {
                playerCamera.fieldOfView = playerCamera.fieldOfView + 1;
            }
            else if (playerCamera.fieldOfView > rocketFOV)
            {
                playerCamera.fieldOfView = rocketFOV;
            }
            if (playerCamera.gameObject.GetComponent<ThirdPersonCamera>().distance > 6f)
            {
                playerCamera.gameObject.GetComponent<ThirdPersonCamera>().distance -= 0.1f;
            }


            playerCamera.gameObject.GetComponent<ThirdPersonCamera>().shakeIntensity = 0.05f * (Time.time - rocketEndTime);
            //ShipStabilizer();

            //Forward Motion
            shipRigid.AddRelativeForce(Vector3.forward * rocketPower * shipVelocity, ForceMode.Force);
            //shipRigid.AddRelativeForce(0f, 0f, 5f * h * shipRigid.velocity.x, ForceMode.Force);
            shipRigid.AddRelativeTorque(0f, h * turnSpeed, 0f, ForceMode.Force);

            //Leaning
            //shipRigid.AddRelativeTorque(-Vector3.forward * h * leanForce, ForceMode.Force);

            Lance();

            if (Time.time > rocketEndTime)
            {
                Debug.Log("Normal Mode");
                shipState = shipStates.normalMode;
                playerCamera.gameObject.GetComponent<ThirdPersonCamera>().shake = false;
                RocketBeam.gameObject.SetActive(false);


            }
        }
    }
Exemplo n.º 3
0
    // Use this for initialization
    void Start()
    {
        playerCameraObj = Instantiate(playerCameraPrefab);
        playerCamera = playerCameraObj.GetComponent<Camera>();
        playerCameraObj.GetComponent<ThirdPersonCamera>().poi = this.transform;
        playerCameraObj.GetComponent<ThirdPersonCamera>().camTarget = this.transform;
        playerCameraObj.GetComponent<ThirdPersonCamera>().playerIndexNum = playerIndexNum;
        if (playerIndexNum == XInputDotNetPure.PlayerIndex.One)
        {
            playerCameraObj.GetComponent<ThirdPersonCamera>().playerCamNumber = 1;
        }
        else if (playerIndexNum == XInputDotNetPure.PlayerIndex.Two)
        {
            playerCameraObj.GetComponent<ThirdPersonCamera>().playerCamNumber = 2;
        }
        else if (playerIndexNum == XInputDotNetPure.PlayerIndex.Three)
        {
            playerCameraObj.GetComponent<ThirdPersonCamera>().playerCamNumber = 3;
        }
        else if (playerIndexNum == XInputDotNetPure.PlayerIndex.Four)
        {
            playerCameraObj.GetComponent<ThirdPersonCamera>().playerCamNumber = 4;
        }

        shipRigid = this.gameObject.GetComponent<Rigidbody>();
        
        hoverSensor1 = transform.Find("HoverSensor 1").transform;
        hoverSensor2 = transform.Find("HoverSensor 2").transform;
        hoverSensor3 = transform.Find("HoverSensor 3").transform;
        hoverSensor4 = transform.Find("HoverSensor 4").transform;
        hoverSensors = new Transform[4] { hoverSensor1, hoverSensor2, hoverSensor3, hoverSensor4 };

        lancePoint = transform.Find("Lance").transform;
        shipState = shipStates.normalMode;
        
        
    }
Exemplo n.º 4
0
    void Update()
    {

        if (Input.GetKey(KeyCode.D) || (health <= 0))
            dead = true;

        if (dead)
            die();


        state = GamePad.GetState(playerIndexNum);

        //if ( Input.GetButtonDown ("Fire3" )) {
        if ((state.Buttons.X == ButtonState.Pressed) && (shipState != shipStates.rocketMode))
        {
            shipState = shipStates.rocketMode;
            rocketEndTime = Time.time + rocketBoostDuration;
            Debug.Log("ROCKET MODE");
            playerCamera.gameObject.GetComponent<ThirdPersonCamera>().shake = true;
            RocketBeam.gameObject.SetActive(true);
            RocketBeam.GetComponent<GeroBeam>().NowLength = 0;
            blast1.Play();
            GamePad.SetVibration(playerIndexNum, 0.5f, 0.2f * state.Triggers.Right);
        }

        //if (Input.GetAxis ("AccelTrigger") < -0.1) {
        //Debug.Log(state.Triggers.Right);
        if (state.Triggers.Right > 0.1f)
        {
            //Debug.Log (Input.GetAxis ("AccelTrigger"));
            EngineBeam.gameObject.SetActive(true);
            //EngineBeam.GetComponent<GeroBeam> ().NowLength = 0;

            /*if (this.gameObject.GetComponent<AudioSource> ().pitch < state.Triggers.Right) {
				this.gameObject.GetComponent<AudioSource> ().pitch += engineResponseSpeed * Time.deltaTime;
			} else if (this.gameObject.GetComponent<AudioSource> ().pitch > state.Triggers.Right) {
				this.gameObject.GetComponent<AudioSource> ().pitch -= engineResponseSpeed * Time.deltaTime;
			}*/

            if (shipState == shipStates.normalMode)
            {
                if (engineLight.intensity > engineLightIntensityNormal)
                {
                    engineLight.intensity -= 1f;
                }
                else if (engineLight.intensity < engineLightIntensityNormal)
                {
                    engineLight.intensity += 1f;
                }
                GamePad.SetVibration(playerIndexNum, 0f, 0.2f * state.Triggers.Right);
            }
            else {
                if (engineLight.intensity > engineLightIntensityBoost)
                {
                    engineLight.intensity -= 1f;
                }
                else if (engineLight.intensity < engineLightIntensityBoost)
                {
                    engineLight.intensity += 1f;
                }
                GamePad.SetVibration(playerIndexNum, 0.5f, 0.2f * state.Triggers.Right);
            }

        }
        else {
            EngineBeam.GetComponent<GeroBeam>().NowLength = 0;
            EngineBeam.gameObject.SetActive(false);

            /*if (this.gameObject.GetComponent<AudioSource> ().pitch > 0.1f) {
				this.gameObject.GetComponent<AudioSource> ().pitch -= engineResponseSpeed * Time.deltaTime;
			} else {
				this.gameObject.GetComponent<AudioSource> ().pitch = 0.05f;
			}*/

            if (shipState == shipStates.normalMode)
            {
                if (engineLight.intensity > 2f)
                {
                    engineLight.intensity -= 1f;
                }
                else if (engineLight.intensity < 2f)
                {
                    engineLight.intensity += 1f;
                }

                GamePad.SetVibration(playerIndexNum, 0f, 0f);
            }
            else {
                if (engineLight.intensity > engineLightIntensityBoost)
                {
                    engineLight.intensity -= 1f;
                }
                else if (engineLight.intensity < engineLightIntensityBoost)
                {
                    engineLight.intensity += 1f;
                }
            }

        }
    }