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

Austausch | 
 

 Was bedeutet "Initialize"? (Grundkenntnisse)

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach unten 
AutorNachricht
Gast
Gast



BeitragThema: Was bedeutet "Initialize"? (Grundkenntnisse)   Do Jul 03, 2008 3:55 pm

*****

Zitat :
/* Mein Szenarioskript! */

public func Initialize()
{
CreateObject(ROCK);
}

Initialize ist Englisch und bedeutet "voreinstellen" oder auch "vorbereiten". In einem Szenario wird also vor Beginn der Runde der eingeklammerte Skriptteil ausgeführt - in dem Beispiel also per CreateObject ein Stein an der Stelle 0, 0 erstellt.

Initialize tritt aber manchmal noch in einer anderen Form auf: InitializePlayer. Diese Form wird nicht einmalig ausgeführt, sondern immer dann, wenn ein Spieler das Spiel betritt. Dazu zählen auch alle Spieler, die bei Beginn der Runde dabei sind. Dies ist praktisch, wenn man zum Beispiel eine bestimmte Relauncheinstellung für alle Spieler haben möchte.

Zitat :
/* Mein Szenarioskript! */

//Macht die Variable iRelaunchs im ganzen Skript nutzbar

static iRelaunchs;

public func Initialize()
{
//Relaunchanzahl ist ein Array
iRelaunchs = [];
}

public func InitializePlayer(int iPlr)
{
//5 Relaunches für iPlr!
iRelaunchs[iPlr] = 5;
}

public func RelaunchPlayer(int iPlr)
{
//Wenn genügend Relaunchs...
if(iRelaunches[iPlr] > 0) {
//Relaunch abziehen...
iRelaunchs[iPlr]--;
//...und neuen Clonk erstellen!
var clnk;
clnk = CreateObject(CLNK, Random(LandscapeWidth()), Random(LandscapeHeight()), iPlr);
//Zum Crewmitglied machen und anwählen
MakeCrewMember(clnk, iPlr);
SetCursor(iPlr, clnk);
}
//Sonst tot!
else EliminatePlayer(iPlr);
}

Einfaches Relaunchskript. Initialize definiert die Variable iRelaunchs zuerst als Array. InitializePlayer definiert dann für jeden Spieler 5 Relaunchs. Sollte ein Spieler sterben, wird überprüft, ob noch genug Relaunchs vorhanden sind. Wenn ja, dann wird ein Clonk an einer zufälligen Stelle der Landschaft platziert, zum Crewmitglied gemacht und angewählt. Wenn nicht, wird der Spieler eliminiert.

InitalizePlayer besitzt also einen Callback: iPlr. Tritt ein Spieler ein, wird dessen Nummer zurückgegeben.


Zuletzt von Mozart am Mi Dez 31, 2008 5:03 pm bearbeitet; insgesamt 3-mal bearbeitet (Grund : Sternchen angefügt)
Nach oben Nach unten
Mozart
Kanzler
Kanzler
avatar

Männlich Alter : 24
Ort : Vaihingen/Enz
Anmeldedatum : 24.02.08

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Do Jul 03, 2008 7:59 pm

viel Mühe, grad mit den Verlinkungen, sehr gut
Nach oben Nach unten
Benutzerprofil anzeigen http://www.funamfag.de
Kai
Kapitän
Kapitän


Männlich Alter : 21
Anmeldedatum : 29.12.08

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Mi Dez 31, 2008 2:18 pm

Viel Mühe ist es, aber nix für anfänger xD
ich steige da kein bischen durch, obwohl ich es mir 100 mal durchgelesen hab^^
Nach oben Nach unten
Benutzerprofil anzeigen
mOwl
Oberst
Oberst


Anmeldedatum : 07.01.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Sa Feb 07, 2009 2:56 pm

Hmm warum geht das Relaunchscript nicht wenn ich es 1 zu 2 Übernehme? (also aus allen CLNK ein HCLK mache)
Nach oben Nach unten
Benutzerprofil anzeigen
Paperkoopa
Brigadegeneral
Brigadegeneral
avatar

Männlich Alter : 21
Ort : Bayern
Anmeldedatum : 17.06.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Do Jun 18, 2009 6:50 pm

wenn du einen hazardclonk meinst dann hast d die ID falsch geschrieben ;D
HZCK ist die ID vom hazardclonk
Nach oben Nach unten
Benutzerprofil anzeigen
Wolfes
General
General
avatar

Männlich Alter : 22
Ort : :/
Anmeldedatum : 21.02.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Do Jun 18, 2009 8:20 pm

ich hab folgendes prob ich möchte das ein spieler ein team wählen kann(in der lobby) und dann wenn er team 1 ist zb eine burg bauen kann ein anderer der team 2 ist eine hütte.
Eigentlich geht es gar nicht so um die Burg sondern eher darum dass(so wd) das man in der Lobby ein Team auswählen soll und das z.B. Team 1 eine bereis Vordefinierte Baukenntnisliste bekommt( bei Eigenschaften (Spieler 1 = Burg,Flint; Spieler 2=Hütte,Katapult)

Wäre echt nett wenn mir jemand helfen könnte!
Nach oben Nach unten
Benutzerprofil anzeigen
Gamer
Staatsrat
Staatsrat
avatar

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

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Fr Jun 19, 2009 8:19 pm

Ja also dann machst du folgendes:
Erstelle in deinem Szenario eine Teams.txt. Sie sollte ungeähr so aussehen:
Zitat :

[Teams]
LastTeamID=2

[Team]
id=1
Name=Team 1
PlrStartIndex=1
Color=16711680


[Team]
id=2
Name=Team 1
PlrStartIndex=2
Color=255
Dann kann man das in der Lobby wählen.
Per Script geht das so:
Dann dürfen bei den Szenarioeigenschaften nicht die Burg und die Hütte als Bauplan aktiviert sein.
Und dann einfach bei
func InitializePlayer(int iPlr){
//hier je nach Team platzieren
if(GetPlayerTeam(iPlr) == 1) SetKnowlegde(HUT3,iPlr);
else SetKnowledge(/*Burg-ID*/,iPlr);

Dann wird je nach Team ein Bauplan hinzugefügt
Ansonsten sieht man ja oben sowas PlrStartIndex1, das heißt er startet mit den eingestellten Bauplänen und Clonks die man ja bei Eigenschaften auswählen kann. (Oben bei Werte für: S1 etc)

_________________
Star Wars Projekt Homepage: http://sites.google.com/site/clonkprojekte/star-wars

Das Burg Projekt.................................................................... Schaut doch mal im Super-Mario Clonk Editon Forum vorbei!
Nach oben Nach unten
Benutzerprofil anzeigen http://www.gamer95.npage.de/
Wolfes
General
General
avatar

Männlich Alter : 22
Ort : :/
Anmeldedatum : 21.02.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Fr Jun 19, 2009 8:58 pm

aso danke hm aber wie ich das verstanden hab geht das direkte übernehemn nicht aber das is auch kein problem.achso dein script geht wie ivh vermute leider nut bei 2 teams hab aber 10 0.o

aber vielen dank gamer!
Nach oben Nach unten
Benutzerprofil anzeigen
Gamer
Staatsrat
Staatsrat
avatar

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

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   So Jun 21, 2009 1:31 am

Achso^^
Dann machst du einfach weiter mit deiner Team.txt.

[Team]
id=2 3
Name=Team 3
PlrStartIndex=2
Color=255

Und dann weiter mit
if(GetPlayerTeam(iPlr) == 3) dann SetPlrKnowlegde(iPlr,Was-weiß-ich-ID,);
if(GetPlayerTeam(iPlr) == 4) dann SetPlrKnowlegde(iPlr,Was-weiß-ich-ID,);

GetPlayerTeam()
Hä, SetKnowledge existiert nach der Doku garnicht.. o.O
Aber es gibt SetPlrKnowledge
Dann müsste mein vorheriges ja falsch sein..

_________________
Star Wars Projekt Homepage: http://sites.google.com/site/clonkprojekte/star-wars

Das Burg Projekt.................................................................... Schaut doch mal im Super-Mario Clonk Editon Forum vorbei!


Zuletzt von Gamer am So Jun 21, 2009 11:10 am bearbeitet; insgesamt 1-mal bearbeitet
Nach oben Nach unten
Benutzerprofil anzeigen http://www.gamer95.npage.de/
Wolfes
General
General
avatar

Männlich Alter : 22
Ort : :/
Anmeldedatum : 21.02.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   So Jun 21, 2009 1:49 am

achso das wer ich dann prob danke
Nach oben Nach unten
Benutzerprofil anzeigen
Wolfes
General
General
avatar

Männlich Alter : 22
Ort : :/
Anmeldedatum : 21.02.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Sa Jun 27, 2009 10:45 pm

omg allein um die ganzen ids einzugeben brauch ich 7 stunden >.<

edi: ha sich erledig verlesen aber warum brauch ich noch nen scrip wenn ich gleich alles in Teams.txt machen kann?


Zuletzt von Wolfes am So Jun 28, 2009 12:20 pm bearbeitet; insgesamt 1-mal bearbeitet
Nach oben Nach unten
Benutzerprofil anzeigen
Toastbrot
Kadett
Kadett
avatar

Männlich Anmeldedatum : 10.03.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   So Jun 28, 2009 10:48 am

Wolfes schrieb:
omg allein um die ganzen ids einzugeben brauch ich 7 stunden >.<

Musst du gar nicht denn jedes Team hat automatisch die Baupläne des entsprechenden spielers
Also bei PlrStartIndex=2können alle mitglieder des Teams alles bauen was du für Spieler 2 eintgestellt hast.
Nach oben Nach unten
Benutzerprofil anzeigen
Wolfes
General
General
avatar

Männlich Alter : 22
Ort : :/
Anmeldedatum : 21.02.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   So Jun 28, 2009 12:18 pm

Also dann :
if(GetPlayerTeam(iPlr) == 3) PlrStartIndex=2
oder hab ich was falsch versanden?



edi: ha sich erledig verlesen aber warum brauch ich noch nen scrip wenn ich gleich alles in Teams.txt machen kann?
Nach oben Nach unten
Benutzerprofil anzeigen
Gamer
Staatsrat
Staatsrat
avatar

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

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Mo Jun 29, 2009 9:12 pm

Ähh als "Wortscript" schon. Wenn du in der Team.txt eingestellt hast da Team 3 PlrStartIndex=2 hat dann schon. Aber als Script nicht.

_________________
Star Wars Projekt Homepage: http://sites.google.com/site/clonkprojekte/star-wars

Das Burg Projekt.................................................................... Schaut doch mal im Super-Mario Clonk Editon Forum vorbei!
Nach oben Nach unten
Benutzerprofil anzeigen http://www.gamer95.npage.de/
Wolfes
General
General
avatar

Männlich Alter : 22
Ort : :/
Anmeldedatum : 21.02.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Di Jun 30, 2009 3:47 pm

ne weitere frage xD wie mache ich das mit den spwanpoints ich wollte mir das mit dem script mal in TDB angucken es gibt aber keinen 0.o(zu spawns)mit einer schleife aber wie kann ich überprüfen ob nicht schon eins gemacht wurde?
Nach oben Nach unten
Benutzerprofil anzeigen
Mozart
Kanzler
Kanzler
avatar

Männlich Alter : 24
Ort : Vaihingen/Enz
Anmeldedatum : 24.02.08

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Di Jun 30, 2009 4:13 pm

Vllt mit ner lokalen variable, die auf 0 gesetzt wird, wenn einer was wegnimmt und auf 1 wenn eins produziert wird?
Nach oben Nach unten
Benutzerprofil anzeigen http://www.funamfag.de
Wolfes
General
General
avatar

Männlich Alter : 22
Ort : :/
Anmeldedatum : 21.02.09

BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   Di Jun 30, 2009 6:52 pm

naja ich werd mal en bisschen rumprobieren in den ferien ^^danke
Nach oben Nach unten
Benutzerprofil anzeigen
Gesponserte Inhalte




BeitragThema: Re: Was bedeutet "Initialize"? (Grundkenntnisse)   

Nach oben Nach unten
 
Was bedeutet "Initialize"? (Grundkenntnisse)
Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach oben 
Seite 1 von 1
 Ähnliche Themen
-
» Was bedeutet "Bugfrei" ?
» Was bedeutet: Technikhilfe "Gemeldeter Missbrauch"
» "Du öffnest deine Augen..."
» Mein "Buch" -> ein "Hundekrimi"
» was bedeutet dieses G?

Befugnisse in diesem ForumSie können in diesem Forum nicht antworten
CNDG :: Anfänger :: Tutorials-
Gehe zu: