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 z3nth10n · Apr 17, 2014 at 12:31 PM · inputmousestringdetect

Input.inputString not detecting mouse action?

Hi,

well I'm making a Input Manager... I'm on the GUI, and I want to set the values by clicking a button and saving the next movement...

So, I use Input.inputString, the problem is that when I click on anywhere, the inputString returns a null value, is there any other variables that returns the mouse values?

         public static Dictionary<string, KeyCode> inputMap;
 
 //Start()
 
         inputMap = new Dictionary<string, KeyCode>();    
 
                 tempInputMap.Add("Fire1", (KeyCode)System.Enum.Parse(typeof(KeyCode), "Mouse0")); //Charges those values with a for cicle extracted from a file
 
         tempInputMap.Add("Fire2", (KeyCode)System.Enum.Parse(typeof(KeyCode), "Mouse0")); //Charges those values with a for cicle extracted from a file
 
         tempInputMap.Add("Fire3", (KeyCode)System.Enum.Parse(typeof(KeyCode), "Mouse0")); //Charges those values with a for cicle extracted from a file
 
 //OnGUI()
 
             foreach(KeyValuePair<string, KeyCode> input in tempInputMap) {
                 string strInputValue = Enum.GetName(typeof(KeyCode), input.Value);
                 GUI.Label(new Rect(10, 50*i+5, 500-30-100-100, 40), input.Key, labelCentered);
                 if(GUI.Button(new Rect(500-20-100-100, 50*i+5, 100, 40), strInputValue) && !tempInputMap.ContainsValue(KeyCode.None)) {
                     tempInputMap[input.Key] = KeyCode.None;
                 } else if(tempInputMap.ContainsValue(KeyCode.None) && Input.anyKey) {
                     string[] SearchKeyByValue = tempInputMap.Where(x => x.Value == KeyCode.None).Select(pair => pair.Key).ToArray();
                     tempInputMap[SearchKeyByValue[0]] = (KeyCode)Enum.Parse(typeof(KeyCode), Input.inputString, true);
                 }
                 GUI.Button(new Rect(500-10-100, 50*i+5, 100, 40), "Reset");
                 i++;
             }

Thanks in advance. Bye.

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

1 Reply

· Add your reply
  • Sort: 
avatar image
0
Best Answer

Answer by Graham-Dunnett · Apr 17, 2014 at 02:04 PM

http://docs.unity3d.com/Documentation/ScriptReference/Input-inputString.html

It's documented that this function returns the string that was entered in the current frame. If your user is busy with the mouse, then it's unlikely that they are entering any string. Maybe you want to capture the last entered string in an Update function and store that for use in your GUI.

Comment
Add comment · Show 1 · Share
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
avatar image z3nth10n · Apr 17, 2014 at 02:07 PM 0
Share

Oh, well I didn't remebered that I can use Event.current.keyCode in OnGUI function :P

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

21 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Word or string position under mouse position 1 Answer

C# inputString mouse Keys? 1 Answer

Input.GetAxisRaw("Mouse ScrollWheel") 4 times 0 Answers

Checking whether string is a valid Input.Key 1 Answer

Left Click While Holding Right Click 1 Answer


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