Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Game Maker Domäne. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

darulaz

Elfchen

  • »darulaz« ist der Autor dieses Themas

Beiträge: 130

Aktuelles Projekt: Streng geheim :P

  • Private Nachricht senden

1

Sonntag, 8. Januar 2006, 21:59

Langsam zum Spieler rotieren/Drehen

Ich hab wiedermal ein Problem. Ich möchte das meine Raumschiffe sich langsam zum Spielerobjekt rotieren (ok das mit dem langsam bekomm ich auch so hin). Ich weiss nur nicht wie der Befehl ist das sich die richtung von einem Objekt zu einem anderen dreht wenn ihr versteht was ich meine :D

h4p0

Konfetti

  • »h4p0« wurde gesperrt

Beiträge: 76

  • Private Nachricht senden

2

Sonntag, 8. Januar 2006, 22:05

probiers mal mit image_angle

mfg h4p0

darulaz

Elfchen

  • »darulaz« ist der Autor dieses Themas

Beiträge: 130

Aktuelles Projekt: Streng geheim :P

  • Private Nachricht senden

3

Sonntag, 8. Januar 2006, 22:12

ähm.. damit änder ich aber nicht die richtung des objekts sondern nur die richtung des images.. oder täusch ich mich da ? ausserdem will ich ja das sich das objekt so hindreht das es letztendlich zum spieler schaut.. also nicht prompt umdreht sondern die richtung so ändert das es wie gesagt zum spieler schaut :D

h4p0

Konfetti

  • »h4p0« wurde gesperrt

Beiträge: 76

  • Private Nachricht senden

4

Sonntag, 8. Januar 2006, 22:53

ja denn machste nen alarm event oder ne schleife bis er die direction erreicht hat immer einen dazu oder so...

FOODy

Yen-Schein

Beiträge: 300

Game Maker Version: 4

  • Private Nachricht senden

5

Sonntag, 8. Januar 2006, 23:03

Versuch mal das:

GML

1
2
3
dir = point_direction(x,y,PLAYER.x,PLAYER.y)
if(image_angle<dir) image_angle += 1
if(image_angle>dir) image_angle -= 1

point_direction gibt den winkel von punkt x|y und x2|y2 wieder.

Dragoon

Foreneigener Hausdrache

Beiträge: 714

Game Maker Version: 6 registriert

Selbsteinschätzung: GML Experte

  • Private Nachricht senden

6

Sonntag, 8. Januar 2006, 23:37

für was gibts wohl die suchfunktion in diesem forum? das nächste mal bitte suchen... bist glaub schon der 4. der die selbe frage stellt...
KLICKKLOCK
musst du nur noch mein code abändern

Dragoon
int (*x(*x(int))[5])(int*);
Confused? Yes, it's C!

darulaz

Elfchen

  • »darulaz« ist der Autor dieses Themas

Beiträge: 130

Aktuelles Projekt: Streng geheim :P

  • Private Nachricht senden

7

Dienstag, 10. Januar 2006, 18:24

danke erstmal ;) aber bei mir funktioniert das ganze dennoch nicht ! :-/
irgendwas is falsch (oder ich wie immer zu dumm)

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if(instance_exists(rocket))
{
 if (point_distance(self.x,self.y,rocket.x,rocket.y) < 350)
 {
        tur_dir+=sign(round(point_direction(self.x,self.y,rocket.x,rocket.y)-180))
        if(tur_dir>359){tur_dir=0} //ist hoffentlich klar
        if(tur_dir<0){tur_dir=359} //das auch
        dir_pla1=point_direction(self.x,self.y,rocket.x,rocket.y) //das nehme ich auch an
        dir=pla1-tur_dir //winkel unterschied berrechne
        if(dir>180){dir=-(360-dir)} //wenn winkel >180 soll der andere winkel berechnet werden
        if(dir<-180){dir=360+dir} //mit <-180
        if(dir<-1){tur_dir-=1} //nach rechts drehen (1 ersetzten durch geschwindigkeit)
        if(dir>1){tur_dir+=1} //nach links drehen (siehe oben)
 }
}
 


erst checkt er ob die instanz einer rakete (also das is der spieler) existiert. Danach überprüft er die entfernung.. und dann sollte er eigentlich zum spieler rotieren.. tut er aber irgendwie nich :-/ das ganze hab ich zum testen mal in nen stepevent getan...