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 /
  • Help Room /
avatar image
0
Question by OfficialLupaz · Apr 15, 2017 at 09:57 AM · errorindexoutofrangeexceptiondaynightday

Array index is out of range??? (Day Night Cycle Script)

Hi unity community

I got this error and i dont know what it means: IndexOutOfRangeException: Array index is out of range. DayNightCycle.ChangeTime () (at Assets/Models + Scripts/Scripts/CSharp/DayNightCycle.cs:38) DayNightCycle.Update () (at Assets/Models + Scripts/Scripts/CSharp/DayNightCycle.cs:25)

This is my code:

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 using System;
 using UnityEngine.UI;
 
 public class DayNightCycle : MonoBehaviour 
 {
     public float time;
     public TimeSpan currenttime;
     public Transform SunTransform;
     public Light Sun;
     public Text timetext;
     public int days;
 
     public float intensity;
     public Color fogday = Color.grey;
     public Color fognight = Color.black;
 
     public int speed;
 
     // Update is called once per frame
     void Update () 
     {
         ChangeTime ();    
     }
 
     public void ChangeTime()
     {
         time += Time.deltaTime * speed;
         if (time > 86400) 
         {
             days += 1;    
             time = 0;
         }
         currenttime = TimeSpan.FromSeconds (time);
         string[] temptime = currenttime.ToString ().Split ("+"[0]);
         timetext.text = temptime [0] + ":" + temptime [1];
 
         SunTransform.rotation = Quaternion.Euler (new Vector3 ((time - 21600) / 86400 * 360, 0, 0));
         if(time < 43200)
             intensity = 1 - (43200 - time) / 43200;
         else
             intensity = 1 - ((43200 - time) / 43200 *-1);
 
         RenderSettings.fogColor = Color.Lerp (fognight, fogday, intensity * intensity);
 
         Sun.intensity = intensity;
     }
 }
 

can someone help me?

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

Answer by Caruzo · Apr 15, 2017 at 01:13 PM

Check out 35-39 lines. It has something to do with the array.

The error you get means that you are trying to access (use) or assign a new value to the string array number, which does not exist or has not been created yet.

Comment
Add comment · Show 2 · 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 OfficialLupaz · Apr 15, 2017 at 03:30 PM 0
Share

I believe its this line: timetext.text = temptime [0] + ":" + temptime [1];

but i cant figure what i did wrong...

avatar image Caruzo · Apr 15, 2017 at 03:52 PM 1
Share

It would be nice to see if you actually add strings to the array. Simply put Debug.Log (temptime.length) under update to see if this number is ever changing to a higher one. If it stays the same it means you are not adding anything to array. Normally you add values to an array by 'array.add' or 'array.push'.

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

115 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

Related Questions

onClick.AddListener IndexOutOfRangeException error and listener not seen in inspector 0 Answers

Unity C# array index is out of range 1 Answer

Strange Error with Itween PutOnPath 0 Answers

IndexOutOfRangeException: Index was outside the bounds of the array. (wrapper managed-to-managed) System.Object.ElementAddr_4(object,int,int,int) 0 Answers

Array index is out of range (C#)? 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