Jump to content
Unity Insider Forum
Sign in to follow this  
Leftwing

Objekt fliegt aus der Szene bei Kollision (2D)

Recommended Posts

Hallo!

Vielleicht kurz zur Erklärung: habe eine 2D-Szene.
Eine Plattform (Sprite als langezogenes Rechteck, Kinematic, dient als Begrenzer) und auf der liegen quadratische Blöcke.
Diese Blöcke sollen durch Drag&Drop (mittels Maus) beliebig angeordnet/gestapelt werden können.

Dazu hängt an jedem Block das folgende Skript:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;

public class Class1: MonoBehaviour {
    private Vector3 screenPoint;
    private Vector3 offset;

    private Rigidbody2D rb;

    void Awake() {
        rb = GetComponent<Rigidbody2D>();
    }

    void OnMouseDown() {
        screenPoint = Camera.main.WorldToScreenPoint(gameObject.transform.position);
        offset = gameObject.transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z));
    }

    void OnMouseDrag() {
        Vector3 cursorPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
        Vector3 cursorPosition = Camera.main.ScreenToWorldPoint(cursorPoint) + offset;

        rb.MovePosition(cursorPosition);
        //transform.position = cursorPosition;
    }
}

 

Alles funktioniert so weit.

ABER: wenn mit dem Block (per Drag&Drop) einer der anderen Blöcke getroffen wird, fliegt der getroffene Block aus dem Bild.
Würde jetzt eigentlich nur im "Update" die Möglichkeit sehen, hier am rb mit "AddForce" oder "velocity" die Kräfte auf den (getroffenen) Block auf 0 zu setzen.

Oder wie könnte ich sonst verhindern, dass die Blöcke federleicht so (massiv) beschleunigt werden?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...