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 2257 258 259339 340 Nächste Zum Anfang

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Naja, das dürftest du ja jetzt ganz einfach selbst schaffen.
Ansonsten musst du wohl oder übel etwas anderes machen.

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
glaub ich habe es...

1
2
3
4
5
loop ("object",172)
	$id = loop_id()
	{
	msg "$id",3,6000;
	}

wenn ich das 1x mit dem lagerfeuer und 1x mit der hütte mache, brauche ich nur noch beide zahlen bei "inrange" und addstate angeben.

löst mein problem nur im "adventure-mode" aber nicht, wenn ich mal eine eigene map erstellen möchte. denn es soll ja automatisch passieren, wenn hütte und lagerfeuer in einer bestimmten reichweite sind.

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Mh, so einfach kann man dein Problem jetzt nicht lösen. Mir fiele da noch ein weg mit def_override ein, nur wäre das etwas schwieriger...

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
siehste

na vllt macht uns DC das ja auch einfacher, indem er noch ein befehl dazu schreibt oder den "inrange" erweitert, womit man beide typ-id's angeben kann, damit der gewünschte effect auch passiert.

wobei man ja jenachdem was man möchte, mehrere "ingame" erstellte sachen von anderen "ingame" erstellten sachen abhängig machen kann.

was für ne idee schwebt dir denn da vor mit dem def_override ?
gib ma paar tipps und anhaltspunkte dazu. kann mich ja dann daran versuchen, bis ich den pc wieder in die ecke schmeißen könnte.
3× editiert, zuletzt 19.03.09 16:48:56

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Mit s2 cmd def_override das Script des Lagerfeuers so überschreiben, dass man nur ein Lagerfeuer benutzen muss, dann nachgeguckt wird und falls das Lagerfeuer in einer Hütte ist, es mit dem State versehen.
Das ist aber etwas schwerer, von daher.

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
hab eben mal bei def... nach geshen.
wäre es vllt auch möglich, wenn man den "defparam" benutzt ?
hatte mir das so gedacht:
1
2
3
4
5
6
7
on:use
{
  if (inrange (defparam ("object",172 ==1)),20 , (defparam ("object",206 ==1)))
	{
	addstate "(defparam ("object",172)),5";
	}
}

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Du darfst bei Befehlen nicht einfach ein Parameter weglassen, wenn er nicht in eckigen Klammern [ ] angeben wird.
Ebenso müsstest du den Parameter erst erstellen. Da kannst du lieber gleich das mit def_override benutzen.

Wieso willst du eigentlich unbedingt etwas anderes benutzen? Benutze doch s2 cmd def_override.

alt Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Zitieren
ich hab hierzu mal ne idee:

objects_buildings.inf hat geschrieben
### Campfire
id=171
name=Campfire
group=building
icon=gfx\fire01.bmp
model=gfx\fire01.b3d
scale=1.6
state=0,5,0
health=250
mat=wood
behaviour=fireplace
script=start
     on:build_finish {
          event "campfirebuild",0,0;
     }
     on:use {
          if (gotstate("unit",1,6)){
               if ((gotstate("self",4)+gotstate("self",5))>0){
                    process "warm-up",3000;
                    freestate "unit",1,6;
               }else{
                    msgbox "Campfire","sys/scripts/fireplace.s2s";
               }
          }else{
               msgbox "Campfire","sys/scripts/fireplace.s2s";
          }
     }
     on:barkbranchfire1 {
          $tmp=currentid();
          if (distance("unit",1,"object",$tmp)<100){
               if ((gotstate("object",$tmp,"fire")+gotstate("object",$tmp,"eternalfire"))==0){
                    $barkbranchfire=$tmp;
               }
          }          
     }
     on:addstate {
          if (state()==4){
               statevalue "self",4,0;
          }elseif (state()==5){
               statevalue "self",5,0;
          }
     }
script=end



jetzt meine frage hierzu:
kann man mit s2 cmd def_override auch die scripts in den *.s2s -dateien überschreiben?
weil wenn ja, dann könnte man in dieser msgbox ja noch einen button einbauen "dieses lagerfeuer mit dem ewiges-feuer-state versehen" und dann auf einer 2. seite einen "den ewiges-feuer-state löschen" -button. und zwischen den 2 seiten wird einfach über ne if-abfrage und ne variable gewechselt.

würde das funktionieren?

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Ja, die Scripte in den Sys-Dateien werden überschrieben, aber nur für diese Map. Alle anderen sind dann wieder normal.

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
wäre es denn nicht sinnvoller def_extend zu benutzen ?
diese hängt dann nur ein script mit an und überschreibt die vorhandene datei nicht, sodaß man ggf den urstatus der sys wieder herstellen kann.

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Die sys-Datei wird nicht wirklich "überschrieben", sie wird nur für die Map in der das Script benutzt wird überschrieben.

Ps: def_extend kann man natürlich auch benutzen, nur kann man bei override auch kleine Verbesserungen am Urscript machen.

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
meinst du jetzt die datei so zu schreiben wie du sie haben willst ?!

hab jetzt mal folgendes script geschrieben. weiß allerdings nicht, obs funzelt oder wieder 100 fehler drinne sind
habe def_extend benutzt, da ich den urteil nicht überschreiben, sondern beibehalten wollte.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
script=start
	{ def_extend "object",172;
		{
		on:addstate
		if (distance ("object",206,"object",$tmp)<10)
			{
			statevalue "self",5,0;
			}
		else
			{
			statevalue "self",4,0;
			}
		}
	}
script=end
grrrr... das kopieren in oder aus dem strandet ist ein kampf für sich...

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Guck dir mal ein paar Scripte aus der 5. Abenteuermap an. Dort kannst du mal versuchen die Scripte zu verstehen.
Danach kannst du dich wieder an das Script da wagen.

alt Re: Scripting - Fragen/Probleme

kevin00756
User Off Offline

Zitieren
Eine Frage wie kann man braun kriegen in items_material.inf
Script=color=0,255,0.Welche nummer muss man darin schreiben um die Farbe braun zu bekommen
Danke im voraus

alt Re: Scripting - Fragen/Probleme

Westbeam
User Off Offline

Zitieren
das kannst du ganz leicht rauskriegen.
geh im editor auf die colorauswahl.(Der button, wo man die farben ändern kann)
nun klickst du auf eine frabe deiner wahl. unten links stehen dan die RGB-Farben

alt Re: Scripting - Fragen/Probleme

Nicolussius
User Off Offline

Zitieren
Ich habe ein Problem. Ich habe bei meiner Map den Startpunkt auf einem Schiff. Immer wenn ich die Map teste falle ich durch das Schiff hindurch in das Wasser. Kann man das verhindern?

alt Re: Scripting - Fragen/Probleme

Iuvenis
User Off Offline

Zitieren
Ist der Startpunkt wirklich auf dem Schiff oder in/unter ihm? Sonst musst du denn Startpunkt vielleicht mal woanders auf dem Schiff setzen...

EDIT: Ohh! Da war Nova wohl schneller...
Zum Anfang Vorherige 1 2257 258 259339 340 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtStranded II-ÜbersichtForenübersicht