Friend123 писал(а):Честно? Вообще ничерта не понял - либо уже башка плохо варит к концу рабдня, либо задача горбато описана.
Хоть бы стрелочки какие нарисовал - откуда и куда должен двигать шар, какова траектория движения, чего не должен касаться и т.п.
morpex182 писал(а):Изначально маленьких шарик находится на центральном круге, при нажатии на один из внешних кругов он перемещается в центр круга на который нажали, когда он там окажется, перемещаться между внешними кругами нельзя, то есть чтобы маленькому шарику оказаться на одном из внешних кругов ему нужно попасть сначала в центральный круг а потом уже на любой другой!
Friend123 писал(а):morpex182 писал(а):Изначально маленьких шарик находится на центральном круге, при нажатии на один из внешних кругов он перемещается в центр круга на который нажали, когда он там окажется, перемещаться между внешними кругами нельзя, то есть чтобы маленькому шарику оказаться на одном из внешних кругов ему нужно попасть сначала в центральный круг а потом уже на любой другой!
Ну теперь понятно, а что не получается-то?
Здесь элементарно надо сделать булевую переменную-флаг: если шарик во внешнем круге, то ставим true, а дальше при клике мыши на любой круг идет проверка if(flag == false), то перемещаемся во внешний круг, если true, то не перемещаемся. Тоже самое и с кликом на центральный круг: если flag = true, то перемещаемся в центральный круг.
morpex182 писал(а):А есть какая то возможность кодом описать, а то не понимаю как вешать все на один обработчик клика??? хотя бы примерное описание с использованием функции Vector3.Lerp
Friend123 писал(а):morpex182 писал(а):А есть какая то возможность кодом описать, а то не понимаю как вешать все на один обработчик клика??? хотя бы примерное описание с использованием функции Vector3.Lerp
Скрипт с Lerp написать и повесить на шарик? 0_о
AngryCat писал(а):Если задачу понял правильно, то вот код. Вешай на шарик, а на каждый круг компонент button, и в нем добавь событие, укажи в нем шарик, вызовите метод Going, а в аргумент запихни сам круг.Синтаксис:Используется csharpPublic Vector3 pos = Vector3.zero;
Public void Going(GameObject obj){
Pos = Obj.transform.position;
}
Void Update() {
If(pos != Vector3.zero)
transform.position = Vector3.zero(transform.position, pos, 20 * Time.deltaTime);
}
morpex182 писал(а):AngryCat писал(а):Если задачу понял правильно, то вот код. Вешай на шарик, а на каждый круг компонент button, и в нем добавь событие, укажи в нем шарик, вызовите метод Going, а в аргумент запихни сам круг.Синтаксис:Используется csharpPublic Vector3 pos = Vector3.zero;
Public void Going(GameObject obj){
Pos = Obj.transform.position;
}
Void Update() {
If(pos != Vector3.zero)
transform.position = Vector3.zero(transform.position, pos, 20 * Time.deltaTime);
}
не получилось пробовал!
AngryCat писал(а):morpex182 писал(а):AngryCat писал(а):Если задачу понял правильно, то вот код. Вешай на шарик, а на каждый круг компонент button, и в нем добавь событие, укажи в нем шарик, вызовите метод Going, а в аргумент запихни сам круг.Синтаксис:Используется csharpPublic Vector3 pos = Vector3.zero;
Public void Going(GameObject obj){
Pos = Obj.transform.position;
}
Void Update() {
If(pos != Vector3.zero)
transform.position = Vector3.zero(transform.position, pos, 20 * Time.deltaTime);
}
не получилось пробовал!
Извини, я тупой
Public Vector3 pos = Vector3.zero;
Public void Going(GameObject obj){
Pos = Obj.transform.position;
}
Void Update() {
If(pos != Vector3.zero)
transform.position = new Vector3(transform.position, pos, 20 * Time.deltaTime);
}
DimaJoke писал(а):Ну тип при нажатии ЛКМ пускаешь луч в позицию курсора. Смотрим, тот ли это объект, можно сделать с помощью тэгов. Проверяем позицию зелёной фигни, если она именно на нужном для нас шаре(центральном)(проверяем по transform.position и позиции того шара) то идём к нужному нам шару. Если он не на центральном шаре то идём на центральный шар, перед этим сохранить нужную позицию не забудь! Теперь снова проверка, на центральном ли он шаре, если так.. то вперёд и с песней на нужный нам шар!
Сейчас этот форум просматривают: Yandex [Bot] и гости: 21