Hi,
ich bin gerade dabei eine Kampf Ki zu schreiben.
Sie soll in etwa das hier können:
-Den Spieler ab einer bestimmten reichweite erkennen und verfolgen
-Wenn die Gegner KI nah genug am Spieler ist soll sie den Sprite ändern und zuschlagen
-Über Abgründe Springen
Das sind zumindest erstmal die Grundlagen die ich dafür benötige.
Ich hab natürlich schon angefangen nur da gibt es noch ein par Problem.
Hier mal der Code:
Im Step event :
Spoiler anzeigen
Alles anzeigen
Im Collisions Event mit dem Spieler:
Spoiler anzeigen
Alles anzeigen
Im Collisions Event mit dem Boden:
Und im Create Event ist nur die HP des Gegners festgelegt.
So kommen wir zum 1. Problem:
Wenn ich den Gegner angreife verliert er HP, geht allerdings nicht in die Verletzungs Animation und bewegt sich auch nicht.
Wo das Problem liegt ist mir schon klar undzwar liegt das damit zusammen dass mein Spieler mich andauernd verfolgt und somit sich nicht Bewegt(zumindest nicht so wie ich will) wenn ich ihn attacke und die Animation dann auch nicht wechseln kann.
Also gibt es eine Möglichkeit die Verfolgung des Players zu stoppen sobald ich ihn Angreife und dann nach der Verletzungsanimation mich wieder zu verfolgen?
2. Problem:
Ihn über einen Abgrund Springen lassen, das ist denke ich nicht so schwer.
Mein erstellt 2 objekte 1 vor und 1 nach dem Abgrund und lässt den Gegner dann vor dem Abgrund(beim1.obj) springen und ihn dann beim 2. obj landen.So würde ich es zumindest erstmal versuchen, ist das die einfachste möglichkeit bzw geht das Überhaupt?
So ich hoffe ihr blickt durch und könnt mir ein bischen aushelfen, achja und wenn es einfache/bessere Methoden gibt als wie ich sie benutzt habe, dann lasst es mich wissen, bin leider noch kein Experte was GML Programmierungen angeht.
MFG~
ich bin gerade dabei eine Kampf Ki zu schreiben.
Sie soll in etwa das hier können:
-Den Spieler ab einer bestimmten reichweite erkennen und verfolgen
-Wenn die Gegner KI nah genug am Spieler ist soll sie den Sprite ändern und zuschlagen
-Über Abgründe Springen
Das sind zumindest erstmal die Grundlagen die ich dafür benötige.
Ich hab natürlich schon angefangen nur da gibt es noch ein par Problem.
Hier mal der Code:
Im Step event :
GML-Quellcode
- //Gravity
- if (place_free(x,y+1))
- {
- gravity=1;
- }
- else
- {
- gravity=0;
- }
- //Verfolgung des Spielers
- if (instance_exists(Player))
- {
- if distance_to_object(Player)< 200
- {
- move_towards_point(Player.x,Player.y,6)
- }
- if distance_to_object(Player)< 10 //Angriff des Spielers
- {
- sprite_index=enemy_atack;
- }
- else if distance_to_object(Player)> 10 //Stoppen des Angriffes
- {
- sprite_index=Enemy1;
- }
- }
Im Collisions Event mit dem Spieler:
GML-Quellcode
- //Gegner greift an - Player geht in die Verletzungs animation
- //und bewegt sich ein stück nach hinten *Funktioniert*
- //Player greift an - Gegner geht in die Verletzungs animation
- //und bewegt sich ein stück nach hinten *Funktioniert nicht*
- //Angriff Gegner KI
- if (obj_enemy.sprite_index==enemy_atack)
- {
- global.MyHp-=1; //HP des Players
- Player.sprite_index=Player_injury;
- {
- if (Player.image_xscale=1)
- {
- Player.hspeed-=3;
- Player.vspeed=-3;
- }
- if (Player.image_xscale=-1)
- {
- Player.hspeed+=3;
- Player.vspeed=-3;
- }
- }
- }
- //Angriff Player
- if (Player.sprite_index==Player_attack)
- {
- if (Player.image_xscale=1)
- {
- motion_add(other.image_angle,0.15);
- vspeed=-0.5;
- enemyHP -= 0.19; //-1hp
- obj_enemy.sprite_index=enemy_hurt;
- }
- if (Player.image_xscale=-1)
- {
- motion_add(other.image_angle,-0.15);
- vspeed=-0.5;
- enemyHP -=0.19;
- obj_enemy.sprite_index=enemy_hurt;
- }
- }
Im Collisions Event mit dem Boden:
Und im Create Event ist nur die HP des Gegners festgelegt.
So kommen wir zum 1. Problem:
Wenn ich den Gegner angreife verliert er HP, geht allerdings nicht in die Verletzungs Animation und bewegt sich auch nicht.
Wo das Problem liegt ist mir schon klar undzwar liegt das damit zusammen dass mein Spieler mich andauernd verfolgt und somit sich nicht Bewegt(zumindest nicht so wie ich will) wenn ich ihn attacke und die Animation dann auch nicht wechseln kann.
Also gibt es eine Möglichkeit die Verfolgung des Players zu stoppen sobald ich ihn Angreife und dann nach der Verletzungsanimation mich wieder zu verfolgen?
2. Problem:
Ihn über einen Abgrund Springen lassen, das ist denke ich nicht so schwer.
Mein erstellt 2 objekte 1 vor und 1 nach dem Abgrund und lässt den Gegner dann vor dem Abgrund(beim1.obj) springen und ihn dann beim 2. obj landen.So würde ich es zumindest erstmal versuchen, ist das die einfachste möglichkeit bzw geht das Überhaupt?
So ich hoffe ihr blickt durch und könnt mir ein bischen aushelfen, achja und wenn es einfache/bessere Methoden gibt als wie ich sie benutzt habe, dann lasst es mich wissen, bin leider noch kein Experte was GML Programmierungen angeht.
MFG~
Imagine taking your usual two century long nap minding your own business when suddenly some cunt wakes you up.
You tell him to f*ck off of course but just when you finally managed to fall asleep again the same asshole comes knocking again. I'd attack that dick too.
You tell him to f*ck off of course but just when you finally managed to fall asleep again the same asshole comes knocking again. I'd attack that dick too.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DragonXZ ()