Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Yizzard_Palmero · Aug 11, 2014 at 04:45 PM · c#fps

How do you make a mouse sensitivity option?

So i've been spending a really long time trying to figure this out but whenever I put in the mouseSensativity = PlayerPrefs.GetInt("Sensativity") part the screen only allows player one to look up and down and player two cant even look at all. Here's player one's script:

using UnityEngine; using System.Collections; [RequireComponent (typeof(CharacterController))] public class FPScontroller : MonoBehaviour { public float movementSpeed = 5.0f; public float jumpSpeed = 7.0f; public float sprintSpeed = 2.0f; public int mouseSensativity; float verticalRotation = 0; public float upDownRange = 60.0f; float verticalVelocity = 0; CharacterController characterController; // Use this for initialization void Start () { Screen.lockCursor = true; characterController = GetComponent<CharacterController>(); mouseSensativity = PlayerPrefs.GetInt("Sensativity"); } // Update is called once per frame void Update () { //Rotation float rotLeftRight = Input.GetAxis("Mouse X") * mouseSensativity; transform.Rotate(0, rotLeftRight, 0); verticalRotation -= Input.GetAxis("Mouse Y") * mouseSensativity; verticalRotation = Mathf.Clamp(verticalRotation, -upDownRange, upDownRange); Camera.main.transform.localRotation = Quaternion.Euler(verticalRotation, 0, 0); //Movement float forwardSpeed = Input.GetAxis("Vertical1") * movementSpeed; float sideSpeed = Input.GetAxis("Horizontal1") * movementSpeed; if (Input.GetButton("Run2")) { forwardSpeed = Input.GetAxis("Vertical1") * movementSpeed * sprintSpeed; sideSpeed = Input.GetAxis("Horizontal1") * movementSpeed * sprintSpeed; } if (!Input.GetButton("Run2")) { forwardSpeed = Input.GetAxis("Vertical1") * movementSpeed; sideSpeed = Input.GetAxis("Horizontal1") * movementSpeed; } verticalVelocity += Physics.gravity.y * Time.deltaTime * 2; if (characterController.isGrounded && Input.GetButtonDown("Jump2")) { verticalVelocity = jumpSpeed; } Vector3 speed = new Vector3(sideSpeed, verticalVelocity, forwardSpeed); speed = transform.rotation * speed; characterController.Move(speed * Time.deltaTime); } } here's player two's script (it's pretty much the same thing):

 using UnityEngine;
 using System.Collections;
 
 [RequireComponent(typeof(CharacterController))]
 public class FPScontrollerp2 : MonoBehaviour
 {
 
     public float movementSpeed = 5.0f;
     public int mouseSensativity;
     public float jumpSpeed = 7.0f;
     public float sprintSpeed = 2.0f;
 
     float verticalRotation = 0;
     public float upDownRange = 60.0f;
 
     float verticalVelocity = 0;
 
     CharacterController characterController;
 
     // Use this for initialization
     void Start()
     {
         Screen.lockCursor = true;
         characterController = GetComponent<CharacterController>();
 
         mouseSensativity = PlayerPrefs.GetInt("Sensativity");
     }
 
     // Update is called once per frame
     void Update()
     {
 
 
         //Rotation        
 
         float rotLeftRight = Input.GetAxis("Mouse X") * mouseSensativity;
         transform.Rotate(0, rotLeftRight, 0);
 
         verticalRotation -= Input.GetAxis("Mouse Y") * mouseSensativity;
         verticalRotation = Mathf.Clamp(verticalRotation, -upDownRange, upDownRange);
         Camera.main.transform.localRotation = Quaternion.Euler(verticalRotation, 0, 0);
 
         //Movement
         float forwardSpeed = Input.GetAxis("Vertical2") * movementSpeed;
         float sideSpeed = Input.GetAxis("Horizontal2") * movementSpeed;
 
         if (Input.GetButton("Run"))
         {
             forwardSpeed = Input.GetAxis("Vertical2") * movementSpeed * sprintSpeed;
             sideSpeed = Input.GetAxis("Horizontal2") * movementSpeed * sprintSpeed;
         }
         if (!Input.GetButton("Run"))
         {
             forwardSpeed = Input.GetAxis("Vertical2") * movementSpeed;
             sideSpeed = Input.GetAxis("Horizontal2") * movementSpeed;
         }
 
         verticalVelocity += Physics.gravity.y * Time.deltaTime * 2;
 
         if (characterController.isGrounded && Input.GetButtonDown("Jump"))
         {
             verticalVelocity = jumpSpeed;
         }
 
         Vector3 speed = new Vector3(sideSpeed, verticalVelocity, forwardSpeed);
 
         speed = transform.rotation * speed;
 
         characterController.Move(speed * Time.deltaTime);
     }
 }
 

and here's the options script that they're both pulling from:

 using UnityEngine;
 using System.Collections;
 
 public class OptionTextBehaviour : MonoBehaviour
 {
 
     public bool isMainMenu = false;
     public bool isOne = false;
     public bool isTwo = false;
     public bool isThree = false;
     public bool isFour = false;
     public bool isFive = false;
     public bool isSix = false;
     public bool isSeven = false;
     public bool isEight = false;
     public bool isNine = false;
     public bool isTen = false;
     bool Clicked = false;
 
     public int Sensativity;
     
 
 
     void OnMouseEnter()
     {
         renderer.material.color = Color.red;
     }
 
     void OnMouseExit()
     {
         if (!Clicked)
         {
             renderer.material.color = Color.white;
         }
     }
 
 
     void OnMouseUp()
     {
         if (isMainMenu)
         {
             Application.LoadLevel(0);
         }
         if (isOne)
         {
             Sensativity = 10;
             Clicked = true;
         }
         if (isTwo)
         {
             Sensativity = 20;
             Clicked = true;
         }
         if (isThree)
         {
             Sensativity = 30;
         }
         if (isFour)
         {
             Sensativity = 40;
         }
         if (isFive)
         {
             Sensativity = 50;
         }
         if (isSix)
         {
             Sensativity = 60;
         }
         if (isSeven)
         {
             Sensativity = 70;
         }
         if (isEight)
         {
             Sensativity = 80;
         }
         if (isNine)
         {
             Sensativity = 90;
         }
         if (isTen)
         {
             Sensativity = 100;
         }
         PlayerPrefs.SetInt("Sensativity", Sensativity);
     }
 }

also as a side note, i'm trying to make it to where whenever a number is clicked it turns red and stays red, but when another # is clicked it turns white, but it stays red no matter what once it's clicked and i've tried many different things but nothing is fixing it and i assume that's because each number runs on its own script, so it can't tell when another number is clicked, but I am new at this and don't know how to fix it. I know it's a lot but help would be very much appreciated. Thanks!

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

2 People are following this question.

avatar image avatar image

Related Questions

Multiple Cars not working 1 Answer

Distribute terrain in zones 3 Answers

Renderer on object disabled after level reload 1 Answer

How to make the FPS camera shake on collision with enemy? 1 Answer

sensitivity slider/ drop down help 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges