Construction Set Skriptthread zum Construction Set

Ich hab' ein Problem mit einem meiner Scripts.

Code:
scn AAUralteLegionDungeon3ScriptNeuSiegelstein04

short doonce

Begin GameMode

If doonce == 0
    If player.getitemcount AAUralteLegionDungeon3Fokusstein04 1
    
        AAUralteLegionDungeon3NeuSiegelstein04.enable
        player.removeitem AAUralteLegionDungeon3Fokusstein04 1

        set doonce to 1
    Else
        messagebox "Ihr könnt eine Halterung an diesem Objekt erkennen. Scheinbar soll dort irgendetwas hineingesteckt werden."
    Endif
Endif

End
Dieser Script soll dafür sorgen, dass der Spieler bei einem Activator ein Item (= Fokusstein) entfernt bekommt und dieser dafür als WorldObject in der Welt enabled wird.

Was habe ich da falsch gemacht?

EDIT:
Ups ... sry für Doppelpost.

EDIT 2:
Ich Idiot. Das muss ja Begin onActivate heißen :headwall:
 
Zuletzt bearbeitet:
Code:
 scn 00OnlyScript
 
short doOnce
 
Begin GameMode
If doOnce == 0
set doOnce to 1
player.additem NotiID 1
endif
end
 
long day
short done
 
if done == 0
set done to 1
set day to GameDaysPassed
else
if (GameDaysPassed + 7) >= day
set done to 1
player.removeItem Gold001 x
endif
endif
 
end

Bei mir startet nur keine Quest und die 600 Septime werden jede 5 Sekunden abgezogen...:huh:
Was daran falsch,irgendwas mit der Verbindung der zwei Befehlen oder??
 
hey hab mal angefangen dieses script zu schreiben:

scn Name

short buttom


Begin onActivate

MessageBox "wollt ihr das haus kaufen?","Ja (2.500)","Nein."
end

begin gamemode

set Buttom to getbuttonpressed
if buttom == 0
set ahaus to 1

elseif buttom == 1
dem spieler wird das gold mit player remove abgezogen das ist klar. Aber wen der spieler das gold nicht hat, soll ne message kommen das er eben nicht genug gold hat. Wie stell ich das den jetzt an?


Und dann hab ich das hier noch als quest gespeichert:


[/quote]
SCN DKCRhathausTimer

short init
float timer

Begin GameMode

If Ahaus == 1


elseif init == 0


set timer to 25


set init to 1

gegenstand01.enable

else


if timer > 0
set timer to timer - getSecondsPassed

else

endif
endif
end
[/quote]

was stimmt daran nicht, wen der timer ablüft soll der gegenstand halt auftauchen -.-
 
Zuletzt bearbeitet:
So, es geht immer noch nicht :cry:
Der Code sieht momentan so aus ...
scn AAUralteLegionDungeon3ScriptNeuSiegelstein01

short doonce

Begin onActivate

If doonce == 0
If player.getitemcount AAUralteLegionDungeon3Fokusstein01 1

AAUralteLegionDungeon3NeuSiegelstein01.enable
player.removeitem AAUralteLegionDungeon3Fokusstein01 1

set doonce to 1
Else
messagebox "Ihr könnt eine Halterung an diesem Objekt erkennen. Scheinbar soll dort irgendetwas hineingesteckt werden."
Endif
Endif

End
 
Du musst auch ein Relationssymbol in die Bedingung setzen. Also:
Code:
if player.getItemCount <Object-ID> [COLOR="Red"]>=[/COLOR] 1

@Lord4Ever:
Schreibs mal so:
Code:
scn name

short doonce

long day
short done

Begin GameMode

if doonce == 0
 set doonce to 1
 player.addItem <Object-ID> 1
endif

if done == 0
 set done to 1
 set day to GameDaysPassed
else
 if (day + 7) <= GameDaysPassed
  set done to 0
  player.removeItem Gold001 600
 endif
endif

end

Dass keine Quest gestartet wird, liegt daran, dass der entsprechende Befehl fehlt :ugly:

@ Raistlin:
Es wäre vielleicht besser etwas Ordnung in das Skript zu bringen :?
 
Zuletzt bearbeitet:
was meinst du mit ordnung?

Naja ich sag einfach nochmal kurz was ich eigendlich vor hab. Der Player steht vor nem kaputten Haus daneben ein "activator"
wen er auf den activator klickt kommt eine "MessageBox" darin steht das er bei bedarf das haus wieder reparieren kann. Natürlich gegen entwas gold (2.500) nachdem er die antwort "ja" gewählt hat erscheinen vier NPC's die anfangen an der bruchbude rum zu basteln nach ablauf eines Timers verschwinden die wieder und das haus ist fertig. Ich hab einfach über das Kaputte haus ein Neues gestellt also einfach nur nach ablauf des timers den gegenstand enablen. Blos hab ich probleme beim timer. auserdem weis ich nicht wie man es anstellen soll das dem spieler nur dann erlaubt werden soll das haus zu reparieren wen er auch das geld hat. hoffe das war verständlich ^^
 
Hallo, ich schiebe das hier noch einmal dazwischen, vieleicht kann mir ja hier jemand weiterhelfen. Danke.

Ich habe eine Tür angelegt, die automatisch läuft.

Nun möchte ich, dass wenn immer diese Tür benutzt wird vorher Unsichtbarkeit aufgehoben wird.
Ist dies mit einem Script auf die Tür möglich?

