Autor |
|
AKsEmP
Scout
Dabei seit: Juni 2004
Geschlecht:
Herkunft: Oberfranken
Beiträge: 9
|
|
der NPC rührt sich einfach nicht vom Fleck ..
begin AK_AlfhedilMajorScript
short DO
float timer
float timeout
if ( DO == 0 )
if ( GetJournalIndex "AK_Journal_Spion" == 18 )
if ( timer < 2 )
set timer to ( timer + GetSecondsPassed )
else
Messagebox "Folge mir und versuche nicht zu fliehen. Ich würde dich ungern töten lassen.","OK"
set DO to 1
endif
endif
endif
if ( DO == 1 )
AiEscort Player, 0, 101026, 111658, 207
set DO to 2
elseif ( DO == 2 )
if ( GetAIPackageDone == 2 )
set DO to 3
endif
elseif ( DO == 3 )
AiEscort Player, 0, 100990, 112007, 142
set DO to 4
;[...]
endif
; [...]
end
mit AITravel statt AiEscort funzt alles
irgend ne Idee wo der Fehler liegt ?
( also die Entfernung zum ersten Punkt ist nicht zu groß )
__________________ mfg AKsEmP
Forum : www.aksemp.net.tc
Homepage : www.aksemp.de.vu
E-Mail : aksemp@freenet.de
ICQ : 148980648
"Computers and air-conditioners are the same - both stop working when you open windows"
Dieser Beitrag wurde von AKsEmP am 05.07.2004, 21:51 Uhr editiert.
|
|
05.07.2004, 21:49 |
|
ReneMiner
Crusader
Dabei seit: Januar 2004
Geschlecht: keine Angabe
Herkunft:
Beiträge: 260
|
|
if ( DO == 1 )
AiEscort Player, 0, 101026, 111658, 207
set DO to 2
--------<----<---- hier return
elseif ( DO == 2 )
if ( GetAIPackageDone == !!! )<<<- hier gibts nur 0 und 1
; da würde ich mal GetCurrentAiPackage != 4 (Escort?)
set DO to 3
--------<----<---- hier return
endif
elseif ( DO == 3 )
AiEscort Player, 0, 100990, 112007, 142
set DO to 4
--------<----<---- hier return
;[...]
__________________ Mess them Meshes up
|
|
06.07.2004, 02:13 |
|
AKsEmP
Scout
Dabei seit: Juni 2004
Geschlecht:
Herkunft: Oberfranken
Beiträge: 9
|
|
uups thx
hab GetAiPackageDone mit getcurrentaipackage verwechselt ( da steht nämlich die 2 für escort )
aber warum return ??
wenn ich elseif kontruktionen mach wird pro frame doch eh nur 1 davon ausgeführt oder ?
Außerdem soll der Code nach den elseifs noch ausgeführt werden
EDIT : Der NPC bewegt sich immer noch nicht. Nach der MsgBox bleibt er einfach stehen.
__________________ mfg AKsEmP
Forum : www.aksemp.net.tc
Homepage : www.aksemp.de.vu
E-Mail : aksemp@freenet.de
ICQ : 148980648
"Computers and air-conditioners are the same - both stop working when you open windows"
Dieser Beitrag wurde von AKsEmP am 06.07.2004, 21:10 Uhr editiert.
|
|
06.07.2004, 18:35 |
|
ReneMiner
Crusader
Dabei seit: Januar 2004
Geschlecht: keine Angabe
Herkunft:
Beiträge: 260
|
|
AiEscort Player, Wofür ist diese 0 ?, 100990, 112007, 142
__________________ Mess them Meshes up
|
|
07.07.2004, 02:36 |
|
AKsEmP
Scout
Dabei seit: Juni 2004
Geschlecht:
Herkunft: Oberfranken
Beiträge: 9
|
|
Zitat: AIEscort, "Actor ID", duration, x, y, z, [reset]
von MSFD6
bei 0 sollte es eigentlich unbegrente Dauer sein ( stand irgendwo in Scripting for Dummies 6 )
und ich hab auch schon andere werte dafür eingesetzt.
__________________ mfg AKsEmP
Forum : www.aksemp.net.tc
Homepage : www.aksemp.de.vu
E-Mail : aksemp@freenet.de
ICQ : 148980648
"Computers and air-conditioners are the same - both stop working when you open windows"
|
|
07.07.2004, 17:22 |
|
ReneMiner
Crusader
Dabei seit: Januar 2004
Geschlecht: keine Angabe
Herkunft:
Beiträge: 260
|
|
die return sind dafür da das er nicht "durchrauscht" - wie es auch bei CellChanged & MenuMode manchmal oder PositionCell immer passiert - das Scripts in ihrer Ausführung unterbrochen werden und das else vor dem nächsten elseif ignoriert wird und der eigentlich abgearbeitete if-Block mit der nächsten treffenden Bedingung fortgesetzt wird..
Das passiert auch bei den AiTravels & Escorts wenn der Punkt erreicht oder niocht erreichbar ist.
Nichtdestotrotz noch die Frage hast Du es mal mit einer ganz geringen entfernung probiert, hat die Zelle ein Pathgrid und dreht sich der NPC überhaup um um zu sehen ob der Spieler näherkommt?
__________________ Mess them Meshes up
Dieser Beitrag wurde von ReneMiner am 08.07.2004, 02:51 Uhr editiert.
|
|
08.07.2004, 02:50 |
|
AKsEmP
Scout
Dabei seit: Juni 2004
Geschlecht:
Herkunft: Oberfranken
Beiträge: 9
|
|
die Zelle is ne standartzelle ( eine von Vos )
die Entfernung ist bereits klein
und der npc dreht sich nicht zu mir
wenn ich den script mit Aitravel mach funktioniert er ja, d.h an den fehlenden returns dürfte es nicht liegen
__________________ mfg AKsEmP
Forum : www.aksemp.net.tc
Homepage : www.aksemp.de.vu
E-Mail : aksemp@freenet.de
ICQ : 148980648
"Computers and air-conditioners are the same - both stop working when you open windows"
|
|
08.07.2004, 22:42 |
|
Garak
Admin
Dabei seit: Juli 2002
Geschlecht:
Herkunft: Cardassia Prime
Beiträge: 9256
|
|
versuch mal, ob der NPC den player wirklich "sieht" - also ob GetLOS und/oder GetDetected meldung geben.
@rene: das mit dem befehlsabhängigen durchrauschen ist mir neu - langsam glaub ich echt an "bonusfehler" in der DV. Oder war das bei sehr grossen if-Konstrukten? das übliche problem mit dem Sprungindex?
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen
|
|
09.07.2004, 05:52 |
|
ReneMiner
Crusader
Dabei seit: Januar 2004
Geschlecht: keine Angabe
Herkunft:
Beiträge: 260
|
|
@Garak Beispiel [allerdings offTopic]
ich habe in Gnaar Mok ein Fass am Hafen welches eine Globale short ZonenTrigger auf 3 setzt wenn der Spieler näher als 500 Punkte von dem Fass ist. Jeder Rudersklave weiss dadurch das er hier von Gnaar Mok nach Hla Bitter "rudern" soll.
In Hla Bitter an der Pier steht ein Fass welches diese globale auf 4 setzt.
im RowboatScript steht ein gaaanz kurzer if-Block:
begin RowBoatScript
if ( menumode == 0 )
return
endif
if ( zonetrigger == 0 )
; kein Wert da ( wird mit timer 1* die Sekunde gesetzt )
...return
elseif ( zonetrigger == 1 )
...player-> position 1 2 3 4 "Tel Fyr"
elseif ( zonetrigger == 2 )
...player position 1 2 3 4 "Tel Aruhn"
elseif ( zonetrigger == 3 )
...player-> positon 1 2 3 4 "Hla Bitter"
elseif ( zonetrigger == 4 )
...player-> position 1 2 3 4 "Gnaar Mok"
endif
stopscript rowboatscript
end
wenn ich so in Tel Ahrun gen Tel Fyr losrudere komme ich stante pede nach zweimal laden in Tel Aruhn wieder an
genauso von gnaar mok richtung hla bitter,
natürlich hab ich das umgestrickt und merk mir nun nochmal zusätztlich wo's losging - aber so war's
__________________ Mess them Meshes up
|
|
10.07.2004, 03:03 |
|
Garak
Admin
Dabei seit: Juli 2002
Geschlecht:
Herkunft: Cardassia Prime
Beiträge: 9256
|
|
bist Du sicher, dass da nicht einfach die Scriptinstanz des zielhafens wieder zugeschlagen hat? Da ich selber grade viel mit Positioncell arbeite kann ich zumindest das beschriebene problem auf Teleportation des Players beschränken, bei npc's passiert soweit ich das sehe nichts in der art.
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen
|
|
10.07.2004, 14:07 |
|
AKsEmP
Scout
Dabei seit: Juni 2004
Geschlecht:
Herkunft: Oberfranken
Beiträge: 9
|
|
ich komm jetzt mal wieder zum Topic zurück ^^
habe das Problem gelöst. Es war am fehlenden Pathgrid gelegen. Komisch, dass AiTravel keins braucht, AiEscort aber schon. Hab eigentlich gedacht jede Standartzelle verfügt bereits über eins, aber naja jetzt weiß ichs besser
Vielen Dank für die Hilfe
(jetzt könnt ihr mit eurem OffTopic Zeug weitermachen ^^ )
__________________ mfg AKsEmP
Forum : www.aksemp.net.tc
Homepage : www.aksemp.de.vu
E-Mail : aksemp@freenet.de
ICQ : 148980648
"Computers and air-conditioners are the same - both stop working when you open windows"
|
|
10.07.2004, 18:57 |
|
ReneMiner
Crusader
Dabei seit: Januar 2004
Geschlecht: keine Angabe
Herkunft:
Beiträge: 260
|
|
@Garak : Nein, das Script wird aus dem DIalog-Result heraus von einem Sklaven gestartet der sich dabei sofort goodbye-verabschiedet.
Es "empfängt" nur den Trigger-Wert im Zielhafen und dann gehts sofort zurück - das Script kann-darf-sollte eigentlich nur einen einzigen Durchlauf machen. Eigentlich
__________________ Mess them Meshes up
|
|
10.07.2004, 23:21 |
|
|