Forum

> > Stranded II > Scripts > Scripting - Fragen/Probleme
ForenübersichtStranded II-Übersicht Scripts-ÜbersichtEinloggen, um zu antworten

Deutsch Scripting - Fragen/Probleme

6.780 Antworten
Seite
Zum Anfang Vorherige 1 2120 121 122339 340 Nächste Zum Anfang

alt Re: Scripting - Fragen/Probleme

Hoodlum
User Off Offline

Zitieren
Hier:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
on:build_finish{
		local $mine_mode;
		$mine_mode = "An";
		addstate "self",23;
	}




Und hier wird die Variable verändert, wenn man vorher einen Knopf gedrückt hat!


on:toggle_mine_mode{
		if($mine_mode==An){
				$mine_mode="Aus";
				closemenu;
				process "Betrieb einstellen", 2500;
				freestate "self";
				msg "Der Betreib der Mine wurde eingestellt!";
				}
		elseif($mine_mode==Aus){
				$mine_mode="An";
				closemenu;
				addstate "self",23;
				msg "Die Mine produziert nun wieder!";
				}
	}

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
"An" und "Aus" muss auch bei der Bedingung in Anführungszeichen stehen! also z.b. if($mine_mode=="An"){

Ich würde aber sowieso dringend empfehlen, lieber 1 und 0 statt "An" und "Aus" zu verwenden. Strings neigen bei Stranded II gerne dazu Fehler zu verursachen.

alt Re: Scripting - Fragen/Probleme

Hoodlum
User Off Offline

Zitieren
Okay, ich werds ändern.

Das erklärt aber immer noch nicht, warum das togglen funktioniert und warum alle Objekte betroffen sind.

Aber danke, ich änders!

mfg,
Hoodlum
1× editiert, zuletzt 04.01.08 21:40:57

alt Re: Scripting - Fragen/Probleme

bizzl
User Off Offline

Zitieren
Hoodlum hat geschrieben
Okay, ich werds ändern.
Das erklärt aber immer noch nicht, warum das togglen funktioniert und warum alle Objekte betroffen sind.
Aber danke, ich änders!

wie feuerst du das event ab? vllt machst du das global und nicht lokal.
ansonsten hilft es vllt die variable am anfang von on:toggle_mine_mode nochmal deklarieren (die wird dabei nicht gelöscht, kP)

Wobei die konstruktion insgesamt unsinnig erscheint. Warum machst du das nicht allein vom State 23 abhängig, wäre wesentlich einfacher und sauberer?

alt Re: Scripting - Fragen/Probleme

Hoodlum
User Off Offline

Zitieren
bizzl hat geschrieben
wie feuerst du das event ab? vllt machst du das global und nicht lokal.


Msgbox-Button

bizzl hat geschrieben
ansonsten hilft es vllt die variable am anfang von on:toggle_mine_mode nochmal deklarieren (die wird dabei nicht gelöscht, kP)


Jop, mach ich

bizzl hat geschrieben
Wobei die konstruktion insgesamt unsinnig erscheint. Warum machst du das nicht allein vom State 23 abhängig, wäre wesentlich einfacher und sauberer?


Ich brauche die Variable noch für den Dialog sowie ein on:changeday-Script.

Danke

mfg,
Hoodlum
1× editiert, zuletzt 04.01.08 21:40:36

alt Re: Scripting - Fragen/Probleme

DC
Admin Off Offline

Zitieren
Wenn du einfach beim Messageboxbutton das Event angegeben hast, wird es global ausgelöst. Also überall, was die Erklärung wäre.

ich zitiere s2 cmd button
Zitat
Alternativ kann für Script auch ein Event angegeben werden (Darf keinen Punkt und kein Semikolon enthalten). Dieses Event wird dann bei jedem Klick global ausgelöst

alt Re: Scripting - Fragen/Probleme

bizzl
User Off Offline

Zitieren
speichere die ID des Zieles zwischen und dann mach folgendes:
1
button 1,"Mine ein/aus",1,"event toggle_mine_mode,object,$id;";
funzt so zbsp beim Stammlager in S2Ext

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
Wie genu meinste das mit eine Tür machen?

ich vermute mal du meinst wie du zB einen Stein als Tür verwenden kannst?

dazu must du eine Prüfung einbauen, dass wenn der Spieler den Stein benutzt (on:use) geprüft wird ob er einen Schlüssel bei sich hat, wenn ja wird der Stein mithilfe von s2 cmd setpos an eine andere Stelle bewegt.

alt Re: Scripting - Fragen/Probleme

Chopii
User Off Offline

Zitieren
Ich glaube du hast das falsch verstanden, Flying Lizard.
Ich habe eine Tür erstellt. Und ich will die Tür dann so scripten, dass ich sie mit dem Schlüssel öffnen kann. Aber was muss ich in der Tür scripten?

lg,
Benji

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
im Grunde das gleiche wie ich dir da oben erklärt habe, nur dass du das halt nich bei nem Stein, sondern bei der Tür machst. (der Stein war nur ein Beispiel)

alt Re: Scripting - Fragen/Probleme

Chopii
User Off Offline

Zitieren
Kannst du das bitte mit dem Schlüssel und der Tür machen? ich versteh das nicht so richtig.
Danke.

lg,
benji

PS: Wieso der Stein? Brauche ja nur Schlüüsel und Tür.

alt Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Zitieren
sry, aber bist du echt so doof? o.O
Der Stein war nur ein BEISPIEl der hat ÜBERHAUPTNIX damit zu tun.

und jetzt setz ich dir es nochmal extra leicht auseinander, und neinich werd dir den Script nicht schreiben, weil du es auch selber können sollst. Dieses forum ist dafür da den Leuten zu helfen das Scripten zu lernen, und nicht den Leuten die Scripts zu geben die sie brauchen...

Also, du must den Script natürlich in die Tür reinmachen, logisch.
Du willst vermutlich dass es beim Benutzen ausgeführt wird, das bedeuted du brauchst das event on:use
es soll nur passieren wenn der Spieler den Schlüssel hat nichwahr? also benötigst du eine s2 cmd if -Prüfung. Mit dem Befehl s2 cmd count_stored kannst du überprüfen ob der Spieler einen Schlüssel hat.

So, jetzt sind wir mit der Prüfung fertig, jetzt willst du das die Tür aufgeht, ich vermute da du ein Türmodell hast willst du dass dieses Modell gedreht wird, dazu benötigst du nur den Befehl s2 cmd setrot, den du natürlich in die if-Prüfung hinein schreibst.

Es wäre auch ratsam dass der Spieler die Tür nur einmal benutzen kann, sonst dreht die isch bei jedem Benutzen immer und immer weiter, daher löscht du mit s2 cmd freestored einfach den SChlüssel aus dem Inventar des Spielers.

Das is schon alles was du benötigst, damit kannste dir jetzt dein Script zusammenbauen.
Wenn du es immernoch nich verstehst dann frag gefälligst nach was du nich am Script kapierst, explizite fragen wie etwa: ich habe jetzt dasunddas da hingeschrieben, hier ist der Script, ich vermute es liegt andemunddem hab das aber schona usprobiert, geht nich, was is der Fehler?" und nicht "ich kapier das nicht bitte schreibt mir den Script"

Und bitteschön denk erstmal über den Script nach bevor du schreibst -.-

alt Verschwinden von Personen

COLONEL92
User Off Offline

Zitieren
Hallo, ich habe mal 2 Fragen zum Scripting.
1. Ich möchte dass nach einem Dialog mit einem eingeborenen der Eingeborene und seine Kameraden verschwinden. Egal ob mit Schiff oder Flugzeug. Hauptsache sie sind weg von der Insel. Beste wäre wenn sie sich Auflösen würden.

2. Was muss ich tun damit an einem bestimmten Tag
irgendwas oder irgendjemand auf die Insel gespawnt wird. Also ich möchte z. B. am 200 Tag eine Person gespawnt bekommen. wie mache ich das

alt Re: Scripting - Fragen/Probleme

cRaZy AsZ
User Off Offline

Zitieren
Ich hab da ma wieder eine Frage.

ist es möglich eine Karte zu vergrößern, z.b. will ich es so machen, das nach einem gewissen Quest die Karte gröer wird, da es sozusagen eine neue Insel gibt?? Ba ich will die alte Karte behalten, das heißt, ich füge es sozusagen hinein

alt Verschwinden von Personen(Antwort)

COLONEL92
User Off Offline

Zitieren
Danke aber WIE und WO soll ich das Free eingeben(Person oder Textcontainer) da sind keine richtigen beispiele auf der Page deshalb verstehe ich das nie.

Und bei den Infos bei CREATE steht aber nichts mit Zeit. Nur mit menge und Ort

alt Re: Scripting - Fragen/Probleme

cRaZy AsZ
User Off Offline

Zitieren
Mit der Zeit muss du mit s2 cmd if testen, ob das der x-te Tag ist. Und s2 cmd free musst du dort eingeben, wo es passierren soll, z.B. nach einem Gespräch, dann sollte es genau in der letzten Seite des Dialoges eingefügt werden, damit es danach ebend passiert
Zum Anfang Vorherige 1 2120 121 122339 340 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtStranded II-ÜbersichtForenübersicht