Construction Set Der Scriptthread

Hi zusammen,

nach langer Abwesenheit versuch ich mich auch wieder am CS. Nun will ich mich auch ein wenig ans Scripten versuchen.

Ich möchte nun folgendes:
Eine Frucht, die ich als Activator habe, soll nicht aufnehmbar sein (also das Script "nopickup") und zwischen 21 und 7 Uhr morgens verchwinden.

Wie müsste dieses jetzt angelegt werden? Hab hier mal gesehen, dass Verganon mit einem ähnlichen Script in diesem Thread Probleme hatte.

Schon mal danke im Voraus.
 
Ich kenn zwar nicht die Befehle, aber sollte nicht so schwer sein.

Man braucht als grundkonzept erstmal einen Timer, den kann man sich von dem Tor am Hlmaron oder dem Tor der Höhle des Fleischgewordenen. Dann gibt es bestimmt nen Befehl, mit dem man den Gegenstand verschwinden lassen kann. Eventuell verscheibt man ihn auch nur in eine andere Cell, die ansonsten vollkommen leer ist, demnach ein stück aus dem Milo-script, mit der Mera Milo in das Minesterium der Wahrheit ''teleportiert'' wird.

Also:

if ''die und die Tageszeit''
set invisible / set to cell xy
if ''eine andere Tageszeit''
set visible / set back to cell xy
end if
end if

So ungefähr sollte der Hauptteil aussehen. Leider kenn ich die Befehle nicht auswendig, ich schau daher noch mal nach und EDIT dann.

Gruß: TakoTatsujin


EDIT:
Code:
[B][SIZE=2]short xxx  ;für die xxx kommt der befhel zum verschwinden usw.[/SIZE][/B]
 
 
[B][SIZE=2]float timer[/SIZE][/B]
[B][SIZE=2]if ( menumode == 1)[/SIZE][/B]
[B][SIZE=2]  return[/SIZE][/B]
[B][SIZE=2]endif[/SIZE][/B]
[B][SIZE=2]  set xxx to 0      ;für die xxx kommt der befhel zum verschwinden usw.[/SIZE][/B]
 
[B][SIZE=2]if ( Gamehour > 6 )[/SIZE][/B]
[B][SIZE=2] if ( Gamehour < 8 )[/SIZE][/B]
[B][SIZE=2]     set xxx to 1   ;für die xxx kommt der befhel zum verschwinden usw.[/SIZE][/B]
[B][SIZE=2]endif[/SIZE][/B]
[B][SIZE=2]endif[/SIZE][/B]
 
 
[B][SIZE=2]if ( Gamehour > 18 )[/SIZE][/B]
[B][SIZE=2] if ( Gamehour < 20 )[/SIZE][/B]
[B][SIZE=2]        set xxx to 1   ;für die xxx kommt der befhel zum verschwinden usw.[/SIZE][/B]
[B][SIZE=2] endif[/SIZE][/B]
[B][SIZE=2]endif[/SIZE][/B]

Das ist schon mal der Timer. Jetzt musst du nur noch deine Zeiten eintragen und den Befehl zum Verschwinden und wiederauftauchen holen. Dann sollte eigendlich alles klappen.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Mercarryn
Im CS klappt alles wunderbar, aber wenn ich den Würfel anklicke, und auf Öffnen gehe, springt kurz der container auf, geht dann aber sofort wieder zu, ohne, das ich etwas machen kann. Ich habe auch die Sachen dabei, die ich mir eingetragen habe, aber irgendetwas stimmt noch nicht.

So sieht der Script jetzt aus. Ich habe 5x Ebenerz dabei, 5 Feuersalz und 5 Große Seelensteine, aber mein Schwert bekomm ich dennoch nicht.

Und wenn ich einmal auf ''Würfeln'' klicke, kann ich den Würfel garnicht mehr benutzen.
schau dir den Code erst nochmal genauer an ... in deinem Beispiel ist im unteren Abschnitt zumindest schon mal ein "endif" zuviel

außerdem prüfst du ob jede komponente mindestens einmal vorhanden ist, tust aber 5 entfernen ... müsstest du noch entsprechend anpassen
 
Zuletzt bearbeitet:
  • Like
Reaktionen: TakoTatsujin
Ich habe die Werte jetzt angepasst, aber da lag nicht der Fehler. Das Fenster erscheint trotzdem ganz kurz verschwindet dann wieder und nichts ist passiert. Und wenn ich auf ''Würfeln'' klicke ist wieder alles zuende, wenn ich den Würfel dann wieder anklicke passiert garnichts mehr, weder öffnet sich die Messagebox noch sonst etwas.

