Was mache ich hier nur falsch?
Eine Notiz startet eine Quest. Die Quest weist auf ein Buch hin, Durch ein Quest Target kommt man zum Buch hier der Script: ( Info: Die Namen der quests hab ich mir jetzt nur so ausgedacht, natürlich werden sie im CS dann richtig eingefügt und bearbeitet )
scn 00qutest
Short Doonce
Begin OnActivate
if ( IsActionRef Player == 1 ) && ( Doonce == 0 )
SetStage testquest 10
Set Doonce to 1
endif
Activate
end
So, das funzt auch so wies soll! Wie schon gesagt durch nen questmarker kommt man dann zu einem buch. Das funzt auch. Zum nicht funzenden Teil. Das Buch ist im Besitz von jemandem, dieses Buch sollte beim aufheben die queststage 20 aktivieren, unabhängig vom weg wie man das buch erhält ( Mord, Diebstahl.....).
Ich habe schonmal gemoddet, war sogar schon dabei nif files zu machen. Hab aber dann ca 1Jahr Pause gemacht und mit Scripten hab ich mich nur sehr wenig auseinandergesetzt. So hier....
scn 00qutest
Short Doonce
Begin OnAdd
if ( IsActionRef Player == 1 ) && ( Doonce == 0 )
SetStage testquest 20
Set Doonce to 1
endif <---?
Activate
end
1. Wieso funzt das nicht=?
2. Kann mir wer den Pfeil erklären, also den Befehl endif und else? BZW kann mir wer den kompletten script erklären.
scriptname NameSkript
short(variable) doonce ( Tu Einmal ) ?
Begin OnAdd ( Beginne wenn geaddet wird )
If -Wenn-? ( IsActionRef Player == 1 ???? ) && -und- ( doonce == 0 , die "Tueinmal" Variable" ist nun auf 0, wenn sie auf 1 gesetzt wird dann wird der script nicht mehr ausgeführt, also dann wird die quest nicht mehr geaddet weil diese Variable den script praktisch sperrt ist das so ca richtig?)
setstage quest 20 ( Setzt die erstellte quest auf die stage 20 damit es eigentlich weiter geht, da mein script für das buch nicht funzt setzt er es auch nicht auf stage 20)
set doonce to 1 , setzt die short Variable doonce auf 1 damit der quest nicht nocheinmal geaddet werden kann.)
ich habs mal ohne endif versucht, dann spuckt cs aus das kein endif oder else befehl gefunden werden kann.
.......
Nun zum rest vielleicht kann mir wer meinen fehler ausdeutschen und mir den script genau erklären bzw mir bestätigen das mein Erklärungsversuch richtig ist
Danke im Vorraus
Euer Fluffy
Eine Notiz startet eine Quest. Die Quest weist auf ein Buch hin, Durch ein Quest Target kommt man zum Buch hier der Script: ( Info: Die Namen der quests hab ich mir jetzt nur so ausgedacht, natürlich werden sie im CS dann richtig eingefügt und bearbeitet )
scn 00qutest
Short Doonce
Begin OnActivate
if ( IsActionRef Player == 1 ) && ( Doonce == 0 )
SetStage testquest 10
Set Doonce to 1
endif
Activate
end
So, das funzt auch so wies soll! Wie schon gesagt durch nen questmarker kommt man dann zu einem buch. Das funzt auch. Zum nicht funzenden Teil. Das Buch ist im Besitz von jemandem, dieses Buch sollte beim aufheben die queststage 20 aktivieren, unabhängig vom weg wie man das buch erhält ( Mord, Diebstahl.....).
Ich habe schonmal gemoddet, war sogar schon dabei nif files zu machen. Hab aber dann ca 1Jahr Pause gemacht und mit Scripten hab ich mich nur sehr wenig auseinandergesetzt. So hier....
scn 00qutest
Short Doonce
Begin OnAdd
if ( IsActionRef Player == 1 ) && ( Doonce == 0 )
SetStage testquest 20
Set Doonce to 1
endif <---?
Activate
end
1. Wieso funzt das nicht=?
2. Kann mir wer den Pfeil erklären, also den Befehl endif und else? BZW kann mir wer den kompletten script erklären.
scriptname NameSkript
short(variable) doonce ( Tu Einmal ) ?
Begin OnAdd ( Beginne wenn geaddet wird )
If -Wenn-? ( IsActionRef Player == 1 ???? ) && -und- ( doonce == 0 , die "Tueinmal" Variable" ist nun auf 0, wenn sie auf 1 gesetzt wird dann wird der script nicht mehr ausgeführt, also dann wird die quest nicht mehr geaddet weil diese Variable den script praktisch sperrt ist das so ca richtig?)
setstage quest 20 ( Setzt die erstellte quest auf die stage 20 damit es eigentlich weiter geht, da mein script für das buch nicht funzt setzt er es auch nicht auf stage 20)
set doonce to 1 , setzt die short Variable doonce auf 1 damit der quest nicht nocheinmal geaddet werden kann.)
ich habs mal ohne endif versucht, dann spuckt cs aus das kein endif oder else befehl gefunden werden kann.
.......
Nun zum rest vielleicht kann mir wer meinen fehler ausdeutschen und mir den script genau erklären bzw mir bestätigen das mein Erklärungsversuch richtig ist
Danke im Vorraus
Euer Fluffy