Scoreboard und Relaunches funktionieren nicht.Warum?
+2
Liech
niklbobb
6 verfasser
Autor
Nachricht
niklbobb Hauptman
Anmeldedatum : 28.05.09
Thema: Scoreboard und Relaunches funktionieren nicht.Warum? So Aug 16, 2009 10:24 pm
Hallo!
Ich will bei diesem Skript erreichen, dass einmal ein Scoreboard erstellt wird wo die Spieler auch stehen(was z.b. nicht klappt), aber auch, dass die Spieler relauncht werden. Außerdem bekommt ein Spieler, wenn er jemanden killt, ein Relaunches. Das alles hab ich probiert mit dem Kleines Handgemenge-Skript zu verknüpfen - klappt aber irgenwie nicht.Kann mir wer helfen?
/*protected func InitializePlayer(iPlr) { // Clonks auch für Spätjoiner if (g_iCrewCount) InitializePlayer2(iPlr);
//nun wird jeder Spieler beim beitritt ins Scoreboard eingefügt: public func InitializePlayer(iPlr){ //Ein Array aus der Globalen mit dem Index des Spielers machen Global(iPlr)=CreateArray(2);
//Kills auf 0 setzen SetScoreboardData(iPlr,0,Format("%d",Global(iPlr)[0]),0);
//Relaunches müssen auch angezeigt SetScoreboardData(iPlr,1,Format("%d",Global(iPlr)[1]),Global(iPlr)[1]); }
protected func InitializePlayer2(iPlr) { // Clonks an dieselbe Stelle wie den Erstclonk. Fällt am wenigsten auf var pHiRank = GetHiRank(iPlr); if (pHiRank) for (var i=1; i { var pClonk = CreateObject(CLNK, GetX(pHiRank), GetDefBottom(pHiRank), iPlr); ObjectSetAction(pClonk, "Walk"); MakeCrewMember(pClonk, iPlr); DoEnergy(+500, pClonk); SetDir(GetDir(pHiRank), pClonk); SetCommand(pClonk, "Follow", pHiRank); // geht nicht :C } }
//immer wenn ein Clonk stirbt public func OnClonkDeath(object pClonk, int iKiller){
//Kills erhöhen Global(iKiller)[0]++;
//Relaunches erhöhen Global(iKiller)[1]++;
//Kein Kill für Selbstmord if(iKiller==GetOwner(pClonk))return(1);
//Punkte ins Scoreboard nach bewärtem System eintragen: SetScoreboardData(iKiller,0,Format("%d",Global(iKiller)[0]),Global(iKiller)[0]);
//Scoreboard nach Kills Sortieren SortScoreboard(0);
//Nachricht Ausgeben: Log("%s von %s wurde von %s getöted",GetName(pClonk),GetPlayerName(GetOwner(pClonk)),GetPlayerName(iKiller)); }
public func RelaunchPlayer(int iPlr){
//Mal sehen ob er noch Relaunches hat: if(Global(iPlr)[1]<1){RemovePlayer(iPlr);return(1);}
//wenn ja einen abziehen Global(iPlr)[1]--;
//Spieler Relaunchen var Clonk; Clonk=CreateObject(CLNK,Random(LandscapeWidth()),40,iPlr); MakeCrewMember(Clonk,iPlr); SetCursor(iPlr,Clonk);
//Und nun das Scoreboard erneunern SetScoreboardData(iPlr,1,Format("%d",Global(iPlr)[1]),Global(iPlr)[1]); }
func RemovePlayer(iPlr){ return(1); } public func RemovePlayer(int iPlr){ //Beide werte auf 0 setzen sorgt dafür das die Zeile verschwindet SetScoreboardData(iPlr,0,0,0); SetScoreboardData(iPlr,1,0,0); }
protected func script1() { // Jetzt gibts erstmal Clonknachschub für alle: Nach Durchschnittsrang der besten Clonks var pHiRank, n, iRank; for (var i=0; i if (pHiRank = GetHiRank(GetPlayerByIndex(i))) { iRank += GetRank(pHiRank); ++n; } iRank = (iRank+n/2)/n; g_iCrewCount = BoundBy(iRank/3, 1, 5); // Zusätzliche Clonks erzeugen if (g_iCrewCount) for (var i=0; i InitializePlayer2(GetPlayerByIndex(i)); }*/
protected func script100() { // Mehr Spieler brauchen mehr Waffen for (var i=0; i { // Typ bestimmen var id = getSpawnType(); // Platz im Erdreich finden var x = 10 + Random(LandscapeWidth() - 20); var h = GetHorizonHeight(x); var y = h + 10 + Random(LandscapeHeight() - h - 20); if (GetMaterial(x, y) != Material("Earth")) continue; // Objekt per verzögertem Effekt erzeugen var effect = AddEffect("SpawnSparkle", 0, 1, 5, 0, 0); EffectVar(0, 0, effect) = id; EffectVar(1, 0, effect) = x; EffectVar(2, 0, effect) = y; } // Spawns mitzählen g_iSpawnCount++; }
protected func script150() { goto(100); }
private func getSpawnType() { var id = [STFN, SFLN, EFLN, FBMP, ZAPN]; return (id[Random(1 + Min(g_iSpawnCount/5, GetLength(id)))]); }
private func GetHorizonHeight(x) { var y; while (y < LandscapeHeight() && !GBackSemiSolid(x, y)) y += 10; while (y > LandscapeHeight() && GBackSemiSolid(x, y)) --y; return(y); }
global func FxSpawnSparkleTimer(obj, effect, time) { // Variablen auswerten var id = EffectVar(0, 0, effect); var x = EffectVar(1, 0, effect); var y = EffectVar(2, 0, effect); // Funken erzeugen CreateParticle("NoGravSpark", x + RandomX(-6,+6), y + RandomX(-6,+6), 0, -3, RandomX(30,50), RGB(64,64,255)); // Objekt erzeugen if ((time >= 100) && !EffectVar(3, 0, effect)) EffectVar(3, 0, effect) = CreateObject(id, x, y); // Fertig if (time >= 150) return(-1); }
Liech Fregattenkapitän
Alter : 33 Anmeldedatum : 02.02.09
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Mo Aug 17, 2009 3:29 pm
Erzähle uns doch mal was genau nicht klappt. Es ist sehr schwer dir zu helfen wenn man das Problem nicht kennt. "Es klappt nicht" bringt ungefähr genausoviel wie "Ich habe es beim Nudeln Kochen bemerkt".
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Mo Aug 17, 2009 4:25 pm
Ich schätze mal, dass das Scoreboard nicht angezeigt wird.
Umezawa Feldmarschall
Alter : 29 Anmeldedatum : 30.12.08
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Mo Aug 17, 2009 5:46 pm
Zitat :
Code:
/*protected func InitializePlayer(iPlr)
Mach das Kommentar weg, sonst zählt der ganze Rest des Scriptes als Kommi. Etwa so:
Code:
protected func InitializePlayer(iPlr)
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Mo Aug 17, 2009 6:17 pm
Tja, das war doch mal der simpelste Fehler aller zeiten xD. Würde mal den C4Skripter verwenden, dann hättest du das sofort gemerkt.
niklbobb Hauptman
Anmeldedatum : 28.05.09
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Mo Aug 17, 2009 9:01 pm
Hey Danke
Funktioniert jetzt!
NilsZ Admiral
Ort : Mein Rekord: 27 Punkte! :D Anmeldedatum : 07.08.08
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Mo Aug 17, 2009 11:45 pm
läd der C4Skripter eigentlich schnell? so wie Notepad/Editor? wenn ja wäre es genau das richtige für so jemanden Schreibfaulen wie ich^^. Hab beim scripten immer die Doku offen oder kopier schnell was aus anderen Scripts, hehe.
Simsi Staatssekretär
Alter : 31 Ort : Vaihingen/Enz Anmeldedatum : 30.03.08
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Di Aug 18, 2009 12:43 am
Bei mir hats nur einmal gebraucht zum den Scripter zu öffnen, aber einzelne Scripts zu öffnen geht relativ schnell. Was mich gestört hat, war die HIlfe zu Funktionen welche Parameter übergeben werden, die hat immer die Zeile darunter blockiert.
Bowserkoopa Staatsrat
Alter : 30 Anmeldedatum : 21.12.08
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum? Di Aug 18, 2009 7:42 am
Ja das war etwas lästig, deshalb habe ich den Skripter auch auf dem 2. PC. Ist schon praktisch, wenn man aber die Parameter weiß, denn ich vertausch oft mal was
Gesponserte Inhalte
Thema: Re: Scoreboard und Relaunches funktionieren nicht.Warum?
Scoreboard und Relaunches funktionieren nicht.Warum?