Forum

> > Stranded II > Scripts > Scripting - Fragen/Probleme
Forums overviewStranded II overview Scripts overviewLog in to reply

German Scripting - Fragen/Probleme

6,780 replies
Page
To the start Previous 1 2197 198 199339 340 Next To the start

old Re: Scripting - Fragen/Probleme

Royal Flash
User Off Offline

Quote
Naja das ist schwer ich weis das z.b. bei der Yacht man eine Variable setzen muss das man sie nicht benuzt. Die hier $s2g_driveblock_yacht=1. Aber bei dem einbaum gibt es keine.
edited 1×, last 24.07.08 12:41:14 pm

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
Royal Flash has written
Naja das ist schwer ich weis das z.b. bei der Yacht man eine Variable setzen muss das man sie nicht benuzt. Die hier $s2g_driveblock_yacht==1. Aber bei dem einbaum gibt es keine.


ok, danke Royal - aber ich habe ja nun mal keine Yacht ...

Vielleicht kann mir ja jemand anderes weiterhelfen.

Und was ist das für eine kuriose Variable bei der Yacht?
Welcher Teil davon ist wichtig? "driveblock_yacht" - Oder ist das ganze frei wählbar?

Lieber Gruß Gela

old Re: Scripting - Fragen/Probleme

Cryp18Struct
User Off Offline

Quote
Die Yacht Variable wird dir beim Einbaum nicht weiterhelfen.
Wie fügst du zurzeit dein Script an den Einbaum an ?
Das Beste wäre vermutlich s2 cmd def_override zu benutzen, um es allgemein möglich zu machen Einbäume zu "sperren".

1
2
3
4
5
6
7
8
on:use{
	local $notUsable;
	if( $notUsable == 1 ){
		msg "das geht nich ...";
	}else{
		ride;
	}
}
Um einzelne Einbäume zu sperren könntest du jetzt s2 cmd setlocal nutzen

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
Cryp18Struct has written
Die Yacht Variable wird dir beim Einbaum nicht weiterhelfen.
Wie fügst du zurzeit dein Script an den Einbaum an ?
Das Beste wäre vermutlich s2 cmd def_override zu benutzen, um es allgemein möglich zu machen Einbäume zu "sperren".

1
2
3
4
5
6
7
8
on:use{
	local $notUsable;
	if( $notUsable == 1 ){
		msg "das geht nich ...";
	}else{
		ride;
	}
}
Um einzelne Einbäume zu sperren könntest du jetzt s2 cmd setlocal nutzen



Das habe ich jetzt von vorn bis hinten nicht
verstanden
Also zur Frage: Wie fügst du zur Zeit dein Script an den Einbaum an: Code habe ich oben geschrieben, dieses Script ist am Einbaum - Was ist daran falsch?

Deinen Code verstehe ich jetzt auch nicht:
wenn die Variable auf "1" steht, geht es also nicht - ich muss dann irgendwie die Variable wieder auf 0 bringen?

Und das mache ich dann mit s2 cmd setlocal?

Hm.... - Na schön, ich weiß zwar nicht wie, aber ich probiere das jetzt alles mal aus....

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
Cryp18Struct has written
Die Yacht Variable wird dir beim Einbaum nicht weiterhelfen.
Wie fügst du zurzeit dein Script an den Einbaum an ?
Das Beste wäre vermutlich s2 cmd def_override zu benutzen, um es allgemein möglich zu machen Einbäume zu "sperren".

1
2
3
4
5
6
7
8
on:use{
	local $notUsable;
	if( $notUsable == 1 ){
		msg "das geht nich ...";
	}else{
		ride;
	}
}
Um einzelne Einbäume zu sperren könntest du jetzt s2 cmd setlocal nutzen



Das habe ich jetzt von vorn bis hinten nicht
verstanden
Also zur Frage: Wie fügst du zur Zeit dein Script an den Einbaum an: Code habe ich oben geschrieben, dieses Script ist am Einbaum - Was ist daran falsch?

Deinen Code verstehe ich jetzt auch nicht:
wenn die Variable auf "1" steht, geht es also nicht - ich muss dann irgendwie die Variable wieder auf 0 bringen?

Und das mache ich dann mit s2 cmd setlocal?

Hm.... - Na schön, ich weiß zwar nicht wie, aber ich probiere das jetzt alles mal aus....

Edit - danke erst mal für eure Hilfe - LG Gela

old Re: Scripting - Fragen/Probleme

Royal Flash
User Off Offline

Quote
Ich hätte da noch ne idee. Also:

erstmals tuts du ein Stein statt dein einbaum hin und fügst den Script:
1
2
3
on:start {
model "gfx\dugout.b3d" [, "Klasse", ID]
}
ein.

Dan hast du ein Stein der wie ein einbaum aussieht und du kannst nicht drauf reiten oder Fahren. So... dann wenn du willst das du drauf reitest erstellst du am gleichen ort ein info und machst mit s2 cmd create ein ECHTEN Einbaum und die Attrappe löscht du dann mit s2 cmd free.

Ziehmlich verrückte idee müsste aber funzen.

