Allgemein
News
News-Archiv
Partner
Netzwerk
Banner
Header
Media
Downloads
Impressum

The Elder Scrolls
Arena
Daggerfall
Spin-offs
Romane
Jubiläum
Reviews
Welt von TES
Lore-Bibliothek
Namens-
generator

FRPGs

Elder Scrolls Online
Allgemein
Fraktionen
Charakter
Kargstein
Technik
Tamriel-
Manuskript

Media

Skyrim
Allgemein
Lösungen
Tipps & Tricks
Steam-Kniffe
Review
Media
Plugins & Mods

Oblivion
Allgemein
Lösungen
Tipps & Tricks
Technik
Charakter
Media
Plugins & Mods
Kompendium

Morrowind
Allgemein
Lösungen
Tipps & Tricks
Media
Plugins & Mods

Foren
The Elder Scrolls Online
Hilfe & Diskussion

Skyrim
Hilfe & Diskussion
Plugins & Mods

Ältere TES-Spiele
TES-Diskussion
Oblivion-Plugins
Morrowind-Plugins

Community
Taverne zum Shalk
Adventures of Vvardenfell
Tales of Tamriel
Ergebnis 1 bis 16 von 16

Thema: Skriptthread

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    Skriptthread

    Ich hielt es mal für eine gute Idee , nen Thread aufzumachen , in dem jeder User reinposten kann , wenn er mal schwierigkeiten bei Scripts hat. Die anderen sollten ihm dann helfen.
    (Sollte dieser Thread nicht erwünscht sein , dann wandeln wir ihn einfach in einen stinknormalen Scriptsuche-Thread um ^^)

    Also : Mein Problem ist folgendes :
    Ich will , dass der Spieler eine bestimmte Eigenschaft bekommt , sobald er sich auf den Stuhl setzt , an dem das Script hängt. Sobald er wieder aufsteht , soll die Eigenschaft verschwinden. Weiss jemand , wie ich das mache?Ich habe keinen passenden Befehl gefunden , um dem CS zu sagen , dass der Spieler sich auf den Stuhl setzen muss , damit er den Spell kriegt , bei begin onactivate macht er nix und kriegt nur den Spell. Und wie ich das CS dazu bringe , den Zauber beim aufstehen wieder zu entfernen , weiss ich auch nicht.

  2. #2
    PHP-Code:
    scn stuhlscript

    short doonce

    begin onActivate
    if doonce == 0
       player
    .addspell xyz
       set doonce to 1
    else
       
    player.removespell xyz
       set doonce to 0
    endif
    activate
    end 

  3. #3
    Ja danke , das Script funktioiniert.

    Ich wüsste jetzt gerne noch , was die Mods von der Idee mit dem Skriptthread halten.

  4. #4
    Also, ich bin zwar kein Mod, aber ich vermute, dass trotzdem Einzelthreads bevorzugt werden, im Gegensatz zu gigantomanischen, alles-beantwortenden Threads. Ist übersichtlicher. Außerdem gibts doch von diesem Stil schon Threads. Also ich find einzelne Threads, wo schon in der Überschrift steht um welches Problem es geht, besser

  5. #5
    Und wieder eine Skriptfrage : Wie kann ich in einem Activator etwas abfragen?
    Also ich will folgendes : der Spieler aktiviert den Activator. Dann kommt eine Abfrage , ob er 5 gefüllte Seelensteine der kleinsten Größe im Inventar hat. Wenn ja , bekommt er einen Gegenstand und die Seelensteine werden entfernt. Wenn nein passiert gar nichts.
    Weiss jemand , wie man das macht?

  6. #6
    PHP-Code:
    scn ActivatorScript

    short doonce

    Begin OnActivate Player

    if ( player.getitemcount SoulGemEmpty1Petty >= ) && ( doonce == )
         
    player.removeitem SoulGemEmpty1Petty 5
         player
    .additem MeinGegenstand 1
         set doonce to 1
    endif

    end 
    Indem doonce auf 1 gesetzt wird, wird sich das Script nicht wiederholen, sollte der Spieler deinen Gegenstand bereits erfolgreich erhalten haben.

  7. #7
    Dann poste ich hier auch mal: Ich will dass wenn ich einen Torhebel aktiviere, sich ein bestimmtes Tor 60 Einheiten Z bewegt (in die Höhe). Bei meinem eigenen Script ist das Tor aufgegangen sobald ich die Cell betreten habe. Desweiteren stieg es nicht 60 Einheiten in den Himmel sondern 1000. Habt ihr da vielleicht eine Idee was ich machen könnte?

    P.S: An meiner Morrowind MOd mach ich natürlich auch weiter, ich will nur mal wissen wie das ganze in Oblivion aussieht.

    MFG Gothic_freak

  8. #8
    In Oblivion ist es in solch einem Fall das Beste, eine Animation für das Model zu erstellen, denn wenn Du das Objekt per Script bewegst, bleibt die Kollision am gleichen Ort. D.h. wenn Du Dein Tor hochfahren lässt, wird es zwar da oben sein, aber der Spieler wird dennoch nicht hindurchgehen können.

  9. #9
    Zitat Zitat von Katan Beitrag anzeigen
    PHP-Code:
    scn ActivatorScript

    short doonce

    Begin OnActivate Player

    if ( player.getitemcount SoulGemEmpty1Petty >= ) && ( doonce == )
         
    player.removeitem SoulGemEmpty1Petty 5
         player
    .additem MeinGegenstand 1
         set doonce to 1
    endif

    end 
    Indem doonce auf 1 gesetzt wird, wird sich das Script nicht wiederholen, sollte der Spieler deinen Gegenstand bereits erfolgreich erhalten haben.
    Das heisst , wenn ich aus der 1 eine 0 machen , lässt sich der Vorgang beliebig oft wiederholen?(so wie ich es eigentlich will)

  10. #10
    Nein. Wenn du es beliebig oft haben willst, lässt du die Variable einfach ganz weg. Das sähe dann so aus:

    PHP-Code:
    scn ActivatorScript

    Begin OnActivate Player

    if ( player.getitemcount SoulGemEmpty1Petty >= )
         
    player.removeitem SoulGemEmpty1Petty 5
         player
    .additem MeinGegenstand 1
    endif

    end 

  11. #11
    Ich möchte mir dazu eine kleine Korrektur erlauben. Man liest es zwar durchaus häufig in Skripten, doch OnActivate Player funktioniert - im Gegensatz zu OnTrigger Player - so nicht. Vermutlich rührt daher das Missverständnis. Der Skript-Compiler akzeptiert die OnActivate-Zeile zwar ohne Murren, doch im Spiel wird die Referenz schlicht nicht beachtet.

    Möchte man die Ausführung eines OnActivate-Blocks auf einen bestimmten NPC bzw. den Player beschränken, ist stattdessen if IsActionRef RefID zu verwenden. Das Skript müsste daher so aussehen:

    PHP-Code:
    scn ActivatorScript

    Begin OnActivate

    if (IsActionRef Player) && ( player.getitemcount SoulGemEmpty1Petty >= )
         
    player.removeitem SoulGemEmpty1Petty 5
         player
    .additem MeinGegenstand 1
    endif

    end 
    Grüße
    Brausebart

  12. #12
    Wieder eine Frage : Sheogorath hat doch einen Spell , den er auf einen spricht wenn man ihn angreift. Nun will ich diesen Spell auch für den Spieler benutzbar machen , wenn er Sheogorath ist sodass er seine Feinde dorthin teleportieren kann. Ich habe alle Sachen , die den Player behindern aus dem Script gestrichen. Nun , das Problem ist : der Befehl lautet player.moveto [MARKER] im Orginalscript. Nun will ich das aber auf das feindliche Ziel übertragen. Also ich habe es schon mit Target.moveto und Targetref.moveto versucht , kein Erfolg. Was kann ich da machen?^^

  13. #13
    Du musst den Script um folgende Zeilen ergänzen:

    PHP-Code:
    ref target 
    Kommt zwischen die erste Zeile, in der der Scriptname angegeben ist, und die erste begin-Zeile.

    PHP-Code:
    set target to GetSelf 
    Kommt in den begin ScriptEffectStart-Block.

    dann kannst du den Befehl target.movetomarker benutzen.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •