Gute Frage, aber ich denke mal ganz unten bei OnGameModeInit über das return 1;
mfg.
Gute Frage, aber ich denke mal ganz unten bei OnGameModeInit über das return 1;
mfg.
ich benutze GetMaxPlayers();
Ich bin mir nicht ganz sicher, aber ich glaube diese Funktion liest die Zahl aus der server.cfg aus...
Also wenn du da 200 stehen hast, macht der das immer noch 200x
mfg.
Der Code lautet so, den du einbauen musst:
for(new v=0; v<MAX_VEHICLES; v++)
{
SetVehicleToRespawn(v);
}
mfg.
Und woher hast du diese Info? Im Wiki finde ich das nicht.
Das ist eine gute Frage
Um genau zu sein, weiß ich nicht mehr woher ich das weiß, aber ich weiß, dass es so ist
mfg.
Wie kommst du da denn drauf?
MAX_PLAYERS = 500 Leute (eigentlich)
und wenn du das so schreibst:
for(new playerid=0; playerid<MAX_PLAYERS; playerid++) //Macht diese Schleife das 500x
und das ist nicht sehr Ressourcenfreundlich, also einfach bei OnPlayerConnect einbauen und dann wird das nur gemacht, wenn ein Spieler auf den Server kommt
mfg.
So nebenbei
TextDrawCreates und dass alles drum und dran kommen in OnGameModeInit^^
So ein Quatsch !
Es ist eigentlich klüger die bei OnPlayerConnect rein zu machen, da dann jeder Spieler selber einen TextDraw zugewiesen bekommt und bei OnGameModeInit 500 Leute...
Also wenn nur 20 Leute spielen ist das um einiges Ressourcen freundlicher
mfg.
%d ist auch Integer. Glaube es macht auch keinen Unterschied ob %i oder %d.
Habe ich doch geschrieben, aber es macht einen Unterschied, les doch einfach meinen Post über deinem
mfg. *FACEPALM*
-.- Das ist kein Befehl, das war ein Witz (den du aber anscheinend nicht verstanden hast...) nunja, egal
Also du läufst durch das Tor...und davor, spawnst du da einfach in der Nähe oder weiter weg ?
mfg.
Und wir sollen den Code jetzt erraten ja? .... Lass uns ein bisschen Zeit, wir melden uns in wenigen Tagen wieder! *facepalm*
Im Prinzip benötigt man keinen Code
Man weiß ja, das die Autos ursprünglich richtig gemappt wurden und ich gehe mal davon aus das er nicht irgentwie sowas gemacht hat:
for(new i=0; i<99; i++)
{
SetVehiclePos(lspd[i], X, Y, Z-100);
}
Nunja, da dies aber keine selbst gemappte Garage ist, habe ich eigentlich nur noch 2 Vermutungen:
1. Poste mal bitte deinen Respawn Befehl !
2. Wie kommst du in die LSPD - Garage ? (Zu Fuß, das ist mir auch klar, aber ich will wissen, lässt du dich da rein porten oder läufst du durch das Tor ?)
mfg.
Ist diese Garage selber gemappt ?
mfg.
Nein, da dies gegen die Regel IV verstößt: SPAM !
mfg.
du musst das new idx = 0; direkt über die Schleife da unten packen, so wie ich das gemacht hatte
mfg.
müsste aber, schick mal mehr Code...
und achte bitte beim Einfügen darauf, dass du oben neben "Editor", "Quellcode" verwendest !
mfg.
An dem subtrahieren liegt es nicht, sondern eher an einem Logik Fehler:
new idx = 0;
for(new i=0;i<MAX_PLAYERS;i++)
{
if(GetPVarInt(i,"Admin") > 0)
{
if(idx == 0)
{
Report -= 1;
}
idx++;
format(str,144,"offene Reports: %d",Report);
TextDrawSetString(Textdraw1,str);
TextDrawShowForPlayer(i,Textdraw1);
}
}
Der Fehler war, da es eine Globale Variable ist und wenn mehrere Admins online sind, dann wird da immer -x abgezogen.
x = Anzahl der Admins
mfg.
//Edit: Absatz
Der Code sieht sehr gut aus, weiter so !
10/10 !
mfg.
if(strcmp(Fraktion, "deinefraktion", false) == 0)
Das ist so nicht korrekt, muss so lauten:
if(strcmp(Fraktion, "deinefraktion", true) == 0)
mfg.
Du kannst auch einfach dein jetziges Script editieren
Einfach bei OnPlayerSpawn:
TogglePlayerControllable(playerid, 1);
einfügen
mfg.
Ja, im Prinzip das gleiche, da:
//oben in dein Script
new ang[MAX_PLAYERS] = 999;
ocmd:heal(playerid, params[])
{
new pID;
if(sscanf(params,"i",pID)) return SendClientMessage(playerid, rot, "Verwendung: /heal [spielerid]");
if(IsPlayerConnected(pID) && pID != playerid)
{
ang[pID] = playerid;
}
return 1;
}
ocmd:accept(playerid, params[])
{
#pragma unused params //glaube so hieß das
if(ang[playerid] != 999)
{
SetPlayerHealth(playerid, 100); //Spieler wird geheilt
GivePlayerMoney(ang[playerid], 50); //Artzt bekommt 50$
ang[playerid] = 999;
}
return 1;
}
mfg.