Gegner Programmieren
Übersicht

![]() |
bruce185Betreff: Gegner Programmieren |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi,
ich habe eine Tilemap erstellt, nun möchte ich das dort sich auch gegner bewegen, und zwar möchte ich das mit Typen machen, nur weiss ich nicht so recht wie das mit typen funktioniert, könnt ihr mir vieleicht ein tip geben was ich schreiben muss, bei typen, die Kollisionsabfrage kann ich allein, ich weiss nur nicht wie ich ein gegner auf einer Tilemap laufen lassen kann, ich würde das gern mit Typen machen, also ich bin euch sehr dankbar wenn ihr mir weiter helfen könnt, danke schonmal ![]() bruce185 |
||
![]() |
bruce185 |
![]() Antworten mit Zitat ![]() |
---|---|---|
sorry, ich bin gerade dabei ein Pac Man Spiel zu proggen, und ich wollte das so machen das der Gegner den Spielfigur verfolgt, muss ich die For Next schleife benutzen, oder kann man das auch anders erledigen, für jede Hilfe bin ich euch sehr dankbar ![]() bruce185 |
||
![]() |
DA |
![]() Antworten mit Zitat ![]() |
---|---|---|
Moin,
Wenn ein Gegner den Spieler verfolgen soll, dann brauchst du ja nur die Koordinaten der beiden Spieler. Wenn du die hast, kannst du ja in jedem Schleifendurchlauf testen ob der Gegner von dem Spieler entfernt ist. Wenn ja, rechnest du ihm ein bischen dazu zu seinen Koordinaten in richtung des Spielers. Hier mal ein Beispielcode: BlitzBasic: [AUSKLAPPEN]
so müsste es klappen. ![]() Mfg |
||
Deutscher Blitz Basic Chat |
![]() |
garretBetreff: Mein Senf |
![]() Antworten mit Zitat ![]() |
---|---|---|
DA: Deine Lösung klappt aber nicht wirklich.
Was ist, wenn sich Spieler und Gegner zwar auf gleicher Höhe befinden, aber eine Mauer zwischen beiden ist? Außerdem könnte ich mir vorstellen, dass die Gegnerfigur, sobald sie (sagen wir mit der y-Koordinate) auf fast gleicher Höhe mit dem Spieler ist, hin und her "zuckt", da sie bei ihrem nächsten Schritt (da sie nicht auf gleicher Höhe ist) dies zu korrigieren versucht, dabei aber noch mehr vom Weg abkommt. Aber ich denke, deines sollte nur ein Beispiel sein ![]() Die Koordinaten der Gegnerfigur anhand der Koordinaten des Spielers (oder der eines Balles) zu bestimmen klappt sicherlich nur bei Spielen wie Pong ![]() Bruce: Vielleicht solltest du dir mal auf blitzbase.de das Pathfinding-Tutorial ansehen. Es ist wirklich sehr nützlich! |
||
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht) |
![]() |
wunderkind |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der Link zum Pathfinding-Tutorial auf blitzbase.de lautet:
http://www.blitzbase.de/artikel/path_1.htm Viele Grüße Dein Blitzforum.de Service Team |
||
![]() |
dicemanBetreff: Re: Mein Senf |
![]() Antworten mit Zitat ![]() |
---|---|---|
garret hat Folgendes geschrieben: Außerdem könnte ich mir vorstellen, dass die Gegnerfigur, sobald sie (sagen wir mit der y-Koordinate) auf fast gleicher Höhe mit dem Spieler ist, hin und her "zuckt", da sie bei ihrem nächsten Schritt (da sie nicht auf gleicher Höhe ist) dies zu korrigieren versucht, dabei aber noch mehr vom Weg abkommt.
Man kann ja auch eine +/- Toleranz einbauen, ab wann der Gegner "zufirieden" mit seiner Position ist. Weiterhin ist es möglich, daß der Gegner sich erst nach einer Verzögerung bewegt, und zwar zu dem Punkt, den er zu diesem Zeitpunkt ins Visier nimmt. Wenn er dort ankommt, visiert er wieder den Gegner an und bewegt sich dann dahin. Dann hat man einen flüssigeren Ablauf und kein "zucken". Die Verzöger und und die Abweichung von der Zielkoordinate kann man ja auch mit einem Rand() variieren um ein dynamischeres Verhalten vorzutäuschen. Habe auch gerade erst mit dem Programmieren angefangen, aber von der Theorie her müßte das doch klappen. |
||
Dödel |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
PacMan funktioniert allerdings tatsächlich so, dass er versucht, deine Koordinaten anzunehmen. Was geht, wäre z.B., ihn in x Richtung laufen zu lassen, obwohl er dort die richtige Koordinate erreicht hatt, wenn es in y Richtung nicht mehr funktioniert.
ZU den Types: Lies dir doch bitte einfach mal das Tutorial auf der Robsite dazu durch... Außerdem halte ich einen Teil (ich wollte erst die meisten sagen ![]() mfg Dödel |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group