Gruß: TakoTatsujin
 
Ich habe die Werte jetzt angepasst, aber da lag nicht der Fehler. Das Fenster erscheint trotzdem ganz kurz verschwindet dann wieder und nichts ist passiert. Und wenn ich auf ''Würfeln'' klicke ist wieder alles zuende, wenn ich den Würfel dann wieder anklicke passiert garnichts mehr, weder öffnet sich die Messagebox noch sonst etwas.

Gruß: TakoTatsujin

also wenn das Inventar-Fenster gleich wieder zugeht, dann tut da das "return" vermutlich dazwischenfunken ... nimms einfach mal komplett raus, der Rest ist ja eh mit if-Anweisungen gekapselt

dass das Würfeln nur einmal geht liegt daran, dass die Variable "state" nur wieder auf 0 gesetzt wird, wenn das richtige Zeug in der Truhe ist ... andernfalls bleibt "state" auf 2 und das Skript dreht sich im unteren Teil immer wieder im Kreis ... setze mal ganz am Ende vom Skript "state" wieder auf 0, dann müsste das gehen
 
  • Like
Reaktionen: TakoTatsujin
Ein ''set state to 0'' macht dem Ganzen dann den Gar aus. Wenn ich ''set state to 0'' am Ende noch einfüge, ist es so wie als hätte der Würfel einfach nur einen Namen über sich. Wenn ich ihn dann anklicke passiert nichts.
Ich hab auch schon versucht die Reihenfolge von ''Activate'', ''set state to 0'' und ''Return'', weil oben kommen die Zeilen auch schonmal vor aber in anderer Reihenfolge, das hat dann aber auch nichts gebracht.
Die ''Returns'' zu streichen hat auch nichts gebracht.

Bin ratlos. Irgendwo, verhindert eine Zeile, dass das Fenster offen bleibt, aber ich frag mich soll das eigendlich offen sein? Weil in dem Script ja eh steht, ''REMOVEITEM'', heißt das nicht zwangsläufig, dass die Gegenstände durch den Script aus meinem Inventar verschwinden?

Gruß: TakoTatsujin
 
also wenn das Inventar-Fenster gleich wieder zugeht, dann tut da das "return" vermutlich dazwischenfunken ... nimms einfach mal komplett raus, der Rest ist ja eh mit if-Anweisungen gekapselt

dass das Würfeln nur einmal geht liegt daran, dass die Variable "state" nur wieder auf 0 gesetzt wird, wenn das richtige Zeug in der Truhe ist ... andernfalls bleibt "state" auf 2 und das Skript dreht sich im unteren Teil immer wieder im Kreis ... setze mal ganz am Ende vom Skript "state" wieder auf 0, dann müsste das gehen

Genau deswegen habe ich das Return reingepackt ;)

Dann mache es wie Tommy vorgeschlagen hat mit einem Umweg über state == 2. In diesem zählst du eine andere Variable bis 5 hoch und gehst erst dann raus. 5 Frames sollten auf jeden Fall reichen um das OnActivate zu klären.

Code:
short count
[...]
if ( state == 2 )
  set count to count + 1
  if ( count == 5 )
    set count to 0
    set state to 0
  endif
endif
 
@Tako: Hab das mal probiert, leider funktioniert es bei mir nicht. Ausserdem haben die beiden von dir angesprochenen Scripts das Problem, dass sie nur zwischen 6 und 8 Uhr die Aktivität ausführen.

Ich bin aber durch deine Idee mal etwas anders vorgegangen, leider klappt dies so auch noch nicht. Vielleicht entdeckt einer den Fehler:

Code:
begin "Verschwindibus"

short disable
float timer
if ( menumode == 1)
    return
endif

set disable to 1

if ( Gamehour >= 6 )
    if ( Gamehour <= 19 )
        enable
else disable
    endif
endif
end
Durch das Script soll der Gegenstand erstmal disabled sein. Wenn die Tageszeit dann zwischen 6 und 19 Uhr liegt, soll er enabled werden, ansonsten bleibt er disabled.
Aber wo genau liegt jetzt das Problem?
 
@Mercarryn:

Activator können sowieso nicht aufgenommen werden. Das Aufnehmen müsstest du erst extra scripten.

Code:
begin my_verschwindibus_script

short state

if ( state == 0 )
  if ( GameHour > 21 )
    Disable
    set state to 1
  elseif ( GameHour < 7 )
    Disable
    set state to 1
  endif
