PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem beim Map -Menü



Multi-Master1988
13.08.2010, 17:33
Hallo ich mache mich grade ein wenig mit dem Menü des
Forgetten E-Books vertraut.

Nun mein Problem ist nun das die Heldenvariablen
nicht errechnet werden.

Was hab ich falsch gemacht?

Hier der Code:



- SCRIPT -
<> Fork Condition: If Switch [14] == OFF then ...
. <> Weather Effects: None
. <> Change Switch: [3] = ON
. <> Call Event: Common Event #10
. <> Change Variable: [25] = 0
. <> Fork Condition: If Hero #1 is in party then ...
. . <> Change Variable: [26] = V[V[26]]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #1
. . <>
. : End of fork
. <> Fork Condition: If Hero #2 is in party then ...
. . <> Change Variable: [32] = 2
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #2
. . <>
. : End of fork
. <> Fork Condition: If Hero #3 is in party then ...
. . <> Change Variable: [28] = 3
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #3
. . <>
. : End of fork
. <> Fork Condition: If Hero #4 is in party then ...
. . <> Change Variable: [29] = 4
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #4
. . <>
. : End of fork
. <> Change Party: Add hero #9
. <> Change Switch: [1] = ON
. <> Teleport: Map #2, (1, 2)
. <>
: Else ...
. <> Change Party: Remove hero #9
. <> Fork Condition: If Variable [26] != 0 then ...
. . <> Change Party: Add hero V[26]
. . <>
. : End of fork
. <> Fork Condition: If Variable [27] != 0 then ...
. . <> Change Party: Add hero V[27]
. . <>
. : End of fork
. <> Fork Condition: If Variable [28] != 0 then ...
. . <> Change Party: Add hero V[28]
. . <>
. : End of fork
. <> Fork Condition: If Variable [29] != 0 then ...
. . <> Change Party: Add hero V[29]
. . <>
. : End of fork
. <> Call Event: Common Event #11
. <> Change Variable: [31-34] = 0
. <> Change Switch: [1] = OFF
. <> Go To Memorized Location: Map V[3], (V[4], V[5])
. <>
: End of fork

Multi-Master1988
13.08.2010, 19:45
Eins noch habe herausgefunden
das Held # 3 eine Heldennummer bekommt
allerding bekommen die anderen 3 Helden keine
kann mir jemand weiterhelfen...?:confused:

BDraw
13.08.2010, 20:28
. . <> Change Variable: [26] = V[V[26]]

Könnte da u.a. ein Fehler liegen? Ich kann mit deinem Code nichts anfangen weil der sehr aus dem Kontext gerissen ist und ich kA habe, welche Variablen was sind.
Aber der Befehl da ist zum einen sehr anders als bei den anderen Abfragen und ergibt auf den ersten Blick keinen Sinn.

Change Variable: [32] = 2

Sicher dass du da nicht eigtl. Variable 27 meinst?

Mehr krieg ich da spontan nicht rausgelesen was irgendwie auffällig wäre, sry.

Multi-Master1988
13.08.2010, 20:51
@BDraw

Diese fehler sind mir vorhin auch schon
aufgefallen...;)

Aber wirklich gändert hat es nix an meine jetzigen Situation
hier nochmal der überarbeitete Code:



- SCRIPT -
<> Fork Condition: If Switch [14] == OFF then ...
. <> Weather Effects: None
. <> Change Switch: [3] = ON
. <> Call Event: Common Event #10
. <> Change Variable: [25] = 26
. <> Fork Condition: If Hero #1 is in party then ...
. . <> Change Variable: [25] = V[26]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #1
. . <>
. : End of fork
. <> Fork Condition: If Hero #2 is in party then ...
. . <> Change Variable: [25] += V[27]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #2
. . <>
. : End of fork
. <> Fork Condition: If Hero #3 is in party then ...
. . <> Change Variable: [25] = V[28]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #3
. . <>
. : End of fork
. <> Fork Condition: If Hero #4 is in party then ...
. . <> Change Variable: [25] = V[29]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #4
. . <>
. : End of fork
. <> Change Party: Add hero #9
. <> Change Switch: [1] = ON
. <> Teleport: Map #2, (1, 2)
. <>
: Else ...
. <> Change Party: Remove hero #9
. <> Fork Condition: If Variable [26] != 0 then ...
. . <> Change Party: Add hero V[26]
. . <>
. : End of fork
. <> Fork Condition: If Variable [27] != 0 then ...
. . <> Change Party: Add hero V[27]
. . <>
. : End of fork
. <> Fork Condition: If Variable [28] != 0 then ...
. . <> Change Party: Add hero V[28]
. . <>
. : End of fork
. <> Fork Condition: If Variable [29] != 0 then ...
. . <> Change Party: Add hero V[29]
. . <>
. : End of fork
. <> Call Event: Common Event #11
. <> Change Variable: [31-34] = 0
. <> Change Switch: [1] = OFF
. <> Go To Memorized Location: Map V[3], (V[4], V[5])
. <>
: End of fork

R.F.
13.08.2010, 21:25
So richtig Sinn macht der Code aber nicht wirklich. Die Variablen Var[26-29] werden nie belegt, daher kann ich auch nicht sagen, ob sie nicht vorher schon einen Wert habn, oder nicht. Wenn man 4 Charaktere hat, besitzt Var[25] nur den Wert von Var[29]+1, wird aber auf dem ersten Blick nicht gebraucht. Wäre auch gut zu wissen, wofür die CommonEvents eigendlich da sind. Genauso versteh ich nicht, wofür die Var[31-34] und die Switches[1,3] da sind.

Multi-Master1988
13.08.2010, 22:08
@R.F.
Stimmt da hast du recht die Variabeln 26-29 werden nie belegt..;)

Die Variabeln 31-34 sind meine Shuld gewesen diese gehören da nämlich nicht hin..:eek:
Es sollten nämlich die Variabeln 25-29 wieder auf null gesetzt werden...:rolleyes:

Die Common-Events sollen abnorme Zustände Zwischenspeichern und diese
dann wieder richtig zuordnen.(Probier gleich mal aus obs ohne die klaptt!)

zu den Schalter ist auch wiederum eine verwechslung
meinerseits...(Hab da was durcheinander gebracht):\
Ich sollte meine Code's genauer Durchchecken...:rolleyes:

Bis auf den Schalter 3 der ist gewollt und soll einen
Geldzähler aktivieren...:D

Schalter 1 ist für das überprüfen ob man schon im Inventar ist...:)

Zusatz-Info:
Ich arbeite an einem Menü basierend auf das Forgetten-E-Book V2.00.4

