TextDrawLetterSize(Textdraw7, 587.0,220.0);
ist das nicht ein bissle groß? vielleicht isses so groß dass es außerhalb vom bidschirm is?
Beiträge von Tround
-
-
das ist mir zu erst ins auge gefallen..
for(new i; i<MAX_PLAYERS; i++)
{
if(Spieler[i][Sprache] == 0)
{
SendClientMessageR(playerid,Weiss,string,10.0);du machst eine schleife mit "i" aber schickst die message immer an "playerid"
-
ja das ist mit einer schleife machbar.
for(new i=0;i<sizeof(CosaNostraCar);i++)
{
SetVehicleNumberPlate(CosaNostraCar[i], "abc123");
} -
du solltest den unterschied zwischen string und integer lernen..
Reg_Passwort sollte eigentlich ein string sein jedoch nimmst du GetPVarInt und nicht GetPVarString...das gleiche hier: mysql_real_escape_string(age,age);
age ist wie ich vermute ein integer und kein string -
das ist der nachteil von pickups..
entweder das pickup zerstören wenn man es aufgenommen hat und danach wieder erstellen.
oder das ganze per befehl mit isplayerinrangeofpoint machen. -
Dies war mein erstes Projekt in Sachen Mapping.
w0w. fürs erste mal echt spitze! sieht aus wie original von rockstar.
hab dafür keine geduld alles passende zusammenzusuchen
9/10 (man könnte innen noch paar details gebrauchen z.b den roten teppich fänd ich net schlecht) -
die koordinaten ändern.
oben - unten "z" koordinate
die himmelsrichtungen mit der x und y koordinate.
am besten mit einem map das tor neu mappen. -
createhaus(Float:X,Float:Y,Float:Z,Preis,Level)
{
for(new i=0; i<sizeof(hInfo); i++)
{
if(hInfo[i][hCreated]!=0)continue;
hInfo[i][hBesitzer] = 0;
hInfo[i][hPreis] = Preis;
hInfo[i][hLevel] = Level;
hInfo[i][h_enx] = X;
hInfo[i][h_eny] = Y;
hInfo[i][h_enz] = Z;
hInfo[i][hCreated] = 1;
hInfo[i][hOwned] = 0;
new string[128];
format(string,sizeof(string),"Das Haus hInfo[%i] wurde erstellt.",i);
SendClientMessageToAll(COLOR_RED,string);
saveHausToDB(i);
return 1;//<<--- schleife wird beendet nachdem ein haus erstellt wurde
}
}ocmd:ch(playerid,params[])
{
new preis,level;
if(sscanf(params,"ii",preis,level))return SendClientMessage(playerid,COLOR_RED,"LOL");
for(new i = 0; i<sizeof(hInfo); i++)//und hier ist die schleife überflüssig?
{
if(hInfo[i][hCreated]!=0)continue;
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
createhaus(X,Y,Z,preis,level);
}
return 1;
} -
ok danke erstmal jetzt kommt das
SQL
Alles anzeigen[23:33:16] ProcessQueryThread(OnQueryFinished) - Query was successful. (SELECT * FROM `houses`) [23:33:16] ProcessQueryThread(OnQueryFinished) - Data caching enabled. [23:33:16] CMySQLHandler::StoreResult() - Result was stored. [23:33:16] CMySQLHandler::FreeResult() - Result was successfully free'd. [23:33:16] CMySQLHandler::ProcessQueryThread() - Data is getting passed to ->ProcessTick() [23:33:16] OnQueryFinished(d) - Threaded function called. [23:33:16] >> cache_get_data( Connection handle: 1 ) [23:33:16] ProcessTick() - The cache has been cleared. [23:33:16] Passing query SELECT * FROM `factioninfo` | d [23:33:16] ProcessQueryThread(OnQueryFinished) - Query was successful. (SELECT * FROM `factioninfo`) [23:33:16] ProcessQueryThread(OnQueryFinished) - Data caching enabled. [23:33:16] CMySQLHandler::StoreResult() - Result was stored. [23:33:16] CMySQLHandler::FreeResult() - Result was successfully free'd. [23:33:16] CMySQLHandler::ProcessQueryThread() - Data is getting passed to ->ProcessTick() [23:33:16] OnQueryFinished(d) - Threaded function called. [23:33:16] >> cache_get_data( Connection handle: 1 ) [23:33:16] ProcessTick() - The cache has been cleared. [23:33:16] Passing query SELECT * FROM `serverstate` | d [23:33:16] CMySQLHandler::ProcessQueryThread() - Error will be triggered to OnQueryError()
Oder hat es mit der Daten-Bank zu tuhn wenn ich die .sql hochlade kommt das
SQL-Befehl:/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
MySQL meldet: Dokumentation
#1231 - Variable 'character_set_client' can't be set to the value of 'NULL'sieht so aus als ob du keine fehler mehr bekommst in der log.. bei deinen anderen fehlern bin ich überfragt
-
schau dir mal das hier an das wirds erklären: http://wiki.sa-mp.com/wiki/MySQL#mysql_connect
-
passwort zu 100% richtig eingegeben?
Access denied for user -
Passagiere hinter den Piloten porten, anschließend freezen...
und wenn dann das flugzeug startet bleibt doch der spieler einfach stehen?
nicht so optimal..
mit putplayerinvehicle wie gesagt kann man das realisieren.. auch wenn gar keine plätze verfügbar sind..
jedoch beim aussteigen gibts einen gamecrash da der charakter nicht wirklich eingestiegen ist. (müsste man mit setplayerpos wieder aussteigen dann klappts) -
query string zu klein?
-
ich hatte erst vor paar tagen genau das gleiche problem.
bei mir lag es an der datenbank irgendwie.. versuch mal einen float wert manuel einzutragen und schau ob es sich einspeichern lässt überhaupt..
bei mir wurde z.b 123.45 zu 123 obwohl ich die spalte als float angegeben hatte..
lass mich mal überlegen wie ich das gefixxt hab.. aber probiers das mal -
if(PlayerInfo[playerid][pLevel] == 3)
bedeutet ja der ber spieler MUSS level 3 sein.. level drüber und drunter gehen nicht.
wenn du aber level 3 und größer haben willst musst du es so machen
if(PlayerInfo[playerid][pLevel] <3)
falls es kleiner als 3 ist wird returnt -
-
else if benutzen dann müsste es klappen
-
hier mal ein beispiel mit ocmd und sscanf
ocmd:schein(playerid,params[])
{
new pID,scheinname[10];
if(sscanf(params,"us",pID,scheinname))return SendClientMessage(playerid,BLAU,"Info: /schein [ID] [Scheinname]");
if(strcmp(scheinname,"auto",true)==0)
{
//schein geben
}
return 1;
} -
das is nicht nur bei getplayerpos so.. das kenn ich auch von getplayerskin und anderen sachen.
ich vermute mal die sachen werden einfach zu spät ausgelesen.
ich habe mir einen /restart befehl geschrieben in dem die spieler abgespeichert und gekickt werden 1 sekunde bevor der gmx befehl kommt.
wüsste aber auch gerne wie man das sonst machen könnte.. den skin kann man ja im enum abspeichern wenn er sich ändert..
aber man kann ja nicht die ganze zeit die koordinaten auslesen lassen. (könnte schon aber resourcenfreundlichkeit sagt nein) -
im wiki steht doch ein code schnipsel?
http://wiki.sa-mp.com/wiki/GetVehicleHealth_DE//repariert das Fahrzeug, indem sich der Spieler gerade befindet.
if(strcmp(cmdtext, "/repair", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid)) //checkt ob der spieler in einem Fahrzeug sitzt
{
new Float:health;
new veh;
veh = GetPlayerVehicleID(playerid);
GetVehicleHealth(veh, health);
if(health >500) return SendClientMessage(playerid,COLOR_RED,"Du brauchst dein Fahrzeug nicht zu reparieren");
//if(health >500) 500 kann beliebeg verändert werden. Wenn die Fahrzeughealth über dieser Zahl ist,
//lässt sich das Fahrzeug nicht reparieren!
SetVehicleHealth(veh,1000);
SendClientMessage(playerid,COLOR_GREEN,"repariert!");
}
else //wenn der Spieler in keinem Fahrzeug sitzt
{
SendClientMessage(playerid, COLOR_RED, "Du bist in keinem Fahrzeug!");
}
}