old Re: Scripting - Fragen/Probleme

Cryp18Struct
User Off Offline

Quote
"Dieses Script ist am Einbaum" interpretiere ich mal so, dass du das Script direkt im Mapeditor eingetragen hast.
Da das Fahren mit dem Einbaum jedoch in der Definitionsdatei "units.inf" festgelegt ist, kannst du es nicht auf diese Art und Weise überschreiben.
Mein Script ist dafür gedacht mit s2 cmd def_override das Definitionsscript des Einbaums so zu überschreiben, dass es allgemein möglich ist jeden beliebigen Einbaum zu sperren ( indem man mit s2 cmd setlocal $notUsable auf 1 setzt ) oder zu entsperren ( indem man mit s2 cmd setlocal $notUsable auf 0 setzt ).

Globales MapScript:
1
2
3
4
5
6
7
on:preload{
	def_override "unit", EinbaumDefinitionsID, "datei.s2s";
}

on:start{
	setlocal "unit", EinbaumMapID, "notUsable", 1;
}

Sollte dazu führen das der Einbaum mit der MapID EinbaumMapID nicht mehr als Gefährt benutzt werden kann.
( Wobei in datei.s2s mein altes Script steht )
edited 1×, last 24.07.08 01:05:50 pm

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
@Royal Flash

das werde ich mal ausprobieren, allerdings muss ich den Stein im Wasser postieren, und dann liegt er unter Wasser - mal schauen, ob die Atrappe dann trotzdem oben schwimmt...

Denn der Einbaum an Land macht ja wenig Sinn....

Lieber Gruß Gela

old Re: Scripting - Fragen/Probleme

Royal Flash
User Off Offline

Quote
@Cryp18Struct
Die variable $notusable ist nur für Das zelt gedacht. Schau nochmal in der datei objects_buildings.inf nach.
Wie schon gesagt gibt es auch für die Yacht eine Variable. Nur für den Einbaum gibt es leider keine.

@Gela:
Du kannst ja den Stein in die Luft verschieben dass er genau am Wasserspiegel sitzt. Und ich meine nicht den Stein von den Items sondern den stein von den objekten. Sonst nimmst du versehentlich den Einbaum wenn du ihm benutzt ^^.

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
Cryp18Struct has written
Sollte dazu führen das der Einbaum mit der MapID EinbaumMapID nicht mehr als Gefährt benutzt werden kann.
( Wobei in datei.s2s mein altes Script steht )).


Ich habe wirklich Verständnisprobleme.

Dieses "datei.s2s" - was ist das? Muss ich das dann genau so angeben? Und ist das "alte Script" dann das Script, das ich überschrieben habe? Ich raffe das nicht..

Sorry, aber ich stehe da wirklich offenbar auf dem Schlauch...

Lieber Gruß - Gela

old Re: Scripting - Fragen/Probleme

Cryp18Struct
User Off Offline

Quote
Royal Flash has written
@Cryp18Struct
Die variable $notusable ist nur für Das zelt gedacht. Schau nochmal in der datei objects_buildings.inf nach.
Wie schon gesagt gibt es auch für die Yacht eine Variable. Nur für den Einbaum gibt es leider keine.


???
Mein Script soll doch genau diesen Umstand umgehen!
Durch s2 cmd def_override gibt es dann eben auch für Einbäume eine lokale Variable $notUsable. Dieses Prinzip ist , wie du angemerkt hast, vom Zelt geklaut lässt sich aber duch s2 cmd def_override an ( fast ? ) alle Objekte/Units im nachhinein anbauen.

@Gela
altes Script = http://www.unrealsoftware.de/forum_posts.php?post=11434&start=3940#post88316

datei.s2s ist einfach eine Textdatei mit der Endung s2s( Stranded 2 Script ), in der das alte Script steht. ( Statt einer Datei kannst du auch alternativ einen Textcontainer benutzen, davon rate ich allerdings ab )

Edit: Namen wie "datei.s2s" oder "EinbaumID" dienen nur der Veranschaulichung und musst du durch entsprechende Werte ersetzten. Du kannst das Script auch als "MeinEinbaumScript.s2s" speichern und dann die Pfadangabe im s2 cmd def_override Befehl entsprechend umändern
edited 1×, last 24.07.08 02:03:29 pm

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote


@Cryp18Struct - sorry, ich blicke nicht durch.

Das Script
1
2
3
4
5
6
7
8
on:use{ 
     local $notUsable; 
     if( $notUsable == 1 ){ 
          msg "das geht nich ..."; 
     }else{ 
          ride; 
     } 
}
steht doch in meinem Einbaum - dafür habe ich doch gar keine Textdatei - so hatte ich jedenfalls das on:use interpretiert.

Ich verstehe das mit dem preload, auch das mit dem on:start -
aber nicht das mit der Textdatei

Ok, ich bin offenbar zu doof dafür, aber diese Konstruktionen gehen mir nicht in den Kopf.

Was schreibe ich denn im Map-Editor zu meinem Einbaum, wenn ich das on:use in irgend eine Textdatei packen soll?

Lieber Gruß Gela

