Skocz do zawartości

Zablokowane Coś nie działa - Chodzenie wroga w grze platfmowej


Rekomendowane odpowiedzi

Chcę żeby "karaluch0" chodził w lewo jak uderzy "potworystop", na starcie idzie w prawo.

GML
if prawo=true

{

x+=3

}

if distance_to_object(potworystop)<2 && prawo=true

{

x-=3

prawo=false

}

if prawo=false x-=3

if distance_to_object(potworystop)<2 && prawo=false

{

x+=3

prawo=true

}

Jednak on nadal chodzi w prawo, cały czas :/ I mija "potworystop" :/

Odnośnik do komentarza
Udostępnij na innych stronach

;OOO

Nie wpadłem na to :o

Zaraz sprawdzę i editne posta ;)

 

A jak zrobić obracanie się w stronę chodzenia bo zapomniałem?

EDIT:

No, ale tak to będzie tylko określona odległość a ja chcę różną odległość w zależności od potworystop :/

Odnośnik do komentarza
Udostępnij na innych stronach

GML
if prawo=true

x+=3

else if(prawo = false)

x -= 3

if distance_to_object(potworystop)<2 && prawo=true

{

x-=3

prawo=false

}

else if distance_to_object(potworystop)<2 && prawo=false

{

x+=3

prawo=true

}

To bedzie dzialalo.

 

E: obracanie w strone chodzenia:

GML
if(prawo = true) image_xscale = 1

else image_xscale = -1

Albo odwrotnie.

Odnośnik do komentarza
Udostępnij na innych stronach

Chodzi co o to, że każdy stworek ma inną ścieżkę chodzenia?

Wystarczy looknąć id objektu w Rooms, i w kodzie dać

GML
if(id==100080)

{

path_start(path_monster2,4,3,true);

}else if(id==100083) path_start(path_monster,4,3,true);

Coś takiego.

 

W ogóle w tym przykładzie to znajdziesz: https://forum.gmclan.org/index.php?showtopic=22911

Odnośnik do komentarza
Udostępnij na innych stronach

Dziwne ale nie działa ;O

Tu macie info o objectie potworystop

Information about object: potworystop

Sprite: <no sprite>
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent: <no parent>
Mask: <same as sprite>

Collision Event with object karaluch0:
execute code:

if karaluch0.prawo=true
{
karaluch0.prawo=false
}

if karaluch.prawo=false karaluch0.prawo=true

A tu karaluch0:

nformation about object: karaluch0

Sprite: karaluch1
Solid: true
Visible: true
Depth: 0
Persistent: false
Parent: <no parent>
Mask: karaluch1

Create Event:
execute code:

prawo=true


Step Event:
execute code:

if  prawo=true
x+=3
else if(prawo = false)
x -= 3
if distance_to_object(potworystop)<5 && prawo=true
{
x-=3
prawo=false
}
else if distance_to_object(potworystop)<5 && prawo=false
{
x+=3
prawo=true
} //chodzenie
if(prawo = true) image_xscale  = 1
else image_xscale = -1

Odnośnik do komentarza
Udostępnij na innych stronach

Nie moze nie dzialac. Wycentrowales originy sprite'a karalucha?

E: sprawdz to:

GML
x+=prawo*3; image_xscale = prawo

if distance_to_object(potworystop)<5

{

prawo *= -1

x += prawo*3

}

Chyba przyspieszylem do granic mozliwosci.

Odnośnik do komentarza
Udostępnij na innych stronach

dales jakikolwiek sprite temu obiektowi niewidzialnemu? [ustaw mu tez wycentrowany origin]

 

if(prawo = true) image_xscale = 1

else image_xscale = -1

 

wtf?

 

if(prawo = true) x += = 4;

else x-= -4

 

a distance_to_object(potworystop)<5

lepiej na bezpieczniejsza wartosc

distance_to_object(potworystop)< rozmiar_kafelka/2

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...