Как с помощью Sprite кнопки двигать объект?

102
31 июля 2019, 00:50

Есть кнопка, которая должна при нажатие двигать мяч:

P.S.(Мне нужно чтобы при нажатии Sprite кнопки двигался объект а не при нажатии кнопки мыши в любой части экрана! )

Есть примерный script, который должен двигать мяч:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
    [DisallowMultipleComponent]
    public class Button : MonoBehaviour {
        [SerializeField]Transform target;
        [SerializeField]Direction dir;
        public float speed = 25f;
        void OnMouseDown() 
        {
            Vector3 pos = target.position;
            switch(dir){
                case Direction.FORWARD:
                    pos += Vector3.forward * speed * Time.deltaTime;
                 break;
    }
            target.position = pos;        
            }
        }
    public enum Direction 
    {
        FORWARD
    }

Когда я нажимаю на кнопку, мяч двигается только на один шаг. Мне нужно, чтобы при нажатии на кнопку мяч двигался пока я не отпущу его, как мне это реализовать?

Answer 1

BtnDirection -- в инспекторе выберешь какое направление движения ObjectToMove -- перетаскиваешь обьект который нужно двигать

public Direction BtnDirection = Direction.FORWARD;
public GameObject ObjectToMove;
private Direction _direct = Direction.None;
void OnMouseDown() 
{
    _direct = BtnDirection
}
void OnMouseUp() 
{
    _direct = Direction.None;
}
void Update()
{
    switch(_direct){
        case Direction.FORWARD:
            //логика движения ObjectToMove
        break;
    }
}
public enum Direction 
{
    NONE,
    FORWARD
}
READ ALSO
Как сохранить новые поля в Entity Framework

Как сохранить новые поля в Entity Framework

Я создал класс который расширяет набор свойств Entity Framework

111
Ввод чисел в разные переменные в цикле

Ввод чисел в разные переменные в цикле

Всем приветНашел пример, использования цикла for, для получения введенных данных:

92
WPF Как программно создать n-ное количество textbox элементов с обработчиками?

WPF Как программно создать n-ное количество textbox элементов с обработчиками?

У меня есть страница, где надо вывести n полей для ввода вопросов и 2n полей для ввода ответов к ним (1 вопрос : 2 ответа)Потом эти данные надо...

133
Как разделить строку на слова игнорируя любые символы кроме букв?

Как разделить строку на слова игнорируя любые символы кроме букв?

Вот есть задача https://leetcodecom/problems/valid-palindrome/

86