Zum ermitteln kannst du eine Varibale benutzen.
Diese Varible wird dann immer wenn du ein neues Gebiet betrittst(sprich teleport),
auf eine Zahl gesetzt ( jede dieser Zahlen entspricht einem Ort, am besten aufschreiben!).
...
Das ist imo ein bisschen umständlich - falls du damit meinen solltest, dass man in jedem Teleporter die Variable entsprechend ändern soll (was ich aus deinem "Am besten Aufschreiben") schließe.
Sicherlich einfacher wäre da eine Anbindung an die Map ID.
Der Code sähe dann folgendermaßen aus:
Zitat
<>Change Variable "Speichern Map ID", set [(Hero) Map-ID]
<>
<>Fork Variable "Speichern Map ID" = 1
<><>Change Hero Name -> [Name des Ortes, der sich auf der Map mit der ID 1 befindet]
<><>Call Save Menu
<><>!Goto Label 1!
<>End:
<>Fork Variable "Speichern Map ID" = 2
<><>Change Hero Name -> [Name des Ortes, der sich auf der Map mit der ID 2 befindet]
<><>Call Save menu
<><>!Goto Label 1!
<>End:
<>Fork Variable "Speichern Map ID" = 3
<><>...
<>End:
<>...
<>!Label 1!
<>Change Hero Name -> [Name des aktuell wichtigsten Helden (wenn nötig per Fork abfragen]
<>
...
Dieser Code ist dann dem von Waradience sehr ähnlich, der einzige wirkliche Unterschied ist neben der Verwendung der Map ID die ausgelassene Verschachtelung der Forks. Da auch ich am Ende jeder ausgeführten Anweisung zum Ende springe, kann ich die Forks auch getrost einfach untereinander schreiben. Das bringt letztendlich nur, das man (wenn dein Spiel größer wird) sehr viel leichter und schöner Orte einfügen kann. Sonst muss man dort immer erst den "Schwanz" in der Else rauskopieren, die neuen reinpacken usw. (solange man etwas auf ordnung hält und die Forks der Map ID nach aufsteigend anordnen will). (Außerdem sieht es besser aus ^^)
Na ja, so müsste es eigentlich gehen
mfg
Phönix Tear
P.S: Um die Map ID herauszufinden kann man (natürlich neben der obigen Abfrage im Spiel) wohl am besten per Rechtsklick im Map-Tree auf "Map Properties..." klicken. Ganz oben steht dann die ID dieser Map (falls du das noch nicht wissen solltest ^^).
Das ist imo ein bisschen umständlich - falls du damit meinen solltest, dass man in jedem Teleporter die Variable entsprechend ändern soll (was ich aus deinem "Am besten Aufschreiben") schließe.
...
Ich vermute zumindest mal, dass jede neue Map bei ihm nicht ein neues Gebiet sein wird.
Somit müsste er nach deiner Methode für jede Map im Spiel eine Fork machen,
was imo mehr umständlich ist, als meine Metode.
Außerdem meinte ich das eher nicht bei jedem Teleport, sondern eher bei jedem
Ortswechsel die Variable geändert werden würde. Zum Beispiel wenn man
von einer Stadt einen Teleport in die nächste Stadt macht. Innerhalb der
Stadt wäre das aber nicht nötig.
Außer der TE will für jede Map einen anderen Namen haben, dann natürlich
ist deine Version besser.
----------------------------------------------------------------------------------------
EDIT: Ok, überzeugt ^^
Auf sowas hab ich vorher gar nicht gedacht
Zitat von Phönix Tear
<>Fork Variable "Speichern Map ID" < 10
...
Dann kann er es ja praktisch eingrenzen, also wenn er zB. die Maps 1-10 ein Gebiet sind.
~Waradience~
Somit müsste er nach deiner Methode für jede Map im Spiel eine Fork machen,
was imo mehr umständlich ist, als meine Metode.
...
Das kommt natürlich ganz darauf an wie groß seine Gebiete Maptechnisch nun sind und ob er es schafft diese mit passenden IDs zu versehen.
Schließlich ist es auch möglich etwas wie
Zitat
<>Fork Variable "Speichern Map ID" < 10
...
zu machen. Durch das Wegspringen per Label sollte das auch keine Probleme machen (dafür müssen dann nur eben möglichst viele Maps des gleichen Gebietes in der ID aufeinander folgend erstellt worden sein. Aber selbst wenn das nicht der Fall ist, kann man durch diese Methode schon mal größere Bereiche abdecken und die Sonderfälle noch mal einzeln ansprechen.).
Insgesamt bleibe ich aber dabei, dass diese Methode praktischer ist. Selbst wenn man bei dir nur pro Gebietswechsel eine Variable ändern muss, kann es vorkommen, dass es sehr viele Teleporter gibt (z.B. mehrere Ausgänge der Stadt, etc.) und des weiteren ist sie auch sehr Fehleranfällig. Schließlich denkt nicht jeder daran, am Ende einer Videosequenz die den Helden evtl. zu einem anderen Gebiet bringt, auch die entsprechende Variable zu ändern. Sicherlich geht nicht die Welt unter, wenn im Speichermenü der falsche Ort steht, dennoch ist es ein Grund der gegen deine Methode spricht. Es ist schlichtweg umständlicher bei jedem Gebietswechselndem Teleporter extra daran denken zu müssen, als wenn man ganz routiniert eine Fork für das Gebiet gleich nach dem erstellen der Map in das CE einfügt.
Edit:
@Jadoo: Wie wäre es den freien Menüpunkt "Cheats" zu nennen? Da er ja immer grau ist, würden dann sicherlich ein paar Leute die sich mit dem Maker net auskennen Tagelang versuchen den zum laufen zu bekommen
--
Zu Java und C++ übergelaufen...
Geändert von Phönix Tear (27.08.2007 um 10:46 Uhr)
Danke für deinen Vorschlag. Ist übersichtlich und einfach zu handhaben, da bin ich auch deiner Meinung. So muss ich nicht jedes Mal die Variable ändern, wenn der Held eine neue Map betritt.
Ich habe übrigens meinen Maps nebst Mapnamen auch noch die ID hinten dran verpasst. Ist vielleicht nicht nötig, da man sie ja auch in den Map Properties oben sehen kann, so habe ich aber direkt einen Überblick über diese IDs
Ich habe mal angefangen, das CE zu bauen, doch leider fällt mir jetzt wieder ein momentanes Hinderniss auf. Ich kann ja garnicht einfach den Heldennamen ändern, weil es im Spiel ja u.a. Szenen gibt, wo man nicht nur den Haupthelden spielt sondern auch mal die anderen Helden.
Gut dass mir damals schon die Idee gekommen ist, für jede Truppe eine Variable anzulegen. So kann ich bei jedem Partywechsel die passende Variable auf "1" setzen und die anderen wieder auf "0". So spar ich mir auch an bestimmten Stellen im Spiel eine ellenlange Forkabfrage, wer denn nun alles in der Party ist, damit auch ja der passende Held ein Kommentar abgibt.
So müsste ich dann eine Forkabfrage, wie du ja auch bereits angesprochen hast
Zitat
<>!Label 1!
<>Change Hero Name -> [Name des aktuell wichtigsten Helden (wenn nötig per Fork abfragen]
...
auch bei dem ersten Namenswechsel machen, was ja dank meiner Partyvariablen funktionieren sollte und auch nicht all zu viel Arbeit wäre, da man bei deinem Vorschlag mit der Map ID Abfrage ja nur den Schnipsel kopieren muss und die ID + Ortsname abändern.
Würde also so aussehen:
Zitat
<>Change VAR "Speicherort" SET Hero Map ID
<>Wait 0,1 [Nur um sicher zu gehen, dass er die Map ID auch gespeichert hat]
<>Fork VAR "Speichertort" = 1
<><>Fork VAR "Heldentruppe" = 1
<><>Change Hero Name 1
<><><> ELSE
<><><>Fork VAR "Heldentruppe 2" = 1
<><><>Change Hero Name 2
<><><>.....
<><><>.....
<><>
<>
<>Call Save Menu
<>Go to Label 1
<>
<>Fork VAR "Speichertort" = 2
<><>Fork VAR "Heldentruppe" = 1
<><>Change Hero Name 1
<><><> ELSE
<><><>Fork VAR "Heldentruppe 2" = 1
<><><>Change Hero Name 2
<><><>.....
<><><>.....
<><>
<>
<>Call Save Menu
<>Go to Label 1
<>
...
...
<>Label 1
<>Fork VAR "Heldentruppe" = 1
<>Change Hero Name 1
<><> ELSE
<><>Fork VAR "Heldentruppe 2" = 1
<><>Change Hero Name 2
<><>.....
<><>.....
...
@ Waradience
Zitat
Hm, das mit dem Menüpunkt wird dann bischen unschön aussehen,
wenn er ganze Zeit unberührbar bleibt. Aber ich wüsste für
das jetzt auch keine Lösung. Beim 2k gibt es glaub ich gar keine.
Immerhin kannst du den Punkt in was anderes als "Speichern" umbenennen.
...
Habe mal überlegt, was man dann nehmen könnte. Das sinnvollste mMn wäre hier aber nur ----------------- anstatt ein Wort.