endif

if ( state == 1 )
  if ( GameHour > 7 )
    if ( GameHour < 21 )
      Enable
      set state to 0
    endif
  endif
endif

end
 
  • Like
Reaktionen: Mercarryn
@Killfetzer: Jop, das hab ich mittlerweile auch festgestellt. :oops:

Jedenfalls funktioniert dein Script ohne Probleme. Werd das dann auf andere Sachen auch noch verwenden können. Thx
Also hat in meinem Script die state-Abfrage gefehlt. Ok, muss ich mir merken.
 
Zuletzt bearbeitet:
Also hat in meinem Script die state-Abfrage gefehlt. Ok, muss ich mir merken.
die state-Variable ist in Killfetzers Beispiel nur dazu da sicherzustellen, dass das Objekt nur einmal in der jeweiligen Zeitspanne disabled bzw. enabled wird (anstatt mehrmals pro Sekunde ;)) ... alternativ kann man das übrigens auch mittels GetDisabled umsetzen:

Code:
if ( GetDisabled )
  if ( GameHour > 7 )
    if ( GameHour < 21 )
      Enable
    endif
  endif
elseif
  if ( GameHour > 21 )
    Disable
  elseif ( GameHour < 7 )
    Disable
  endif
endif

TakoTatsujin schrieb:
Bin ratlos. Irgendwo, verhindert eine Zeile, dass das Fenster offen bleibt, aber ich frag mich soll das eigendlich offen sein? Weil in dem Script ja eh steht, ''REMOVEITEM'', heißt das nicht zwangsläufig, dass die Gegenstände durch den Script aus meinem Inventar verschwinden?
Die Gegenstände werden nicht aus deinem Inventar sondern aus dem Container entfernt auf dem das Skript liegt ... funktionieren soll das laut Killfetzers Aufbau so, dass man sein Zeug reinpackt und beim "würfeln" wird dann geprüft ob die richtigen Gegenstände in entsprechender Anzahl drin sind - wenn das der Fall ist werden diese entfernt, das Erzeugnis hinzugefügt und der Container aktiviert bzw. geöffnet, damit du das Erzeugnis rausnehmen kannst
 
Ok, dann ist das wohl doch so gemeint wie ich zuerst dachte. Aber ich habe dennoch das Problem, dass das Fenster zum hineinlegen, sofort wieder zugeht, nach dem es sich geöffnet hat. Ich habe zwar durch das Anhängsel von Killfetzer jetzt das Problem mit dem ''Würfeln'' nicht mehr, das andere ist aber immer noch da.

@Mercarryn: Die Zeiten die ich da hatte waren auch die, von dem Ehemaligem Script. Da solltest du deine eigenen Zeiten eintragen, denn die Wusste ich ja nicht ;). Aber zum Glück kamen dann ja einige Erfahrenere Scripter und haben dir geholfen.Ich hoffe, das schaffen sie auch bei meinem Problem, bin da aber recht zuversichtlich.

Gruß: TakoTatsujin
 
Tag alle zusammen

Ich möchte gerne ein Script auf eine Kreatur legen, aber leider funktioniert er dann nicht.
Es ist der ProximityMine Script
Mit denn Script will ich eine art Über Elementar Kreatur machen

Könnt ihr mir bitte denn so abändern dass er Funktioniert?


Code:
begin proximityMine

float playerdistance
float timer
float resettime
short proximity
short triggered
short dieroll
short sneakskill
short whichspell
short initialized

if ( MenuMode )
    return
endif


if ( initialized == 0 )
    set proximity to 300        ;range for mine
    set resettime to 4            ;time for mine to reset itself
    set initialized to 1
endif

if ( triggered == 1 )
    set timer to ( timer + GetSecondsPassed )
    if ( timer > 4 )
        set triggered to 0
        set timer to 0
    endif
    return
endif

set playerdistance to GetDistance "player"

if ( playerdistance < proximity )
    set triggered to 1

    if ( GetPCSneaking == 1 )
        set dieroll to ( Random 100 )
        set sneakskill to ( player->GetSneak )
        if ( dieroll < sneakskill )
            return
        endif
    endif

    ;must be touch range spells
    set whichspell to Random 4
    if ( whichspell == 0 )
        Cast "prox_mine_fire" player
    elseif (whichspell == 1 )
        Cast "prox_mine_frost" player
    elseif (whichspell == 2 )
        Cast "prox_mine_poison" player
    elseif (whichspell == 3 )
        Cast "prox_mine_shock" player
    elseif (whichspell == 3 )
        Cast "prox_mine_life" player
    endif

endif

End ProximityMine
Gruß Houdini
 
hiho,

hab hier ja gestern geschrieben, dass ich meine seit ein paar Jahren verschollenen Skriptmods für Morrowind wieder gefunden hab und die jetzt nochmal aufbereiten und veröffentlichen will ... hier mal 2 dieser Skripte (kann man als Start-Skript einfügen)

1) Lebenspunkte-Skript

Das Skript nimmt die Standard-Berechnungsformel für Lebenspunkte und tut diese bei jedem Levelanstieg bzw. Stärke/Konstitutions-Steigerung basierend auf den aktuellen Werten neu berechnen, d.h. die Lebenspunkte sind unabhängig davon auf welchem Level man seine Konstitution gesteigert hat.

Code:
begin _updatehealth

float health
float damage
short endurance
short strength
short old_endurance
short old_strength
short old_level

; erst updaten, wenn Charakter-Erstellung beendet
if ( CharGenState != -1 )
   return
endif

; nur updaten, wenn Lebenspunkte nicht magisch erhöht wurden
if ( ( player->geteffect sEffectFortifyHealth ) == 1 )
   return
endif

; nur updaten, wenn sich Stärke, Konstitution oder Level ändern
if ( ( player->getendurance ) == old_endurance )
   if ( ( player->getstrength ) == old_strength )
      if ( ( player->getlevel ) == old_level )
         return
      endif
   endif
endif

; maximale Lebenspunkte ermitteln
set health to ( player->gethealth )
set health to ( health / ( player->gethealthgetratio ) )	

; Schaden an Lebenspunkten ermitteln
set damage to ( ( player->gethealth ) - health )

; Lebenspunkte berechnen
set endurance to ( player->getendurance )
set strength to ( player->getstrength )
set health to ( ( endurance / 10 ) * ( ( player->getlevel ) - 1 ) + ( endurance + strength ) / 2 )

; Lebenspunkte aktualisieren
player->sethealth health
player->modcurrenthealth damage

; Stats updaten
set old_endurance to ( player->getendurance )
set old_strength to ( player->getstrength )
set old_level to ( player->getlevel )

end


2) Magicka-Skript

Das Skript nutzt die Standard-Lebenspunkte-Berechnungsformel für einen levelbasierenden Magicka-Anstieg. Soll heißen, dass man mit jedem Level 10% seiner Intelligenz als Magicka-Anstieg angerechnet bekommt. Der Intelligenz-Modifier von Sternzeichen/Ausrüstung wird korrekt oben drauf gerechnet.

Code:
begin _updatemagicka

float magicka
float damage
short intelligence
short modifier
short old_intelligence
short old_level

; erst updaten, wenn Charakter-Erstellung beendet
if ( CharGenState != -1 )
   return
endif

; nur updaten, wenn Magicka nicht magisch erhöht wurde
if ( ( player->geteffect sEffectFortifySpellpoints ) == 1 )
   return
endif

; nur updaten, wenn Intelligenz oder Level sich ändern
if ( ( player->getintelligence ) == old_intelligence )
   if ( ( player->getlevel ) == old_level )
      return
   endif
endif

; aktuelles Magicka ermitteln
set magicka to ( player->getmagicka )

; Magicka auf max setzen
player->modcurrentmagicka 99999

; Magicka-Modifier ermitteln
set intelligence to ( player->getintelligence )
set modifier to ( ( player->getmagicka ) / intelligence )

; verbrauchtes Magicka ermitteln
set damage to ( magicka  - ( player->getmagicka ) )

; Magicka berechnen
set magicka to ( ( intelligence + ( intelligence / 10 ) * ( ( player->getlevel ) - 1 ) ) * modifier )

; Magicka aktualisieren
player->setmagicka magicka 
player->modcurrentmagicka damage

; Stats updaten
set old_level to ( player->getlevel )
set old_intelligence to ( player->getintelligence )

end

wär schön wenn hier die Skript-Spezialisten wie Killfetzer & Co mal drüberschauen, ob das alles korrekt ist bzw. ob auch alle Eventualitäten abgedeckt wurden - im Anschluss werd ich diese dann wohl als "Mods" ins Forum stellen

@TakoTatsujin
werd mir deinen "Würfel" bei Gelegenheit mal anschauen ... bisher waren die Tipps ja rein hypothetisch ohne es selbst zu testen

edit:
ah hab grad bei meinem Magicka-Skript schon selber nen Fehler gefunden - der Int-Modifier wird zwar beim Intelligenzupdate korrekt erkannt (da dabei der Magicka-Wert auf die Standard-Formel resettet wird), aber nicht beim Level-Update wo ich die 10% berücksichtigen müsste ... muss ich mir mal einen Workaround zurechtlegen ... mal schaun ob das dann alles stimmt

generell ist das wohl noch etwas komplexer ... bei Gegenständen wie "Mantel des Wehklagens" wird der Magickawert auch resetet - müsste ich auch irgendwie ermitteln und dann neuberechnen
 
Zuletzt bearbeitet:
So ich bins nochmal, mit einer weiteren Anfrage ;D

Ich suche ein Script oder auch mehrere wenn man sie benötigt die folgenes bewirkt:

Ein Spieler nähert sich einer Tür, diese soll sich selbständig öffnen (nach einer Zeit auch wieder schlissen, sprich auf die Anfangsbasis zurück) wenn man einen gewissen Gegend stand im Inventar hat, hat er ihn nicht, so soll diese Türe verschlossen bleiben und auch nicht benutzbar sein. Ich hoffe das geht :D Nennen wir es eine "automatische Türe" die man bei Kaufhäusern kennt ^^

Ich denke das hier zwei Scripte benötigt werden oder? eine für den Gegenstand im Inventar und eine für diese türe..
 
Zuletzt bearbeitet:
@ Tommy: wie du selbst gemerkt hast, kann man das Ding mit veränderten Stats/MUltiplikatoren ziemlich leicht abschießen. Hab selbst mal was gebaut das das gleiche (bis auf stärke Startbonus) tut wie dein erstes:RHPI, ist wesentlich sicherer.

@Dax`ta nein, eines reicht
 
@IvanDaVile
oh wusste gar nicht, dass hier sowas schon rumschwebt - die Skripte kommen bei mir aus meinen alten Beständen aus 2006/2007 die jetzt per Zufall wieder aufgetaucht sind ... hab hier auch einen fast fertigen LevelingMod (in etwa eine Mischung aus GCD und MaddLeveler), welchen ich wohl bald etwas aufpolieren werde - da gibts auch viele Stellen wo man die Engine einfach mal austricksen muss

was mein Magicka-Skript anbelangt hab ich bzgl. dem ersten Problem jetzt einfach ein "player->modintelligence 0" eingefügt, dadurch wird das Magicka auch neu nach Standard-Formel berechnet und ich bekomme den richtigen Int-Multiplikator heraus ... nun bleibt noch das zweite Problem mit den Gegenständen: Stat-Änderungen (also Int) sind hier kein Problem (werden ja erfasst), Magicka festigen wird schon ignoriert ... bleibt also nur noch die Erkennung von Items mit Multiplikator ... da fällt mir bestimmt auch nochwas ein (oder einem der anderen Skript-Spezis hier ;))

@Dax`ta
hier mal ein erster Entwurf für dein Problem (noch komplett ungetestet) ... hab alles mal soweit kommentiert, damit das auch nachvollziehbar ist
Code:
short open

if ( OnActive == 1 ) ; wenn manuell aktiviert
   if ( open == 0 ) ; wenn Tür geschlossen
      set open to 1 ; ändere Status auf offen
   else ; wenn Tür offen
      set open to 0 ; ändere Status auf geschlossen
   endif
   activate ; Tür öffnen bzw. schließen
   return
endif

if ( ( GetDistance player ) < 200 ) ; wenn Player in der Nähe der Tür
   if ( ( player->GetItemCount "Gegenstand" ) > 0) ; wenn Player Gegenstand hat
      if ( open == 0 ) ; wenn Tür geschlossen
         set open to 1 ; ändere Status auf offen
         activate ; Tür öffnen
	 return
      endif
   endif
else ; wenn Player nicht in der Nähe der Tür
   if ( open == 1 ) ; wenn Tür offen
      set open to 0 ; ändere Status auf geschlossen
      activate ; Tür schließen
      return
   endif