PS: Da es wahrscheinlich viele Zauber mit Unsichtbarkeit gibt, wäre es schön, wenn es einen generellen Befehl für Sichtbarmachen geben würde.
 
Hallo, ich schiebe das hier noch einmal dazwischen, vieleicht kann mir ja hier jemand weiterhelfen. Danke.

Ich habe eine Tür angelegt, die automatisch läuft.

Nun möchte ich, dass wenn immer diese Tür benutzt wird vorher Unsichtbarkeit aufgehoben wird.
Ist dies mit einem Script auf die Tür möglich?

PS: Da es wahrscheinlich viele Zauber mit Unsichtbarkeit gibt, wäre es schön, wenn es einen generellen Befehl für Sichtbarmachen geben würde.


Unsichtbarkeit wird doch immer aufgehoben,wenn man etwas benutzt,oder mit jemanden spricht,oder meinst du den Chämäleon-effekt?
 
Wenn der Player aber Gegenstände hat, die Chamäleon als Effekt haben, funktioniert das auch nicht. Zusätzlich zur Bannung wäre dann sowas wie "neutrale" Kleidung, also die der Spieler nicht ablegen kann und die alle Slots blockiert, meines Erachtens nach die einzige Möglichkeit.
 
Ich bräuchte einen - ehm - nun, sagen wir einen Showeffekt :lol:

Beim Aktivieren eines Activators soll einige Dinge langsam nach oben steigen und dann soll an der Stelle jedes einzelnen Gegenstandes ein Feuerball-Effekt aktiviert werden. Dabei sollen die Gegenstände dann disabled werden.

Sorry, wenn das jetzt etwas ungenau ist, aber ich weiß nicht wie ichs besser beschreiben soll :?
 
Hi, warum ich ein "Aktiver-Unsichtbarkeitszauber-Disable" suche?

Es ist folgendes: Wenn ich als Avatar einen Unsichtbarkeitszauber, wie z.B. Mondschatten anwende und dann durch die automatische Tür in ein anderes Interior springe ist der Avatar "frozen".

D.h. man kann ihn nicht mehr bewegen und der Unsichtbarkeitszauber wirkt noch.

Ansonsten funktionieren diese Türen einwandfrei.
 
Ich bräuchte einen - ehm - nun, sagen wir einen Showeffekt :lol:

Beim Aktivieren eines Activators soll einige Dinge langsam nach oben steigen und dann soll an der Stelle jedes einzelnen Gegenstandes ein Feuerball-Effekt aktiviert werden. Dabei sollen die Gegenstände dann disabled werden.

Sorry, wenn das jetzt etwas ungenau ist, aber ich weiß nicht wie ichs besser beschreiben soll :?

Hat sich erledigt ... aber ich bräuchte noch was anderes ...

Gibt es einen Befehl, welcher einen NPC zwingt, mit mir zu kämpfen. Denn manche Gegner fliehen recht schnell und das ist auf Dauer richtig nervig.

:bye:
 
Noch eine Frage:

Ich möchte über eine Triggerbox einen Sound abspielen lassen. Der Sound soll aktiviert werden, sobald der Player die Triggerbox betritt, der Sound soll auch die ganze Zeit weiterlaufen solange der Player sich in der Triggerbox aufhält, wenn er die Triggerbox verlässt soll der Sound aufhören.

Ich habe dazu dieses Script erstellt. Ich glaube aber es ist falsch, denn der Sound wird nicht abgespielt.

scn 00TriggerboxMarktsound
short doonce
begin OnTrigger Player
if doonce == 0
set doonce to 1
PlaySound AAMarkt
endif
end

Ich möchte erklärend noch dazusagen, dass ich den Sound mit der Triggerbox verlinkt habe, indem ich im Renderfenster den Sound angeklickt habe, im Reiter "Enable Parent" die Referenz (also die Triggerbox) gewählt habe, "Set enable State to opposite of Parent" , "Persistant Reference" und "initially disabled" angehakt habe.

Ich würde mich freuen, wenn mir jemand helfen könnte.

LG
Arielle 1000
 
also für "playsound" musst du eig den sound-marker gar nicht ins render window ziehen sondern einfach die ID des sounds dahinterschreiben.dadurch wird er zumindest abgespielt.

dass er aufhören soll wenn man nicht mehr in der triggerbox ist ist schwerer da es nicht sowas wie "begin onuntrigger" gibt.
vllt solltest du einfach beim sound ein häkchen unter "loop" machen und ihn ohne triggerbox in die welt setzen.dann wird er vom soundmarker einfach abgespielt und man hört ihn bis auf eine gewisse etfernung,vom prinzip her dürfte es ja das sein was du willst oder?!
 
Ja, genau. So hatte ich das auch eingangs gemacht, also nur den Sound ohne Trigger in die Welt gesetzt. Den hat man dann aber kilometerweit gehört.:lol: Ich habe dann die Regler bei Minimum Attenuation und Maximum Attenuation hoch und runtergeschaltet, das Ergebnis blieb ingame aber immer gleich. Der Marktsound war bis zum anderen Ende der Talosbrücke zu hören.:D
Gibt's da bestimmt Einstellungen im Soundfenster, die ich berücksichtigen muss?
 
also wenn ich mir die anderen spund im cs so ansehe würde ich sagen dass du minimum und maximum beides auf 0 setzen solltest und der 3. regler "static attenuation" die lautstärke regelt...