Skrypt do Sprite 2D

Programowanie w Unity.

Skrypt do Sprite 2D

Postprzez debekami » 18 Gru 2020, 13:21

Hej! Aktualnie robię projekt w którym będę zamieszczał rzeczy które chcę się nauczyć. Zacząłem od prostego programu, gdzie przytrzymując obiekt Sprite, będzie się przemieszczał tam gdzie jest aktualnie myszka, a następnie upadał. Udało mi się prawie wykonać ten program, lecz nie działa prawidłowo. Mianowicie jak przekieruję kursor w losowe miejsce na ekranie i następnie przytrzymam lewy przycisk myszy, to Sprite przenosi się tam gdzie znajduje się kursor, a przy puszczeniu lewego przycisku upada. Nie wiem jak to zrobić ale liczę na pomoc.
Kod:
Kod: Zaznacz wszystko
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class cube : MonoBehaviour
{
    Vector2 initPos;
    Vector2 targetPos;
    Vector2 MinPos;
    Vector2 MaxPos;

    public GameObject Cube;
    // Start is called before the first frame update
    void Start()
    {
        initPos = transform.position;
        targetPos = initPos;

        Vector2 Size = GetComponent<SpriteRenderer>().bounds.extents;
        MinPos = (Vector2)Camera.main.ViewportToWorldPoint(new Vector2(0, 0)) + Size;
        MaxPos = (Vector2)Camera.main.ViewportToWorldPoint(new Vector2(1, 1)) - Size;
    }

    // Update is called once per frame
    void Update()
    {
        Vector2 targetPos = new Vector2(Camera.main.ScreenToWorldPoint(Input.mousePosition).x, Camera.main.ScreenToWorldPoint(Input.mousePosition).y);

        if (Input.GetMouseButton(0))
        {
            targetPos.x = Mathf.Clamp(targetPos.x, MinPos.x, MaxPos.x);
            targetPos.y = Mathf.Clamp(targetPos.y, MinPos.y, MaxPos.y);
            transform.position = targetPos;
        }
   

Cube to ten Sprite o którym wcześniej pisałem

Mogę również podesłać nagranie, ale nie wiem czy tutaj mogę (na discordzie mogę wysłać)
debekami
 
Posty: 1
Rejestracja: 14 Gru 2020, 10:27
Has thanked: 0 time
Been thanked: 0 time

Re: Skrypt do Sprite 2D

Postprzez Rundest » 22 Gru 2020, 18:33

No nie działa dlatego, że nie dałeś nigdzie, że kiedy naciskasz na sprite to wtedy przytrzymujesz i opuszczasz. A dałeś że kiedy naciśniesz lewy przycisk myszy to przenieś tam sprite. Popróbuj z pętlami.
Rundest
 
Posty: 36
Rejestracja: 12 Sty 2020, 12:32
Has thanked: 0 time
Been thanked: 0 time


Wróć do Skrypty

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość

cron