| Ходьба в ТДС | 
|  | 
| 
| Darkbasic | Дата: Суббота, 08 Декабря 2012, 08:55 | Сообщение # 1 |  |   Revival Deiphi Сейчас нет на сайте | Как сделать ходьбу я все пробовал но когда в шаге пишешь он идет и не останавливаеться после того как клавиша отпущена. пробовал писать код еще и на отпущение клавиши тогда он вообще на раз ходит(т.е. 1 раз нажал на 1 шаг и продвинулся) помогите исправить! 
 
   
   |  |  |  |  | 
| 
| WarezReiter | Дата: Суббота, 08 Декабря 2012, 12:46 | Сообщение # 2 |  |   был не раз Сейчас нет на сайте | Надо это писать не в шаге а в событии нажатия\отпущения клавиши. Если я правильно понял... А если надо в шаге, то:
 
 if (keyboard_check_pressed(key)){ходим}
 else {останавливаемся}
 
 The order comes in the chaos
 
 
 Сообщение отредактировал WarezReiter - Суббота, 08 Декабря 2012, 12:59 |  |  |  |  | 
| 
| MrNesh | Дата: Суббота, 08 Декабря 2012, 13:13 | Сообщение # 3 |  |   Воин добра и света Сейчас нет на сайте | Code  if ( keyboard_check( vk_right )) {
 x = x + 5;
 }
 
 if ( keyboard_check( vk_left )) {
 x = x - 5;
 }
 
 if ( keyboard_check( vk_up )) {
 y = y - 5;
 }
 
 if ( keyboard_check( vk_down )) {
 y = y + 5;
 }
 
   |  |  |  |  | 
| 
| ErrantBug | Дата: Суббота, 08 Декабря 2012, 14:38 | Сообщение # 4 |  |   постоянный участник Сейчас нет на сайте | Darkbasic, это прозвучит банально, но тебе не помешало бы прочесть справку... 
 
   
 
 Сообщение отредактировал ErrantBug - Суббота, 08 Декабря 2012, 14:38 |  |  |  |  | 
| 
| WhoAmI | Дата: Понедельник, 10 Декабря 2012, 15:58 | Сообщение # 5 |  |   Сумасшедший программист Сейчас нет на сайте | Darkbasic, ставишь спрайт игрока по центру и в step пишешь: 
 Код  image_angle= point_direction(x,y,mouse_x,mouse_y)+270; //Игрок смотрит на мышку.
 if ( keyboard_check( vk_right )) {  //Если клавиша = вправо, то
 x +=5; //x+=5(вправо(x - это горизонтально))
 }
 else
 {x=0} //Если отпущена, то он резко останавливается.
 if ( keyboard_check( vk_left )) { //Влево - по горизонтали
 x-=5;
 }
 else
 {
 x+=0 //Опять резко тормозит.
 }
 if ( keyboard_check( vk_up )) {
 y -=5; //Идёт вверх(y - это вертикаль)
 }
 else
 {
 y+=0 //Останавливается
 }
 
 Struggle #Gamiron12
 
 
 Сообщение отредактировал WhoAmI - Понедельник, 07 Января 2013, 18:48 |  |  |  |  | 
| 
| zaicev9797 | Дата: Пятница, 14 Декабря 2012, 11:25 | Сообщение # 6 |  |   AbRaKaDaBrA Сейчас нет на сайте | ГОРАЗДО ПРОЩЕ 
 событие нажатия клавиши вперед
 
 y-=5
 
 событие нажатия клавиши вниз
 
 y+=5(или на оборот)
 
 в событии нажатия клавиши влево
 x-=5
 
 в событии нажатия клавиши вправо
 x+=5
 
 и вуаля ваш персонаж ходит нормально
 
 проект  Mysterious Space. The losted moment
 
 
 Сообщение отредактировал zaicev9797 - Пятница, 14 Декабря 2012, 11:27 |  |  |  |  | 
| 
| WhoAmI | Дата: Понедельник, 07 Января 2013, 18:07 | Сообщение # 7 |  |   Сумасшедший программист Сейчас нет на сайте | zaicev9797, и вуаля я ему уже давно помог =3 Добавлено (07.01.2013, 18:07)---------------------------------------------
 zaicev9797, кнопочники жесть!!
 
 Struggle #Gamiron12
 |  |  |  |  | 
| 
| MrNesh | Дата: Понедельник, 07 Января 2013, 18:18 | Сообщение # 8 |  |   Воин добра и света Сейчас нет на сайте |   WhoAmI, что за...зачем
 
 Цитата (WhoAmI) else {x=0} //Если отпущена, то он резко останавливается.
 
 1. Зачем else и при x = 0 он переместиться в левый верхний угол.
 2. Зачем к point_direction() прибавил 270
 
 
   |  |  |  |  | 
| 
| FadeBaker | Дата: Понедельник, 07 Января 2013, 18:27 | Сообщение # 9 |  | JavaSE Game Developer Сейчас нет на сайте | 
 Лоллировал. Ты вообще читаешь, что пишешь?!
 
 Уроки по GM
 Minecraft 2D на GM
 — Мои проекты —
 Blood Harvest [2D] — Original
 Blood Harvest [2D]: Remastered Edition
 Adventure Craft [2D] — Sandbox
 Space Shock [2D] — Scroll Shooter
 Intel® Core™ i5-3570K 3.40 GHz, 8 GB RAM, GeForce GTX 750 Ti, Monitor: LG 23EA63V-P.
 |  |  |  |  | 
| 
| WhoAmI | Дата: Понедельник, 07 Января 2013, 18:33 | Сообщение # 10 |  |   Сумасшедший программист Сейчас нет на сайте | ой ошибся ща исправлю 
 Struggle #Gamiron12
 |  |  |  |  |