Construction Set Skriptthread zum Construction Set

Hi Leute ich brauche wiedermal eure Hilfe:D !
Ich brauche ein Script für einen Container , es soll jeden monat einer von 5 verschiedenen goldbeträgen im random verfahren sozusagen im Container erscheinen und dazu noch das passende Schreiben (ne schriftrolle oder ähnliches) also ein Item! Ist das so möglich?
schonmal danke im vorraus! ;)

mfg skoomadieb
 
Klar, das ist problemlos möglich. Das könnte dann z.B. so aussehen.

Code:
scn ContainerScript

short month = -1

Begin GameMode
	if (month != GameMonth)
		short randVal
		set randVal to GetRandomPercent
		if (randVal <= 20)
			additem gold001 [Betrag]
			additem [GegenstandID] 1
		elseif (randVal <= 40)
			additem gold001 [Betrag]
			additem [GegenstandID] 1
		elseif (randVal <= 60)
			additem gold001 [Betrag]
			additem [GegenstandID] 1
		elseif (randVal <= 80)
			additem gold001 [Betrag]
			additem [GegenstandID] 1
		else
			additem gold001 [Betrag]
			additem [GegenstandID] 1
		endif
		set month to GameMonth
	endif
End

Grüße T-Rip
 
  • Like
Reaktionen: Skoomadieb
Danke T-Rip ! Nimms mir bitte nicht Übel aber ich habe es mir anders Überlegt.Kann man das nicht auch spezifich für jeden monat machen? zB.So das man beim Monat Herdfeuer (ich glaube das ist der 9te Monat) den Anteil für eben den Monat Herdfeuer bekommt! Die Items die dabei sind , sind Briefe ,in denen steht sowas wie " Und dies ist euer Anteil für den Monat Herdfeuer! " Ach ja und was noch wichtig wäre ist das der Goldbetrag und der Brief nicht verloren geht falls der Player ihn mal vergist abzuholen und der nächste Anteil und brief in den Container kommen!:D Also es sollte sich dort schon ansammeln können!;) Ist das so auch machbar?
Schonmal Danke!

mfg skoomadieb
 
Damit das Gold nicht verloren geht darf bei der Truhe kein Haken bei Respawns gesetzt sein.
Das Script für die monatlich feste Auszahlung könnte dann so aussehen:

Code:
scn ContainerScript

short month = -1

Begin GameMode
	if (month != GameMonth)
		
		if (GameMonth == 0)
			additem gold001 [Betrag]
			additem [GegenstandID] 1
		elseif (GameMonth == 1)
		.
		.
		.
		elseif (GameMonth == 11)
			additem gold001 [Betrag]
			additem [GegenstandID] 1
		endif
	
		set month to GameMonth
	
	endif	
End
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Skoomadieb
hi , ich bräuchte auch hilfe , und zwar möchte ich das :

wenn ich mit einem eiszauber auf eine feuerwand schieße das die verschwindet :/

danke ^^
 
Ist das ein bestimmter Eiszauber?
Dann kannst du dicht um die Feuerwand eine Triggerbox positionieren und etwa folgendes Script drauf legen:
Code:
scn ...

short once

begin OnTriggerMob [ID Zauber]
if (once == 0)
    [REF-ID Feuerwand].disable
    set once to 1
endif
end

Die Feuerwand braucht dafür eine Reference-ID und einen Haken bei Persistance Reference.
 
Hmm, ich glaube, es gibt keinen Befehl, mit dem man bestimmen kann, ob das Objekt, das die Box auslöst, ein zauber ist, geschweige denn, ob es ein Eiszauber ist:?
 
hmm okay , dann werd ich einfach einen neuen zauber erstellen den man benutzen muss ^^

kann man den
' [REF-ID Feuerwand].disable'
befehl in dem script beliebig oft verwenden ?

weil ich musste dann die paar flammen und eine collisionbox disablen ^^
 
Klar. Musst halt jeder Feuerwand und collisionbox eine eigene Ref-ID geben und kannst die dann alle im Script disablen.
Leichter geht es aber, wenn du nur die eine disablesd und dann eine parent-Kette bastelst. Also du nimmst die erste, die disabled wird und stellst eines der andern Objekte als parent ein und dann imer so weiter bis zum letzten Objekt.
 
Funktioniert wahrscheinlich nicht... aber probiers mal so:
Code:
scn name

short doonce
ref spell

Begin onTriggerMob
 set spell to getActionRef
 if spell.HasMagicEffect FRDG = 0
  return
 else
  set doonce to 1
  <Feuer-REF>.disable
 endif
end
 
Code:
scn 0ozFlammenwandSkriptTeil1

short once

begin OnTriggerMob [ID Zauber]
if (once == 0)
    [0ozCollisionBox].disable
    set once to 1
endif
end


: / wahrschenilich bin ich nur zu dumm ^^
 
Du musst "[ID Zauber]" durch die ID des Zaubers ersetzen... und bei "[0ozCollisionBox]" lässt du die eckigen Klammern weg (die Referenz der Kollisionbox ist doch "0ozCollisionBox"?).