Beiträge von Jeffry
-
-
Kaliber: Ohne Tag geht es nicht.
Unter den Includes:
new Text:Textdraw[5];
5 = Anzahl der Textdraws die du da erstellst. Musst du gegebenenfalls ändern. -
Oben der Teil wird 0x000000FF sein, und unten irgendwas um die 0x00000088 oder so. Falls 88 zu dunkel ist, nimm 77 (etc..). Beachte aber, dass dies HEX Werte sind, also nach 89 kommt nicht 90 sondern 8A. Ebenso wird 99 nicht zu 100, sondern zu 9A, dann 9B ... 9F und dann zu A0, bis FF.
-
Das kommt auf die Schriftart an, die du verwendest. Es geht nicht bei allen, versuche mal eine andere. http://wiki.sa-mp.com/wiki/TextDrawFont
Alternativ, versuche mal das hier: http://forum.sa-mp.com/showthread.php?t=397515 -
Dass die zwei Textdraws nicht angezeigt werden kann daran liegen, dass du die Box als letztes erstellst, sprich sie wird einfach auf die anderen drauf gesetzt, somit sind die nicht angezeigten Textdraws hinter der Box.
Erstelle das Textdraw mit der Box als erstes, dann sollte es klappen. -
Das kannst du so nicht machen, da keine Größe angegeben wurde.
Das geht nur ohne Angabe von einer Größe in einer Dimension, wenn du dahinter die Standard Werte packst. -
-
format(query,sizeof(query),"%s `Banned`='%d', `BanReason`='%s', `BanAdmin`='%s' WHERE `Name` = '%s'",
zu:
format(query,sizeof(query),"%s `Banned`='%d', `BanReason`='%s', `BanAdmin`='%s' WHERE `Name` = '%s'", query, -
Versuche es mal mit einer normalen Schleife:
CMD:a(playerid,params[])
{
new string[145],Text[128];
if(pInfo[playerid][pEingeloggt] != 1)return SendClientMessage(playerid,COLOR_GRAU,"Du kannst keine Befehle benutzen, da du nicht eingeloggt bist.");
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,COLOR_GRAU,"Du bist kein Team-Mitglied oder dein Rang ist zu niedrig.");
if(sscanf(params,"s",Text))return SendClientMessage(playerid,COLOR_GRAU,"Benutze: (/a)dmin [Nachricht]");
format(string,sizeof(string), "[Admin-Chat] %s: %s",pInfo[playerid][pName],Text);
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(pInfo[i][pAdminlevel] > 1)
{
SendClientMessage(i,COLOR_YELLOW,string);
}
}
}
return 1;
} -
Angenommen du erstellst dein Textdraw bei X = 120 und Y = 90. Dann machst du den Text "Hallo Welt" da rein. Sagen wir, der Text ist so groß, dass er in etwa über ein Zehntel deines Bildschirmes geht (musst du abschätzen, oder mit einem Lineal abmessen), dann heißt das 640 durch 10, das wäre 64. Somit ist TextDrawTextSize-X = 120 + 64 = 184.
Nun misst, bzw. schätzt, du die Höhe des Textdraws, sagen wir mal du bekommst den Text in etwa 20 mal untereinander hin, bis dein Bildschirm von oben nach unten voll damit wäre. Heißt also: 480 durch 20, das gibt 24. Somit wäre TextDrawTextSize-Y = 24. -
Du musst die Größe das anklickbaren Bereiches mit TextDrawTextSize anpassen. https://wiki.sa-mp.com/wiki/PlayerTextDrawTextSize
Der X Wert ist die Position PLUS die Größe des nach rechts anklickbaren Bereiches. Der Y Wert ist die geschätzte Höhe. -
Genau.
-
Poste einfach mal den Code mit dem du die Spieler-Daten lädst und den mit dem du sie speicherst.
-
Möglich ist. Wie kriege ich das aus der .ini ausgelesen ?
So wie du die anderen Spieler-Stats auch ausliest, hast ja sicher noch welche, oder? Poste ansonsten mal den Code, der die Spieler-Daten lädt. -
http://wiki.sa-mp.com/wiki/CreatePlayerTextDraw
Einen Platzhalter kannst du beim Erstellen nicht einfügen, da musst du format und PlayerTextDrawSetString nutzen, nachdem du das Textdraw erstellt hast.
-
Lädst du es vielleicht nicht aus der .ini, sondern speicherst es nur mit einem Standard-Wert?
-
Versuche es so:
if(text[0] = '#')
{
if(Account[playerid][AC_Admin] < 1)
{
return SendClientMessage(playerid, 0xAAAAAAAA, "{30B7E4}[INFO]: {FFFFFF}Sie haben für diesen Befehl keine befugnis.");
}
if(!strlen(text[1]))
{
return SendClientMessage(playerid, 0xFF0000AA, "{30B7E4}[INFO]: {FFFFFF}Nutze: #[Text]");
}
return AdminNachricht(playerid, 0xFF0000AA, text[1]);
}
else
{
return 1;
}public AdminNachricht(playerid, farbe, text[]) //#AdminNachricht(farbe, text[])
{
new temps_atring[145],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof(Name));
for(new i = 0; i < SpielerOnline; i++)
{
if(Account[i][AC_Admin] > 0)
{
//strdel(text, 0,1);
format(temps_atring, sizeof(temps_atring),"{30B7E4}#%s: %s",Name,text);
SendClientMessage(i, farbe, temps_atring);
}
}
return 0;
} -
public OnPlayerConnect(playerid)
{
new dateiname[MAX_PLAYER_NAME+25];
new playername[MAX_PLAYER_NAME+25];
for(new s=0; s<MAX_CARS_PER_PLAYER; s++)
{
Carlist[playerid][s][Typ]=-1; Carlist[playerid][s][X]=0.0; Carlist[playerid][s][Y]=0.0; Carlist[playerid][s][Z]=0.0;
Carlist[playerid][s][Rotation]=0.0; Carlist[playerid][s][Status]=0; Carlist[playerid][s][Lock]=0; Carlist[playerid][s][Carid]=-1;
Carlist[playerid][s][Farbe1]=-1; Carlist[playerid][s][Farbe2]=-1; Carlist[playerid][s][mod1]=-1; Carlist[playerid][s][mod2]=-1;
Carlist[playerid][s][mod3]=-1; Carlist[playerid][s][mod4]=-1; Carlist[playerid][s][mod5]=-1; Carlist[playerid][s][mod6]=-1;
Carlist[playerid][s][mod7]=-1; Carlist[playerid][s][mod8]=-1; Carlist[playerid][s][mod9]=-1; Carlist[playerid][s][mod10]=-1;
Carlist[playerid][s][mod11]=-1; Carlist[playerid][s][mod12]=-1; Carlist[playerid][s][mod13]=-1; Carlist[playerid][s][mod14]=-1;
Carlist[playerid][s][mod15]=-1; Carlist[playerid][s][mod16]=-1; Carlist[playerid][s][mod17]=-1; Carlist[playerid][s][Paintjob]=-1;
}
Spectating[playerid][0]=-1;
#if defined CARSELL
bietetAn[playerid]={-1,0};
#endif
GetPlayerName(playerid, playername, sizeof(playername));
for(new s=0; s<MAX_CARS_PER_PLAYER; s++)
{
format(dateiname, sizeof(dateiname), "/GekaufteFahrzeuge/%s%d.car", playername,s);
if (fexist(dateiname))
{
new File: CarFile = fopen(dateiname, io_read);
if ( CarFile )
{
new key[ 256 ];
new Data[ 256 ];
while ( fread( CarFile , Data , sizeof( Data ) ) )
{
key = ini_GetKey(Data);
if(strcmp(key,"AH_Typ",true)==0) { Carlist[playerid][s][Typ]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_X",true)==0) { Carlist[playerid][s][X]=floatstr(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Y",true)==0) { Carlist[playerid][s][Y]=floatstr(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Z",true)==0) { Carlist[playerid][s][Z]=floatstr(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Rot",true)==0) { Carlist[playerid][s][Rotation]=floatstr(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Status",true)==0) { Carlist[playerid][s][Status]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Lock",true)==0) { Carlist[playerid][s][Lock]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Paintjob",true)==0) { Carlist[playerid][s][Paintjob]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Farbe1",true)==0) { Carlist[playerid][s][Farbe1]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_Farbe2",true)==0) { Carlist[playerid][s][Farbe2]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod1",true)==0) { Carlist[playerid][s][mod1]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod2",true)==0) { Carlist[playerid][s][mod2]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod3",true)==0) { Carlist[playerid][s][mod3]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod4",true)==0) { Carlist[playerid][s][mod4]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod5",true)==0) { Carlist[playerid][s][mod5]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod6",true)==0) { Carlist[playerid][s][mod6]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod7",true)==0) { Carlist[playerid][s][mod7]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod8",true)==0) { Carlist[playerid][s][mod8]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod9",true)==0) { Carlist[playerid][s][mod9]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod10",true)==0) { Carlist[playerid][s][mod10]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod11",true)==0) { Carlist[playerid][s][mod11]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod12",true)==0) { Carlist[playerid][s][mod12]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod13",true)==0) { Carlist[playerid][s][mod13]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod14",true)==0) { Carlist[playerid][s][mod14]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod15",true)==0) { Carlist[playerid][s][mod15]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod16",true)==0) { Carlist[playerid][s][mod16]=strval(ini_GetValue(Data)); }
else if(strcmp(key,"AH_mod17",true)==0) { Carlist[playerid][s][mod17]=strval(ini_GetValue(Data)); }
}
}
fclose(CarFile);
if(Carlist[playerid][s][Typ]!=-1 && Carlist[playerid][s][Status]==1)
{
Carlist[playerid][s][Carid]=CreateTunedCar(playerid);
}
}
}
SetTimerEx("DelaySetVehicleParams",10000,0,"i",playerid);
return 1;
} -
Dir fehlen durch die Neuinstallation die MSVC's und wahrscheinlich .NET.
http://www.microsoft.com/en-us…confirmation.aspx?id=5555
https://www.microsoft.com/de-d…oad/details.aspx?id=30679 (x86 Version)
(Können auch noch andere sein die fehlen, das ist nicht immer genau zu sagen).NET:
https://www.microsoft.com/de-d…oad/details.aspx?id=30653 -
Debugge die beiden Callbacks bitte mal so:
public OnPlayerRequestSpawn(playerid)
{
printf("OnPlayerRequestSpawn (%d)", SkinSelection[playerid]);
if(SkinSelection[playerid] != 0)
{
printf("Skin: %d", GetPlayerSkin(playerid));
PlayerInfo[playerid][pSkin] = GetPlayerSkin(playerid);
}
return 1;
}public OnPlayerSpawn(playerid)
{
printf("OnPlayerSpawn");
new String[128],Dm[9];
for(new i = 0; MAX_PLAYERS > i; i++)
{
for(new ii = 0; 9 > ii; ii++)
{
if(DM[i][ii] == 1)
{
Dm[ii]++;
}
}
}
printf("Setze Skin: %d", PlayerInfo[playerid][pSkin]);
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
format(String,sizeof(String),"/Deagle: %d - /Dm: %d - /1o1: %d - /Fdm: %d - /Sniper: %d - /Teamdm: %d - /Insel: %d - Kein Modus: %d",Dm[0],Dm[1],Dm[2],Dm[3],Dm[4],Dm[5],Dm[6],Dm[8]);
TextDrawSetString(Textdraw[3],String);
if(DM[playerid][8] == 1)
{
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid,0);
}
else if(DM[playerid][0] == 1)
{
new rand = random(4);
SetPlayerInterior(playerid,18);
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid,24,1337);
SetPlayerPos(playerid,RandomSpawn[rand][rX],RandomSpawn[rand][rY],RandomSpawn[rand][rZ]);
SetPlayerFacingAngle(playerid,RandomSpawn[rand][rA]);
}
else if(DM[playerid][1] == 1)
{
new rand = 4+random(4);
SetPlayerInterior(playerid,0);
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(playerid,25,1337);
GivePlayerWeapon(playerid,34,1337);
SetPlayerPos(playerid,RandomSpawn[rand][rX],RandomSpawn[rand][rY],RandomSpawn[rand][rZ]);
SetPlayerFacingAngle(playerid,RandomSpawn[rand][rA]);
}
else if(DM[playerid][2] == 1)
{
SetPlayerInterior(playerid,7);
GivePlayerWeapon(playerid,24,1337);
SetPlayerPos(playerid,298.507934,-141.647048,1004.054748);
SetPlayerFacingAngle(playerid,0);
for(new i = 0; 4 > i;i++)
{
if(one[playerid][i] == 1)
{
SetPlayerVirtualWorld(playerid,i+1);
}
}
}
else if(DM[playerid][5] != 0)
{
new rand = 12+random(6);
SetPlayerInterior(playerid,3);
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(playerid,25,1337);
SetPlayerPos(playerid,RandomSpawn[rand][rX],RandomSpawn[rand][rY],RandomSpawn[rand][rZ]);
SetPlayerFacingAngle(playerid,RandomSpawn[rand][rA]);
}
else if(DM[playerid][4] == 1)
{
new rand = 8+random(4);
SetPlayerInterior(playerid,0);
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid,34,1337);
SetPlayerPos(playerid,RandomSpawn[rand][rX],RandomSpawn[rand][rY],RandomSpawn[rand][rZ]);
SetPlayerFacingAngle(playerid,RandomSpawn[rand][rA]);
}
else if(DM[playerid][6] == 1)
{
new rand = 18+random(4);
SetPlayerInterior(playerid,0);
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(playerid,25,1337);
SetPlayerPos(playerid,RandomSpawn[rand][rX],RandomSpawn[rand][rY],RandomSpawn[rand][rZ]);
SetPlayerFacingAngle(playerid,RandomSpawn[rand][rA]);
}
else if(DM[playerid][3] == 1)
{
new rand = 22+random(4);
SetPlayerInterior(playerid,18);
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid,24,1337);
GivePlayerWeapon(playerid,25,1337);
GivePlayerWeapon(playerid,33,1337);
SetPlayerPos(playerid,RandomSpawn[rand][rX],RandomSpawn[rand][rY],RandomSpawn[rand][rZ]);
SetPlayerFacingAngle(playerid,RandomSpawn[rand][rA]);
}
new ppname[MAX_PLAYER_NAME],file[250],clanname3d[50];
GetPlayerName(playerid,ppname,sizeof(ppname));
format(file,sizeof(file),"/Clans/%s.sav",(ppname));
if(dini_Exists(file))
{
format(clanname[playerid], 32, dini_Get(file,"Clan"));
clanstate[playerid] = dini_Int(file,"Rang");
if(labels[playerid] != Text3D:-1) Delete3DTextLabel(labels[playerid]);
labels[playerid] = Text3D:-1;
if(clanstate[playerid] == 3)
{
format(clanname3d,sizeof(clanname3d),"%s{FF0000} Leader {EEEEEE}",clanname[playerid]);
labels[playerid] = Create3DTextLabel(clanname3d,-1,30.0,40.0,50.0,40.0,0);
Attach3DTextLabelToPlayer(labels[playerid], playerid, 0.0, 0.0, 0.5);
}
else if(clanstate[playerid] == 1)
{
format(clanname3d,sizeof(clanname3d),"%s{FF0000} Member {EEEEEE}",clanname[playerid]);
}
labels[playerid] = Create3DTextLabel(clanname3d,-1,30.0,40.0,50.0,40.0,0);
Attach3DTextLabelToPlayer(labels[playerid], playerid, 0.0, 0.0, 0.5);
}
return 1;
}Dann poste was im Server Log steht.