Slax Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 Witam, mam taki kod na chodzenie (W evenice: any key): GML //chodzenie... var dir; dir=direction; if keyboard_check(ord('W')) { x+=lengthdir_x(0.9,dir) y+=lengthdir_y(0.9,dir) } if keyboard_check(ord('S')) { x+=lengthdir_x(-0.9,dir) y+=lengthdir_y(-0.9,dir) } if keyboard_check(ord('D')) { x+=lengthdir_x(0.9,dir-90) y+=lengthdir_y(0.9,dir-90) } if keyboard_check(ord('A')) { x+=lengthdir_x(1,dir+90) y+=lengthdir_y(1,dir+90) } I jak zrobić że jak trzymam wcisknięty shift to przez 5 sekund zamiast 0.9,dir było 1.2,dir Proszę o odpowiedź... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Misiek999 Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 słyszałeś o alarmach ? :) zwykła zmienna + alarm. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Slax Opublikowano 5 Czerwca 2008 Autor Udostępnij Opublikowano 5 Czerwca 2008 Mógłbyś napisać mi kod? Bo niezabardzo cię rozumiem... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Misiek999 Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 create : a = 0.9 any key : //chodzenie... var dir; dir=direction; if keyboard_check(ord('W')) { x+=lengthdir_x(a,dir) y+=lengthdir_y(a,dir) } if keyboard_check(ord('S')) { x+=lengthdir_x(-0.9,dir) y+=lengthdir_y(-0.9,dir) } if keyboard_check(ord('D')) { x+=lengthdir_x(a,dir-90) y+=lengthdir_y(a,dir-90) } if keyboard_check(ord('A')) { x+=lengthdir_x(1,dir+90) y+=lengthdir_y(1,dir+90) } key press shift : if ! alarm[0] alarm[0] = 1 alarm 0 if a = 0.9 {a = 1.2; alarm[0] = 5*room_speed; exit; } else {a = 0.9;} jak chcesz to podmień jeszcze w chodzeniu -0.9 i 1 ;p Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Matthew Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 GML //chodzenie... var dir, m_speed; dir=direction; if (keyboard_check(vk_shift)) m_speed = 1.2; else m_speed = 0.9; if keyboard_check(ord('W')) { x+=lengthdir_x(m_speed,dir); y+=lengthdir_y(m_speed,dir); } if keyboard_check(ord('S')) { x+=lengthdir_x(m_speed,dir+180); y+=lengthdir_y(m_speed,dir+180); } if keyboard_check(ord('D')) { x+=lengthdir_x(m_speed,dir-90); y+=lengthdir_y(m_speed,dir-90); } if keyboard_check(ord('A')) { x+=lengthdir_x(m_speed,dir+90); y+=lengthdir_y(m_speed,dir+90); } + dodałem poprawki btw. x+=lengthdir_x(1,dir+90) y+=lengthdir_y(1,dir+90) Czemu tu jest 1? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Slax Opublikowano 5 Czerwca 2008 Autor Udostępnij Opublikowano 5 Czerwca 2008 Czemu tu jest 1? A co miało by być? :P Dzięki panowie... Edit: Jeszcze jak zrobić że po tym jak się skończy biegać to żeby znów biegać trzeba czekać 10 sekund :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cruel_boy Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 To już trzeba chyba zmienną blokować no i alarmy. No ale ja tam mało wiem xP. Się masterów popytaj. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Misiek999 Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 a najlepiej się spytać wyszukiwarki. I poprawić swoją wiedzę ogólną z GM bo to o co się pytasz to najprostsze operacje jakie można zrobić. :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cruel_boy Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 a najlepiej się spytać wyszukiwarki. I poprawić swoją wiedzę ogólną z GM bo to o co się pytasz to najprostsze operacje jakie można zrobić. :P Cóż, kiedyś pisałem, że gorszy jestem niż nab. Nie czep się xP. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Misiek999 Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 ja się nie nikogo nie czepiam :P to była tylko dobra rada dla Slaxa. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Slax Opublikowano 5 Czerwca 2008 Autor Udostępnij Opublikowano 5 Czerwca 2008 Pomoże ktoś? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Misiek999 Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 zmienna + ! albo not + alarm. Mówi to panu coś ? Jak nie, zapraszam do przeczytania artykułów na gmclanie :P Naprawdę polecam - oszczędzisz tłumaczenia po raz 101 tego samego zagadnienia. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MisieK-GM Opublikowano 5 Czerwca 2008 Udostępnij Opublikowano 5 Czerwca 2008 CREATE: GML chodzenie=1 STEP: GML if chodzenie=1 var dir; dir=direction; if keyboard_check(ord('W')) { x+=lengthdir_x(0.9,dir) y+=lengthdir_y(0.9,dir) } if keyboard_check(ord('S')) { x+=lengthdir_x(-0.9,dir) y+=lengthdir_y(-0.9,dir) } if keyboard_check(ord('D')) { x+=lengthdir_x(0.9,dir-90) y+=lengthdir_y(0.9,dir-90) } if keyboard_check(ord('A')) { x+=lengthdir_x(1,dir+90) y+=lengthdir_y(1,dir+90) } // if chodzenie=2 var dir; dir=direction; if keyboard_check(ord('W')) { x+=lengthdir_x(1.2,dir) y+=lengthdir_y(1.2,dir) } if keyboard_check(ord('S')) { x+=lengthdir_x(-1.2,dir) y+=lengthdir_y(-1.2,dir) } if keyboard_check(ord('D')) { x+=lengthdir_x(1.2,dir-90) y+=lengthdir_y(1.2,dir-90) } if keyboard_check(ord('A')) { x+=lengthdir_x(1,dir+90) y+=lengthdir_y(1,dir+90) } key press shift GML chodzenie=2 key relase shift GML chodzenie=1 Troche okrężną drogą, ale to po to zebys zrozumial (jak znasz zmienne ;p) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się