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 2218 219 220339 340 Next To the start

old Re: Scripting - Fragen/Probleme

Flying Lizard
User Off Offline

Quote
er zeigt das nur an weil es auch einen Befehl button gibt, aber der intersiert uns hier nicht. Die sache mit script:xyz kannst du gleich wieder vergessen, das funktioniert hier sowieso nicht so wie du dir das vorstellst.

Und beim ersten Absatz hab ich nicht verstanden was du gemacht hast, kannst du das nochmal wiederholen?

Übrigens hab ic gesagt dass du das wetterscript in den GLEICHEN Textcontainer wie die erste Seite (das Zeug mit dem auswählen) setzen sollst. Dialogue sucht nach den Angegebenen Seiten nur innerhalb des Containers der Angegeben wurde.

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
es lebt!
danke, hab jetzt verstanden wie's geht!
hab jetzt einfach den text aus dem zweiten textcontainer unten drangehängt:
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
28
29
30
31
32
33
34
35
36
page=Gravur
title=Steintor
text=start
In den Stein ist etwas eingraviert:

"Carpe tempora!"

Zu dumm, hab in Latein gepennt...
Darunter ist ein Handabdruck eingemeißelt.
Was passiert wohl, wenn ich meine Handfläche hineinlege?
text=end
button=aktivieren, Aktivieren
button=action:close, Finger davon lassen

page=aktivieren
script=start
	if ($varclimate==0) {
		$varclimate=1;
		terraintexture generate:snow, 1;
		flash 256,256,256;
		thunder;
		climate 1;
		snowratio 90;
		weather 2;
	} elseif ($varclimate==1) {
		$varweather1=getweather();
		$varclimate=0;
		terraintexture generate, 1;
		flash 256,256,256;
		thunder;
		climate 0;
		snowratio 2;
		weather $varweather0;
	}
closemenu;
script=end

