CNDG
Würden Sie gerne auf diese Nachricht reagieren? Erstellen Sie einen Account in wenigen Klicks oder loggen Sie sich ein, um fortzufahren.


Ein Forum, in dem sich neue Clonk Entwickler untereinander austauschen können.
 
StartseiteStartseite  PortalPortal  SuchenSuchen  Neueste BilderNeueste Bilder  AnmeldenAnmelden  LoginLogin  

 

 Begewungsblock Script

Nach unten 
3 verfasser
AutorNachricht
iRakTar
Leutnant
Leutnant
iRakTar


Männlich Alter : 29
Ort : Saarlaaand :D
Anmeldedatum : 19.09.09

Begewungsblock Script Empty
BeitragThema: Begewungsblock Script   Begewungsblock Script EmptySo Sep 20, 2009 3:02 pm

Hallu ^^" ich bins wieder ..

also ich bräuchte ein Script, dass sich die anderen Spieler nicht bewegen können,
wenn der Host die Regeln usw festlegt.^^

mfg iRakTar
Nach oben Nach unten
kevda
Feldmarschall
Feldmarschall



Anmeldedatum : 08.05.08

Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script EmptySo Sep 20, 2009 3:39 pm

mit SetCrewEnabled sollte das gehen.
Mit einer for schleife kannst du alle spieler durchgehen. Falls die spieler mehr als einen clonk haben, dann musst du auch noch alle clonks vom spieler durchgehen.
Nach oben Nach unten
iRakTar
Leutnant
Leutnant
iRakTar


Männlich Alter : 29
Ort : Saarlaaand :D
Anmeldedatum : 19.09.09

Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script EmptySo Sep 20, 2009 3:57 pm

kk danke Very Happy

werde ich nachher mal machen^^

mfg iRakTar

€dit: iwie komm ich mit for nich rlly zurecht. könntest du mir evtl so eine forschleife mit SetCrewEnable für spieler 2 scripten? (Spieler 2 hat 3 clonks)
Nach oben Nach unten
kevda
Feldmarschall
Feldmarschall



Anmeldedatum : 08.05.08

Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script EmptySo Sep 20, 2009 4:52 pm

var j=0;
for(var i=0;i<GetPlayerCount();i++)
{
j=GetCrewCount(i);
while (j--) SetCrewEnabled (false, GetCrew (i, j));
}

for geht folgendermaßen:
for(
variableninitialierung(in meinen besipiel var i=0 oder ich hätte auch j=0 schreiben können);
bedingung(ist sehr wichtig, da sonst die schleife unendlich mal abläuft);
und zum schluß kann man noch angeben was mit der variable vor einen oder nach einen schleifendurchgang passieren soll(zB i++ erhöht i nach einen durchgang ++i erhöht i vor einem durchgang)
)

und wichtig ist das man die einzelnen parameter per simikolon trennt und nicht wie gewohnt per komma

es gibt aber auch eine neue schreibweise mit for und arrays(feldern), aber mit der kenne ich mich bisher nicht aus
Nach oben Nach unten
iRakTar
Leutnant
Leutnant
iRakTar


Männlich Alter : 29
Ort : Saarlaaand :D
Anmeldedatum : 19.09.09

Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script EmptySo Sep 20, 2009 4:56 pm

so nun brauch ich ne neue for schleife glaub ich mal,

um die spieler wieder "beweglich" zu machen ^^"
Nach oben Nach unten
Gamer
Staatsrat
Staatsrat
Gamer


Männlich Alter : 28
Ort : In einem kleinen Dorf in Unterfranken (Bayern)
Anmeldedatum : 10.02.09

Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script EmptySo Sep 20, 2009 9:22 pm

Schau dir die Doku an.
SetCrewEnabled()
SetCrewEnabled(fEnebaled,pobj)

Wenn fEnabled=0 dann deaktiveirt man die Stuerung für pObj
Wenn fEnabled=1 aktiviert man sie wieder.
So kannst du die Schleife wieder umdrehen.
Aus der 0 eine 1 machen.
Also so
Code:

func EnableCrew(){
var j=0;
for(var i=0;i<GetPlayerCount();i++)
{
j=GetCrewCount(i);
while (j--) SetCrewEnabled (1, GetCrew (i, j));}
}
Dann wenn du die beweglich machen willst die Funktion EnableCrew() aufrufen.
Achtung: Dieser Script aktiviert die Stuerung für alle Spieler wieder. Wenn du nur Spieler 2 machen willst musst du ein if einbauen.
Nach oben Nach unten
http://www.gamer95.npage.de/
iRakTar
Leutnant
Leutnant
iRakTar


Männlich Alter : 29
Ort : Saarlaaand :D
Anmeldedatum : 19.09.09

Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script EmptySo Sep 20, 2009 9:46 pm

Ich habs jetzt verstanden aber ich weis nicht wie ich das if einbauen muss q.q"
Nach oben Nach unten
Gamer
Staatsrat
Staatsrat
Gamer


Männlich Alter : 28
Ort : In einem kleinen Dorf in Unterfranken (Bayern)
Anmeldedatum : 10.02.09

Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script EmptyMo Sep 21, 2009 8:42 pm

Also schau dir mal die Schleife an und versuche herauszufinden in welcher Variable die Derzeitige Spielernummer gespeichert wird.
Code:

func EnableCrew(){
var j=0;
for(var i=0;i<GetPlayerCount();i++)
{
j=GetCrewCount(i);
while (j--) SetCrewEnabled (1, GetCrew (i, j));}
}
Und dann noch mit dem Wissen das if so funktioniert.
if ( Bedingung ) script
Bedingung muss richtig sein / 1 (zurück)geben
Also z.B
if(i == 3) //mach dies und das
Die Bedingung ist hier das die Varbiable "i" einen Wert von 3 hat. (Vergleichsoperator)
Und wir wollen ja das nur dem 3ten Spieler die Steurung entzogen wird.
In der Schleife wird der Spieler in der Variable i gespeichert.
Nun musst du es machen das das SetCrewEnabled() nur dann ausgeführt wird, wenn i == 3.

Also insgesamt
Code:

func EnableCrew(){
var j=0;
for(var i=0;i<GetPlayerCount();i++)
{
j=GetCrewCount(i);
while (j--)if(i == 3) SetCrewEnabled (1, GetCrew (i, j));}         
}

Wirkung: Aktiviert die Steuerung für Spieler 3.
Wenn du die Steurung disabeln willst musst du statt
Zitat :
SetCrewEnabled(1, GetCrew(i,j));
SetCrewEnabled(0, GetCrew(i,j)); machen.

Eigentlich ganz einfach.
Nach oben Nach unten
http://www.gamer95.npage.de/
Gesponserte Inhalte





Begewungsblock Script Empty
BeitragThema: Re: Begewungsblock Script   Begewungsblock Script Empty

Nach oben Nach unten
 
Begewungsblock Script
Nach oben 
Seite 1 von 1
 Ähnliche Themen
-
» Fehler im Script
» Verfolgungstorpedo
» script mit Hyp. Clonk
» Effect Script
» Problem mit Script

Befugnisse in diesem ForumSie können in diesem Forum nicht antworten
CNDG :: Sonstiges :: Scripthilfe-
Gehe zu: