Изменение позиции по нажатию на кнопку
| |
XeoDoz | Дата: Суббота, 15 Декабря 2012, 21:46 | Сообщение # 1 |
XeoDoz Games
Сейчас нет на сайте
| Всем привет. У меня есть вопрос: Как при нажатии на кнопку добавлять +3 к Y местоположению объекта? Или вообще чтобы объект двигался за мышкой только по Y?А при клике появлялся там куда был поставлен до клика? ----------=----------------=----------------------- Короче может проще будет объяснить если сказать, что такое действие в стратегиях употребляется: Мы выбираем постройку, мышкой или клавой переносим ее куда нужно, кликаем и вуоля, объект появляется там куда мы его перенесли
Ехал Falco через Falco, видит Falco в реке Falco, сунул Falco руку в Falco, Falco Falco Falco Falco Очень рад плюсеГгам в репу
Сообщение отредактировал XeoDoz - Суббота, 15 Декабря 2012, 23:23 |
|
| |
Damir007 | Дата: Суббота, 15 Декабря 2012, 23:05 | Сообщение # 2 |
частый гость
Сейчас нет на сайте
| Quote (XeoDoz) А при клике появлялся там куда был поставлен до клика? Это как? Объект сам по себе, всегда стоит там, где был поставлен до клика.
Лови: clamp+mouseY
|
|
| |
aalla | Дата: Суббота, 15 Декабря 2012, 23:20 | Сообщение # 3 |
постоянный участник
Сейчас нет на сайте
| XeoDoz, так что ли? Жми на синего смайла. Но это не на конструтке сделано)
Сообщение отредактировал aalla - Суббота, 15 Декабря 2012, 23:21 |
|
| |
XeoDoz | Дата: Понедельник, 17 Декабря 2012, 17:10 | Сообщение # 4 |
XeoDoz Games
Сейчас нет на сайте
| Короче может проще будет объяснить если сказать, что такое действие в стратегиях употребляется: Мы выбираем постройку, мышкой или клавой переносим ее куда нужно, кликаем и вуоля, объект появляется там куда мы его перенесли Добавлено (17.12.2012, 17:10) --------------------------------------------- Ау люди!
Ехал Falco через Falco, видит Falco в реке Falco, сунул Falco руку в Falco, Falco Falco Falco Falco Очень рад плюсеГгам в репу
|
|
| |
Clowd | Дата: Понедельник, 17 Декабря 2012, 18:13 | Сообщение # 5 |
ONG studio
Сейчас нет на сайте
| XeoDoz, делаешь так - у меня там на спрайте был Y 197 и поэтому я сделал 200 (ну как ты сказал +3) Добавлено (17.12.2012, 18:13) --------------------------------------------- XeoDoz, так?)
|
|
| |
XeoDoz | Дата: Понедельник, 17 Декабря 2012, 19:07 | Сообщение # 6 |
XeoDoz Games
Сейчас нет на сайте
| Ты не понял, вот допустим позиция неизвестна, ты выбираешь какое здание(спрайт) хочешь построить, на поле появляется спрайт, его перетаскиваешь куда нужно, и при клике он появлялся там где ты его поставилДобавлено (17.12.2012, 19:07) --------------------------------------------- При каждом нажатии на кнопку спрайт поднимается на +3 значения по Y, может надо переменную создавать?
Ехал Falco через Falco, видит Falco в реке Falco, сунул Falco руку в Falco, Falco Falco Falco Falco Очень рад плюсеГгам в репу
|
|
| |
Clowd | Дата: Понедельник, 17 Декабря 2012, 20:58 | Сообщение # 7 |
ONG studio
Сейчас нет на сайте
| XeoDoz, аааа,понял,давай позже помогу сейчас занят))
|
|
| |
XeoDoz | Дата: Понедельник, 17 Декабря 2012, 21:23 | Сообщение # 8 |
XeoDoz Games
Сейчас нет на сайте
| Quote (Clowd) аааа,понял,давай позже помогу сейчас занят)) Ок
Ехал Falco через Falco, видит Falco в реке Falco, сунул Falco руку в Falco, Falco Falco Falco Falco Очень рад плюсеГгам в репу
|
|
| |
nuPATEXHuK | Дата: Пятница, 21 Декабря 2012, 17:40 | Сообщение # 9 |
почетный гость
Сейчас нет на сайте
| XeoDoz, всё не так сложно, если я понял, о чём ты...
1) Делаешь при клике на нужный объект действие: Set Y, то бишь Y ему устанавливаешь. 2) Затем убираешь от туда всё, что там есть (цифру 0, к примеру, если там таковая имеется). При этом снизу в небольшом окошке находишь изображение нужного объекта. 3) Открываешь его и находишь строчку Get Y (Типа взять значение Y этого объекта). Выбираешь этот пункт. 4) Появляется почти то, что у меня на картинке. К готовому значению ещё прибавляешь 3 (Sprite.Y+3).
Вот и всё)
Сообщение отредактировал nuPATEXHuK - Пятница, 21 Декабря 2012, 17:41 |
|
| |
XeoDoz | Дата: Пятница, 21 Декабря 2012, 17:56 | Сообщение # 10 |
XeoDoz Games
Сейчас нет на сайте
| Quote (nuPATEXHuK) 1) Делаешь при клике на нужный объект действие: Set Y, то бишь Y ему устанавливаешь. 2) Затем убираешь от туда всё, что там есть (цифру 0, к примеру, если там таковая имеется). При этом снизу в небольшом окошке находишь изображение нужного объекта. 3) Открываешь его и находишь строчку Get Y (Типа взять значение Y этого объекта). Выбираешь этот пункт. 4) Появляется почти то, что у меня на картинке. К готовому значению ещё прибавляешь 3 (Sprite.Y+3).
Вот и всё) Пасяб, но я не врубаюсь всё равно можешь скайп дать?
Ехал Falco через Falco, видит Falco в реке Falco, сунул Falco руку в Falco, Falco Falco Falco Falco Очень рад плюсеГгам в репу
|
|
| |
nuPATEXHuK | Дата: Пятница, 21 Декабря 2012, 19:36 | Сообщение # 11 |
почетный гость
Сейчас нет на сайте
| XeoDoz, соррри, в скайпе уже не сижу. Так что лови тут всё в картинках и с подробным описанием: 1) Создаём проект (Открываем существующий) 2) Рисуем sprite (Создаём нужный объект, который будем передвигать. В моём случае это синий квадрат). 3) Добавляем Mouse & Keyboard (Это чтобы у нас работала мышка и клавиатура). 4) Открываем панель триггеров, где пишем условия и действия. Там создаём новое условие от клавиатуры и мыши. 5) После этого окрылось окно на 3 поля: а. Какой кнопкой стучать будешь по объекту (left-левая,right-правая,middle-среднее колёсико). б. Как будешь стучать по объекту (Есть вариации: Clicked - один щелчок, Double-Clicked - двойной щелчок или Either single or double clicked - Щелчок или двойной щелчок, будет действовать на всё). в. По какому будешь стучать объекту. Тут мы и выбираем наш спрайт. Нижнее окно не трогай, оно не для этого. 6) Нажимаем везде ОК и "finish". Вот и готово первое условие. 7) Теперь перейдём к действию. Нажимай создать новое действие и выбирай там наш объект. 8) Там найди строчку "Set Y". Она означает, что ты будешь устанавливать Y ординату твоего объекта. Проще говоря - высоту. 9) Если всё сделал верно, откроется новое окно. Вот такое: 10) Как видишь, там сразу стоит 0. Его можно смело от туда убирать. Затем же открываем спрайт в самом нижнем окошке, который отмечен у меня на скрине. 11) Откроется окно. Находим строчку "Get Y" и смело нажимаем на неё, а потом "finish". 12) У нас появилась новая строчка "Y.Sprite". Этот "оператор" вычисляет точку Y у твоего спрайта. Но нам ведь не нужна точка, а нужно смешение. Поэтому сюда же дописываем "+3".
Вот и всё. Нажимаем "finish" и получаем результат:
Удачи в разработке!
P.S. Совсем забыл ведь! Вот исходник: http://rghost.ru/42409557
Сообщение отредактировал nuPATEXHuK - Пятница, 21 Декабря 2012, 19:57 |
|
| |
DimOk | Дата: Пятница, 21 Декабря 2012, 23:13 | Сообщение # 12 |
ONG studio
Сейчас нет на сайте
| Цитата (XeoDoz) позиция неизвестна ПОЗИЦИЯ ВСЕГДА ИЗВЕСТНА, по крайней мере компу Цитата (XeoDoz) Всем привет. У меня есть вопрос: Как при нажатии на кнопку добавлять +3 к Y местоположению объекта? проще некуда, Код right mouse buttom is presed> >>>sprite>set y position>self.y+3 Цитата (XeoDoz) Или вообще чтобы объект двигался за мышкой только по Y?А при клике появлялся там куда был поставлен до клика? берём две переменные(у спрайта) Xold и Yold потом Код left mouse buttom is down> >>trigger once while true >>>sprite>set value> [Xold] = self.x >>>sprite>set value> [Yold] = self.y >>>sprite>set y position>mouseY
left mouse buttom release> >>>sprite>set position> [x] = self.value('Xold') [y] = self.value('Yold') Извеняюсь если допустил ошибки(в словах)
Активно пользуюсь Godot Engine
|
|
| |
|