brauch jetzt nur noch nen befehl, um dem spieler schaden zuzufügen, wenns so einen gibt

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
super, danke, habs gefunden
("damage "Klasse", ID, Wert
Kategorien: objects
Beschädigt/verletzt ein Objekt um den angegebenen Wert")

Edit: klappt super, hab noch nen bisschen dran rumgebastelt und so...hab aber wieder mal problem festgestellt:
wenn sich der spieler über das zeit-portal ein halbes jahr zurück in die vergangenheit katapultiert( also da, wo winter ist), liegt ja noch immer das schiffswrack, das ich eingebaut habe in der bucht...gibt es eine möglichkeit, das entweder
-unsichtbar und durchlässig zu machen oder
-zu löschen und dann wieder exakt an der selben position neu hinzupacken?(also mit selber drehung und so?)
edited 1×, last 09.10.08 09:10:35 pm

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
gut, werd versuchen das mal einzubauen...
"rpos "Klasse", ID, X, Y, Z [,Pitch, Yaw, Roll]"
-->für die werte x, y, z, Pitch, Yaw und Roll kann ich doch variablen angeben, wenn ich die on:start ermittelt habe , oder?

bei create steht:
"Der Befehl gibt die ID des neuen Objektes aus"
-->gibt es hier einen befehl, mit dem ich die neue ID (des wracks) in die alte umwandeln kann?
Edit: wenn es einen solchen befehl nicht geben sollte, wohin wird die ID dann ausgegeben?
edited 1×, last 09.10.08 10:34:15 pm

old Re: Scripting - Fragen/Probleme

humer
User Off Offline

Quote
ja du kannst die alte ID einfach in einer Variablen speichern mit s2 cmd currentid.

so in etwa:
1
2
3
...
$Wrack=currentid();
...

und dann neu "createn".

1
2
3
...
$Wrack=create"object",Typ;
...

old Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Quote
Jupp, genauso hätte ich es auch gemacht. Danke humer!

Speichere die ID einfach immer in ein und die selbe Variable. Dann kann kaum was schief gehen.

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
habs mal eingebaut, beim ersten benutzten verschwindet das wrack zwar, aber es kommt beim zweiten benutzten nicht zurück...ich hab jetzt folgendes:
1
2
$wreckid=create "object", 138, $wreckx, $wreckz;
rpos "object", $wreckid, $wreckx, $wrecky, $wreckz ,$wreckpitch, $wreckyaw, $wreckroll;
laut fehlerbericht bei ^ steckt der fehler bei $wreckid in der zweiten zeile...

old Re: Scripting - Fragen/Probleme

Nova
User Off Offline

Quote
Befehle die einen Wert zurückgeben brauchen um ihre Parameter runde Klammern.

× $wreckid = create "object", 138, 2232, 342;
√ $wreckid = create ("object", 138, 2232, 342);


Ps: Es wird angegeben das der Fehler in der zweiten Zeile auftaucht. Das stimmt auch, allerdings ist die Ursache in der ersten. Da create kein Wert zurück gibt bleibt $wreckid leer. Und leere Variablen haben den Wert 0.
In der zweiten Zeile versuchst du also das Objekt mit der ID 0 zu verschieben. Das das nicht geht kannst du dir vermutlich denken.

old Re: Scripting - Fragen/Probleme

Guest

Quote
Hallo ich habe da mal ne frage wie kann ich händler machen was muss ich dafür tun???Bitte antworten.

old Re: Scripting - Fragen/Probleme

Mr Stranded
User Off Offline

Quote
Du hast einen Gegenstand (objekt/unit). in deren code machst du so etwas wie
1
2
3
on:use {
  dialogue "handel",id; // "handel" ist die seite die aufgerufen wird
}
dann erstellst du ein "textcontainer-info". bei
1
dialogue "handel",id;"
machst du statt "id" die id des infos. im info steht sowass wie:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
page=handel
title=der Handel
text=start
Moin, wollen wir handeln?
text=end
button=action:close, Nein //macht dass der dialog abgebrochen wird
button=seite2, Ja //springt zur seite "seite2"

page=seite2
title=immernoch der Handel
trade=start
buy=1,234 // du kaufst 234 items mit der id 1 (beutel)
sell=24,3 // und gibst ihm dafür 3 Äste (id 24)
trade=end
button=action:close, Danke das war genug
du kannst beliebig viele "trade=start"s (also Handel) machen.

Hoffe konnte helfen

mfg

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
hmm, mit
1
2
$wreckid=create ("object", 138, $wreckx, $wreckz);
rpos "object", $wreckid, $wreckx, $wrecky, $wreckz ,$wreckpitch, $wreckyaw, $wreckroll;
kappts aber auch nicht...
(hab im globalen script auch extra "$wreckid=349;" stehen...

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
selbstverständlich^^
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
on:start {
	$varweather0=getweather();
	hideindicators;
	showindicator 26;
	$vartimejump=0;
	$wreckx=getx "object", 349;
	$wrecky=gety "object", 349;
	$wreckz=getz "object", 349;
	$wreckpitch=getpitch "object", 349;
	$wreckyaw=getyaw "object", 349;
	$wreckroll=getroll "object", 349;
	$wreckid=349;
}

on:changeday {
	$vartimejump=0;
}

(gesamtes globales script (bis jetzt))...

EDIT: jetzt ists mir selbst aufgefallen:
hab bei den ganzen "get"-sachen keine "()"...
wo müssen die hin? hinter die 349?

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
gut, hab die klammern jetzt eingefügt, aber es klappt trotzdem nicht...jetzt kommt auch keine fehlermeldung mehr...
funktioniert der befehl "$wreckid=create ("object", 138, $wreckx, $wreckz);" auch? kommt mir was komisch vor, dass vor create noch die variable steht...

old Re: Scripting - Fragen/Probleme

Hurri04
Super User Off Offline

Quote
globales script:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
on:start {
	$varweather0=getweather();
	hideindicators;
	showindicator 26;
	$vartimejump=0;
	$wreckx=getx("object", 349);
	$wrecky=gety("object", 349);
	$wreckz=getz("object", 349);
	$wreckpitch=getpitch("object", 349);
	$wreckyaw=getyaw("object", 349);
	$wreckroll=getroll("object", 349);
	$wreckid=349;
}

on:changeday {
	$vartimejump=0;
}
ruine (zeit-portal) typ 141, ID 516:
1
2
3
on:use {
	dialogue "Gravur", 35;
}

textcontainer ,ID 35:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
page=Gravur
title=Steintor
text=start
In den Stein ist etwas eingraviert:

"Carpe tempora!"

Zu dumm, hab in Latein gepennt...
Darunter ist ein Handabdruck eingemeißelt.
Was passiert wohl, wenn ich meine Handfläche hineinlege?
text=end
button=aktivieren, Aktivieren
button=action:close, Finger davon lassen

page=aktivieren
script=start
	$varclimate=1;
	terraintexture generate:snow, 1;
	flash 256,256,256;
	thunder;
		freestate "object", 461, 5;
		freestate "object", 461, 17;
		freestate "object", 462, 5;
		freestate "object", 462, 17;
		freestate "object", 463, 5;
		freestate "object", 463, 17;
		freestate "object", 465, 5;
		freestate "object", 465, 17;
		freestate "object", 466, 5;
		freestate "object", 466, 17;
		freestate "object", 472, 5;
		freestate "object", 472, 17;
		free "object", 349;
	climate 1;
	snowratio 90;
	weather 2;
	$vartimejump++;
	damage "unit", 1, $vartimejump*5;
	msgbox "Was ist passiert?", 52;
	addscript "info", 35, 50;
script=end

textcontainer ID 50:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
page=Gravur
title=Steintor
text=start
"Carpe tempora!"

Hmm, anscheinend kann ich mit diesem Stein durch die Zeit reisen!
Allerdings kostet mich das auch Kraft. Ich sollte also nicht zu oft am selben Tag einen Zeitsprung wagen!
text=end
button=aktivieren, Aktivieren
button=action:close, Lieber die Finger davon lassen

page=aktivieren
script=start
	if ($varclimate==0) {
		$varclimate=1;
		terraintexture generate:snow, 1;
		flash 256,256,256;
		thunder;
			freestate "object", 461, 5;
			freestate "object", 461, 17;
			freestate "object", 462, 5;
			freestate "object", 462, 17;
			freestate "object", 463, 5;
			freestate "object", 463, 17;
			freestate "object", 465, 5;
			freestate "object", 465, 17;
			freestate "object", 466, 5;
			freestate "object", 466, 17;
			freestate "object", 472, 5;
			freestate "object", 472, 17;
			free "object", 349;
		climate 1;
		snowratio 90;
		weather $varweather1;
		$vartimejump++;
		damage "unit", 1, $vartimejump*5;
		closemenu;
		msg "Der Zeitsprung hat mich";
		msg "vartimejump*5 Energiepunkte gekostet!";
	} elseif ($varclimate==1) {
		$varweather1=getweather();
		$varclimate=0;
		terraintexture generate, 1;
		flash 256,256,256;
		thunder;
			addstate "object", 461, 5;
			addstate "object", 461, 17;
			addstate "object", 462, 5;
			addstate "object", 462, 17;
			addstate "object", 463, 5;
			addstate "object", 463, 17;
			addstate "object", 465, 5;
			addstate "object", 465, 17;
			addstate "object", 466, 5;
			addstate "object", 466, 17;
			addstate "object", 472, 5;
			addstate "object", 472, 17;
			$wreckid=create "object", 138, $wreckx, $wreckz;
			rpos "object", $wreckid, $wrecky, $wrecky, $wreckz ,$wreckpitch, $wreckyaw, $wreckroll;
		climate 0;
		snowratio 2;
		weather $varweather0;
		$vartimejump++;
		damage "unit", 1, $vartimejump*5;
		closemenu;
	}
script=end

(de ganzen "freestate-" und "addstate"-sachen beziehen sich auf was anderes, das ist das da im sommer ein eingeborenen-dorf brent und im winter vorher halt noch nicht, ich mach da noch ne quest draus...)
To the start Previous 1 2218 219 220339 340 Next To the start
Log in to reply Scripts overviewStranded II overviewForums overview