Construction Set Skriptthread zum Construction Set

@ Holle
Komisch, dass das nicht geht. Müsste eigentlich gehen. Hast du das auch alles richtig ohne Fehler eingetippt? Wenn du wissen willst, wie man das ohne Global-Variable macht, dann kannst du gerne noch warten ;), aber wenn du gleich eine einfache Lösung willst, dann würde ich es so machen:

1. Du erstellst eine Global Variable mit Namen var01
1.1 Das geht oben unter "Gameplay", dann gehst du auf "Globals..."
1.2 In dem Fenster, das sich dann öffnet, kannst du dann in der Liste rechtsklicken und gehst auf "New".
1.3 In der neuen Textbox gibst du dann einfach var01 ein und fertig
2. Nun Löschst du im FackelScript noch die Ref, sodass nur noch "if var01 == 1" darsteht

Tja, das wars (schön ausführlich):D
Das dürfte klappen ;)
 
Zuletzt bearbeitet:
was stimmt an dem script nicht?:

PHP:
scn 100startscriptwache
Begin GameMode
if player GetDistance player <20
meinestartwache.startConversation player, Greeting
endif
end


meinestartwache ist mein NPC ID. Ich habe den script auf Objekt gestellt. ging nicht. dann habe ich ihn auf Quest gestellt. ging auch nicht. was hab ich falschgemacht.
kann mir jemand helfen.

Die Fehlermeldung:
Syntax error. Invalid reference `meinestartwache`(only objekt references and reference variables are allowed in this context).

Leg das Skipt einfach auf deine Stadtwache und lass das "meinestartwache" weg.

Dann musst du noch die Entfernung viel größer machen.
Die Zahl die bei Getdistance steht sind GameUnits ( eine sehr kleine Einheit)

7 Gameunits entsprechen 1cm , jetzt kannst du ausrechnen wie nah du der Wache kommen musst dass sie "Hallo" sagt,wenn du die Enzfernung auf 20 machst ^^
 
  • Like
Reaktionen: hallo1
Hi,
ich brauch jetzt auch mal Hilfe bei einem Script, bzw. einen ganz neuen.

Ich möchte einen Timer aktivieren, der dann eben eine bestimmte Zeit (zB. 60 sec) runterläuft. Und man soll oben links per Message sehen, wie viel Zeit man noch hat. (nicht mit Messagebox^^).
Hauptsächlich ist mir nur das Scripten eines Timers wichtig. Ich brauche nur die Funktion.

Danke
Mfg Gildur
 
Ich wollte mal wissen welches script abfragt, bei welchem level sich ein bestimmter skill befindet z,B die zerstörung

Ich habs dann so probiert :-D

If (Player.Getskill destruction >= 100)

Aber es war natürlich falsch :D

Kann mir einer helfen ?

MFG ALEXI
 
  • Like
Reaktionen: Bob der Baumeister
@Gildur:

Code:
scn GildursTimer 

float timer
short time

Begin Gamemode

if timer < 60

set timer to timer+ getsecondspassed
set time to 60 -Timer
message " Noch %.0f Sekunden übrig " , time , 1

elseif timer >= 60 
MessageBox " Zeit ist um!"
endif 

End

Gruß sinHHHans
:)
 
  • Like
Reaktionen: Gildur
Hi Leute!

Hab da mal ein Problem und brauche Hilfe. :)

Also, ich will einen Türmechanismus erstellen, die Objekte hab ich schon erstellt. Ich habe jeweils TürmechaB1 und TürmechaB2, sowie TürmechaSk1 und TürmechaSk2 erstellt.
Nun hab ich auf die Objekte TürmechaB1 & 2 folgendes Script gelegt:

Code:
begin onactivate

       if player.getitemcount "Tralala1" == 1
         TürmechaSk1.enable
         TürmechaB1.disable
         player.removeitem "Tralala1"
       endif

end


Code:
begin onactivate

       if player.getitemcount "Tralala2" == 1
         TürmechaSk2.enable
         TürmechaB2.disable
         player.removeitem "Tralala2"
       endif

end

Nun, die Script funktionieren so wie gewollt, nur wie kann ich bewirken, dass, nachdem ich die beiden Türmechanismen betätigt habe, die vorher platzierte unmöglich-verschlossene Tür unlocken kann?

Freundliche Grüße, Brachial.
 
Code:
"die vorher platzierte unmöglich-verschlossene Tür".lock 99

Jetzt ist doe Tür mit einem sehr schwer- Schloß ausgestatet
 
Erstmal Danke sinHHHans, aber das meinte ich nicht. ;)
Ich meinte, dass nachdem ich die Türmechanismen betätigt habe, die Tür sich unlockt, also Lock-level 0 hat. Ich weiß, dass es mit dem Befehl
Code:
türref.unlock
die Türe aufschließt, aber ich weiß nicht, wo ich diesen Befehl in mein/e Script/e einbauen soll... :cry:
 
öhmmmmm vllt so

