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 twetzel2k · Oct 25, 2017 at 08:29 PM · c#javascript

Converting from Java

I have been trying to convert this to C# but it doesn't like it. The Java code works and is here.

 public var slot: Transform;
 var xtemp;
 var ytemp;
 
 function OnMouseUp(){
     if (Vector3.Distance (transform.position, slot.position) == 1.0) {
         xtemp = transform.position.x;
         ytemp = transform.position.y;
         transform.position.x = slot.position.x;
         transform.position.y = slot.position.y;
         slot.position.x = xtemp;
         slot.position.y = ytemp;
     }
 }
 

This is what I have for the C# so far:`using UnityEngine; using System.Collections;

public class SlidingBlocks : MonoBehaviour {

 public Transform emptySlot;
 private Transform xtemp;
 private Transform ytemp;


 void OnMouseUp () {


     if (Vector3.Distance (transform.position, emptySlot.position) == 1.0f) {
     
         xtemp = transform.position.x;
         ytemp = transform.position.y;
         transform.position.x = emptySlot.position.x;
         transform.position.y = emptySlot.position.y;
          emptySlot.position.x = xtemp;
          emptySlot.position.y = ytemp;

     }

 }

} ` Any help would be appreciated.

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

3 Replies

· Add your reply
  • Sort: 
avatar image
0

Answer by Hatsuko · Oct 26, 2017 at 12:03 AM

You can look at the Console window and see what it tells you. Double click on them, and it will bring you to the line that may be causing error.

You should get two types of errors now:

  • Cannot implicitly convert type 'float' to 'UnityEngine.Transform'

This will bring you to: xtemp = transform.position.x;

You are assigning transform.position.x to xtemp. transform.position.x is a float, and xtemp is a Transform because you declared it as so. So basically it's telling you that this can't be done, because it cannot convert a float to a Transform. Change xtemp and ytemp's type to float and this error will be gone.

  • Cannot modify a value type return value of 'UnityEngine.Transform.position'. Consider storing the value in a temporary variable

See this post

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
avatar image
0

Answer by Cuttlas-U · Oct 26, 2017 at 06:17 AM

hi; the only problem in converting java to c# is the part that u want to change a value like x or y or z from a vector 3 ; in java u can do it directy like this :

    transform.position.x = emptySlot.position.x;

but in c# u have to move it to a temp variable and then assign it again like this :

 Vector3 Temp = transform.position;
 Temp .x = emptySlot.position.x;
 transform.position = Temp;

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
avatar image
0

Answer by twetzel2k · Oct 27, 2017 at 05:49 PM

Ok, I am getting some where, but this code still doesn't do what it should. No errors, but the two objects do not switch position.

 public class SlidingBlocks : MonoBehaviour {
 
     public Transform emptySlot;
 
     void OnMouseUp () {
         
         Vector3 Temp = transform.position;
         Vector3 Temp2 = transform.position;
 
         if (Vector3.Distance (transform.position, emptySlot.position) == 1.0f) {
             
             Temp.x = emptySlot.position.x;
             Temp.y = emptySlot.position.y;
             transform.position = Temp;
             emptySlot.position = Temp2;
         
         }
     }
 }
 
 
Comment
Add comment · Show 3 · 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 Hatsuko · Oct 27, 2017 at 09:46 PM 0
Share

Put Debug.Log("!!!"); before and after if (Vector3.Distance (transform.position, emptySlot.position) == 1.0f) { to see if it reaches into if-statement or not

avatar image twetzel2k · Oct 28, 2017 at 11:49 PM 0
Share

It reads the if statement but doesn’t work

avatar image Hatsuko · Oct 29, 2017 at 10:34 AM 0
Share

By "switch position" do you mean "switch position x, y, z" values? If so you miss one line Temp.z = emptySlot.position.z;. Also try to create a new scene to test (see below gif) so you make sure it isn't effected by other scripts or stuff. If it works in the new scene but doesn't work in the original scene, then something else in the original scene is causing trouble. Also this is not about converting from JavaScript to C# anymore, so it's better if you post a new question.

alt text

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

475 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

Related Questions

How to load level after typing somthing? 1 Answer

SHA512 JS -> C# 0 Answers

Help converting a few lines of JS to C#. 1 Answer

Js to C# conversion without error but can't work 2 Answers

JS to CS conversion problem with multiple class files 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