cwisbg

MagnetBlend

Aug 24th, 2018
424
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.19 KB | None | 0 0
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4.  
  5. public class MagnetBlend : MonoBehaviour
  6. {
  7.  
  8.     public Transform TargetObj1;
  9.     public Transform TargetObj2;
  10.     public float AttractionStrength = 1.0f;
  11.     public bool MaintaintOffset;
  12.  
  13.     private Vector3 TargetObj1Force;
  14.     private Vector3 TargetObj2Force;
  15.     private Vector3 TargetForce;
  16.  
  17.     private Vector3 TargetCenterPos;
  18.  
  19.     private Vector3 OffsetSave;
  20.     private Vector3 OffsetAmnt;
  21.  
  22.  
  23.     private void Start()
  24.     {
  25.         TargetCenterPos = (TargetObj1.position + TargetObj2.position) / 2;
  26.         OffsetSave = transform.position - TargetCenterPos;
  27.  
  28.     }
  29.  
  30.     void Update()
  31.     {
  32.         TargetCenterPos = (TargetObj1.position + TargetObj2.position) / 2;
  33.         TargetCenterPos -= transform.position;
  34.  
  35.         TargetForce = TargetCenterPos;
  36.         OffsetAmnt = OffsetSave + TargetCenterPos;// +(TargetCenterPos - transform.position);//- OffsetSave;
  37.         if (MaintaintOffset)
  38.         {
  39.             TargetForce = OffsetAmnt;// TargetObj1Force + TargetObj2Force;
  40.         }
  41.  
  42.         transform.position += TargetForce * (Time.deltaTime * AttractionStrength); // Apply force
  43.  
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment