Construction Set Skriptthread zum Construction Set

Also ich habe es selber noch nie ausprobiert, vielleicht klappt es aber so...
Du erstellst 2 Marker. Dem einen gibst du (bzw. ich in meinem Beispiel) die Referenz TeleportMarker und dem anderen TeleportBackMarker. Beides XMarkerHeadings. Den TeleportMarker setzt du in den Worldspace GeheimeWelt und den anderen irrgendwo in die Welt, ist erst mal egal wo.
Nun sollte folgendes Script drauf:
Code:
Scn GeheimesAmulettSCRIPT

short DoOnce

Begin OnEquip
If DoOnce == 0
TeleportBackMarker.MoveTo player
player.MoveToMarker TeleportMarker
set doonce to 1
elseif doonce == 1
player.MoveToMarker TeleportBackMarker
set doonce to 0
endif

End

MfG Gildur
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Dyras
Probiers mal hiermit (Skript auf Amulett):

Code:
scn TeleportAmulettScript

Begin OnEquip Player
 if GSITeleport == 1
  if Player.GetInWorldSpace GeheimeWelt == 0
   Player.moveto [ID einer Ref in der GeheimeWelt]          ;solltest du einen Marker für die Ref verwenden kannst du auch den Befehl 'movotomarker' anstelle von 'moveto' verwenden
  elseif Player.GetInWorldSpace Geheime Welt == 1
   Player.moveto [ID einer Ref in Cyrodill]
  endif
 endif
End
Das Skript benötigt GSI.

Wenn der Spieler nicht zu einem festen Punkt in Cyrodill zurückkehren soll, sondern zu dem Punkt, wo er Cyrodill verlassen hat musst du noch eine Objektreferenz erstellen, die du zum Spieler teleportiertst (moveto Player), bevor er in die GeheimeWelt teleportiert wird (== Zielreferenz für Rückkehr).

Edit: @Gildur:
Du hast ein End vergessen ;)
Außerdem ist GetInWorldSpace doch viel eleganter, als eine Variable. :p
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Dyras
Danke ich werde es gleich mal ausprobieren

LG
Dyras

Edit: Soll der Script nacher auf den MArker oder aus Amullet@Gildur
DAnke im VOraus
 
Zuletzt bearbeitet:
Jo, danke, ich habe es umgeändert ^^


was ist playerInGeheimeWelt? Ist das mit GSI möglich, dass eine Variable automatisch defeniert wird?

Nö, GSI führt (bisher) nur die Global GSITeleport ein, das hab ich nur übersehen. Am Anfang hab ich das nähmlich auch mit einer Variablen gemacht und dann halt vergessen die Zeilen wieder rauszulöschen (ohne die Syntaxprüfung vom CS wär ich so am ***** :roll:).
Danke, ist korrigiert.
 
Hallo ihrs:D,
da ich ja wie ihr wisst keinen Blassen Schimmer vom Skripten habe,wende ich mich wieder mal vertrauensvoll an euch!^^ Also ich bräuchte ein Skript das folgendes bewirkt:"
Wenn der Player einen Activator aktiviert ,sollen sich dadurch seine Attribute (Geschicklichkeit+10\Glück+10\Intelligenz+10) für 6min. steigern bzw. festigen!":) ..................................danke;)
 
Wie wärs damit?
Code:
scn PowerActivatorScript

short Activated
float Timer

Begin OnActivate
 if isActionRef Player == 1
  if Activated == 0
   set Activated to 1
   set Timer to GetSecondsPassed                     ;um GetSecondsPassed zurückzusetzen
   set Timer to 0
   Player.ModActorValue Agility 10                    ;Geschicklichkeit
   Player.ModActorValue Luck 10                      ;Glück
   Player.ModActorValue Intelligence 10             ;Intelligenz
;man kann ModAV hier verwenden, da es ja später wieder zurückgesetzt wird. 
  else
   MessageBox "Wartet bis der Effekt aufgehört hat."
  endif
 endif
End

Begin Gamemode
 if Activated == 1
  if Timer < 360                         ;6 Minuten
   set Timer to Timer + GetSecondsPassed
  else
   set Activated to 0
   Player.ModActorValue Agility -10                    ;Geschicklichkeit
   Player.ModActorValue Luck -10                      ;Glück
   Player.ModActorValue Intelligence -10             ;Intelligenz
  endif
 endif
End
Skript muss auf den Aktivator, falls die Steigerung der Skills auch durch Zauber wieder zurückgesetzt werden soll musst du anstelle von ModAV den OBSE-Befehl ModAV2 verwenden.
 
  • Like
Reaktionen: Skoomadieb
Ich würde schlicht und ergreifend einen Zauber mit den genannten Effekten und der Dua´ration von 360 erstellen und mit dem Script
Code:
scn Wieauchimmer

