HI!
Ich habe vor ein paar Monaten meine KI fertiggestellt und habe heute noch etwas angefügt. Meine KI funktioniert wie folgt: Ein Objekt wandert von Waypoint zu Waypoint, und trifft es dabei auf den Spieler beliebt es stehen und schießt.
Jetzt habe ich folgendes hinzugefügt: Das Objekt soll nicht nur einfach plötzlich in die Richtung des Spielers schauen, sondern sich langsam hindrehen. Und das in die Richtung, in die es schneller geht. Dabei sieht ein Teil des Codes so aus:
Alles anzeigen
Das ist das Step-Event meines Codes, wobei die Funktion mit dem drehen nicht funktioniert. Ich hoffe ihr könnt mir helfen.
Ich habe vor ein paar Monaten meine KI fertiggestellt und habe heute noch etwas angefügt. Meine KI funktioniert wie folgt: Ein Objekt wandert von Waypoint zu Waypoint, und trifft es dabei auf den Spieler beliebt es stehen und schießt.
Jetzt habe ich folgendes hinzugefügt: Das Objekt soll nicht nur einfach plötzlich in die Richtung des Spielers schauen, sondern sich langsam hindrehen. Und das in die Richtung, in die es schneller geht. Dabei sieht ein Teil des Codes so aus:
GML-Quellcode
- // Das Step Event für die KI
- // argument0=Waypoint Objekt
- // argument1=Gegner der KI
- // argument2="Spotting"-Distanz
- // argument3=Script für die Attacke
- // argument4=Wall Objekt
- argument0=waypoint
- argument1=enemy
- argument2=170
- argument3=ki_attack
- argument4=wall
- inumb=instance_number(argument0)
- if (distance_to_object(argument1)<argument2)
- {
- if not collision_line(x,y,argument1.x,argument1.y,argument4,true,true)
- {
- global.feind=true
- if not (image_angle<point_direction(x,y,argument1.x,argument1.y)+10 and image_angle>point_direction(x,y,argument1.x,argument1.y)-10)
- {
- if (image_angle>point_direction(x,y,argument1.x,argument1.y)+180)
- image_angle+=10
- if (image_angle<point_direction(x,y,argument1.x,argument1.y)+181)
- image_angle-=10
- }
- else
- {
- image_angle=point_direction(x,y,argument1.x,argument1.y)
- speed=0
- script_execute(argument3)
- }
- }
- }
- else
- {
- global.feind=false
- image_angle=direction
- }
- if (global.feind=false)
- {
- if (global.suche=true)
- {
- inst=instance_find(argument0,floor(random(inumb)))
- global.suche=false
- }
- else
- {
- if (mp_potential_step(inst.x,inst.y,5,false))
- {
- global.suche=true
- }
- }
- }
- if collision_line(x,y,argument1.x,argument1.y,argument4,true,true)
- {
- global.feind=false
- image_angle=direction
- }
Das ist das Step-Event meines Codes, wobei die Funktion mit dem drehen nicht funktioniert. Ich hoffe ihr könnt mir helfen.

© 2008 by Teamgrill Productions