Construction Set Skriptthread zum Construction Set

@Gildur
Schon n bischen her, aber vorher kam ich noch nicht dazu...

Hab grad mal das Skript von dir ausprobiert, das wegen der Flammenwaffe und... nun ja, es tut sich nichts. Das Skript das du gepostet hattest war ja das da:

scn Scriptname

Begin OnEquip
PlayMagicShaderVisuals effectAtronachFlame
End

Begin OnUnequip
StopMagicShaderVisuals effectAtronachFlame
End

Wie du sagtest und ich das bisher auch versucht habe, hab ich das Skript erstellt und ner Waffe (gänzlich unverzaubert) zugeordnet. -->


hab ich da wo nen Fehler gemacht?? Langsam glaub ich, ich bin verflucht :huh:

PS: da der Orginal-Post : Orginal-Post

Wieso werden hier manche Probleme ignoriert?

@Carcharoth:
Am Skript liegts nicht, habe den Original Atronach-Skript überprüft, vielleicht funktioniert der nur nicht mit OnEquip, versuch es doch mal zum Zauber zu machen und/oder (wenn dus auf der Waffe haben willst) als Verzauberung zu erstellen und die Waffe damit zu belegen.;)

edit: OnAdd funktioniert auch nicht...
 
Zuletzt bearbeitet:
Das Script als solches ist richtig. Ich würde folgendes empfehlen:
Das Script nicht als "Object-Type" sondern als "MagicEffect-Type" speichern und der Waffe über ein Enchantment hinzufügen. Dann sollte es klappen.
Alternativ kannst du auch noch das Script so ändern: (neu ist das "player.")

scriptname Flammenwaffe

Begin OnEquip
Player.PlayMagicShaderVisuals effectAtronachFlame
end

Begin OnUnEquip
Player.StopMagicShaderVisuals effectAtronachFlame
end
 
Und ein weiteres Mal benötige ich die Hilfe der Meister.

Code:
scn Script1

short NEPtot

Begin OnDeath
set NEPtot + 1
end

Code:
scn script2

short NEPtot

Begin OnDeath
set NEPtot + 1
end

Code:
scn script3

[COLOR="Red"]???[/COLOR] NEPtot

Begin GameMode
if GetNEPtot == 2
blabla
endif
end

Was muss bei dem rot gekennzeichneten hin? :)
 
Hm... ich denke der Script wird so nicht funktionieren, wenn diese "Todes Variable" keine Globale ist, ich vermute mal, du willst einen Death - Zähler machen oder?
 
Ja, allerdings müsstest du davor soweit ich weiß, noch eine Global erstellen, du könntest es aber auch anders machen, wenn du irgendwo ein Item erstellt mist diesem Script:

Code:
scn Name

short Tot

Begin On Death [IdMob1]
Set Tot to tot + 1
end

Begin On Death [IdMob2]
Set Tot to tot + 1
end

Begin On Death [IdMob3]
Set Tot to tot + 1
end

Begin GameMode
if Tot == 3
Tuesonstwas
endif
end

Das sollte so auch funktionieren.
 
  • Like
Reaktionen: elveon
Hi, ich bräuchte ein Script für ein kleines PI an dem ich bastle. Als kurze Erklärung: ich möchte eine Truhe für Diebe machen, diese ist irgendwo in Bravil versteckt. Das script dass ich brauche ist für diese Truhe gedacht. Es soll die truhe erst benutzbar machen wenn der spieler Sicherheit 60 hat.
Die Truhe soll wenn ein gestohlenes Item hineingelegt wird, dieses Item entfernen und ein neues welches dann als nicht gestohlen gezeigt wird an dessen stelle setzen, nach einer gewissen zeitspanne wie zb 1 tag.
 
So, ich habe hier jetzt mal ein längeres Script, aber anscheinend will das nicht so ganz funktionieren...

Es liegt auf dem Basisobjekt des zu bewegenden Objekts, könnte dsa der Fehler sein?

Code:
scn NEPshowdownquestscript

short Tot
short UpDown
float Speed
float Position
short once

Begin OnDeath NEPscherge01ref
Set Tot to tot + 1
end

Begin OnDeath NEPscherge02ref
Set Tot to tot + 1
end

Begin GameMode
if Tot == 2
set Speed to 5 ;wenn du die Zahl hier veränderst, kannst du die Geschwindigkeit ändern
if (UpDown == 0) && ( once == 0 )
     set Position to ( GetPos z - Speed )
endif
NEPmagieeffect.setpos Z Position

if (UpDown == 0) && (NEPmagieeffect.getpos Z <= -192.0000) ;hier die maximale Höhe eingeben
	NEPscherge04ref.StartCombat player
     set UpDown to 1
     set once to 1
endif
endif
end

Danke schonmal im Vorraus!
 
Das Script als solches ist richtig. Ich würde folgendes empfehlen:
Das Script nicht als "Object-Type" sondern als "MagicEffect-Type" speichern und der Waffe über ein Enchantment hinzufügen. Dann sollte es klappen.
Alternativ kannst du auch noch das Script so ändern: (neu ist das "player.")

scriptname Flammenwaffe

Begin OnEquip
Player.PlayMagicShaderVisuals effectAtronachFlame
end

Begin OnUnEquip
Player.StopMagicShaderVisuals effectAtronachFlame
end

Das hab ich bereits gesagt :roll:

aber die Idee mit dem Player hatte ich gestern abend auch

edit: Habe mich nun selber an einem ähnlichen Script versucht und stelle fest das es einwandfrei funktioniert - aber auch nicht aufhört zu funktionieren! Man kann die "Auren" zwar sehen, doch sie verschwinden auch nicht wieder!
 
Zuletzt bearbeitet:
So, ich habe hier jetzt mal ein längeres Script, aber anscheinend will das nicht so ganz funktionieren...

Es liegt auf dem Basisobjekt des zu bewegenden Objekts, könnte dsa der Fehler sein?

Code:
blub

Danke schonmal im Vorraus!

Nö, liegt daran, dass der Parameter beim OnDeath-Block für den Mörder und nicht den Ermordenden bestimmend ist. ;)
Damit das funktioniert musst du das in 3 Scripts aufteilen:

Code:
scn NEPscherge01refScript

Begin OnDeath
Set [Zu Bewegende Ref].Tot to [Zu Bewegende Ref].tot + 1
end

Code:
scn NEPscherge02refScript

Begin OnDeath
Set [Zu Bewegende Ref].Tot to [Zu Bewegende Ref].tot + 1
end

Falls beide das gleiche Basisobjekt haben reicht natürlich ein Script. Machen ja beide das selbe. ;)

Code:
scn NEPshowdownquestscript

short Tot
short UpDown
float Speed
float Position
short once

Begin GameMode
if Tot == 2
set Speed to 5 ;wenn du die Zahl hier veränderst, kannst du die Geschwindigkeit ändern
if (UpDown == 0) && ( once == 0 )
     set Position to ( GetPos z - Speed )
endif
NEPmagieeffect.setpos Z Position

if (UpDown == 0) && (NEPmagieeffect.getpos Z <= -192.0000) ;hier die maximale Höhe eingeben
	NEPscherge04ref.StartCombat player
     set UpDown to 1
     set once to 1
endif
endif
end
 
  • Like
Reaktionen: CountCuthalion
Jetzt komme ich mit einer einfachen Frage, die mich aber dennoch verzweifelt:
Ich will machen, dass beim Lesen eines Buches (also wenn man es aufschlägt) der Quest aktualisiert wird. Ich habe es mit folgendem Script versucht:
Code:
scn 00Buchscript

begin OnActivate

if ( GetStage Quest >= 20 ) && ( IsActionRef Player == 1 )
Activate
setstage Quest 25
endif

end
 
Das hab ich bereits gesagt :roll:

aber die Idee mit dem Player hatte ich gestern abend auch

edit: Habe mich nun selber an einem ähnlichen Script versucht und stelle fest das es einwandfrei funktioniert - aber auch nicht aufhört zu funktionieren! Man kann die "Auren" zwar sehen, doch sie verschwinden auch nicht wieder!

Hilfe!:cry:
 
@DannyBoy: Wie sieht das Script jetzt aus? Schreibs nochmal hier rein und was du für Schritte gemacht hast.

@Meister: Was passiert denn bis jetzt? Garnichts? Das Buch wird nicht aufgeschlagen, aber Quest aktualisiert? Buch wird aufgeschlagen, aber Quest nicht aktualisiert?
 
@DannyBoy: Wie sieht das Script jetzt aus? Schreibs nochmal hier rein und was du für Schritte gemacht hast.
Code:
scn AAAPlayerEffectShader

short shader

begin OnEquip
    MessageBox "Welche Aura wünscht ihr?", "Feuer", "Frost", "Schock", "Geist"
end

begin gamemode
    set shader to GetButtonPressed
        if shader == 0
            player.PlayMagicShaderVisuals effectAtronachFlame
        elseif shader == 1
            player.PlayMagicShaderVisuals effectAtronachFrost
        elseif shader == 2
            player.PlayMagicShaderVisuals effectAtronachStorm
        elseif shader == 3
            player.PlayMagicShaderVisuals GhostEffect
    endif
end

begin OnUnequip
    MessageBox "Welche Aura soll verschwinden?", "Feuer", "Frost", "Schock", "Geist"
end

begin gamemode
    set shader to GetButtonPressed
        if shader == 0
        player.StopMagicShaderVisuals effectAtronachFlame
        elseif shader == 1
        player.StopMagicShaderVisuals effectAtronachFrost
        elseif shader == 2
        player.StopMagicShaderVisuals effectAtronachStorm
        elseif shader == 3
        player.StopMagicShaderVisuals GhostEffect
    endif
end

Was ist daran falsch? bitte hilfe! ich kriege die Auren durch das Script nicht mehr weg.
 
@Meister: Probiers mal so:


Code:
scn 00Buchscript

begin OnActivate Player

if GetStage Quest >= 20 
setstage Quest 25
endif
activate

end


@DannyBoy: Geht es vielleicht, wenn du bei UnEquip die Abfrage weglässt und nur alle "player.Stop..." auflistest?
 
Ich habe gerade nochmal nachgeguckt und wenn ich das richtig gesehen habe, dann ist GetStage nicht der richtige Befehl. Damit wird die höchste Stage des Quests abgefragt.
Was du brauchst, ist GetStageDone