• 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 Captain_Burrito · Mar 05, 2019 at 08:20 PM · assign-variable

Variable won't update after assignment.

I've got two scripts: In script one I have the following variables that are filled from somewhere else. I can see they have appropriate values in the inspector.

 public string name;
 public int str;
 public float hp;
 public string attackType;
 

The second script is a placeholder and takes it values from the previous script:

 public string placeName;
 public int placeSTR;
 public float placeHP;
 public string placeAttackType;

To update the second script, I use a third script that acts as a mediator:

 placeholder.placeName = original.name;
 placeholder.placeSTR = original.str;
 placeholder.placeHP = original.hp;
 placeholder.placeAttackType = original.attackType;


Now, the first three values will update just fine, but unity refuses to perform the fourth. If I include a debug log to output the attackType string within the third function like so:

 placeholder.placeName = original.name;
 placeholder.placeSTR = original.str;
 placeholder.placeHP = original.hp;
 Debug.Log(original.attackType);
 placeholder.placeAttackType = original.attackType;

The console spits out the attackType string from the first script just fine, correctly. So I know the value is assigned properly, I know that the update script can see it and recognize it correctly, but it just refuses to admit it exists for the purpose of being given to the placeholder.

I'm at my wits end here, I have no idea why it might be doing this. Any clues?

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 WarmedxMints · Mar 05, 2019 at 08:38 PM 1
Share

post your code as everything there is fine so far. Something must be going on elsewhere.

1 Reply

· Add your reply
  • Sort: 
avatar image
1

Answer by Kirchesch · Mar 05, 2019 at 08:52 PM

Open your text editor press CTRL + F and digit attackType Do it in all your classes that have attackType and check if you are not setting it's value somewhere else. Try settping the placeAttackType = "" before setting it too

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 Captain_Burrito · Mar 05, 2019 at 11:44 PM 0
Share

Thanks! This variable was part of a tree of variables with very similar names. One side of the assignment block hadn't been changed from the ctrl+c I used to set it up quickly.

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.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

101 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

Related Questions

Hello. I have a problem and it has to do with assigning variables to objects when they're in the camera's field of view. 0 Answers

Raycast goes into if statement its not suppose to?! 0 Answers

Assign variables on Instantiation? 0 Answers

How can I use a ref bool when I get: "cannot use ref or out parameter inside an anonymous lambda expression, or query expression"? 0 Answers

Efficiency problem during foreach cycle 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