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 2255 256 257339 340 Nächste Zum Anfang

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Wuffelchen hat geschrieben
1
...
wenn ich jetzt noch ein elseif befehl rein setze, kann man da dann eine zählschleife machen, damit man öfter darauf hingewiesen wird ?

mfg
Wuffelchen



Wie man's nimmt. Ich würde es so machen:

1
2
3
4
5
6
7
8
9
on:hit
	{
	$schlag++;
	if ($schlag == 4)
		{
		msg "Unzerstörbar!";
		$schlag = 0;
		}
	}

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
Hurri..

nein, die klamern in der if anfrage müssen stehen bleiben, damit die damage selbst gezählt wird und nicht die schläge.
Brauch ja nur 1x wissen, das der baum unzerstörbar ist.

kann ja sein, daß man den baum irgendwann mal wieder schlägt und soll daran erinnert werden. darum auch der on:changeday

nun fehlt eigentlich nur noch eine elsif anweisung, die einem nach xx schlägen wieder darauf hinweißt. diese soll sich aber permanent alle xx schläge wiederholen. weiß nur nicht wie ich das schreiben soll.
bin ja gerade erstmal am lernen das script sprache
Nova hatte nämlich gefragt ob das einer hinbekommt und für mich ist es ein gutes training

Nova, glaube dein problem ist nun behoben brauchst ja eigentlich nur die anzahl der schläge in der if anweisung erhöhen und schon stört es dich nicht mehr wirklich. wirst aber dennoch immer wieder mal darauf hingewiesen
hoffe habe dir durch meine hartnäckigkeit helfen können dann doch selbst auf die beste lösung zu kommen

mfg
Wuffelchen

alt Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Zitieren
Wuffelchen hat geschrieben
Hurri..

nein, die klamern in der if anfrage müssen stehen bleiben, damit die damage selbst gezählt wird und nicht die schläge.
Brauch ja nur 1x wissen, das der baum unzerstörbar ist.


wenn du den schaden messen willst, dann brauchst du doch nur deine variable durch 3 zu teilen, denn ein schlag (mit der bloßen hand) macht einen schaden von 3 aus.
Nova hat in dem post vor dir schon ein schönes script gepostet, daran kannst du übrigens auch sehen, dass er die klammern weggenommen hat.

Nova hat geschrieben
1
2
3
4
5
6
7
8
9
on:hit
	{
	$schlag++;
	if ($schlag == [b]4[/b])
		{
		msg "Unzerstörbar!";
		$schlag = 0;
		}
	}


die 4 kannst du auch durch andere zahlen ersetzten, dann wird alle x (hier 4) schläge die nachricht angezeigt. wie man an diesem script auch noch sehen kann, ist es übrigens besser, die anzahl der schläge zu zählen, statt des schadens an sich.

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
Hurri, die sache hat sich schon erledigt durch Novas script.
hat sich mit meiner antwort überschnitten.

hatte dann nur noch editiert.

EDIT:

wie und mit welchen befehlen kann ich in game einem object einen status zuweisen?
wollte dem lagerfeuer den status ewiges feuer geben, da ich es in der hütte gebaut habe und es ja normalerweise nicht reinregnen dürfte.
1× editiert, zuletzt 18.03.09 14:47:09

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Mit s2 cmd addstate geht das.

Hinweiß: Du kannst sowohl die Nummer als auch den englischen Namen des States nehmen. Bei "eternalfire" wäre das 5. Ich empfehle dir die Namen zu benutzen, denn dann siehst du auf einen Blick welches State du da dem Objekt zufügst, anstatt vorher nachgucken zu müssen.

Beispiel:
1
addstate "object", 12, "eternalfire"


Edit: Mh, Saibot war schneller, dafür ist meins ausführlicher.
Und dann haben wir auch fast das gleiche geschrieben. "Das geht mit addstate" und "Mit addstate geht das."

alt Re: Scripting - Fragen/Probleme

Westbeam
User Off Offline

Zitieren
du kannst dem object aner auch anders einen state geben.
im infofeld einern objects/unit/info/item steht ein * mit dem namen state. dort kannst dann dem objet den entsprechenden state geben

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
jo danke euch.
das mit dem addstate wusste ich ja. es ging ja nur darum, ob es auch geht, wenn man die map schon spielt.

denke mal, dazu muß ich wohl in den chat-modus gehn oder wie geht das ?
und beim lagerfeuer hast du die 7 vergessen
weiß nur nicht, obs auch im adventure spiel geht.
1× editiert, zuletzt 18.03.09 16:17:31

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Wuffelchen hat geschrieben
jo danke euch.
das mit dem addstate wusste ich ja. es ging ja nur darum, ob es auch geht, wenn man die map schon spielt.

denke mal, dazu muß ich wohl in den chat-modus gehn oder wie geht das ?
und beim lagerfeuer hast du die 7 vergessen
weiß nur nicht, obs auch im adventure spiel geht.

