Construction Set Skriptthread zum Construction Set

Jaaa doch dies behebt das Problem leider auch nicht...
Und mit unbeweglich mein ich halt die normale folge von "DisablePlayerConrols"
Code:
scn FNNocteTrapFloor

short triggered
float timer

Begin onTrigger player

	if triggered == 0
          set timer to 4
          set triggered to 1
    
endif

End

Begin GameMode 
		

	if triggered == 0
		return

	endif

	if timer >= 0 && triggered == 1
		set timer to timer - getSecondsPassed

	endif

      if timer <=3

          DisablePlayerControls
      endif


     if timer <= 0
           FNNocteTrapFloor01.playgroup forward 1
           FNOpenTrapFloorAnimation01.playgroup equip 1

     endif

End

Mfg yves

Bei deinem Skript fehlt ja auch noch ein "EnablePlayerControls". Du hast nur ein "DisablePlayerControls" eingebaut, aber nichts was dies später wieder behebt.

Edit: Es muss damit funktionieren, bist du dir auch sicher das der Teil mit dem "EnablePlayerControls" richtig läuft (bei deinen Tests).

Mfg Master of Worlds
 
Jaaa das mit dem Enable habe ich bereits repariert doch leider noch kein erfolg....
Doch so Funktioniert es:
Code:
scn FNNocteTrapFloor

short triggered
float timer

Begin onTrigger player

	if triggered == 0
           FNNocteTrapFloor01.playgroup forward 1
           FNOpenTrapFloorAnimation01.playgroup equip 1
          set triggered to 1
    
     endif

End
Mfg yves
 
Zuletzt bearbeitet:
Der Spieler kann sich immer noch nicht wieder bewegen?

Geb mal im Spiel in die Konsole EnablePlayerControls ein und schau, ob das das aufhebt. Sollte es ja.

Klappt der Teil mit den Animationen?
FNNocteTrapFloor01.playgroup forward 1
FNOpenTrapFloorAnimation01.playgroup equip 1

Ich meine im langen Script.
 
Nein das ist ja gerade das Problem...
man kann sich nicht mher bewegen und dann passiert nichts mehr.

mfg yves
 
Dann kann das eigentlich nur am Script liegen.

Ersetze mal das DisablePlayerControls durch eine einfache Message und füge bei den Animationen ebenfalls eine ein.
Wenn die nicht kommt, dann hängt das Script an dazwischen.
 
Kein Wunder.

Hier liegt der Wurm:

if timer <= 3
disableplayercontrols

Auch unter 3 wird die Funktion disableplayercontrols weiter ausgeführt, weil auch timer == 0 die Bedingung <= 3 erfüllt. Da kannst Du die playercontrols enablen wie Du willst, eine Frame nach Eingabe wird wieder disabled.

if timer <= 3 && timer >= 2
disableplayercontrols


Dies sollte dann funktionieren. Hoffe ich.

Timer sind Teufel!
 
Also ich bräuchte ein Script, das die aktuelle Waffe kurzzeitig mit einem Enchantment versieht, bzw. verzaubert. Und das ganze als normaler Zauber.

Also wenn man den Zauber ausspricht, sollte die Waffe die man gerade trägt verzaubert werden. Der Effekt sollte dann ein paar Sekunden anhalten.

Ich dachte mir das wäre ein recht einfaches script, aber das mit dem Enchantment.... :?
 
Soll das ganze mit oder ohne OBSE funktionieren.
Ohne müsstest du für jedes Enchantment ein Schwert machen und dann austauschen.
Mit OBSE würde das mit SetEnchantment funktionieren.
 
Hiho,
hab mal wieder ein Problem:

Ich habe ein Script auf einem Activator, das beim Aktivieren jede Mange Sachen auslöst... der größte Teil klappt zwar auch, aber es gibt ein Problem mit dem Zufall:
Code:
float random

Begin onActivate

if variante == 0
	set random to getRandomPercent
	if random <= 24
		set variante to 1
		DiRuine01Part03EndeTuerTruheLi1Ref.enable ;außergewöhnliche Truhe
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normale Truhe
		DiRuine01Part03GitterTruheNormRe1Ref.enable ; normale Truhe
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normale Truhe
	elseif random <= 49
		set variante to 2
		DiRuine01Part03EndeTuerTruheLi2Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normal
	elseif random <= 74
		set variante to 3
		DiRuine01Part03EndeTuerTruheRe1Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normal
	elseif random <= 99
		set variante to 4
		DiRuine01Part03EndeTuerTruheRe2Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe1Ref.enable ;normal
	endif
endif
end

Diese Sachen werden dann nach Ablaufen eines Timer wieder disabled. Soweit klappt auch alles: Die Sachen werden enabled und auch wieder disabled, allerdings ist die Anordnung der Truhen immer gleich - so als ob random immer <=24 wäre...
Woran könnte das liegen? Muss ich vielleicht random zwischenzeitlich auf einen anderen Wert setzen oder auch die Abfragen in den GameMode-Block stellen?

Hoffe, ich konnte das Problem darlegen...

MfG
 
  • Like
Reaktionen: Master of Worlds
Es würde theoretisch auch funktionieren. Du kannst natürlich auch abfragen im Activate Block machen, aber keine die sich länger hinstrecken.

Ein GameMode Block ist auch eher zu empfehlen, meist aber eher für längere Sachen wie z.B. Timer.

Code:
float random

Begin onActivate

if variante == 0
	set random to getRandomPercent
	if random <= 24
		set variante to 1
		DiRuine01Part03EndeTuerTruheLi1Ref.enable ;außergewöhnliche Truhe
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normale Truhe
		DiRuine01Part03GitterTruheNormRe1Ref.enable ; normale Truhe
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normale Truhe
	elseif random <= 49
		set variante to 2
		DiRuine01Part03EndeTuerTruheLi2Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normal
	elseif random <= 74
		set variante to 3
		DiRuine01Part03EndeTuerTruheRe1Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normal
	elseif random <= 99
		set variante to 4
		DiRuine01Part03EndeTuerTruheRe2Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe1Ref.enable ;normal
	endif
endif
end

Es ist auch immer <= 24....
du musst bei allen andern eine abfrage machen >= der vorherige Wert.
Also so:
Code:
float random

Begin onActivate

if variante == 0
	set random to getRandomPercent
	if random <= 24
		set variante to 1
		DiRuine01Part03EndeTuerTruheLi1Ref.enable ;außergewöhnliche Truhe
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normale Truhe
		DiRuine01Part03GitterTruheNormRe1Ref.enable ; normale Truhe
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normale Truhe
	elseif random <= 49 && > 25
		set variante to 2
		DiRuine01Part03EndeTuerTruheLi2Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normal
	elseif random <= 74 && > 50
		set variante to 3
		DiRuine01Part03EndeTuerTruheRe1Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe2Ref.enable ;normal
	elseif random <= 99 && > 75
		set variante to 4
		DiRuine01Part03EndeTuerTruheRe2Ref.enable ;außergewöhnlich
		DiRuine01Part03GitterTruheNormLi1Ref.enable ;normal
		DiRuine01Part03GitterTruheNormLi2Ref.enable ;normal
		DiRuine01Part03GitterTruheNormRe1Ref.enable ;normal
	endif
endif
end

Jetz müsste es gehen.
 
Zuletzt bearbeitet:
Wie kann man per skript das auf einer Waffe abfragen ob diese einen Gegner trifft. Also egal ob freundlicher npc oder monster einfach das getroffen wird? oder zumindest das zugeschlagen wird

und wie kann man per skript die verzauberung einer Waffe auffüllen?
 
Zuletzt bearbeitet:
Hey Leute,
ich brauche ein Skript, dass einem, sobald man in der Nähe einer Wache eine Waffe anlegt, für die man keine Berechtigung hat, Kopfgeld hinzufügt. Da man anfangs noch keine Waffe tragen darf, und später Schrittweise Dolche, dann Kurzschwerter, etc. dacht ich mir, man könnte die "Waffenbefähigung" in einer Variabel speichern.
Ausserdem sollte das Kopfgeld nur einmal hinzugefügt werden, das nächste Mal erst wieder, wenn man schon für das erste Mal bestraft wurde.

Danke im Vorraus.
 
Also du könntest eine Globale machen und auf jedes Schwert ein Script legen was diese abfragt, sollte sie den bestimmten Wert nich haben, wird das Kopfgeld mit SetCrimeGold erhöht und die Waffe vllt abgelegt.

@ Black Zero:
Mit einem von den befehlen hier kannst du die Verzauberung auffüllen.

Das mit dem Treffen... Mach ein Enchantment. Die wirken nur wenn der Feind getroffen wurde.
 
@Kaunit:
Das ganze läuft am besten über ein Questscript, das immer die Global überprüft.

Das mit den Enchantments dürfte schwierig werden, wenn das für alle Waffen des Spiels und auch für Waffen aus Mods gelten soll.
Das müsste irgendwie in das Questscript integriert werden, da weiß ich aber gerade nicht wie.
 
Schau dir doch mal den OBSE Mod Verzauberungen laden sich langsam wieder auf an. Findest du hier im Portal, vllt kriegste ja die erlaubniss diesen zu modifizieren für deine Mod ;D
 
Friseur

hallo,
ich will eine Mod bauen. Soll ein Friseursalon werden. Reingehen, hinsetzen, einen Gegenstand aktivieren und das Frisurmenü soll sich öffnen, das aus dem Rassenmenü. Aber es soll NUR das Haaremenü aufgehen und beim schließen soll es auch nicht über das Rassenmenü geschlossen werden (sonst ändern sich Werte von Attributen und Fähigkeiten). Auch soll es etwas kosten, so 10 Gold etwa.

jemand ne Idee? :huh:
 
Es gibt den Befehl ShowRaceMenu, der ruft jedoch das ganze Rassenmenu auf.
Nur den Abschnitt für die Haare aufzurufen ist, meines Wissens, nicht möglich.

Man könnte eine recht aufwendige Lösung nehmen. Die würde die Auswahl aber einschränken.
Dazu könntest du Bilder von einigen Frisuren machen, am besten unverändert, und diese in ein Buch einfügen. Das dient sozusagen als Frisurenkatalog.
Dann über einen weiteren Gegenstand rufst du ein Messageboxensystem auf, in dem man sie die Frisur, die man haben möchte, auswählt. Diese kann man dann allerdings nur wie ein Item tragen.
Die Zahl der Frisuren würde sich auf die beschränken, die du im Buch aufgeführt hast und man hat auch keine Möglichkeit die zu verändern. Für verschiedene Farben bräuchte man also verschiedene Modelle.
Pro Frisur und Farbe ein Modell, macht bei beispielsweise 10 Frisuren in je 3 Farben schon 30 Modelle und, gut sortiert, sicherlich mindestens 4 Messageboxen.
 
Mit Obse kannst du die haare ändern, per SetHair.
Du kannst ja natürlich die Haare in Messageboxen aufführen mit verschiedenen seiten und sollte man eine angeklickt haben kommt eine weitere mit der Farbauswahl.
Musst eben alles so machen, dauert aber ne ewigkeit.