Construction Set Skriptthread zum Construction Set

:eek:
Das kann eigentlich nicht sein...
Also, nochmal ganz von Anfang... Du veränderst die ObjectID eines StandartHebels, kopierst dessen Script und fügst in das kopierte Script mit verändertem Namen meine Zeilen ein. Und dann erscheint immernoch diese Fehlermeldung?

Für den Fall, dass das nicht zutrifft, versuche es nochmal so, wie beschrieben (für den Fall, dass du das Originalscript nicht mehr hast, bitte PN an mich, ich schicke es dir zu)...


Sry für die Umstände, die du wegen meinen ungenauen Beschreibungen hast...
 
Zuletzt bearbeitet:
okay die Fehlermeldung ist weg, aber mit der Uhrzeit stimmt was nicht. Sollte ja abends verriegelt sein, dass man das tor nicht aufbekommt. aber das tor ist immer passierbar, und durch den schalter kann ich es auch immer öffnen und schließen, genauso als ich das tor anklicken würde
 
So, Friedolin, ich hab mir jetzt das ganze Script nochmal gründlich angeschaut und die Änderungen eingebaut. Konnte es zwar leider nicht testen, aber Fehlermeldungen werden immerhin keine mehr produziert :)

Das Script jetzt so wie es ist (abgesehen vom Namen, den du natürlich nach Belieben ändern kannst) auf die Hebel mit der veränderten ID, deren ParentRef die Tore sind:

Code:
scn ArcGatesNightClosingSCRIPT

short next
short busy
short opened
short impossible
float timer
ref MyParent
ref MySelf

Begin OnActivate
    if (busy == 0) && (impossible == 0)
        set next to 1
        if (opened == 0)
            playgroup forward 0
            set opened to 1
        else
            playgroup backward 0
            set opened to 0
        endif
        set timer to 0.5
        set busy to 1
    elseif (busy == 0) && (impossible == 1)
        message "Ihr könnt die Tore nachts nicht öffnen. Wartet bis zum Morgen!"
    endif
end

Begin GameMode

    if (timer <= 0) && (next == 1)
        set MyParent to GetParentRef
        set MySelf to GetSelf
        MyParent.activate MySelf 1
        set next to 0
    endif

    if (busy == 1) && (IsAnimPlaying) == 0
        set busy to 0
    endif

    if (timer > 0)
        set timer to (timer - GetSecondsPassed)
    endif

    if (opened == 1) && (GameHour == 20) && (impossible == 0)
        set next to 1
        playgroup backward 0
        set opened to 0
        set timer to 0.5
        set busy to 1
        set impossible to 1
    elseif (opened == 0) && (GameHour == 20) && (impossible == 0)
        set impossible to 1
    elseif (opened == 0) && (GameHour == 8)
        set next to 1
        playgroup forward 0
        set opened to 1
        set timer to 0.5
        set busy to 1
        set impossible to 0

    endif

end


Begin OnReset
    Reset3DState
    set opened to 0
    set next to 0
    set busy to 0
end
Sollte jetzt so funktionieren, dass man die Tore tagsüber ganz normal öffnen und schließen kann, abends um 20 Uhr aber alle Hebel mit diesem Script automatisch betätigt werden, falls das Tor noch offen steht, und anschließend sozusagen deaktiviert wird, bis sich die Tore morgens um 8 uhr wieder von selbst öffnen und dann auch wieder manuell bedient werden können.

Ich hoffe, das funktioniert jetzt endlich, nochmal sorry für die Umstände :oops:
 
Zuletzt bearbeitet:
Ist nicht so schlimm. Bin gerade sowieso dabei, meine Mod zu verbessern^^.
Daher habe ich Zeit^^

Kann die Tore leider immer noch Abends öffnen und der Schalter hat die selbe funktion. =(
 
Zuletzt bearbeitet:
Ich habe morts Probleme mit ner Quest.
Ich habe dieses Script auf ein Buch gelegt.

scn AABuchskript

short doonce

Begin OnActivate
if doonce = 0
setstage Meine Quest 10
set doonce to 1
endif
end

Doch der Quest will nicht starten.

Dann hab ich noch das Skript draufgelegt

Scriptname 00Notiz1Script

short Doonce

begin OnActivate

if ( IsActionRef Player == 1 ) && ( Doonce == 0 )
SetStage Meine Quest 10
set Doonce to 1
endif
end

Aber so funzts auch net.
Kann mir da jemand helfen??:huh::huh:
 
Ich glaube, de rGrund ist einfach, dass eine QuestID keine Leerzeichen enthalten kann ;)
Wenn du also als ID Meine Quest eingetippt hast, wird das Leerzeichen ignoriert und ist im Endeffekt nur MeineQuest.
(Ist so auch bei jeder anderen ID)
 
Nachdem mir in meinem Thread keiner helfen konnte versuche ich nun hier mein Glück ^^

Also ich versuche schon seit einigen Tage einen/mehrere Doppelgänger zu erstellen. Allerdings passiert bei mir recht wenig -.- Ich habe mir schon aus anderen Doppelgänger Mods die Scripts angeschaut und versucht nach meinen Wünschen abzuändern, allerdings passierte dann nicht viel.

Ich wollte den Script aus diesem Mod abändern. So, dass ich auswählen kann wie viele Doppelgänger ich erstellen will. Die Doppelgänger sollen mir hinterherlaufen und mich beschützen. So wie eben die fünfte Variante in dem Mod. Ich hoffe mir kann da jemand helfen ^^

Original:
scn Dopplegangerepicscript

ref clone1
ref clone2
ref clone3
ref clone4
ref clone5
short clonehealth1
short clonehealth2
short clonehealth3
short clonehealth4
short clonehealth5
short doonce1
short doonce2
short doonce3
short doonce4
short doonce5
short StartPage
short choice
short clone5exists

Begin ScriptEffectStart
set StartPage to 1
set doOnce1 to 0
set doOnce2 to 0
set doOnce3 to 0
set doOnce4 to 0
set doOnce5 to 0
End


Begin GameMode

if (clone1.GetDead == 1)
clone1.Disable
endif
if (clone2.GetDead == 1)
clone2.Disable
endif
if (clone3.GetDead == 1)
clone3.Disable
endif
if (clone4.GetDead == 1)
clone4.Disable
endif
if (clone5.GetDead == 1)
clone5.Disable
set clone5exists to 0
endif

if (StartPage == 1)
MessageBox, "Welche Art Doppelgänger wünscht Ihr zu beschwören?","Doppelgänger (normal)","Doppelgänger (stark)","Doppelgänger (Elite)","Doppelgänger (episch)","verbündeter Doppelgänger"
set StartPage to 2
return
elseif (StartPage == 2)
set choice to GetButtonPressed
if (choice == -1)
return

elseif (choice == 0)
set clonehealth1 to Player.GetBaseActorValue health * 1
set clone1 to player.CreateFullActorCopy
clone1.DuplicateNPCStats player
clone1.SetActorValue health clonehealth1
set StartPage to 0

elseif (choice == 1)
set clonehealth2 to Player.GetBaseActorValue health * 2.5
set clone2 to player.CreateFullActorCopy
clone2.DuplicateNPCStats player
clone2.SetActorValue health clonehealth2
set StartPage to 0

elseif (choice == 2)
set clonehealth3 to Player.GetBaseActorValue health * 5
set clone3 to player.CreateFullActorCopy
clone3.DuplicateNPCStats player
clone3.SetActorValue health clonehealth3
set StartPage to 0

elseif (choice == 3)
set clonehealth4 to Player.GetBaseActorValue health * 7.5
set clone4 to player.CreateFullActorCopy
clone4.DuplicateNPCStats player
clone4.SetActorValue health clonehealth4
set StartPage to 0

elseif (choice == 4)
set clonehealth5 to Player.GetBaseActorValue health * 1.25
set clone5 to player.CreateFullActorCopy
clone5.DuplicateNPCStats player
clone5.SetActorValue health clonehealth5
set StartPage to 0
endif
endif

if (doonce1 == 0) && (choice == 0)
clone1.StartCombat player
clone1.AddItem DoppleGangerPotion,1
clone1.SetActorFullName "Doppelgänger"
clone1.SetFactionRank DopplegangerFaction 0
clone1.SetFactionRank FightersGuild -1
clone1.SetFactionRank MagesGuild -1
clone1.SetFactionRank ThievesGuild -1
clone1.SetFactionRank ICWaterfrontResident -1
clone1.SetFactionRank DarkBrotherhood -1
clone1.ModActorValue Aggression 100
clone1.EquipItem DoppleGangerPotion
set doonce1 to 1
set Choice to -1
endif
if (doonce2 == 0) && (choice == 1)
clone2.StartCombat player
clone2.AddItem DoppleGangerPotion,1
clone2.SetActorFullName "Doppelgänger (stark)"
clone2.SetFactionRank DopplegangerFaction 0
clone2.SetFactionRank FightersGuild -1
clone2.SetFactionRank MagesGuild -1
clone2.SetFactionRank ThievesGuild -1
clone2.SetFactionRank ICWaterfrontResident -1
clone2.SetFactionRank DarkBrotherhood -1
clone2.ModActorValue Aggression 100
clone2.EquipItem DoppleGangerPotion
set doonce2 to 1
set Choice to -1
endif
if (doonce3 == 0) && (choice == 2)
clone3.StartCombat player
clone3.AddItem DoppleGangerPotion,1
clone3.SetActorFullName "Doppelgänger (Elite)"
clone3.SetFactionRank DopplegangerFaction 0
clone3.SetFactionRank FightersGuild -1
clone3.SetFactionRank MagesGuild -1
clone3.SetFactionRank ThievesGuild -1
clone3.SetFactionRank ICWaterfrontResident -1
clone3.SetFactionRank DarkBrotherhood -1
clone3.ModActorValue Aggression 100
clone3.EquipItem DoppleGangerPotion
set doonce3 to 1
set Choice to -1
endif
if (doonce4 == 0) && (choice == 3)
clone4.StartCombat player
clone4.AddItem DoppleGangerPotion,1
clone4.SetActorFullName "Doppelgänger (episch)"
clone4.SetFactionRank DopplegangerFaction 0
clone4.SetFactionRank FightersGuild -1
clone4.SetFactionRank MagesGuild -1
clone4.SetFactionRank ThievesGuild -1
clone4.SetFactionRank ICWaterfrontResident -1
clone4.SetFactionRank DarkBrotherhood -1
clone4.ModActorValue Aggression 100
clone4.EquipItem DoppleGangerPotion
set doonce4 to 1
set Choice to -1
endif
if (doonce5 == 0) && (choice == 4)
clone5.SetActorFullName "verbünderter Doppelgänger"
clone5.AddItem DoppleGangerPotion,1
clone5.ModActorValue Aggression 30
clone5.ModActorValue Confidence 90
clone5.ModActorValue Energy 90
clone5.ModActorValue Responsibility 50
clone5.AddScriptPackage DoppleGangerFollow
SetIgnoreFriendlyHits Clone5
clone5.EquipItem DoppleGangerPotion
set doonce5 to 1
set Choice to -1
set clone5exists to 1
endif

if (Doonce5 == 1) && (clone5exists == 1)
if Player.IsSneaking == 1
Clone5.SetForceSneak 1
elseif Player.IsSneaking == 0
Clone5.SetForceSneak 0
endif
if (Clone5.GetDisposition player != 100)
Clone5.ModDisposition player 100
endif
endif

End

Begin ScriptEffectFinish
End

Bei dem wollte ich halt den Teil für den Verbündeten rausnehmen und für die anderen umschreiben. Hat aber nicht geklappt ^^



Meine Neues:
scn aaDoppelgaengerScript

ref clone1
ref clone2
ref clone3
ref clone4
ref clone5
short clonehealth1
short clonehealth2
short clonehealth3
short clonehealth4
short clonehealth5
short doonce1
short doonce2
short doonce3
short doonce4
short doonce5
short StartPage
short choice
short clone1exists
short clone2exists
short clone3exists
short clone4exists
short clone5exists

Begin ScriptEffectStart
set StartPage to 1
set doOnce1 to 0
set doOnce2 to 0
set doOnce3 to 0
set doOnce4 to 0
set doOnce5 to 0
End


Begin GameMode

if (clone1.GetDead == 1)
clone1.Disable
set clone1exists to 0
endif
if (clone2.GetDead == 1)
clone2.Disable
set clone2exists to 0
endif
if (clone3.GetDead == 1)
clone3.Disable
set clone3exists to 0
endif
if (clone4.GetDead == 1)
clone4.Disable
set clone4exists to 0
endif
if (clone5.GetDead == 1)
clone5.Disable
set clone5exists to 0
endif

if (StartPage == 1)
MessageBox, "Wieviele Doppelgänger wünscht Ihr zu beschwören?","Ein Doppelgänger","Zwei Doppelgänger","Drei Doppelgänger","Vier Doppelgänger","Fünf Doppelgänger"
set StartPage to 2
return
elseif (StartPage == 2)
set choice to GetButtonPressed
if (choice == -1)
return

elseif (choice == 0)
set clonehealth1 to Player.GetBaseActorValue health * 1
set clone1 to player.CreateFullActorCopy
clone1.DuplicateNPCStats player
clone1.SetActorValue health clonehealth1
set StartPage to 0

elseif (choice == 1)
set clonehealth1 to Player.GetBaseActorValue health * 1
set clone1 to player.CreateFullActorCopy
clone1.DuplicateNPCStats player
clone1.SetActorValue health clonehealth1
set clonehealth2 to Player.GetBaseActorValue health * 1
set clone2 to player.CreateFullActorCopy
clone2.DuplicateNPCStats player
clone2.SetActorValue health clonehealth2
set StartPage to 0

elseif (choice == 2)
set clonehealth1 to Player.GetBaseActorValue health * 1
set clone1 to player.CreateFullActorCopy
clone1.DuplicateNPCStats player
clone1.SetActorValue health clonehealth1
set clonehealth2 to Player.GetBaseActorValue health * 1
set clone2 to player.CreateFullActorCopy
clone2.DuplicateNPCStats player
clone2.SetActorValue health clonehealth2
set clonehealth3 to Player.GetBaseActorValue health * 1
set clone3 to player.CreateFullActorCopy
clone3.DuplicateNPCStats player
clone3.SetActorValue health clonehealth3
set StartPage to 0

elseif (choice == 3)
set clonehealth1 to Player.GetBaseActorValue health * 1
set clone1 to player.CreateFullActorCopy
clone1.DuplicateNPCStats player
clone1.SetActorValue health clonehealth1
set clonehealth2 to Player.GetBaseActorValue health * 1
set clone2 to player.CreateFullActorCopy
clone2.DuplicateNPCStats player
clone2.SetActorValue health clonehealth2
set clonehealth3 to Player.GetBaseActorValue health * 1
set clone3 to player.CreateFullActorCopy
clone3.DuplicateNPCStats player
clone3.SetActorValue health clonehealth3
set clonehealth4 to Player.GetBaseActorValue health * 1
set clone4 to player.CreateFullActorCopy
clone4.DuplicateNPCStats player
clone4.SetActorValue health clonehealth4
set StartPage to 0

elseif (choice == 4)
set clonehealth1 to Player.GetBaseActorValue health * 1
set clone1 to player.CreateFullActorCopy
clone1.DuplicateNPCStats player
clone1.SetActorValue health clonehealth1
set clonehealth2 to Player.GetBaseActorValue health * 1
set clone2 to player.CreateFullActorCopy
clone2.DuplicateNPCStats player
clone2.SetActorValue health clonehealth2
set clonehealth3 to Player.GetBaseActorValue health * 1
set clone3 to player.CreateFullActorCopy
clone3.DuplicateNPCStats player
clone3.SetActorValue health clonehealth3
set clonehealth4 to Player.GetBaseActorValue health * 1
set clone4 to player.CreateFullActorCopy
clone4.DuplicateNPCStats player
clone4.SetActorValue health clonehealth4
set clonehealth5 to Player.GetBaseActorValue health * 1
set clone5 to player.CreateFullActorCopy
clone5.DuplicateNPCStats player
clone5.SetActorValue health clonehealth5
set StartPage to 0
endif
endif