old Re: Scripting - Fragen/Probleme

Cryp18Struct
User Off Offline

Quote
In den Einbaum selbst schreibst du gar nichts.
Lies dir am besten die Beschreibung zu s2 cmd def_override nochmal durch.
Durch das Überschreiben des Definitionsscripts veränderst du nicht nur das Verhalten eines Einbaumes, sondern das aller Einbäume.

Das Script mit dem du das Einbaum-Definitionsscript überschreiben willst muss sich entweder in einer Datei ( einfach mit einem Texteditor wie notepad erstellen ) oder in einem Textcontainer-Info auf deiner Map befinden.

Um einen spezifischen Einbaum unbenutzbar zu machen kannst du dann s2 cmd setlocal einsetzen.

Edit: Alles zusammengebaut:

In eine beliebige Textdatei im Mapordner ( beispielseise MeinEinbaum.s2s ):
1
2
3
4
5
6
7
8
on:use{ 
	local $notUsable; 
	if( $notUsable == 1 ){ 
		msg "das geht nich ..."; 
     	}else{ 
          		ride; 
     	} 
}

Ins Globale Mapscript:
1
2
3
4
5
6
7
on:preload{ 
     	def_override "unit", EinbaumDefinitionsID, "maps/MeinEinbaum.s2s"; 
} 

on:start{ 
     	setlocal "unit", EinbaumMapID, "notUsable", 1; 
}
edited 2×, last 25.07.08 09:02:54 pm

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
@Cryp18Struct

ok, ich danke dir. Ich werde das jetzt mal alles ausprobieren - und mich melden, wenn ich es tatsächlich hingeriegt haben sollte....

Lieber Gruß Gela

Edit: Ich habe jetzt Folgendes eingegeben:
1
2
3
4
5
6
7
on:preload{ 
     def_override "unit", 100, 2; 
} 

on:start{ 
     setlocal "unit", 100, "notUsable", 1; 
}

wobei die 100 bei preload die Def-Id ist, die 2 ein Textcontainer - und die 100 bei start die Map-Id des Einbaumes.

Fehlermeldung: 2 is no valid text source - use either an info id (was meine 2 ja sein soll) or a text file.

Habe es dann mal mit "einbaum.txt" probiert - die gleiche Fehlermeldung - nur eben statt der 2 kam "einbaum.txt".

Wieso nimmt er die ID 2 vom Textcontainer nicht an?
Oder habe ich mal wieder eine falsche Schreibweise?

LG Gela

Edit 2: Habe jetzt zwar meine Textdatei laden können, mit dem on:use - aber es passiert gar nichts. Ich kann den Einbaum weiterhin benutzen, und auch die Message erscheint nicht bei on:use

Hat jemand noch eine Idee für mich, bevor ich den Mist komplett einstampfe?
Lieber Gruß Gela
edited 2×, last 24.07.08 02:55:24 pm

old Re: Scripting - Fragen/Probleme

Cryp18Struct
User Off Offline

Quote
Ich habs grad noch mal getestet, bei mir gehts.
1
2
3
on:preload{ 
	def_override "unit", 100, 2; 
}

Falsche ID ! Einbäume haben die DefinitionsID 31. ( Siehst du im MapEditor wenn du links im Auswahlmenü mit der Maus drüber gehst )

[edit]
Versuch mal das setlocal testweise woanders hinzusetzen, beispielweise in ein on:use event bei einem anderen Objekt oder starte bei start einen Timer.
[/edit]

Nebenbei: Im preload event kannst du keine Textcontainer verwenden, sondern nur Dateien. ( War mir selber neu, aber ist eigtl. auch logisch, bevor die Map geladen wurde existieren die Infos ja noch nicht )

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
@Cryp18Struct

"Falsche ID ! Einbäume haben die DefinitionsID 31. ( Siehst du im MapEditor wenn du links im Auswahlmenü mit der Maus drüber gehst )"

Ich hab es in der building.inf so gesehen - id 100 - unit id 31 - hab halt die 100 genommen...

aber jetzt gehts


"[edit]
Versuch mal das setlocal testweise woanders hinzusetzen, beispielweise in ein on:use event bei einem anderen Objekt oder starte bei start einen Timer.
[/edit] "
Irgend wann einmal .. für heute Sch...ze voll von probieren....

Stimmt, bei preload ist nichts da, auf das man sich beziehen könnte ... - aber das muss mir Doofen ja auch erst mal gesagt werden....

Vielen Dank für deine Hilfe - der Nachmittag ist zu 3/4 gerettet

Lieber Gruß - Gela

old Re: Scripting - Fragen/Probleme

Gela
User Off Offline

Quote
Cryp18Struct has written
Freut mich dass ich helfen konnte, war allerdings eine recht schwere Geburt


Na ja, leicht kann ja jeder...
- aber du hast die "Hors catégorie" geschafft

und ich jetzt sogar, dass der Gestrandete den Einbaum später auch wieder benutzen kann ...

Lieber Gruß Gela
To the start Previous 1 2197 198 199339 340 Next To the start
Log in to reply Scripts overviewStranded II overviewForums overview