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 supermud · Mar 15, 2015 at 04:00 PM · invalidcastexception

InvalidCastException: Cannot cast from source type to destination type.

Hello I have this script and I was just wondering what I am doing wrong. I have looked all over the answers section and I cannot figure out my problem. Any help would be greatly appreciated. Thanks in advance.

The error: InvalidCastException: Cannot cast from source type to destination type. Spawner.spawn_OBJ () (at Assets/Spawner.js:8) Spawner.Update () (at Assets/Spawner.js:20)

The Script: var OBJ : GameObject; var spawn_postion; var timer = 0.0;

 function spawn_OBJ ()
 {
 spawn_postion = Vector2 (12,-2);
 var temp_spawn_OBJ = Instantiate(OBJ,spawn_postion, Quaternion.identity)as GameObject;
 
 }
 function Start () {
 
 }
 
 function Update () {
 timer += Time.deltaTime;
 if (timer > 5) 
 {
 
 spawn_OBJ();
 timer = 0.0 ;
 }
 }
Comment
Add comment · Show 1
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 Denvery · Mar 15, 2015 at 05:11 PM 0
Share

Are you sure that you have accepted OBJ in inspector? (i.e., OBJ is not null?)

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by fafase · Mar 15, 2015 at 05:20 PM

This is a basic UnityScript issue that makes you realize why C# is way better (POV).

  var spawn_postion; 
 
  function spawn_OBJ ()
  {
     spawn_postion = Vector2 (12,-2);
  }

Regardless the typo on position, first you declare the spawn_position and do not provide any type so the compiler makes it an Object so that anything will do.

Then you try to assign a Vector2 to it but the reference is of type Object.

Now the solution:

  var spawn_postion : Vector2;

This way you tell the compiler that you have nothing to provide but you want it to be of type Vector2.

The reason for that mistake is things of this type:

 var spawn_postion = Vector2(0,0);

No type is provided but right on the declaration there a value given so the compiler is able to define the type of the reference.

C# requires type any time (lets forget about dynamic for now). I see some already coming up with :

  How about var floatVar = 5.0f;  

well a value is given in the declaration so the compiler is able to define the type.

  var floatVar;

would never go in C#.

Comment
Add comment · 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

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

4 People are following this question.

avatar image avatar image avatar image avatar image

Related Questions

Error after Windows XP SP3 uninstall 0 Answers

Casting Error C# between Object[] and Texture2D[] 2 Answers

InvalidCastException: Cannot cast from source type to destination type. 1 Answer

CORoutine does not completely stop 1 Answer

InvalidCastException 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