private void SealsControls()
 {
     if (Input.GetKeyDown(KeyCode.S))
     {
         if (currentSealsState == Seals.Opened)
             currentSealsState = Seals.Closed;
         else
             currentSealsState = Seals.Opened;
     }
 }
Пример #2
0
    private void Controls()
    {
        //float movementSpeed = GetComponent<ShipAttributesOnline> ().speed;
        //float turningSpeed = GetComponent<ShipAttributesOnline> ().speed;

        float currentHorizonSpeed = new Vector3(objRigidBody.velocity.x, 0f, objRigidBody.velocity.z).magnitude;
        Vector3 forward = new Vector3(transform.forward.x, 0f, transform.forward.z).normalized;
        Vector3 right = new Vector3(transform.right.x, 0f, transform.right.z).normalized;

        //if (onlineInput.GetInputValue(OnlinePlayerInput.PlayerControls.FORWARD))
        //    objRigidBody.AddForce(forward * objRigidBody.mass * movementSpeed);

        bool currMoveState = onlineInput.GetInputValue(OnlinePlayerInput.PlayerControls.BACK);

        if (currMoveState && !prevMoveState)
        {
            if (currentSealsState == Seals.Opened)
                currentSealsState = Seals.Closed;
            else
                currentSealsState = Seals.Opened;

        }

        prevMoveState = currMoveState;

        float cureMod = (GetComponent<CustomOnlinePlayer> ().currentCureCarrier == this.transform) ? CureScript.cureCarrierSpeedDebuff : 1f;

        if (currentSealsState == Seals.Opened)
            objRigidBody.AddForce(forward * objRigidBody.mass * forwardMovementModifier * cureMod);

        //if (onlineInput.GetInputValue(OnlinePlayerInput.PlayerControls.BACK))
        //    objRigidBody.AddForce(-forward * objRigidBody.mass * movementSpeed);
        if (onlineInput.GetInputValue(OnlinePlayerInput.PlayerControls.LEFT))
        {
            objRigidBody.AddForceAtPosition(right * (objRigidBody.mass + currentHorizonSpeed * steeringModifier), transform.position - (transform.forward * objBounds.extents.z) - (transform.up * objBounds.extents.y));
            objRigidBody.AddForceAtPosition(-right * (objRigidBody.mass + currentHorizonSpeed * steeringModifier), transform.position + (transform.forward * objBounds.extents.z) - (transform.up * objBounds.extents.y));
        }
        //objRigidBody.AddForceAtPosition(right * (objRigidBody.mass + currentHorizonSpeed) * turningSpeed, transform.position - (transform.forward * objBounds.extents.z) - (transform.up * objBounds.extents.y));
        if (onlineInput.GetInputValue(OnlinePlayerInput.PlayerControls.RIGHT))
        {
            objRigidBody.AddForceAtPosition(-right * (objRigidBody.mass + currentHorizonSpeed * steeringModifier), transform.position - (transform.forward * objBounds.extents.z) - (transform.up * objBounds.extents.y));
            objRigidBody.AddForceAtPosition(right * (objRigidBody.mass + currentHorizonSpeed * steeringModifier), transform.position + (transform.forward * objBounds.extents.z) - (transform.up * objBounds.extents.y));
        }
        //objRigidBody.AddForceAtPosition(-right * (objRigidBody.mass + currentHorizonSpeed) * turningSpeed, transform.position - (transform.forward * objBounds.extents.z) - (transform.up * objBounds.extents.y));
    }