| Как создать персонажа TDS | 
|  | 
| 
| AtlanTis | Дата: Воскресенье, 08 Января 2012, 15:32 | Сообщение # 1 |  |   был не раз Сейчас нет на сайте | Как создать персонажа в TDS, чтобы он поварачивался в сторону мышки и ходил на WASD?   
 "Иногда надо имитировать крушение корабля, чтобы с него сбежали крысы." (с)
 |  |  |  |  | 
| 
| poks | Дата: Воскресенье, 08 Января 2012, 15:36 | Сообщение # 2 |  |   почетный гость Сейчас нет на сайте | Создавай объект персонажа (например obj_player), создавай событие Step и пиши 
 
 Code image_angle = point_direction(x,y,mouse_x,mouse_y)  if keyboard_check(ord('W')) {y -= 5}
 if keyboard_check(ord('S')) {y += 5}
 if keyboard_check(ord('A')) {x -= 5}
 if keyboard_check(ord('D')) {x += 5}
 Только спрайт героя центрируй, иначе он криво будет ходить
 
 
   |  |  |  |  | 
| 
| AtlanTis | Дата: Воскресенье, 08 Января 2012, 15:42 | Сообщение # 3 |  |   был не раз Сейчас нет на сайте | Quote (poks) Только спрайт героя центрируй, иначе он криво будет ходить
 Что значит центрируй? Я просто нуб в этом деле
   
 "Иногда надо имитировать крушение корабля, чтобы с него сбежали крысы." (с)
 |  |  |  |  | 
| 
| poks | Дата: Воскресенье, 08 Января 2012, 15:49 | Сообщение # 4 |  |   почетный гость Сейчас нет на сайте | Quote (AtlanTis) Только спрайт героя центрируй, иначе он криво будет ходить
 Жми ПКМ по Sprite --> Create Sprite. Внизу, над "ОК" будет кнопка "по центру", кликай на нее и сохраняй.
 Добавлено (08.01.2012, 15:49)---------------------------------------------
 А вообще, посмотри уроки по Game Maker. Так тебе будет понятней
  
 
   |  |  |  |  | 
| 
| Endess | Дата: Воскресенье, 08 Января 2012, 19:44 | Сообщение # 5 |  |   частый гость Сейчас нет на сайте | Я не понял, как создать стены? Создал объект, сделал его твердым, ставлю на карту, а игрок проходит сквозь него  Что делать??? 
 Люблю Sandbox
 |  |  |  |  | 
| 
| poks | Дата: Воскресенье, 08 Января 2012, 19:48 | Сообщение # 6 |  |   почетный гость Сейчас нет на сайте | Quote (Endess) Я не понял, как создать стены? Создал объект, сделал его твердым, ставлю на карту, а игрок проходит сквозь него Что делать???
 facepalm
   
 Научись юзать гугл и найди уроки по созданию TDS игр, это намного упростит дело.
 А вообще, в объекте персонажа надо создать столкновение со стеной и прописать
 
 
 Code x = xprevious  y = yprevious
 
   |  |  |  |  | 
| 
| Endess | Дата: Воскресенье, 08 Января 2012, 20:03 | Сообщение # 7 |  |   частый гость Сейчас нет на сайте | poks, спасибо, уже который раз меня выручаешь! 
 Люблю Sandbox
 |  |  |  |  | 
| 
| FadeBaker | Дата: Понедельник, 09 Января 2012, 20:15 | Сообщение # 8 |  | JavaSE Game Developer Сейчас нет на сайте | Code if keyboard_check(ord('W')) && place_free(x, y-5) {y -= 5}   if keyboard_check(ord('S')) && place_free(x, y+5)  {y += 5}
 if keyboard_check(ord('A')) && place_free(x-5, y)  {x -= 5}
 if keyboard_check(ord('D')) && place_free(x+5, y)  {x += 5}
И не нужно никаких (x = xprevious y = yprevious), затормаживающие движение.
 
 Уроки по 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.
 |  |  |  |  | 
| 
| Gavolot | Дата: Среда, 11 Января 2012, 23:26 | Сообщение # 9 |  |   Последователь Тени Сейчас нет на сайте | можно еще так, так перс будет сталкиваться как-бы скользя не много по стене, вообщем так будет гладко и огромный минимум лагов: Где-то видел уже подобный код, писал по своему)) Там лагов было больше.
 
 Code  var ct;
 ct = 0;
 var a,xoff,yoff;
 a = point_direction( x,y,other.x,other.y)
 xoff = lengthdir_x( .2,a);
 yoff = lengthdir_y( .2,a);
 while( place_meeting( x,y,other.id) and ct < 100)
 {
 other.x += xoff;
 other.y+=yoff;
 ct +=1;
 }
 
Просто втыкаешь в систему столкновения стены с ГГ.
 Если хочешь можно даже себе и нпк такую сделать, если хочешь чтобы ты всех талкал а тебя нет, то только себе с другими обьектами и т.п.
 
 В общем что-то делаю, но пока не пойму ни как :)
 Тень - выражение основной сущности человека.
 
   
 
 Сообщение отредактировал Gavolot - Среда, 11 Января 2012, 23:27 |  |  |  |  |