Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 30.08.2017
Сообщений: 12
1

Как сделав два клика поменять объекты местами, 1 клик - выбрать, 2 - поменять

23.04.2019, 17:45. Показов 3095. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть массив изображений
C#
1
private Transform[15] pictures;
, как по 1у клику запомнить его координаты, а по второму клику, объекты поменять местами. А если клик был сделал снова по первому отменить.
0
23.04.2019, 17:45
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.04.2019, 17:45
Ответы с готовыми решениями:

Поменять местами два квадрата
Привет. Только начал разбираться с юнити и вопрос: Даны 2 квадрата. Как их свайпнуть? (поменять местами) и как сделать тоже самое, если...

Плавно поменять местами два объекта
Здравствуйте. Необходимо плавно поменять местами два объекта. Делаю так: public class MOVE : MonoBehaviour { public GameObject...

Поменять объекты местами
Добрый день! Есть условие: если 1 картинка попадает на 2 картинку, то 2 картинка перемещается: ...

4
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
23.04.2019, 19:26 2
vadossso, Я тебе напишу словами, кодом сам сможешь.

Бул клик был.
ГеймОбъект объектПоКоторомуКликнули.

Если (луч был выпущен и попал в какой-то из объектов)
{
Если(клик был == тру)
{
Если(объект в который попал луч != объектПоКоторомуКликнули)
Меняем местами.
Иначе
клик был = фол
}иначе
{
объектПоКоторомуКликнули = объект в который попал луч
клик был = тру
}
}
1
 Аватар для 1max1
3362 / 1775 / 1028
Регистрация: 26.10.2018
Сообщений: 5,204
23.04.2019, 20:14 3
kitsoRik, )))
0
0 / 0 / 0
Регистрация: 30.08.2017
Сообщений: 12
23.04.2019, 20:15  [ТС] 4
Цитата Сообщение от kitsoRik Посмотреть сообщение
Бул клик был.
ГеймОбъект объектПоКоторомуКликнули.
Если (луч был выпущен и попал в какой-то из объектов)
{
Если(клик был == тру)
{
Если(объект в который попал луч != объектПоКоторомуКликнули)
Меняем местами.
Иначе
клик был = фол
}иначе
{
объектПоКоторомуКликнули = объект в который попал луч
клик был = тру
}
}
Поместить в void OnMouseDown()?
C#
1
2
3
4
5
6
7
8
9
10
11
12
void OnMouseDown()
    {
        RaycastHit hit = new RaycastHit();
        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
 
        Vector2 pos1 = new Vector2(transform.localPosition.x, transform.localPosition.z);
        Debug.Log("RayCast On");
        if (Physics.Raycast(ray, out hit))
        {
 
        }
    }
Правильно делаю? что-то я туплю
0
490 / 286 / 129
Регистрация: 30.10.2018
Сообщений: 1,309
23.04.2019, 20:43 5
vadossso, OnMouseDown вызываеться при нажатии на сам объект, можно конечно и так делать, но есть способ лучше.

В каком-то скрипте, в апдейте делаешь все это под условием:
C#
1
2
3
4
if(Input.GetMouseButtonDown(0))
{
// tyt
}
0
23.04.2019, 20:43
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.04.2019, 20:43
Помогаю со студенческими работами здесь

Как поменять местами два label
Нужно чтобы когда нажимаем впервые на label1 записались его координаты а когда второй раз нажимаем по второму label2 то label2 становится...

Поменять местами объекты (слои)
Привет всем! Такая ситуация: Есть Canvas с именем MainCanvas. На нем располагаются еще несколько Canvas'ов c именами Layer1, Layer2 и тд...

Как поменять местами два элемента массива char
Есть два элемента массива типа char(не по одному символу), нужно поменять их местами. Как это возможно сделать?

Как поменять местами два столбца двухмерного массива?
Помогите доделать программу. Из вложенного файла осталось только сделать 3 последний задания... первые 4 получилось, а с остальными...

Как поменять местами два объекта в std::list?
Подскажите, пожалуйста, как с использованием списка обменять два объекта. Т.е. list<myclass> l; myclass obj1,obj2,obj3; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Новые блоги и статьи
Использование кэша Laravel - полный гайд
bytestream 18.02.2025
Кэширование - один из наиболее эффективных способов повышения производительности веб-приложений. В современном мире, где скорость загрузки страниц напрямую влияет на удержание пользователей и. . .
Создаем REST API в Laravel с аутентификацией через Passport
bytestream 18.02.2025
Разработка современных веб-приложений все чаще требует создания надежного и хорошо структурированного API. REST API стал стандартом де-факто для построения взаимодействия между клиентской и серверной. . .
Пайплайны в Laravel - полный гайд
bytestream 18.02.2025
Разработка современных веб-приложений часто требует обработки сложных процессов, состоящих из множества последовательных шагов. Например, при создании системы комментариев может потребоваться. . .
Как правильно использовать @required в Symfony
bytestream 18.02.2025
При разработке приложений на Symfony мы часто сталкиваемся с необходимостью внедрения зависимостей. Фреймворк предоставляет несколько способов управления этим процессом, и одним из таких инструментов. . .
Система безопасности в Laravel: возможности и примеры
Wired 18.02.2025
Каждый день появляются новые виды атак и уязвимостей, которые могут поставить под угрозу конфиденциальные данные пользователей и функционирование всей системы. В этом контексте выбор надежного. . .
Давайте сравним Django и Laravel
Wired 18.02.2025
Django и Laravel - два мощных инструмента, которые часто сравнивают между собой. Оба фреймворка предлагают разработчикам богатый набор возможностей для создания масштабируемых веб-приложений, но. . .
Laravel или React - что лучше?
Wired 18.02.2025
В разработке веб выбор правильного инструмента часто определяет успех всего проекта. Особенно интересным представляется сравнение Laravel и React - двух популярных технологий, которые часто. . .
Laravel 11: новые возможности, гайд по обновлению
Wired 18.02.2025
Laravel 11 - это новая масштабная версия одного из самых популярных PHP-фреймворков, выпущенная в марте 2024 года. Эта версия продолжает традицию внедрения передовых технологий и методологий. . .
Миграции в Laravel
Wired 18.02.2025
Разработка веб-приложений на Laravel неразрывно связана с управлением структурой базы данных. При работе над проектом часто возникает необходимость вносить изменения в схему базы данных - добавлять. . .
Аутентификация в Laravel
Wired 18.02.2025
В современном мире веб-разработки безопасность пользовательских данных становится критически важным аспектом любого приложения. Laravel, как один из самых популярных PHP-фреймворков, предоставляет. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru