Ray14 Opublikowano 17 Lutego 2010 Udostępnij Opublikowano 17 Lutego 2010 Mam pytanko jak zrobić aby objakt przeciwnik sledził obiekt gracz jednak musi on chodzić po kratkach i gdy idzie w lewo to animacja ma być w lewo, oraz aby strelał pociskami ale co 1 sek. z góry th Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 18 Lutego 2010 Udostępnij Opublikowano 18 Lutego 2010 Co do pocisków - użyj alarmów, musiał byś mi pokazać swój kod strzelania wtedy mógłbym Ci pomóc :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ray14 Opublikowano 18 Lutego 2010 Autor Udostępnij Opublikowano 18 Lutego 2010 Co do pocisków - użyj alarmów, musiał byś mi pokazać swój kod strzelania wtedy mógłbym Ci pomóc :) najprostrzy jaki może by GML if distance_to_object(player) < (przeciwnik.agresja)/6 {instance_create(x,y,naboj) } a w naboju GML move_towards_point(player.x+10,player.y+30,10) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Grela Opublikowano 18 Lutego 2010 Udostępnij Opublikowano 18 Lutego 2010 GML (Create wroga) strzelac=true; GML if distance_to_object(player) < (przeciwnik.agresja)/6 { if strzelac!=true { //nic nie rob }} else { instance_create(x,y,naboj); strzelac=false; alarm[0]=1000 //gdzie 1000 to milisekundy(1000 ms = 1s) } GML (event alarmu numer 0 w objekcie playera) strzelac=true; Co do poruszania się po kratkach, przeczytaj 16 punkt w FAQ ;) https://gmclan.org/index.php?czytajart=7 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
CTRL Opublikowano 18 Lutego 2010 Udostępnij Opublikowano 18 Lutego 2010 ta?? a milisekundy to nie stepy? ;] alarm[0] = 30 stepów czyli sekunda zależy jak room speed itp... albo jestem noobkiem... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 18 Lutego 2010 Udostępnij Opublikowano 18 Lutego 2010 GML (Create wroga) strzelac=true; GML if distance_to_object(player) < (przeciwnik.agresja)/6 { if strzelac!=true { //nic nie rob }} else { instance_create(x,y,naboj); strzelac=false; alarm[0]=1000 //gdzie 1000 to milisekundy(1000 ms = 1s) } GML (event alarmu numer 0 w objekcie playera) strzelac=true; Co do poruszania się po kratkach, przeczytaj 16 punkt w FAQ ;) https://gmclan.org/index.php?czytajart=7 GML alarm[0] = room_speed // być może 1000 ms to 1s ale w pokojach o różnych prędkościach inaczej będzie to odliczane, dlatego bezpieczniej wpisać jest room_speed, który jest zawsze równy 1s jeśli chodzi o czas</span> Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
lenin Opublikowano 19 Lutego 2010 Udostępnij Opublikowano 19 Lutego 2010 od razu dodam GML room_speed*liczba ,gdzie zamiast 'liczba' podajesz ilość sekund po których dane zdarzenie ma wystąpić. Nie dodał nikt tego w poprzednich postach, a początkujący nie zawsze od razu to załapie :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ray14 Opublikowano 19 Lutego 2010 Autor Udostępnij Opublikowano 19 Lutego 2010 nie wiem dlaczego ale mi nie dziala, a najgorsze jest to ze wszyscy przeciwnicy wtedy zaczynaja strzelać naraz bez różnicy na odległość. Aha jeszcze coś to jest jak zrobić żeby chodzil mój i to już mam ale przeciwnik ma tak chodzić i if przeciwnik idzie w lewo{change_sprite lewo}, coś takiego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 19 Lutego 2010 Udostępnij Opublikowano 19 Lutego 2010 nie wiem dlaczego ale mi nie dziala, a najgorsze jest to ze wszyscy przeciwnicy wtedy zaczynaja strzelać naraz bez różnicy na odległość. Aha jeszcze coś to jest jak zrobić żeby chodzil mój i to już mam ale przeciwnik ma tak chodzić i if przeciwnik idzie w lewo{change_sprite lewo}, coś takiego. 1. Sprawdź ile wynosi to (przeciwnik.agresja)/6, być może jest na tyle duże, że obejmuje cały ekran 2. Co do poruszania się sprawdzaj direction przeciwnika i ustawiaj odpowiedni obrazek GML if( direction = 180 ) // 180 stopni to chyba w lewo jest nie? { //zmiana obrazka na ten w lewo } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ray14 Opublikowano 19 Lutego 2010 Autor Udostępnij Opublikowano 19 Lutego 2010 nie agresje to 24*6< a więc to wynosi 24. nie wiem co to może być za problem. jeśli ktoś ma pomysł proszę pomóżcie. EDIT sorki ale czy ten alarm nie powinien być w przeciwniku?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hudy0070 Opublikowano 19 Lutego 2010 Udostępnij Opublikowano 19 Lutego 2010 nie agresje to 24*6< a więc to wynosi 24. nie wiem co to może być za problem. jeśli ktoś ma pomysł proszę pomóżcie. EDIT sorki ale czy ten alarm nie powinien być w przeciwniku?? No chyba raczej logicznie myśląc być powinien "w przeciwniku"... GML if( distance_to_object( player ) <= 150 ) { if( shoot = true ) { instance_create( x, y, naboj ); alarm[0] = room_speed; shoot = false; } } Proszę właściwy kod. Ew GML if distance_to_object(player) < ( agresja )/6 { if strzelac!=true { //nic nie rob } else { instance_create(x,y,naboj); strzelac=false; alarm[0]=1000 //gdzie 1000 to milisekundy(1000 ms = 1s) } } Jedna klamerka a tak wiele zmieniła Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Ray14 Opublikowano 20 Lutego 2010 Autor Udostępnij Opublikowano 20 Lutego 2010 nie wiem co z ty jest ale nie dziala, może coś z moją wersją gm7 jest coś nie tak. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
CTRL Opublikowano 20 Lutego 2010 Udostępnij Opublikowano 20 Lutego 2010 Po prostu źle powpisywałeś, coś popsułeś. :D - zróbcie mu przykład, ja gram w almore. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
GMcliker Opublikowano 20 Lutego 2010 Udostępnij Opublikowano 20 Lutego 2010 całe ai masz tutaj (topdown) http://www.gamemakergames.com/forum/index.php?topic=32833.0 http://stupes.customer.netspace.net.au/AI_example_wip.gm6 Edit: tylko trzeba to przerobić na chodzenie po kratkach ;O 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ę