BDraw
14.08.2010, 00:07
- SCRIPT -
<> Fork Condition: If Switch [14] == OFF then ...
. <> Weather Effects: None
. <> Change Switch: [3] = ON
. <> Call Event: Common Event #10
Bis hier hin machts vermutlich Sinn und hat auch nichts mit deinen Helden zu tun.
. <> Change Variable: [25] = 26
Hä? Wenn die Variable 26 nicht belegt ist, dann macht das hier keinen Sinn. Dann wäre jetzt V[25]=0.
. <> Fork Condition: If Hero #1 is in party then ...
. . <> Change Variable: [25] = V[26]
Das selbe in grün.
. . <> Change Variable: [25] += 1
Also ist die Variable 25 jetzt 1, denn 0+1=1. Aha.
. . <> Change Party: Remove hero #1
. . <>
. : End of fork
. <> Fork Condition: If Hero #2 is in party then ...
. . <> Change Variable: [25] += V[27]
Schon wieder. 27 ist nicht belegt, also =0. Ergo bleibt V25 =1.
. . <> Change Variable: [25] += 1
1+1=2. V[25] ist also jetzt 2.
. . <> Change Party: Remove hero #2
. . <>
. : End of fork
. <> Fork Condition: If Hero #3 is in party then ...
. . <> Change Variable: [25] = V[28]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #3
Siehe gerade eben... V[25] ist jetzt 3.
. . <>
. : End of fork
. <> Fork Condition: If Hero #4 is in party then ...
. . <> Change Variable: [25] = V[29]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #4
Siehe nochmal gerade eben... V[25] ist jetzt 4.
. . <>
. : End of fork
. <> Change Party: Add hero #9
. <> Change Switch: [1] = ON
. <> Teleport: Map #2, (1, 2)
. <>
: Else ...
Ab hier isses wieder Nonsens, sofern V26-29 nie belegt wurden. Keine der Forks trifft zu, da alle 0 sind und das hier auch nie geändert wurde, deine Party bleibt ebenfalls leer: ALle Helden wurden entfernt, aber keiner hinzugefügt.
. <> Change Party: Remove hero #9
. <> Fork Condition: If Variable [26] != 0 then ...
. . <> Change Party: Add hero V[26]
. . <>
. : End of fork
. <> Fork Condition: If Variable [27] != 0 then ...
. . <> Change Party: Add hero V[27]
. . <>
. : End of fork
. <> Fork Condition: If Variable [28] != 0 then ...
. . <> Change Party: Add hero V[28]
. . <>
. : End of fork
. <> Fork Condition: If Variable [29] != 0 then ...
. . <> Change Party: Add hero V[29]
. . <>
. : End of fork
. <> Call Event: Common Event #11
. <> Change Variable: [31-34] = 0
. <> Change Switch: [1] = OFF
. <> Go To Memorized Location: Map V[3], (V[4], V[5])
. <>
: End of fork

Kurzum: Der ganze Code scheint mir verkorkst. Ich habe keine Ahnung was die die Variablen 26-29 sollen.

Ich hätt aber gerade ne Idee. Wäre es möglich, dass bei dem ganzen
". <> Fork Condition: If Hero #4 is in party then ...
. . <> Change Variable: [25] = V[29]
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #4"

eigentlich

. <> Fork Condition: If Hero #4 is in party then ...
. . <> Change Variable: [29] = 4
. . <> Change Variable: [25] += 1
. . <> Change Party: Remove hero #4

hinmüsste? Dann würden die Variablen 26-29 eben angeben, welcher Held in der Party ist und 25 würde einfach zählen, wieviele Leute überhaupt da sind. Außerdem hattest du's so ganz oben, und da hat's noch halbwegs Sinn gemacht... ._°
Der Kram danach ist dann einfach ne Abfrage, wer vorher in der Party war.
Was ich immer noch nicht verstehe ist was dieser Held#9 soll. Der wird hinzugefügt, n Switch wird aktiviert, man wird teleportiert, und er wird wieder entfernt. Hä?

Sollte es das auch nicht sein, dann erklär uns bitte was genau die einzelnen Teile des Codes bezwecken sollen und welche Variablen wozu gut sind, welche Werte sie haben, etc. und was durch welchen Switch ausgelöst wird.
So ist das hier nämlich nur n großes Rätselraten...

Dhan
14.08.2010, 00:41
Aaalso, ein kleiner Hinweis für sämtliche Tutorials:
Die Dinger sind NICHT dafür gedacht, dass man blind den Code abschreibt sondern dass man ein Bild dafür bekommt, wie andere Code strukturiert haben.

Bau dir deinen eigenen Code und sorg dafür, dass du von jedem einzelnen Befehl ganz genau weißt, wieso du ihn eingebaut hast. Nimm erstmal ein Blatt Papier und mal dir dein System irgendwie auf ohne konkreten Code zu verwenden und bau danach dein System. Es gibt nichts wichtigeres im Code als eine saubere, übersichtliche Struktur.