edited 1×, last 24.07.09 09:15:05 pm
Forum
Stranded II Scripts Scripting - Fragen/ProblemeDu meinst wohl eher die ID und nicht die IP, das ist was völlig anderes
Nova has written
Wie meinst du das? Die IP des neu erstellten Objects hast du in $ip stehen,
lol nein?! was ich da stehen habe ist die object id, und net die id des objects auf der map.
(zur veranschaulichung: hast auf ner map 400 objecte, dann kann das object mit der object id 313 jede x-beliebige id auf der karte haben)
wenns auf einer einzelnen map wär, wärs ja auch kein prob. da könnt ma ja einfach nachgucken aber ich brauch se halt dynamisch ...
Nova has written
die IP des Objects, wo das Script ausgeführt wird kriegst du mit currentid.
danke aber nein so n vollnoob bin ich net ... die id des objects, von dem des script ist brauch ich dann eher bei dem zusätzlichen object.
d.h.: bei A brauch ich dyn id von B. bei B brauch ich dyn id von A
Diego Dela Vega has written
lol nein?! was ich da stehen habe ist die object id, und net die id des objects auf der map.
Doch, create liefert die ID des neu erstellten Objects zurück und speichert sie in $id.
Was willst du denn genau machen? Vielleicht ist dein Script auch einfach nicht selbsterklärend genug.
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
local $id; 	on:start { event "build_finish";} 	on:build_finish { 		local $x,$z,$rot; 		$x=getx("self"); 		$z=getz("self"); 		$rot=getyaw("self"); 		$id=create("object",313,$x,$z); 		setrot "object",$id,"self",$rot,"self"; 	} 	on:kill { 		free "object",$id; 	}
nun warum wird dann die kill aktion net ausgeführt lol?
ganz einfach das will ich machen: ein gebäude aus mehreren teilen (verschiedene behaviours) die alle kaputt gehen sollen wenn eines davon zerstört wird.
wo dus schreibst hat so keine auswirkungen.
wenn du "local" weglässt, so ist sie global, dh. sie bleibt auch nach dem event noch weiter bestehen.
mfg
Mr Stranded has written
Wenn du ein "local" vor die Varibel setzt, so existiert sie nur bis zum "}" weil sie local ist.
wenn du "local" weglässt, so ist sie global, dh. sie bleibt auch nach dem event noch weiter bestehen.
mfg
wenn du "local" weglässt, so ist sie global, dh. sie bleibt auch nach dem event noch weiter bestehen.
mfg
Das stimmt nicht so ganz. Die Variable ist auch nach dem Event noch existent. Eine lokale Variable ist immer nur für ein Objekt gültig, bleibt aber auch nach einem Event noch da.
Und was hat das damit zu tun, ob eine locale Variable vernichtet wird wenn das Event durchlaufen wurde?
Hab wieder eine Frage...
Wie kann ich das machen, dass z.B. ein Floß nicht benutzt werden kann? Also das man damit nicht fahren kann... Wenn aber eine Variable z.B. 2 erreicht soll man damit wieder fahren können oder es soll eine Sequenz ausgelöst werden oder sonstwas.
Ich hab versucht den Code vom Zelt vom Abenteuer zu kopieren hat aber nich geklappt... (map03)
Dann hab ichs selbst versucht:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
on:start { $floß=1; } on:use { skipevent; if ($floß==1) { msg "Das geht nicht/blabla"; speech "negative"; } else { seqstart 0,1; ... } }
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
on:use { local $owner; if ($owner=0) { msg "Nein das gehört nicht mir",3; speech "negative"; }else{ seqstart....... .....
Nova has written
Das funktioniert nicht, aus dem einfachen Grund, weil das use-Event des Floß trotzdem ausgeführt wird. Man müsste erst mit def_override das Script des Floß überschreiben, um die Variable nutzen zu können.
Bei meiner Map bei Yacht und so funzt es
Meine stranded.unrealsoftware befehlsreferenz tut nich mehr...
ich klick auf z.B. auf basic die seite lädt und da steht oben nur die ganzen kategorien aber da wo vorher die ganzen befehle (+erklärung) stehen, steht nix...
MysteriösO_O
achja und das skript tut nicht...
müsste man da nich irgendwas mit skipevent; machen wegen dem fenster mit "mit dem floß fahren","einlagern","nix tun" öffnet sich ja trotzdem...
Edit:Befehlsreferenz tut wieder!
Edit2: Hab ExtMod... Hats vllt damit was zu tun...? Hab mir das so vorgestellt wie bei Xandua mit den Ruderbooten...
edited 1×, last 03.08.09 02:57:53 pm
kevin00756 has written
Wie kann man machen dass das Objekt beim setzen schon unsterblich ist?
edset - wenn ein Objekt im Editor platziert wird
bedeutet:
1
2
3
2
3
on:edset { 	addstate blablubbunsterblich,usw; 	}
oder wenn du des meinst wenn man die baustelle setzt:
build_start - beim Anlegen einer Baustelle
nu hab ich aber mal ne frage: gibts n script befehl der alle blakeks mili seks automatisch abfragt, ohne dass eine bestimmte bedingung erfüllt ist, ob eine andere bedingung erfüllt wird???
sowas wie timer nur ohne auslösenden befehl???