Construction Set Skriptthread zum Construction Set

Ich habe mal ne Frage zu nem Plugin, dass ich evt erstellen will. Kann man eine Statue so mit einem Script belegen, dass sie lebendig wird, wenn der Player etwas bestimmtes macht, z.B. eine Truhe öffnet oder sowas?
 
Kommt darauf an, was du als Statue nimmst. Wenn du eine der Stati-Statuen nimmst, glaube ich nicht, dass das geht. Ich glaube, das geht nur, wenn du nen NPC oder ne Kreatur (hauptsache Actor) nimmst, einen Rock-Shader verpasst und dann per Script so einstellst, dass sie sich nicht bewegen kann, was dann durch irgendeine Aktion aufgehoben wird.
 
Theoretisch dürfte das wohl machbar sein dadurch das die Statue in dem Moment verschwindet und einem Humanoiden Platz macht. Nach der ganzen Aktion muss das dann wieder rückgängig gemacht werden. Also Humanoider weg und Statue wieder her.

Es wird also aufwendig werden. Einfacher wird es ein Script auf die Kiste zu legen das der Spieler dann wenn er sie öffnet von einem Blitz getroffen wird der von der Statue geschleudert wird.

Edit: Wenn man schon 30 sec warten muss sind andere schneller
 
Was soll die Statue denn machen? Soll sie mit dem Spieler kämpfen, mit ihm reden? Die Schwere hängt davon stark ab.
 
Juhu, danke Low, es geht....

Nu kommt die nächste Frage, ein Npc soll, sofort wenn er erscheint, den Spieler ansprechen.

Code:
scn AjGeoBöse

Begin OnStartCombat

AddTopic AjTopic10
StopCombat
StartConversation Player, AjTopic10
StopCombat

end

Der Npc kommt auch auf den Spieler zu, als wenn er Sprechen will, fängt aber nicht mit dem Gesprech an. Ich hoffe ihr findet wieder den Fehler *hust*
 
Hat das zweite StopComabt einen Sinn? Oder soll das StartCombat heißen? Sonst würde ich das weglassen.
Außerdem: Soll das Topic dem Spieler oder dem NPC hinzugefügt werden?
 
Zuletzt bearbeitet:
Das hat nur einen Sinn als Sicherheit, damit der Npcs ja keinen Kampf vor dem Dialog startet.


AddTopic ist Referenzlos, Topics werden immer dem Spieler hinzugefügt.
 
Versuch das ganze mal in einem OnLoad-Block und verwende zusätzlich zu dem StopCombat noch ein StopCombatAlarmOnActor.
Also quasi so:
Code:
scn AjGeoBöse

Begin OnLoad
 if ( GetInSameCell Player )
  AddTopic AjTopic10
  StopCombat
  StopCombatAlarmOnActor
  StartConversation Player, AjTopic10
 endif
End

Falls das nicht funktioniert könntest du noch versuchen zwischen dem AddTopic und dem StartConversation einen Delay einzubauen:
Code:
scn AjGeoBöse

short Done

Begin OnLoad
 if ( GetInSameCell Player )
  if ( Done )
   StartConversation Player, AjTopic10
  else
   AddTopic AjTopic10
   StopCombat
   StopCombatAlarmOnActor
   set Done to 1
  endif
 endif
End
 
Ich weiß nicht, ob onload geht, der Sprecher soll nach dem Tod von einem Questgegener enabled werden und dann mit dem Spieler reden. Ich versuch es trotzdem mal.




Edit: Juhu es geht! Auch wenn ich es jetzt anders gemacht hab, der Script liegt jetzt auf dem Questmob, und der Npc wird nicht geenabled (Was ein Wort) sondern einfach nur teleportiert.

Wie kann man nochmal dafür sorgen, das man nach einem Kill kein CrimeGold bekommt, den Npc einfach aus allen Fraktionen schmeißen?
 
Zuletzt bearbeitet:
Was soll die Statue denn machen? Soll sie mit dem Spieler kämpfen, mit ihm reden? Die Schwere hängt davon stark ab.

Es soll so sein, dass der Spieler zuerst denkt, alls wäre in Ordnung (also müssen die Gegner wirklich aussehen wie Statuen und es darf auch keine Kampfmusik geben bis zum Moment der Verwandlung) und wenn er dann eine bestimmte Aktion ausführt (in dem Fall werde ich denke ich das Öffnen einer Truhe nehmen, wäre aber schön wenn man das auch ändern kann, ohne den ganzen Script zu ruinieren), sollen sie zu echten gegnern werden und den Spieler angreifen. Sonst nichts, nur angreifen.
 
Ehm ich hab auch mal ne FRage

Gibt es einen Script (bestimmt aber ich kenn ihn nicht)
den man auf einen Altar oder sonstiges legen kann mit ner Messagebox und Auswahlmöglichkeiten z.b. "Wollt ihr teleportiert werden?" "ja" "nein"
und bei ja dann halt an den bestimmten Ort?

(Wenn jemand sowas schon gefragt hat sry.)
 
Sicher ist das möglich.

Code:
Scriptname Teleportieren

short button

begin OnActivate
MassageBox "Wollt ihr teleportiert werden?", "Ja", "Nein"
end

begin GameMode
set button to GetButtonPressed
if button == 0
player.moveto [Ref-ID X-Marker]
elseif button == 1
endif
endif
end

Das sollte so klappen, wenn ich nichts vergessen habe. Dorthin, wo du hinteleportiert werden willst, musst du einen X-Marker setzten (zu finden unter Static>X-Marker) und ihm eine Reference-ID geben.
 
  • Like
Reaktionen: Pc-Killer
Sicher ist das möglich.

Code:
Scriptname Teleportieren

short button

begin OnActivate
[COLOR="Red"]Massage[/COLOR]Box "Wollt ihr teleportiert werden?", "Ja", "Nein"
end

begin GameMode
set button to GetButtonPressed
if button == 0
player.moveto [Ref-ID X-Marker]
elseif button == 1
endif
endif
end

Das sollte so klappen, wenn ich nichts vergessen habe. Dorthin, wo du hinteleportiert werden willst, musst du einen X-Marker setzten (zu finden unter Static>X-Marker) und ihm eine Reference-ID geben.

:p

Es müsste MessageBox heißen..
 
lol1.bmp.png


also eine eigene eingeben? oder die die dahintersteht nutzen?

edit/ hat sich geklärt ;) Dankee
 
Zuletzt bearbeitet:
lol1.bmp.png


also eine eigene eingeben? oder die die dahintersteht nutzen?

Wurscht, es muss nur eine Persistent Ref sein. Bei den Zahlen musst du allerdings beachten, dass du die in den meisten Fällen/immer in "" schreiben musst. Anders verträgt das CS/Oblivion FormIDs nicht.


Ich persönlich bevorzuge aber eigene IDs, die lassen sich im Zweifelsfall leichter wiederfinden. ^^
 
SO ich stell noch eine FRage aber das wars dann auch erstmal :)

(sry wenn ich nerv)

gibt es einen Skript oder eine Möglichkeit eine "grenze" zu ziehen wie bei
'Ihr könnt hier nicht entlang gehen ihr müsst umkehren' ? ich hab nämlich einen "Stadt-Mod" in arbeit wo man von einer anderen Seite reinspringen kann -.-' aber ich kann dort keine Mauer ziehen sonst siehts **** aus..