Общие вопросы по Game Maker 6/7/8/Studio
|
|
BRESS | Дата: Четверг, 01.05.2014, 18:22 | Сообщение # 436 |
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
| Цитата Volk ( ) Вопрос наверно глупый, но кто нибудь знает как поменять вид на другой объект? Допустим в комнате установлено слежение за одним объектом, а после "действия" слежение переключается на другой объект. view_object[0]=...
Цитата kossmf ( ) подскажите какой код вращения колесика мыши mouse_wheel_down() и mouse_wheel_up() по аналогии.
Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
|
|
| |
kossmf | Дата: Пятница, 02.05.2014, 01:06 | Сообщение # 437 |
Новичок
Группа: Пользователи
Сообщений: 17
Награды: 0
Репутация: 0
Статус: Offline
| Спасибо:) Добавлено (02.05.2014, 01:06) --------------------------------------------- у меня проблема, которую я сам решить не в состоянии, помогите пожалуйста.
существует переменная l, при нажатии q она равна 2 ,спрайт меча меняется на лук,при нажатии e равна 1, спрайт меча снова меч.
Спрайт арбалета всегда неизменен, в то время как спрайт меча имеет еще несколько вариантов(во время ходьбы или боя).
проблема вот в чем, при нажатии q спрайт тут же меняется на арбалет, но при нажатии е спрайт остается арбалетом до того времени, пока я не нажму одну из клавиш, отвечающих за тот или иной вид спрайта меча(пример №1).
Не могу поставить изменение на спрайт меча без еще одной клавиши, так как он будет блокировать дальнейшие изменения(пример №2)
пример №1 if l=2 {
if mouse_check_button_pressed(mb_left) {sprite_index = sprite_mechboilevo; d=1}; if mouse_check_button_released(mb_left) {sprite_index = sprite_mech; d=0};
if keyboard_check_pressed(ord('W')) {sprite_index = sprite_mechgo}; if keyboard_check_released(ord('W')) {sprite_index = sprite_mech};
if keyboard_check_pressed(ord('S')) {sprite_index = sprite_mechgo}; if keyboard_check_released(ord('S')) {sprite_index = sprite_mech}; };
if l=1 { sprite_index=sprite_luk; };
пример№2 if l=2 { sprite_index = sprite_mech; if mouse_check_button_pressed(mb_left) {sprite_index = sprite_mechboilevo; d=1}; if mouse_check_button_released(mb_left) {sprite_index = sprite_mech; d=0};
if keyboard_check_pressed(ord('W')) {sprite_index = sprite_mechgo}; if keyboard_check_released(ord('W')) {sprite_index = sprite_mech};
if keyboard_check_pressed(ord('S')) {sprite_index = sprite_mechgo}; if keyboard_check_released(ord('S')) {sprite_index = sprite_mech}; };
if l=1 { sprite_index=sprite_luk; };
|
|
| |
BRESS | Дата: Пятница, 02.05.2014, 21:54 | Сообщение # 438 |
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
| kossmf, ой... честно говоря, я просто утонул в этой толще буковок. Сожалею - помочь не смогу ))
Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
|
|
| |
Gracio001 | Дата: Суббота, 03.05.2014, 05:37 | Сообщение # 439 |
*классный титул*
Группа: Администраторы
Сообщений: 1335
Награды: 2
Репутация: 187
Статус: Offline
| kossmf, давай пример, попробую разобраться. А с таким длинным кодом без примера, извини, ничего сделать не могу. И подробнее объясни.
ты никогда не станешь просто девочкой из песни.
|
|
| |
BRESS | Дата: Суббота, 03.05.2014, 06:53 | Сообщение # 440 |
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
| Цитата Gracio001 ( ) И подробнее объясни. Да, кстати, я ровным счетом ничего не понял тоже.
Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
|
|
| |
kossmf | Дата: Суббота, 03.05.2014, 12:39 | Сообщение # 441 |
Новичок
Группа: Пользователи
Сообщений: 17
Награды: 0
Репутация: 0
Статус: Offline
| дело в том, что при переключении на арбалет, все включается сразу, а при переключении на меч только после еще одной команды, но я не могу поставить спрайт меча выше команд, так как он будет блокировать дальнейшие переключения
|
|
| |
GoodWin | Дата: Суббота, 03.05.2014, 12:53 | Сообщение # 442 |
Бывалый
Группа: Постоянный
Сообщений: 473
Награды: 1
Репутация: 80
Статус: Offline
| Попробуй так:
Вводишь переменную отвечающую за спрайты, например твою l
Затем, если l=0 спрайт=меч, если l=1 спрайт=лук.
если l=0 и обьект движеться в право то врубай анимацию меча, если влево, то таже анимация но отражённая (image_xscale=-1)
Кому нужны саундтреки для ваших игр, обращайтесь..
Сообщение отредактировал GoodWin - Суббота, 03.05.2014, 12:54 |
|
| |
kossmf | Дата: Суббота, 03.05.2014, 21:56 | Сообщение # 443 |
Новичок
Группа: Пользователи
Сообщений: 17
Награды: 0
Репутация: 0
Статус: Offline
| так не работает, так как если "l=0 равна спрайту меч", то" l=0 и объект движется в сторону" смена невозможна, спрайт движения блокируется предыдущим "l=0 равно спрайту меча".
|
|
| |
BRESS | Дата: Воскресенье, 04.05.2014, 14:28 | Сообщение # 444 |
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
| Собственно вот твой алгоритм: L - (при 0 - арбалет, при 1 - меч);
Цитата if L=0 { sprite_index=арбалет дефолтный;
if нажата W {sprite_index=арбалет такой-то}
... и т.д.
}
if L=1 { sprite_index=меч дефолтный;
if нажата W {sprite_index=меч такой-то}
... и т.д.
}
Я его специально обрезал, дабы было понятней. Итого все должно работать корректно. Скорей всего влияют какие-то другие внешние факторы: проверь код на ошибки; уточни, точно ли эта вставка находится в событии Step и т.д.
Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
|
|
| |
LumenaX | Дата: Понедельник, 05.05.2014, 16:41 | Сообщение # 445 |
Новичок
Группа: Пользователи
Сообщений: 13
Награды: 0
Репутация: 10
Статус: Offline
| Я работаю над одним проектом ТанчикиTDS, там движение по сетке мне нужно чтобы при нажатии допустим D он поворачивался на право ещё раз нажимаешь D он начинает ехать на право! Тот кто ответит +1 к репутации
|
|
| |
GoodWin | Дата: Понедельник, 05.05.2014, 19:09 | Сообщение # 446 |
Бывалый
Группа: Постоянный
Сообщений: 473
Награды: 1
Репутация: 80
Статус: Offline
| При нажатии D
if direction=0{ движение вправо } else{ поворачивай танк (direction=0) }
и так же с остальными
Кому нужны саундтреки для ваших игр, обращайтесь..
Сообщение отредактировал GoodWin - Понедельник, 05.05.2014, 21:44 |
|
| |
anubis28 | Дата: Понедельник, 05.05.2014, 20:37 | Сообщение # 447 |
Заглянувший
Группа: Заблокированные
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline
| GoodWin, привет как дела
Картинка удалена. Просто не знаю, как относятся школьный курс физики к игрострою 0_o. BRESS
|
|
| |
GoodWin | Дата: Понедельник, 05.05.2014, 20:46 | Сообщение # 448 |
Бывалый
Группа: Постоянный
Сообщений: 473
Награды: 1
Репутация: 80
Статус: Offline
| Цитата anubis28 ( ) GoodWin, привет как дела Во первых: Оффтоп Во вторых: Ты кто? В третьих: Да так ничё, норм)
Кому нужны саундтреки для ваших игр, обращайтесь..
|
|
| |
BRESS | Дата: Понедельник, 05.05.2014, 20:48 | Сообщение # 449 |
Мастер-ломастер
Группа: Администраторы
Сообщений: 3120
Награды: 1
Репутация: 224
Статус: Offline
| Цитата GoodWin ( ) Во первых: Оффтоп Во вторых: Ты кто? Судя по профильным данным: Цитата Мария 28 [ Женщина ] твоя тайная воздыхательница ))... из средней школы.
Для ваших вопросов по Game Maker есть специально созданный форум. Оставьте в покое мою личку. Спасибо за внимание!
|
|
| |
anubis28 | Дата: Понедельник, 05.05.2014, 20:49 | Сообщение # 450 |
Заглянувший
Группа: Заблокированные
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline
| Пока
|
|
| |