Ich würde auch auf die Farbe tippen, da es einen Fehler beim 3. Parameter anzeigt.
Probiers einfach mal so:
SetPlayerMarkerForPlayer(i,playerid,0xFF0000FF);
Oder zeig uns mal was du bei
#define MROT
hast.
Ich würde auch auf die Farbe tippen, da es einen Fehler beim 3. Parameter anzeigt.
Probiers einfach mal so:
SetPlayerMarkerForPlayer(i,playerid,0xFF0000FF);
Oder zeig uns mal was du bei
#define MROT
hast.
if(strcmp(cmd,"/detektive",true) == 0)
{
new dets = 0;
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && PlayerInfo[i][pJob] == 1)
{
GetPlayerName(i,giveplayer,sizeof(giveplayer));
format(string,sizeof(string)," Detektiv %s[%d] Telefon: %d",giveplayer,i,PlayerInfo[playerid][pPnumber]);
SendClientMessage(playerid,COLOR_YELLOW,string);
dets++;
}
}
if(dets == 0) SendClientMessage(playerid,COLOR_YELLOW," Es ist kein Detektiv online!!");
return 1;
}
Du hast es in for(new c=0 ... gesetzt, das heißt, der Timer wird 700 Mal gestartet => Fehlfunktion und Total Resourcenverschwendend.
Mach es so rein:
public OnGameModeInit()
{
SetTimer("WerbeText",60000,1);
new string[MAX_PLAYER_NAME];
new string1[MAX_PLAYER_NAME];
//... Und so weiter... restlicher Code
Afaik, crasht das den Server oder den Spieler. Benutze " " <= Also mit Leerzeichen darin. Oder benutzt einfach diese Funktion:
stock ClearChat(playerid,lignes)
{
if(lignes > 0)
{
if(playerid < 0 || playerid >= MAX_PLAYERS || !IsPlayerConnected(playerid)) // also zum Beispiel bei -1 = Alle
{
for(new MSG = 0; MSG < lignes; MSG++)
{
SendClientMessageToAll(0x00000000," ");
}
}
else
{
for(new MSG = 0; MSG < lignes; MSG++)
{
SendClientMessage(playerid,0x00000000," ");
}
}
}
return 1;
}
Wenn du nun bei einem Spieler 5 Leerzeilen machen willst:
ClearChat(playerid,5);
Wenn du bei allen Spielern die Chatbox clearen lassen willst:
ClearChat(-1,50); // -1 = eine Invalide ID | 50 = Zeilen der gesamten Chatbox
Dir fehlen Parameter in der Funktion udb_Create(), das zweite Parameter ist das Passwort des Accounts.
Als ich das Script angeschaut hatte, dachte ich auch, dass es funktioniert, aber nicht schön ist...
Arrays sind in so einem Fall besonders geschickt
Das geht recht einfach. Standard gibt es ja schon /save und es speichert in savedpositions.txt im GTA San Andreas Ordner. Ich habe vor einiger Zeit mal das Dingen aus Langeweile nachgebaut, bitteschön: breadfish.de/wcf/attachment/787/
Beides...
Die Styles 1-6 haben meist verschieden Schriftarten und Positionen...siehe hier
Wenn man keine Ahnung hat....
Ne, also aus GF kopieren kann er selber. Er will seinen eigenen CMD mit strget und kein strtok.
Außerdem ist das da nicht drin, wonach er letztendlich gesucht hat.
gla=CreateVehicle(mid,x,y+2,z+1,za,f1,f2,-1);
Wie wärs damit?
Selbst ist der Mann/erazor.
Oben alle SpawnKoordinaten:
new Float:gRandomPlayerSpawns[][3] = {
{1958.3783,1343.1572,15.3746},
{2199.6531,1393.3678,10.8203},
{2483.5977,1222.0825,10.8203},
{2637.2712,1129.2743,11.1797},
{2000.0106,1521.1111,17.0625},
{2024.8190,1917.9425,12.3386},
{2261.9048,2035.9547,10.8203},
{2262.0986,2398.6572,10.8203},
{2244.2566,2523.7280,10.8203},
{2335.3228,2786.4478,10.8203},
{2150.0186,2734.2297,11.1763},
{2158.0811,2797.5488,10.8203},
{1969.8301,2722.8564,10.8203},
{1652.0555,2709.4072,10.8265},
{1564.0052,2756.9463,10.8203},
{1271.5452,2554.0227,10.8203},
{1441.5894,2567.9099,10.8203},
{1480.6473,2213.5718,11.0234},
{1400.5906,2225.6960,11.0234},
{1598.8419,2221.5676,11.0625},
{1318.7759,1251.3580,10.8203},
{1558.0731,1007.8292,10.8125},
{1705.2347,1025.6808,10.8203} // Beim letzten kein Komma
};
Bei OnplayerSpawn:
new rand = random(sizeof(gRandomPlayerSpawns));
SetPlayerPos(playerid, gRandomPlayerSpawns[rand][0], gRandomPlayerSpawns[rand][1], gRandomPlayerSpawns[rand][2]); // Warp the player
Verloren? Naja, wieso nicht...
breadfish.de/wcf/attachment/778/
Level[i] >= level
Hättest du die Variable Level, dann würde die Funktion überprüfen, ob die Variable größergleich dem erfordertem Level ist, um die Nachricht zu sehen.
public SendClientMessageToAdmin(level, color, const string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && PlayerInfo[i][pAdmin] >= level)
{
SendClientMessage(i,color,string);
}
}
return 1;
}
Anstatt PlayerInfo[i][pAdmin] musst du deine AdminLevelVariable einsetzen
if(modeild == 422)
AddVehicleComponent(422, tuningid);
Da bin ich mir aber sicher, dass es nicht funktioniert
public OnPlayerEnterVehicle(playerid,vehicleid,ispassenger)
{
if(GetVehicleModel(vehicleid) == 422)
{
AddVehicleComponent(vehicleid,1010);
}
return 1;
}
1. Wenn schon dann:
#define TEXT "Hallo Welt"
SendClientMessage(playerid,COLOR_LIGHTBLUE,TEXT);
2. Wozu der Ganze Aufwand? Du könntest es auch lösen:
new Texte[][100] = {
"Willkommen auf dem Server!",
"Du kannst dich nun registrieren!",
"Du kannst dich nun einloggen!",
" %s hat den Server betreten!"
};
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid,COLOR_YELLOW,Texte[0]);
if(!RegisteredAccount[playerid]) SendClientMessage(playerid,COLOR_GREEN,Texte[1]);
else SendClientMessage(playerid,COLOR_GREEN,Texte[2]);
new name[MAX_PLAYER_NAME], str[128];
GetPlayerName(playerid,name,sizeof(name));
format(str,sizeof(str),Texte[3],name);
SendClientMessageToAll(COLOR_GREY,str);
return 1;
}
Aber wie gesagt: UMSTÄNDLICH!
Hm...also wenn du deinen gesamten GameMode so aufbauen willst, dann wird das kein Zuckerschlecken...
Du musst aus einer Datei in ein riesiges Array lesen und dann zum Beispiel sowas hier benutzen....Das ist nicht so wirklich einfach.
SendClientMessage(playerid,COLOR_YELLOW,ReadText[361]);
Wo zum teufel kann man sich denn als Experte bewerben...
Wenn man sein Profil editiert, kann man auf die Benutzergruppen und da sind da Experten. Dann dann auf Bewerben klicken.
Das hab ich gestern Nacht gemacht und warte auf ein Antwort
Ganz ehrlich habe ich es auch nicht getestet, aber eigentlich müsste es so gehen:
public OnPlayerEnterVehicle()
{
if(vehicleid == tune1)
{
AddVehicleComponent(tune1, 1010); // die 1010 ist Nitro... wenn man mehr tuning will noch eins drunter
AddVehicleComponent(tune1, 1074); // das sind Mega Reifen...
}
return 1;
}
Deins checkt ab, ob es das Car tune1 ist und gibt ihm Nitro. Dann gibt es jedem Auto, in das eingestiegen wird Mega Reifen...Is so. (Hoffe ich)
Ahhh...jetzt habs ich kapiert...Ich war gewöhnt, dass das 1. Parameter dann vehicleid ist. Sorry dafür