Begin OnActivate
cast [ZauberID] player
end
auf den Spieler wirken lassen. Es ist dann im Endefefkt wie bei den Wegschreinen der Neun im Vanilla-Obl.

/Edit: Vorteil: man braucht keinen OBSE
 
  • Like
Reaktionen: Skoomadieb
Oh, ja, sry, wer lesen kann ist klar im Vorteil :lol:
Allerdings gibt es zwei Varianten.
1, man lässt das Script wie es ist. In dem Fall benötigt man einen Zauber auf Ziel.
2, man schreibt player.cast [ZauberID] anstatt cast [ZauberID] player, in diesem Fall braucht man einen zauber "auf Selbst".
 
Danke ihr beiden ,ich werde natürlich auch beide Skripte ausprobieren!^^melde mich später!;)


Edit:die Skripte laufen beide super,danke noch mal!^^;)

Und da währe ich auch schon bei meiner nächsten Skript Frage. Es soll ein Skript für einen Trigger werden,der folgendes bewirken soll:" Wenn der Player im wert von mindestens 1000 Sep.eingekauft hat,soll er beim hinausgehen ein Geschenk des Hauses erhalten!Auch bei 2000 oder mehr Sep. nur ein Geschenk!((Bitte mit MessageBox))!"..................Danke;)
 
Zuletzt bearbeitet:
Hi falls ihr wieder zeit habt könnt ihr mir bitte
ein Script schreiben/zeigen das folgendes bewirkt.

Jedes Monat erscheinen in einer Truhe 2000Septime

also die ID der Truhe wär: HimmelTruhe11

Danke im Voraus
LG
Dyras;)
 
also folgendes Script auf die Truhe (du brauchst dieses mal für die Truhe keine Referenz ;)):
Code:
scn TruhenSCRIPT

short lastmonth
short step
ref myself

Begin OnActivate
If ( step == 0 )
set myself to getself
set lastmonth to gamemonth
set step to 1
myself.Additem Gold001 2000
Endif

If ( step == 1 )
If ( lastmonth != gamemonth )
myself.AddItem Gold001 2000
set lastmonth to gamemonth
Endif
Endif

Activate

End
Um der Performance einen gefallen zu tun, habe ich den Script in einen OnActivate-Blcok gepackt, anstatt eines GameMode's. Das wäre leichter gewesen ^^

Ich denke jedoch, so sollte es klappen.

MfG Gildur
 
  • Like
Reaktionen: Dyras
Hey Gildur, weißt du zufällig wie man dem Spieler (welcher in den Kerker kommt, ohne Ausrüstung) die jailshirt, jailpants, und jailshoes nicht nur ins inventar einfügt, sondern auch direkt anzieht? :)
 
also eigentlich müsste er die doch automatisch anziehen, oder?
Na ja, wenn nicht, dann benutzt du diese Befehle:
Code:
player.EquipItem jailshirt
player.EquipItem jailpants
player.EquipItem jailshoes 1

Das lässt den Spieler diese Ausrüstung tragen. Sollte eine 1, wie bei meinem letzten Beispiel, dahinter stehen, ist es dem Spieler nicht möglich, die Sachen selber auszuziehen. Das geht dann nur noch mit diesem Befehl:
Code:
player.UnequipItem jailshoes 1
Eine 1 sorgt hier diesmal dafür, dass... na? Rchitig! Dass der Spieler diese Sachen nicht mehr anziehen kann. Also eigentlich brauchst du die 1 nicht, weil er es bestimmt können soll. Beim Amulett der Könige wurde das, glaube ich, zB. benutzt.

MfG Gildur
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Acacyn
Hallo

Ich brauche einen Skript um die Zeit zu verlangsamen also quasi Zeitlupe der nach einer bestimmten Anzahl Sekunden aufhört.
Ist das überhauptmöglich?? Oo Naja sollte es gehen verlass ich mich mal auf euch....

mfg
 
Hi, ich brauche ein Script, dass wenn man den NPC, der das Script besitzt im Spiel anspricht, man auswählen kann:

Folgen
Warten
Ausrüstung ändern
Freizeit


Sodass der NPC bei Folgen den Spieler folgt, bei Warten an der Stelle wartet,bei Ausrüstung ändern sollte man ins Inventar des NPCs kommen und bei Freizeit sollte er zur Cell bzw. Worldspace zurückkehren, an der man ihn gesetzt hat. :-D (kann mir vielleicht auch jemand sagen, wie ich es mache, dass der NPC wenn man im Quest-Tagebuch ein bestimmtes Quest auswählt, dass der NPC gekenzeichnet wird als Questziel?)

Kennt jemand so ein Script? :D

mfg Maximilian
 
Zuletzt bearbeitet: