• 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 Ben_The_boxer · Apr 07, 2020 at 11:33 PM · errorscript.connectionchild object

Attaching objects to objects In game

I am almost clueless approaching this subject but have been eager to figure it out, finding that really hard as I don't even know what this action is called. Am looking for pointers as to what to look into to make this work.

Basically Its a construction game where parts will fit onto other parts some parts would be designed to only fit into exact positions and some parts should be able to fit anywhere onto a part. I'm clueless as to both, sort of like how parts connect in something like Kerbal Space programme or minecraft? (not played but im assuming those blocks lock together!)

Here is what ive to together so far...

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
 public class Connect : MonoBehaviour
 {
     public GameObject beam;
     public Transform con1;
     public Transform con2;
     public GameObject[] connections;
     public Transform closestCon;
 
     public float snapDist = 3;
     public float distHolder = 10;
 
     public bool isConnected;
 
     void Start()
     {
         {
             connections = GameObject.FindGameObjectsWithTag("Connection1");
             Debug.Log(connections);
         }
     }
 
     void Update()
     {
         if (isConnected == false)
         {
             Debug.Log("registered");
             SnapSearch();
         }
     }
 
     void SnapSearch()
     {
         foreach (GameObject con in connections)
         {
             float dist = Vector3.Distance(con1.position, con.transform.position);
             if (dist <= distHolder)
             {
                 distHolder = dist;
                 closestCon = con.transform;
             }
 
             if (distHolder <= snapDist)
             {
                 con1.transform.position = new Vector3(con.transform.position.x, con.transform.position.y, con.transform.position.z);
                 transform.position = new Vector3(con1.transform.position.x - dist, con1.transform.position.y, con1.transform.position.z);
                 //                                                            ^
                 //                       This is a tempory cheat whilst I figurge how to make it universal on any axis
                 //isConnected = true;
 
                 Debug.Log("It did work!");
             }
         }
     }
 }
 


I,m having a brain block with how to simply move the parent with the child in what would be multiply directions in reality.

Secondly rather than translating itself into the same spot every frame I figured a "isConnected" bool would achieve that however really strange but adding that made it move to a completly wrong place which is baffling as the bool simply turns off all the code on a line AFTER its supposed to have been moved to the correct site?

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.

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

183 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

Related Questions

Can i use 3.5 .NET commands on my unity script? 0 Answers

Can't Establish connection using NetworkTransport 0 Answers

A connection has already been set as ready. There can only be one. Error received from NetworkIdentity:UNetStaticUpdate 0 Answers

SyncVars stop working after restarting Host 0 Answers

MasterServer errors 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