Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 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 $$anonymous$$ · Feb 28, 2020 at 12:35 PM · c#uierrorout of range

Prefab throwing out of range exception when dragged into Hierarchy from Project Folder

So I decided to make a health bar so I was following Brackeys recent guide (How to make a health bar), upon thinking more about it I wanted to make it more than just a health bar. I made a script which is supposed just just Create a prefab in a Canvas, Assign its details, then move it to another canvas (Player,Enemy,etc...).


When I recently loaded up the project and wanted to test another use case dragging the HealthBar Prefab from the Project Folder into the Hierarchy caused a error in the console. alt text I then booted up a different project set it all up again and got the same result. alt text Thank you for taking the time to read this and any help is appreciated!


 public class SlidersScript : MonoBehaviour
 {
     public List<SliderVariables> sliderList = new List<SliderVariables>();
 
     private void Start()
     {
         //SetUp
         SetUpSliders(sliderList);
     }
 
     //Testing block
     private void Update()
     {
         if (Input.GetKeyDown(KeyCode.Space))
         {
             //AddValue("Health Bar", 10);
             //GradientSwitch("Health Bar", 1);
         }
     }
 
     /*
      * Sets up sliders with values they had put in from start
     */
     public void SetUpSliders(List<SliderVariables> sliderList)
     {
         foreach (SliderVariables slider in sliderList)
         {
             int childTracker = 0;
             Transform childSlidersTransform;
             //Create
             GameObject newSlider = Instantiate(slider.SliderPrefab, new Vector3(0, 0, 0), Quaternion.identity) as GameObject;
             //Attach
             if (slider.CanvasToAttachTo != null)
             {
                 newSlider.transform.SetParent(slider.CanvasToAttachTo.transform, false);
             }
             newSlider.name = slider.Name;
             slider.SliderReference = newSlider.GetComponent<Slider>();
             slider.Fill = newSlider.transform.Find("Fill").GetComponent<Image>();
             slider.SliderReference.minValue = slider.MinValue;
             slider.SliderReference.maxValue = slider.MaxValue;
             slider.SliderReference.value = slider.StartValue;
             //Normalized Value turn number to a 0-1 value
             slider.Fill.color = slider.Gradient.Evaluate(slider.SliderReference.normalizedValue);
 
             //TODO: Works for now but the ideal is.... Creating the child slider and attaching it somehow????????????
             foreach(ChildSliderVariables childSlider in slider.childSliders)
             {
                 //Gets childs reference
                 childSlidersTransform = newSlider.transform.Find("SliderChildren").transform;
                 Debug.Log(childSlidersTransform.name);
                 Debug.Log(childSlidersTransform.GetChild(childTracker).name);
                 childSlider.SliderReference = childSlidersTransform.GetChild(childTracker).GetComponent<Slider>();
                 childSlider.Fill = childSlidersTransform.GetChild(childTracker).Find("Fill").GetComponent<Image>();
                 //Sets childs information
                 childSlider.SliderReference.name = childSlider.Name;
                 childSlider.SliderReference.minValue = childSlider.MinValue;
                 childSlider.SliderReference.maxValue = childSlider.MaxValue;
                 childSlider.SliderReference.value = childSlider.StartValue;
                 childSlider.Fill.color = childSlider.Gradient.Evaluate(childSlider.SliderReference.normalizedValue);
             }
         }
     }
 
     /*
      * Allows another slider to be added to the list
     */
     public void AddSliderToList(Slider sliderReference, int minValue, int maxValue, int startValue)
     {
         SliderVariables newSliderItem = new SliderVariables();
         newSliderItem.SliderReference = sliderReference;
         newSliderItem.Fill = sliderReference.transform.Find("Fill").GetComponent<Image>();
         newSliderItem.MinValue = minValue;
         newSliderItem.MaxValue = maxValue;
         newSliderItem.StartValue = startValue;
         newSliderItem.Fill.color = newSliderItem.Gradient.Evaluate(newSliderItem.SliderReference.normalizedValue);
         if (newSliderItem.CanvasToAttachTo != null)
         {
             newSliderItem.SliderReference.transform.SetParent(newSliderItem.CanvasToAttachTo.transform, false);
         }
         sliderList.Add(newSliderItem);
     }
 
     void SetValue(string sliderName, float amount)
     {
         SliderVariables slider = new SliderVariables();
         slider = sliderList.Find(x => x.Name.Equals(sliderName));
         slider.SliderReference.value = amount;
         slider.Fill.color = slider.Gradient.Evaluate(slider.SliderReference.normalizedValue);
     }
 
     void AddValue(string sliderName, float amount)
     {
         SliderVariables slider = new SliderVariables();
         slider = sliderList.Find(x => x.Name.Equals(sliderName));
         slider.SliderReference.value += amount;
         slider.Fill.color = slider.Gradient.Evaluate(slider.SliderReference.normalizedValue);
     }
 
     void SubractValue(string sliderName, float amount)
     {
         SliderVariables slider = new SliderVariables();
         slider = sliderList.Find(x => x.Name.Equals(sliderName));
         slider.SliderReference.value -= amount;
         slider.Fill.color = slider.Gradient.Evaluate(slider.SliderReference.normalizedValue);
     }
 
     void GradientSwitch(string sliderName, int gradientNum)
     {
         SliderVariables slider = new SliderVariables();
         slider = sliderList.Find(x => x.Name.Equals(sliderName));
         slider.Gradient = slider.OtherGradientPresets[gradientNum];
         slider.Fill.color = slider.Gradient.Evaluate(slider.SliderReference.normalizedValue);
     }
 }
 
 /// <summary>
 /// Used to define what a slider is.
 /// </summary>
 [System.Serializable]
 public class SliderVariables
 {
     public string Name;
     public GameObject SliderPrefab;
     [HideInInspector]
     public Slider SliderReference;
     [HideInInspector]
     public Image Fill;
     public float MinValue = 0;
     public float MaxValue = 100;
     public float StartValue = 50;
     public Gradient Gradient;
     public Canvas CanvasToAttachTo;
     public List<Gradient> OtherGradientPresets = new List<Gradient>();
     public List<ChildSliderVariables> childSliders = new List<ChildSliderVariables>();
 }
 
 /// <summary>
 /// Used in the SliderVariables class in case a Slider has multiple sliders making it up
 /// </summary>
 [System.Serializable]
 public class ChildSliderVariables
 {
     public string Name;
     [HideInInspector]
     public Slider SliderReference;
     [HideInInspector]
     public Image Fill;
     public float MinValue = 0;
     public float MaxValue = 100;
     public float StartValue = 50;
     public Gradient Gradient;
     public List<Gradient> OtherGradientPresets = new List<Gradient>();
 }


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

729 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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

Prefab variables of disabled game objects are removed on game start. 2 Answers

Distribute terrain in zones 3 Answers

error CS0029: Cannot implicitly convert type 'string' to 'int'... I EVEN ADDED .ToString(); 1 Answer

Help I am getting an error CS0079 in my code and I don't know why. 1 Answer

How can I make a new line in Unity UI text? 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