Das mit dem STATE_SLEEPING muss ich D.Klingauf zustimmen. Jedem STATE_? ist eine Zahl zugeordnet. Siehe auch:
http://iesdp.gibberlings3.net/scripting/ids/bg2/state.htm
Jetzt habe ich die AERIEJ.d auch mal näher angeschaut. Deine Datei ist schon soweit in Ordnung, aber ich würde keine REPLACE Befehle verwenden. Falls nämlich ein anderer Mod irgendwas ingetragen hat, verschwindet dieser wieder und genau diese Probleme wollen wir ja vermeiden.
Hier ist meine <a href="http://weigo.gmxhome.de/AERIEJ.d">AERIEJ.d</a>
Die gleichen ADD_STATE_TRIGGER habe ich soweit zusammengefasst.
STATE 10 habe ich auch zusammengefasst und habe dein REPLACE ersetzt. Hier müssen wir noch schauen, ob das JOURNAL oder SOLVED_JOURNAL bei STATE 161 heißen soll. Ich meine, dass es SOLVED_JOURNAL heißen müsste, da man anstatt den Auftrag zu erledigen, alle Svirfnebli umbringt.
<font face="Courier">
EXTEND_TOP ~AERIEJ~ 185 #4
IF ~IsValidForPartyDialog("Nalia")
Global("NaliaRomanceActive","GLOBAL",2)~ THEN EXTERN ~PLAYER1~ 48
END
</font>
funktioniert so, dass im State 185 eine Transition an fünfter Position eingefügt wird. (Fängt immer bei 0 an, darum 4).
Der Unterschied zu APPEND ist der, dass bei EXTEND eine <u>neue</u> Transition eingefügt wird, wo hingegen bei APPEND wirden ganze States am Ende der .dlg Datei angehängt.
Ich vermute, WeiDU wird es automatisch weiternummerieren, aber ich habe es noch nicht probiert.
Das schwierigste war bei STATE 185 den xternen Link von Anomen von 48 auf 47 zu setzen. Mit dem Dialog File Format bin ich hier nicht weitergekommen. Ich habe es nur mit dem .tp2 Format geschaft. Auch hier ist es das Problem, eine Lösung zu finden, die so gut wie alle Probleme von Kompatibilität aus dem Wege geht. Hier ist der Code:
<font face="Courier">
BACKUP ~NaliaRom/backup~
AUTHOR ~m.kracht@gmx.de~
BEGIN ~Nalia-Romanze~
COPY_EXISTING ~Ar1009.are~ ~override~ //Area Skrip wird ersetzt
WRITE_ASCII 0x0094 ~Ar1009~
COPY_EXISTING ~AERIEJ.DLG~ ~override~ //Externer Link 47
READ_SHORT 0x08 ~#states~
READ_SHORT 0x0c ~state_offset~
READ_SHORT 0x14 ~trans_offset~
FOR( cnt=0; cnt<"%#states%"; cnt=cnt+1 ) BEGIN
READ_SHORT ("state_offset" + "cnt" * 16 + 4) ~first_trans~
READ_SHORT ("state_offset" + "cnt" * 16 + 8) ~num_trans~
FOR ( cnt1=0; cnt1<"%num_trans%"; cnt1=cnt1+1 ) BEGIN
READ_ASCII ("trans_offset" + ("cnt1" + "first_trans") * 32 + 20) ~dlg_name~
READ_SHORT ("trans_offset" + ("cnt1" + "first_trans") * 32 + 28) ~transnumber~
PATCH_IF ( (("%dlg_name%" STRING_COMPARE_CASE "PLAYER1")=0) AND (("%transnumber%" STRING_COMPARE_CASE "48")=0)) BEGIN
WRITE_SHORT ("trans_offset" + ("cnt1" + "first_trans") * 32 + 28) ~47~
END
END
END
COMPILE ~AERIEJ.D~
</font>