AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Bewegung in 2D-Welten
Thema durchsuchen
Ansicht
Themen-Optionen

Bewegung in 2D-Welten

Ein Thema von Maik.mark · begonnen am 20. Feb 2008 · letzter Beitrag vom 21. Feb 2008
Antwort Antwort
Seite 2 von 2     12   
Nuclear-Ping
(Gast)

n/a Beiträge
 
#11

Re: Bewegung in 2D-Welten

  Alt 21. Feb 2008, 09:27
Er möchte keine KI, er möchte einfach seine Spielfigur in seine "Spielwelt" setzen und sie soll damit passend interagieren.

Deswegen kamen oben in den ersten zwei Antworten schon die Empfehlungen sich den Code von Aspirin oder Andorra anzuschauen, ggf. die Forensuche zu benutzen.
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#12

Re: Bewegung in 2D-Welten

  Alt 21. Feb 2008, 09:38
Als Welt könntest du ein 2DArray of Boolean benutzen. Wenn dein Gegner dann in einem Feld steht, kannst du recht einfach einen Zufallszug ausführen lassen:
Delphi-Quellcode:
// Gegner steht in A(x,y):
cnt :=0;
possible = array[8] of TPoint
for i in [-1,0,1] do
  for j in [-1,0,1] do
  if i==j and j==0 do continue;
  if A[x+i,y+j] do
    cnt := cnt+1;
    possible[cnt]=(x+i,y+j); // eine Liste der Zugmöglichkeiten wird erstellt:
  // Ein true-Feld im Array steht für eine betrerbare Fläche, false für eine Wand.
  // jetzt weisst du also, in welche Richtungen du laufen kannst.
  Gegner.laufeNach(possible(random(cnt)))
Jetzt kannst du z.B. mit einem Timer die Figur langsam zur nächsten Zelle bewegen und sobald sie dort angekommen ist, wieder diesen Code ausführen.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz