Construction Set Skriptthread zum Construction Set

Sollte doch eigentlich mit "isSpellTarget" funktionieren...

Allerdings kannst du nicht verhindern, dass der Spieler den anderen Zauber trotzdem zaubert, höchstens durch einen Stille-Effekt, aber der würde ja alle Zauber betreffen.
 
Hallo Leute,

ich möchte einen Gegenstand, den ich "initially disabled" habe, an einem bestimmten Tag zu einer bestimmten Uhrzeit für 1 Stunde sichtbar machen. Genauer gesagt am Sundas von 24:00 Uhr bis 01:00 Uhr. Welches Skript brauche ich dafür?

LG
Arielle
 
Das Objekt-Script; für die Uhrzeit nimmst du die globale Variable gamehour; für den Wochentag hab ich gerde keine Idee.....
 
PHP:
scn ...

Begin GameMode
If (GameHour >= 0) && (GameHour <= 1)
 If (GetDisabled == 0)
   Return
  Else
   Enable
  Endif
Else
 Disable
Endif
End

So müssts sein. :?
Sundas weiß ich aber nicht wie...
 
Das Script ist vollkommen in Ordnung.

@Arielle: Meinst du denn wirklich Sonntag 0-1, oder Montag 0-1; weil du von Sontag 24 gesprochen hast?
 
Ich meine die Nacht von Sundas auf Morndas.
Muss der Wochentag noch ins Skript hinein?
Wär mir aber eigentlich egal. Kann jeder Wochentag sein. Sundas war nur so eine Idee.
 
aber nur an einem?

PHP:
scn ...

short days

Begin GameMode

if days + 7 <= gamedayspassed
  If (GameHour >= 0) && (GameHour <= 1)
    If (GetDisabled == 0)
      Return
    Else
      Enable
    Endif
  Else
    Disable
    set days to gamedayspassed
  Endif
Endif

End
hoffe, das Script passt so^^
 
Das Problem war ja eben, den genauen Tag (auf die Woche bezogen) nicht abfragen zu können. Also habe ich einfach den Tag bei aktivierung des Scripts und jeden siebten danach genommen^^
 
Weil die Suche sche.... ist... ich hab auch was bestimmtes gesucht, und es per direkter suche nicht finden können. Erst als ich über nen ähnlichen befehl gegangen bin, hab ich den gewünschten gefunden.
 
Achso, ich verstehe. GetdayofWeek 1, weil um Mitternacht ja bereits Morndas ist. Sundas wäre in dem Fall 0.

Jetzt erklär mir noch mal dieses Skript. Das würde also jede Woche ablaufen, solange der Gegenstand nicht berührt wird. Der Gegenstand erscheint jede Woche 1 mal zu dieser Uhrzeit.
Ziel meiner Quest ist es, den Gegenstand sofort nach Erscheinen in seinen Besitz zu bringen. Hat man ihn erst in seinem Inventar, dann soll das Skript aber nicht weiterlaufen. Nicht, dass der Gegenstand wieder nach 1 Woche enabled wird, obwohl man ihn schon entwendet hat?
Sorry für die dummen Fragen. Ich verstehe gar nichts vom Skripten.:oops:
 
:eek: Und WIESO ist der über die suche nicht zu finden???

Das CS-Wiki gibt fast nie ähnliche Suchbegriffe an. Ich kannte den Befehl schon, aber man kann auch einfach auf der Seite mit allen Befehlen die Suchfunktion des Browser nutzen (bei Firefox STRG + F), in dem Fall mit dem Suchbegriff "Day".

Achso, ich verstehe. GetdayofWeek 1, weil um Mitternacht ja bereits Morndas ist. Sundas wäre in dem Fall 0.

Jetzt erklär mir noch mal dieses Skript. Das würde also jede Woche ablaufen, solange der Gegenstand nicht berührt wird. Der Gegenstand erscheint jede Woche 1 mal zu dieser Uhrzeit.
Ziel meiner Quest ist es, den Gegenstand sofort nach Erscheinen in seinen Besitz zu bringen. Hat man ihn erst in seinem Inventar, dann soll das Skript aber nicht weiterlaufen. Nicht, dass der Gegenstand wieder nach 1 Woche enabled wird, obwohl man ihn schon entwendet hat?
Sorry für die dummen Fragen. Ich verstehe gar nichts vom Skripten.:oops:

D.h. durch Aktivieren aufgenommen, oder?
Wenn ja, sollte das Sript so aussehen:


Code:
SCN ...

Short i

Begin GameMode

if(i == 0)
  if(getDayofWeek == 1)
   if(gamehour >= 0 && gamehour <= 1)
      if(getdisabled)
           enable
      endif
   else
     if(getdisabled == 0)
          disable
     endif
   endif
  else
   if(getdisabled == 0)
      disable
   endif
  endif
endif

End

Begin OnActivate

if(isactionref == player)
  set i to 1
endif

End
Ich weis jetzt nicht, was Du mit dem Item alles machen willst, aber wenn es abgelegt werden soll/kann, dann musst Du das Skript benutzen. Ansonsten geht auch das Erste.
Und im Prinzip hast Du das Skript schon erklärt. :p
 
Ich weiß aber nicht, ob wir beide das gleiche meinen.

Also: eine Waffe wird nur an jedem Sundas zwischen Mitternacht und 1 Uhr erscheinen. Ich komme dort an, nehme mir diese Waffe und verschwinde.
Falls ich es nicht schaffe, pünklich an diesem Ort zu sein, um mir die Waffe zu nehmen, muss sie am nächsten Sundas um Mitternacht wieder erscheinen, damit ich wieder die Gelegenheit habe, sie zu entwenden.

Stell dir das vor wie mit einem Date: du triffst deine Freundin jeden Sonntag nachmittag. Sie hat nur Sonntag nachmittag Zeit. Wenn du zu spät kommst, hast du Pech gehabt. Dann musst du wieder bis nächsten Sonntag warten.
Mit der Ausnahme, dass die Waffe nicht mehr erscheinen muss, nachdem ich sie mir genommen habe.
Ich hoffe, ich habe das jetzt etwas deutlicher erklären können.:lol:


Edit: die Waffe muss nicht wieder abgelegt werden. Sie bleibt fortan im Besitz des Player. Das Skript wird danach nicht mehr benötigt.
 
Zuletzt bearbeitet:
Oh, sorry, ich vergaß noch zu erwähnen, dass all dies erst ab einer gewissen Queststage passieren soll. Vorher macht das Erscheinen der Waffe keinen Sinn. Ich vermute mal, ich muss noch ein

if getstage Questname Stage

und dann noch ein zusätzlichen endif einfügen.

Ist die Zeile, in der ich das einfügen will, egal? Oder muss ich eine gewisse Reihenfolge bei den Befehlen beachten?



Edit: das Skript hat folgende Fehlermeldung: in Line 29 missing parameter ObjectReferenceID
Müsste dort nicht die ID der Waffe stehen?
 
Zuletzt bearbeitet: