Jump to content
Unity Insider Forum
q3max

Zone of Control in TBS Game

Recommended Posts

Hallo,

ich habe in meine TBS den Dijkstra Alogrithmus für die Wegfindung und das finden aller erreichbaren Felder für eine Einheit erfolgreich implementiert.

Nun wollte ich diese Zone of Control einbauen, also die Felder um Gegnerische Einheiten die man nicht mehr einfach durchschreiten kann.

Der Dijkstra Alog ist 1:1 nach dem Pseudocode von der Wikipedia Seite geschrieben.

Meine Idee war das beim durchlaufen der Nachbarn,

 6          für jeden Nachbarn v von u:
 7              falls v in Q:                            // falls noch nicht berechnet
 8                 distanz_update(u,v,abstand[],vorgänger[])   // prüfe Abstand vom Startknoten zu v 

ich in der distanz_update Funktion nochmals für jeden Nachbarn prüfe ob der seinerseits eine Feindeinheit als Nachbar besitzt und dann dort den alternativ wert anders berechnen muss.

Ich komme hier aber auf keine grünen Zweig.

 1  Methode distanz_update(u,v,abstand[],vorgänger[]):
 2      alternativ:= abstand[u] + abstand_zwischen(u, v)   // Weglänge vom Startknoten nach v über u
 3      falls alternativ < abstand[v]:
 4          abstand[v]:= alternativ
 5          vorgänger[v]:= u

über Tips, Vorschläge würde ich mich freuen.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...