In dem Cheatmodus kommst du, wenn du ^ drückst (neben der 1) und dann "dm" eingibst.

Und wo soll ich eine 7 vergessen haben?

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
ahhh nicht chat-modus sondern cheat modus

das lagerfeuer hat doch als object die nummer 172 und du hattest 12 geschrieben
und muß da ncht hinter dem addstate-befehl noch ein semikolon ?

hmm, bin da jetzt im menü drinne, aber weiß net was wie wo ich da jetzt machen muss

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
Wuffelchen hat geschrieben
ahhh nicht chat-modus sondern cheat modus
Macht doch nichts.

Wuffelchen hat geschrieben
das lagerfeuer hat doch als object die nummer 172 und du hattest 12 geschrieben
Die Zwölf ist nur als Beispiel genannt.
Jedes Objekt hat zwei Nummern. Die eine ist die Typ-Nummer und die andere die ID-Nummer.
Die ID-Nummer ist für jedes Objekt einmalig, sie wird einmal an ein Objekt vergeben, um es per Script ansprechen zu können.
Die Typ-Nummer ist für jedes Objekt einer Art gleich. So haben alle Lagerfeuer anscheinend die Typnummer 127. Allerdings hat kein Lagerfeuer die selbe ID-Nummer wie ein anderes Lagerfeuer.
Und genau diese ID-Nummer wird bei dem Script gebraucht. Wenn du ein Objekt anklickst siehst du oben die ID-Nummer. Die Typ-Nummer siehst du, wenn du mit der Maus dich über das Icon bewegst und dann still hältst.

Wuffelchen hat geschrieben
und muß da ncht hinter dem addstate-befehl noch ein semikolon ?
Upps.

Wuffelchen hat geschrieben
hmm, bin da jetzt im menü drinne, aber weiß net was wie wo ich da jetzt machen muss
Gut, nun drückst du den Button ganz unten, "extend script" oder so heißt der. Dort gibst du nun dein Script ein und drückst den Button unten rechts wenn du fertig bist.


Ps: Doch, das geht mit s2 cmd scale, eddy. Sag mir mal dein Script.

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
Muss ich dann auf "execute script" gehn und ein eigenes script schreiben, was ich dann in den adventure_ordner legen muß oder kann?

bsp:
1
2
3
on:addstate {
addstate "object",172,5;
}
script export drücken
pfad: .../adventure
name:ewigesfeuer
ok drücken

EDIT:
huhh, glaube das geht im adventure_modus nicht, da das lagerfeuer ja gebaut wird und nicht in der object-liste der map steckt. oder geht es vllt doch ? frage wäre dan nur wie. mit addstatus "object",172,5; stecke ich ne blaublüte in brand
1× editiert, zuletzt 18.03.09 17:57:34

alt Re: Scripting - Fragen/Probleme

Westbeam
User Off Offline

Zitieren
@Eddy
mit scale muss es gehen, beispiel:
1
2
3
on:start {
scale 2,2,2;
}
wenn du das script anwendest, ist dein kamin doppelt so groß

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
@Eddy: Gebe "0.5" an um das Objekt zu halbieren.


Alle on:... Sachen funktionieren nicht bei Execute script. Du kannst sie also weglassen.

Ebenso muss du die ID-Nummer bei addstate angeben, nicht die Typ-Nummer.
Wie du jetzt aber herausfindest welche ID das Lagerfeuer hat weiß ich nicht so genau.
Benutze im Spiel doch einfach einen Ast bei einem Feuer und zünde, immer dann wenn das Lagerfeuer aus ist, es wieder an.

alt Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Zitieren
@aletes: IMG:https://www.wortart.de/wortart/CDs_kuenstler/images/ts_fresse_neu_240.jpg


Versuch mal folgendes per execute Script zu benutzen:

1
2
3
4
5
6
timer "0", 1000, 1;

on:timer
	{
	msg "bla";
	}
Richtig, es passiert gar nichts. Execute Script wird einmal ausgeführt und dann gelöscht. Da ist keine Zeit für events und on:timer.



1
msg "bla";
Das funktioniert aber.

alt Re: Scripting - Fragen/Probleme

Wuffelchen
User Off Offline

Zitieren
im parser wird folgendes geschrieben
1
$tmp=currendid()
nun habe ich das im execute mal so geschrieben:
1
addstate "object",$tmp,5;
vllt lappts ja (mal schauen).
und wie gelesen, würde ich es nach jedem laden des spielstandes schreiben müssen (solange ich des nur 1x schreiben muß wenns funzelt gehts ja).
Zum Anfang Vorherige 1 2255 256 257339 340 Nächste Zum Anfang
Einloggen, um zu antworten Scripts-ÜbersichtStranded II-ÜbersichtForenübersicht