• 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
Question by SrBilyon · Jan 04, 2012 at 11:05 PM · arraylistinventoryitemselectiongrid

Scroll List Problem

I want to create an item menu controllable by arrow keys, much so like the one in most Final Fantasy Games and various other JRPGs. So I chose to use a selection grid.

alt text

Now, this is currently my OnGUI function:

 function OnGUI()
 {
     scrollPosition = GUI.BeginScrollView(Rect (10,10,220,300),scrollPosition, Rect (0, 0, 220, 400));
 
     for(var i : ConsumableItem in itemBag)
     {
         //Reason: Using a built-in array
         var newBag = new Array(selectionStrings);
         //Add the item to the temp bag
         //var newItemName : String = (i.name + " : " + i.itemAmount);
         newBag.Add(i.name);
         Debug.Log(i.name + " has been picked up");
         //Add the contents of the temporary bag into the main bag
         selectionStrings = newBag.ToBuiltin(String);
     }
     
     selectionGridInt = GUILayout.SelectionGrid (activeSelected, selectionStrings, 1, GUILayout.Width(200));  
     
     GUI.EndScrollView();
 }


The list is to automatically populate as I add new items, (which it appears to be doing in the inspector), however, I can't keep it from duplicating the same entry repeatedly, (and i know the reason for that is because of my loop)

Comment
syclamoth
asafsitner

People who like this

2 Show 3
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 Julien-Lynge · Jan 05, 2012 at 12:35 AM 0
Share

I was able to copy your code into a script and run it without problems (I did translate to C# first), so the issue is likely elsewhere in your code. Can you send us the specific errors you're getting, and under what circumstances they occur?

avatar image Julien-Lynge · Jan 05, 2012 at 01:35 AM 0
Share

I tested the very bottom piece of code, the one you said produced errors:

 var selGridInt : int = 0;
 var selStrings : String[] = ["Grid 1", "Grid 2", "Grid 3", "Grid 4"];

 function OnGUI () {
     selGridInt = GUILayout.SelectionGrid (selGridInt, selStrings, 2);
 }

In addition to C#, I tried it in Javascript and it worked just fine.

avatar image SrBilyon · Jan 06, 2012 at 09:59 AM 0
Share

I updated the question with revised information.

1 Reply

  • Sort: 
avatar image
Best Answer

Answer by SrBilyon · Jan 06, 2012 at 09:53 PM

Figured it out (how silly of me). I just needed to add the entry of the item in the same function that I add the item to the actual inventory's array.

One array holds the string (stringArray) The other array holds the item (itemArray)

When I add an item to the itemArray, I add a string to the stringArray at the same.

Comment

People who like this

0 Show 0 · 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

Unity Answers is in Read-Only mode

Unity Answers content will be migrated to a new Community platform and we are aiming to launch a public beta by June 9. Please note, Unity Answers is now in read-only so we can prepare for the final data migration.

For more information and updates, please read our full announcement thread in the Unity Forum.

Follow this Question

Answers Answers and Comments

5 People are following this question.

avatar image avatar image avatar image avatar image avatar image

Related Questions

Preventing Items from shifting in a list 1 Answer

How i can make a script-made button interactable? 0 Answers

Which is better for an inventory system, Array or List? 0 Answers

DontDestroyOnLoad make errors 0 Answers

How can I store game data outside of scripts.(e.g Total list of inventory items) 2 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