Code:
 begin onactivate

       if player.getitemcount "Tralala1" == 1
         TürmechaSk1.enable
         TürmechaB1.disable
         player.removeitem "Tralala1"
       endif
dorref.unlock

end

Code:
begin onactivate

       if player.getitemcount "Tralala2" == 1
         TürmechaSk2.enable
         TürmechaB2.disable
         player.removeitem "Tralala2"
       endif
dorref.unlock

end

wenn ich es richtig verstanden habe :p

MFG ALEXI
 
  • Like
Reaktionen: Bob der Baumeister
Hi,
der Script von Alexi ist natürlich korrekt. :p
Aber ich dachte, die Tür soll sich nur dann öffnen, wenn man den Gegenstand "Tralala1" bzw "Tralala2" im Inventar hat.
In dem Fall müsste man den Befehl...
Code:
doorref.unlock
...in die If-Anweisung bringen.
Demnach würde das für "Tralala1" so aussehen:
Code:
begin onactivate

       if player.getitemcount "Tralala1" == 1
         TürmechaSk1.enable
         TürmechaB1.disable
         doorref.unlock
         player.removeitem "Tralala1"
       endif

end

Und das selbe eben wieder auch mit "Tralala2":
Code:
begin onactivate

       if player.getitemcount "Tralala2" == 1
         TürmechaSk1.enable
         TürmechaB1.disable
         doorref.unlock
         player.removeitem "Tralala2"
       endif

end
 
Zuletzt bearbeitet:
Vielen Dank euch beiden, aber so meinte ich das eigentlich auch nicht wirklich. ;)

Ich will, dass sich die Tür erst öffnet, wenn man BEIDE Türmechanismen betätigt hat, bei eurem Vorschlag würde sich das ja schon nach der Betätigung von einem Mechanismus die Tür öffnen.

Trotzdem Danke. ;)
 
Ok, kannst du dann nur noch genau sagen, was der Türmecha seien soll?^^
Edit: Und wann der aktiviert werden soll? Gleich beim aktivieren des Hebels oder erst beim aktivieren beider Hebel?
 
Edit: sry wegen doppelpost, ich wollt noch gar nicht schreiben^^ xD
Bitte verzeiht mir
/Edit
Wenn Türmecha aktiviert werden soll, sobald man den vorgesehenen Hebel aktiviert, würde ich es so machen:
1.: Eine Global Variable, die man z.B. IsOpen nennt (wie ich es sehr gerne mache:D)
2.: die Scripts umändern:

Demnach würde das für "Tralala1" so sein:
Code:
short Hebel1

begin onactivate

       if player.getitemcount "Tralala1" == 1
         If IsOpen == 0 || 2
         TürmechaSk1.enable
        TürmechaB1.disable
         player.removeitem "Tralala1"
         set IsOpen to 1
        set Hebel1 to 1
         endif
       endif
end

Begin GameMode

If ( Hebel1 == 1 ) && ( Hebel2 == 1 )
Doorref.unlock
Endif
End
Und das selbe auch für "Tralala2":
Code:
short Hebel2

begin onactivate

       if player.getitemcount "Tralala2" == 1
       if IsOpen == 0 || 1
         TürmechaSk2.enable
         TürmechaB2.disable
         player.removeitem "Tralala2"
         set IsOpen to 2
       set Hebel2 to 1
       endif
       endif
end

Begin GameMode

If ( Hebel1 == 1 ) && ( Hebel2 == 1 )
Doorref.unlock
Endif
End

Zur verständlcihkeit hätte ich es gerne formatiert, geht ja aber leider bei nem Beitrag nicht. Jedenfalls, so weit ich weiß:huh:

!!!Edit!!!: Die shorts Hebel1 und Hebel2 müssen auch Globals sein. Dann kannst du die auch wieder aus dem Script selber löschen. Sry, wegen den Änderungen, aber ich hatte ihn noch nicht ganz fertig, und habe ihn ausversehen zu früh gesendet. Sry.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Brachial
ich weiss nicht ob ich für mein problem unbedingt ein script brauche aber ihr könnt diesen post ja auch löschen.
also es besteht folgendes problem: zwei ayleidenwaechter sollen den spielker angreifen nachdem der sich ein schwert geschnappt hat. ich habe dieses problem zu lösen versucht indem ich einfach die aggresivitaet der waechter hoch gestellt habe und das schwert in den besitzt der waechter-fraktion gesetzt habe, doch dann zaehlt dies als diebstahl!! bitte helft mir
 
Code:
scn SchwerSkript

short taken

Begin OnAdd player

if taken == 0
Wächter1.StartCombat player
Wächter2.StartCombat player
set taken to 1
endif
End
 
  • Like
Reaktionen: .:Kadir:.
@ Gildur: Wollt mich nur nochmal ganz herzlich bedanken, das Script klappt einwandfrei.. :):)
Dank' dir kann ich jetzt endlich weitermachen..
merci.gif
 
ich breuchte mal ein script, wonach abundzu, also nach zufalls faktor, aber nicht zu selten ein Kristall blitze auf einen Gewissen NPC abschießst.. iwe mache ich das?