if (doonce1 == 0) && (choice == 0)
clone1.SetActorFullName "Kage-Bunshin"
clone1.AddItem DoppleGangerPotion,1
clone1.ModActorValue Aggression 40
clone1.ModActorValue Confidence 100
clone1.ModActorValue Energy 100
clone1.ModActorValue Responsibility 0
clone1.AddScriptPackage DoppleGangerFollow
SetIgnoreFriendlyHits Clone1
clone1.EquipItem DoppleGangerPotion
set doonce1 to 1
set Choice to -1
set clone1exists to 1
endif

if (doonce2 == 0) && (choice == 1)
clone2.SetActorFullName "Kage-Bunshin"
clone2.AddItem DoppleGangerPotion,2
clone2.ModActorValue Aggression 40
clone2.ModActorValue Confidence 100
clone2.ModActorValue Energy 100
clone2.ModActorValue Responsibility 0
clone2.AddScriptPackage DoppleGangerFollow
SetIgnoreFriendlyHits Clone2
clone2.EquipItem DoppleGangerPotion
set doonce2 to 1
set Choice to -1
set clone2exists to 1
endif

if (doonce3 == 0) && (choice == 2)
clone3.SetActorFullName "Kage-Bunshin"
clone3.AddItem DoppleGangerPotion,3
clone3.ModActorValue Aggression 40
clone3.ModActorValue Confidence 100
clone3.ModActorValue Energy 100
clone3.ModActorValue Responsibility 0
clone3.AddScriptPackage DoppleGangerFollow
SetIgnoreFriendlyHits Clone3
clone3.EquipItem DoppleGangerPotion
set doonce3 to 1
set Choice to -1
set clone3exists to 1
endif

if (doonce4 == 0) && (choice == 3)
clone4.SetActorFullName "Kage-Bunshin"
clone4.AddItem DoppleGangerPotion,4
clone4.ModActorValue Aggression 40
clone4.ModActorValue Confidence 100
clone4.ModActorValue Energy 100
clone4.ModActorValue Responsibility 0
clone4.AddScriptPackage DoppleGangerFollow
SetIgnoreFriendlyHits Clone4
clone4.EquipItem DoppleGangerPotion
set doonce4 to 1
set Choice to -1
set clone4exists to 1
endif

if (doonce5 == 0) && (choice == 4)
clone5.SetActorFullName "Kage-Bunshin"
clone5.AddItem DoppleGangerPotion,5
clone5.ModActorValue Aggression 40
clone5.ModActorValue Confidence 100
clone5.ModActorValue Energy 100
clone5.ModActorValue Responsibility 0
clone5.AddScriptPackage DoppleGangerFollow
SetIgnoreFriendlyHits Clone5
clone5.EquipItem DoppleGangerPotion
set doonce5 to 1
set Choice to -1
set clone5exists to 1
endif

if (Doonce1 == 1) && (clone1exists == 1)
if Player.IsSneaking == 1
Clone1.SetForceSneak 1
elseif Player.IsSneaking == 0
Clone1.SetForceSneak 0
endif
if (Clone1.GetDisposition player != 100)
Clone1.ModDisposition player 100
endif
endif

if (Doonce2 == 1) && (clone2exists == 1)
if Player.IsSneaking == 1
Clone2.SetForceSneak 1
elseif Player.IsSneaking == 0
Clone2.SetForceSneak 0
endif
if (Clone2.GetDisposition player != 100)
Clone2.ModDisposition player 100
endif
endif

if (Doonce3 == 1) && (clone3exists == 1)
if Player.IsSneaking == 1
Clone3.SetForceSneak 1
elseif Player.IsSneaking == 0
Clone3.SetForceSneak 0
endif
if (Clone3.GetDisposition player != 100)
Clone3.ModDisposition player 100
endif
endif

if (Doonce4 == 1) && (clone4exists == 1)
if Player.IsSneaking == 1
Clone4.SetForceSneak 1
elseif Player.IsSneaking == 0
Clone4.SetForceSneak 0
endif
if (Clone4.GetDisposition player != 100)
Clone4.ModDisposition player 100
endif
endif

if (Doonce5 == 1) && (clone5exists == 1)
if Player.IsSneaking == 1
Clone5.SetForceSneak 1
elseif Player.IsSneaking == 0
Clone5.SetForceSneak 0
endif
if (Clone5.GetDisposition player != 100)
Clone5.ModDisposition player 100
endif
endif

End

Begin ScriptEffectFinish
End


MfG
Calcho
 
Zuletzt bearbeitet:
Ich hab dir dort geantwortet :)
Und ich hätte dann auch mal eine Frage zu folgendem Script:
scn ErcStatueSpell

ref ErcCopyRef

Begin ScripteffectStart
Set ErcCopyRef to player.CreateFullActorCopy
ercStatueTeleportMarker.moveto player
player.movetomarker ercStatueTeleportMarker
end

Begin ScripteffectUpdate
ErcCopyRef.pms effectStone
player.sms effectstone
;Player.movetomarker ercStatueTeleportMarker

end

Begin ScripteffectFinish
ErcCopyRef.moveto Player
ErcCopyRef.addscriptpackage MQStatuePose
ercCopyRef.pickidle
erccopyref.setalert 1
ErcCopyRef.setghost 1
ErcCopyRef.setdestroyed 1

end


Das (als Zauber) sollte eigentlich eine Statue des Spielers erschaffen. Klappt soweit auch ganz gut, einziges Problem an der Sache: Die Statue soll dieselbe Pose einnehmen, wie die in Bruma. Das tun sie auch alle ganz brav - allerdings lassen sie ihre Waffen in der Scheide und halten nur apathisch den Arm hoch (außer wenn mich ganz Bruma verfolgt, dann ziehen sie ihre Waffe...)
Außerdem drehen sie noch ihren Kopf mit, wenn jemand vorbeigeht. Ich hatte ein "skipanim" drin (am schluss) aber selbst dann haben sie nicht mal ihre Pose eingenommen...
Kann mir da jemand helfen?
mfg erc
 
Ich bräuchte ein Script durch das NPCs ein Eigenleben haben (also dass sie rumlaufen, sich irgendwo hinsetzen etc.).
Bin nämlich zu faul jeden einzelnen mit X-Markern rumzuscheuchen^^
 
Du willst ein (1) Skript, welches du (verschiedenen?) NPC geben willst, welche dann ein Eigenleben führen sollen?

Also, mal davon abgesehen dass jeder deiner NPC dann den gleichen Tagesablauf hätte und du für jeden einen eigenen Skript schreiben müsstest, bist du mit den normalen KI-Tagesabläufen doch besser aufgehoben, ja auch da musst du das für jeden einstellen (Jedenfalls wäre mir da nichts anderes bekannt?), aber das sind in diesem Menü nur ein par Klicks...
 
Skill abfragen

Hi, :)

Habe wieder mal ne kurze Frage zu nem Script. Habe zwei Kisten erstellt. Beide sind beim Spielstart auf disable gesetzt. Jetzt möchte ich dass, je nach Skill des Spielers, die richtige Kiste erscheint. Habe dazu folgendes Script geschrieben. Funktioniert natürlich nicht. :( Schon die Abfrage nach dem Skill des Spielers scheint nicht zu funktionieren.

Code:
scn msrquestscript

float schwer
float leicht

begin gamemode

if getstage msrquest == 0
      set schwer to {GetPlayerSkillUse HeavyArmor}
      set leicht to {GetPlayerSkillUse LightArmor}
endif

if leicht >= schwer 
      SetStage msrquest 10
else
       SetStage msrquest 15
endif

end

Auf den Kisten befindet sich dann noch das Script das die jeweilige Kiste, bei erreichen der Queststage auf enable setzt.

Funktioniert irgendwie nicht. Habe natürlich das cs und auch Oblivion über OBSE gestartet. Kann mir jemand sagen was ich hier falsch mache oder wie ich es besser machen kann.
Ich möchte also dass mein Questscript den Skill des Spielers abfragt und je nachdem welcher Skill höher ist soll die entsprechende Kiste auf enable gesetzt werden.

mfg
 
Ich glaube, ich würde dasüberhaupt nicht mit dem OBSE machen, denn es geht ja auch so Ô_o

Code:
scn msrquestscript

Begin GameMode

if (player.GetAV LightArmor => player.GetAV HeavyArmor) 
      SetStage msrquest 10
else
       SetStage msrquest 15
endif

end
Gibt möglicherweise den minimalen Unterschied, dass die Kommastelle nicht berücksichtigt wird, also die riene Skillzahl zählt, aber ich denke mal, diese Kleinigkeit ist nicht allzu wichtig, da es darauf auch nur sehr selten ankommen wird. (Und wie gesagt, kann auchs ein, dass es da gar keinen unterschied gibt (wobei, wozu wäre dann die OBSE Funktion überhaupt da...))
 
Danke für die Antworten :)

Hat jetzt geklappt. Habe es jetzt mit GetAV gemacht. Musste noch tatsächlich die Klammern weglassen. Und jetzt funktioniert alles prima. Sogar die richtige Kiste erscheint. :D

Hatte die OBSE-Funktion genommen weil ich einfach keine andere Funktion in der CS-Wiki finden konnte. Na ja, ist schon eine Weile her dass ich zuletzt ein Skript geschrieben habe und ich muss mir erst wieder alles zusammen suchen.

Dann kann ich jetzt endlich an meiner Mod weiter machen.

mfg
 
@ Cadhar nein nicht sowas.
Ich bräuchte das so wie in der Best Mates Mod wenn man ihnen den Befehl Freizeit gibt.
Es reicht mir wenn sie dumm rumlaufen.
 
Hab ein kleines Proble mit einem Skript, das ganze liegt auf einem Bild (Activator).

Code:
scn WisdomAndPowerScript

ref WisdomRef
ref WisdomBowlRef
ref PowerRef
ref PowerBowlRef
float timer

begin OnLoad
	set timer to 5
end

begin GameMode 
	If timer >= 5
		set timer to timer - GetSecondsPassed
	elseif timer == 3
		WisdomRef.Cast StandardSoulTrap2Apprentice WisdomBowlRef
		set timer to timer - GetSecondsPassed
	elseif timer <= 0
		PowerRef.Cast StandardFireDamageTarget5Master WisdomBowlRef
		set timer to 5
	endif
	endif
	endif
end

WisdomRef = FireArcaneMedium01
WisdomBowlRef = PalaceBrasier02
PowerRef = FireInterior760
PowerBowlRef = PalaceBrasier02

Das Script soll bewirken, dass aus dem ArcaneFire ein Seelenfallen-Zauber auf so ein PalaceBrasier02 gecastet wird.
Das andee Feuer soll das gleiche mit einem Feuerzauber auf ein anderes PalaceBrasier02 machen, aber leider tun sie das beide nicht, das ganze ist im gleichen Raum.
 
Hi Mr. Ping,

Ich kann mir bei dem Script schlecht vorstellen, dass beim Speichern keine Fehlermeldungen auftauchen. Das sollten sie nämlich, da du 2 Endif zu viel hast. Ich berichtige dir das mal und streiche das Veränderte rot an:

Code:
scn WisdomAndPowerScript

ref WisdomRef
ref WisdomBowlRef
ref PowerRef
ref PowerBowlRef
float timer

begin OnLoad
	set timer to 5
end

begin GameMode 
	[COLOR="Red"]If timer >= 0[/COLOR]
		set timer to timer - GetSecondsPassed
	Endif

	If timer == 3
		WisdomRef.Cast StandardSoulTrap2Apprentice WisdomBowlRef
	elseif timer <= 0
		PowerRef.Cast StandardFireDamageTarget5Master WisdomBowlRef
	endif

end
Ich habe jetzt den timer selber in einen seperaten If-Block getan; Das verändert zwar nichts am Script, macht es aber (meiner Meinung nach) übersichtlicher. Oben habe ich aus der 5 eine 0 gemacht. Grund: Solange der timer größer als die angegebene Zahl ist, wird er runter gezählt.

Du hattest vorher eine 5, das heißt die Variable timer wird nur um ein Minimum verkleinert. Mit der 0 wird es runter gezählt bis 0.

MfG Gildur