endif[/spoiler]
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Dax`ta
Ein Spieler nähert sich einer Tür, diese soll sich selbständig öffnen (nach einer Zeit auch wieder schlissen, sprich auf die Anfangsbasis zurück) wenn man einen gewissen Gegend stand im Inventar hat, hat er ihn nicht, so soll diese Türe verschlossen bleiben und auch nicht benutzbar sein. Ich hoffe das geht :D Nennen wir es eine "automatische Türe" die man bei Kaufhäusern kennt ^^

Das Script hängt stark davon ab, wie deine Tür funktionieren soll. Ist es eine normale Tür oder eine Schiebetür? Soll die Tür im nicht aktivierten Zustand unsichtbar sein (zB. die Geheimtür für das kaiserliche Festungsset)?

Da es vom Prinzip keinen Unterschied macht, bastele ich dir mal einen unsichtbaren Activator, der sich zum Öffnen um 90° dreht. Dazu gibst du dem Activator einfach keinen Namen und legst das Script auf ihn.

Code:
begin my_secret_door_script

short state
short doonce
float timer

if ( MenuMode == 1 )
  return
endif

if ( OnActivate == 1 )  ;Nur nötig, wenn das Objekt eine Door ist. Ein Activator braucht diesen Teil nicht.
  return
endif

if ( state == 0 )
  if ( GetDistance Player < 512 )  ;Hier gewünschten Abstand zum Öffnen eintragen.
    if ( Player->GetItemCount "my_secret_key" >= 1 )   ;Name des Schlüssels eintragen.
      PlaySound3D "Stone Door Open 1"
      set state to 1
    endif
 endif
elseif ( state == 1 )
  set timer to timer + GetSecondsPassed
  if ( timer < 1 )
    RotateWorld Z 90
  elseif ( timer > 11 ) ;Zeit, die die Tür offen bleiben soll (+1)
    if ( timer < 12 )  ;Zeit, die die Tür offen bleiben soll (+2)
      if ( doonce == 0 )
        PlaySound3D "Stone Door Close"
        set doonce to 1
      endif
      RotateWorld Z -90
    else
      set timer to 0
      set state to 0
      set doonce to 0
    endif
  endif
endif

end

PS: Diesmal mal elegant gescriptet, auch wenn ich meine normale Struktur weitaus übersichtlicher finde ;)

@Tommy:
Activate funktioniert bei Türen leider nicht. Schließen kannst du Türen per Script auf diese Art (mit Lock 0 und Unlock), allerdings kannst du sie nur per manueller Bewegung öffnen. Eine mit diesem Trick geschlossene Tür funktioniert danach übrigens nicht mehr wie gewollt (sie dreht sich in ziemlich zufällige Richtungen).

Zu deinem Magie-Problem:
Maximalen Magierwert festigen ist ein Zaubereffekt. Du kannst ihn also detektieren. Seine Stärke könntest du bekommen, indem du die Intelligenz um 1 änderst und dir den Effekt auf Magie anguckst.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Tommy und Dax`ta
Du bist unheimlich :eek: Woher wusstest du das es eine Geheimtür ist die ich dafür benutze? So ich habe einen test gemacht, bis auf "endif" das ich noch einfügen musste klappt das Script alle Achtung, danke dir ;) man sieht das dort keine Türe ist und viol'a ^^

@Tommy

Auch dir ein Dank, dein Script hat leider ein Problem, ich weis nicht was, aber bei mir kommt etwas mit Zeile 12 sei falsch..

edit: Ich habs, Rechtschreibfehler, den ich dort gemacht habe...

kurze Frage, kann man das ganze auch mit einen Schalter regeln? Muss jetzt kein Script sein, aber mich hat der versteckte raum aus "eine Hand voll Herz" imponiert. Da ging eine Wand nach oben, der Schrank der davor stand, schob sich um 90 Grad nachlinks und man konnte in diesen Raum..ist das Reproduzierbar?
 
Zuletzt bearbeitet:
Du bist unheimlich :eek: Woher wusstest du das es eine Geheimtür ist die ich dafür benutze?

Eine Tür, die vom Spieler in keiner Weise aktivierbar ist, wenn er einen bestimmten Gegenstand nicht hat? Hört sich für mich sehr nach einer Geheimtür an ;)

kurze Frage, kann man das ganze auch mit einen Schalter regeln? Muss jetzt kein Script sein, aber mich hat der versteckte raum aus "eine Hand voll Herz" imponiert. Da ging eine Wand nach oben, der Schrank der davor stand, schob sich um 90 Grad nachlinks und man konnte in diesen Raum..ist das Reproduzierbar?

Natürlich. Man kann die Geheimtür auch über einen Schalter steuern (sieh dir das Geisterpforte-Script an). Und man kann auch eine (fast beliebig) komplizierte Geheimtür basteln.
 
  • Like
Reaktionen: Dax`ta