dcmd_security(playerid)
{
if(SpielerInfo[playerid][sFraktion] == TEAM_PRESIDENT)
{
if(SpielerInfo[playerid][sRang] >= 3)
{
if(IsPlayerInRangeOfPoint(playerid,20.0,1279.8011,-838.3245,1085.6328))
{
if(Arbeitet[playerid])
{
ResetPlayerWeapons(playerid);
Arbeitet[playerid] = 0;
SetPlayerArmour(playerid,0.0);
SetPlayerHealth(playerid,100.0);
}
else
{
GivePlayerWeapon(playerid,24,147);
GivePlayerWeapon(playerid,29,500);
GivePlayerWeapon(playerid,3,1);
GivePlayerWeapon(playerid,41,99999);
Arbeitet[playerid] = 1;
SetPlayerArmour(playerid,100.0);
SetPlayerHealth(playerid,100.0);
}
}
else
{
SendClientMessage(playerid,Farbe_Grau,"Du kannst hier kein Dienst antreten.");
}
}
else
{
SendClientMessage(playerid,Farbe_Grau,"Du hast nicht den passenden Rank.");
}
}
}
Beiträge von Cryptex
-
-
das geht leider nicht weg,
das zeigt erst an wenn du über 50 mio im spiel hast.. -
die haben ein trustedshops zertifikat..
da kann nix passieren "https://www.trustedshops.com/shop/certificate.php?shop_id=X089264B786D57B846766B9D8AA784ADC"
Wenn ja zahlt dir trustedshops dein geld zurück -
hast du unter deinen PlayerCar enums auch plate zu stehen?
-
da fehlt doch ein ganzes stück, poste mal alles aus dem rumpf von deinem invite code
-
eig nur ein paar sind auch sehr viele richtig, einige haben auch kein label die eig welche haben müssten
-
weiss nicht ob es daran liegt aber muss das nicht so sein?
...
mysql_fetch_float(sqlfloat);
mysql_free_result();
return sqlfloat; -
forward Float:mysql_GetFloat(Table[], Field[], Where[], Is[]);
stock Float:mysql_GetFloat(Table[], Field[], Where[], Is[])
{ -
na dan erstellst du ein stock der alle autos aus der datenbank ladet und rufst es unter OnGameModeInit auf
-
ocmd:buymesser(playerid,params[])
{
if(PlayerInfo[playerid][plevel] == 30)
{
Giveplayerweapon(playerid,24,1);
return 1;
}
} -
na das weg hier
DestroyVehicle(CarInfo[playerid][i][Auto]);
-
stock mysql_SetFloat(Table[], Field[], Float:To, Where[], Where2[])
{
new query[128];
mysql_real_escape_string(Table, Table);
mysql_real_escape_string(Field, Field);
mysql_real_escape_string(Where, Where);
mysql_real_escape_string(Where2, Where2);
format(query, 128, "UPDATE `%s` SET `%s` = '%f' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
mysql_query(query);
return true;
}forward Float:mysql_GetFloat(Table[], Field[], Where[], Is[]);
stock Float:mysql_GetFloat(Table[], Field[], Where[], Is[])
{
new query[128], Float:sqlfloat;
mysql_real_escape_string(Table, Table);
mysql_real_escape_string(Field, Field);
mysql_real_escape_string(Where, Where);
mysql_real_escape_string(Is, Is);
format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
mysql_query(query);
mysql_store_result();
mysql_fetch_float(sqlfloat);
mysql_free_result();
return sqlfloat;
} -
Hallo,
ich will meine Vehicles spawnen lassen und dabei an bestimmten Farzugen die einen bestimmten Datenwert in der Datenbank haben ein 3D Textlabel ranhägen.
So, problem ist das es die Vehicles vertauscht, ein Copvehicle ist auf einmal ein Admin vehicle u.s.w
Ich finde irgendwie die Fehler nicht. Kann da mal einer bitte drüber schauen?enum Fahrzeuge
{
fvID,
fvModel,
Float:fvX,
Float:fvY,
Float:fvZ,
Float:fvA,
fvColor1,
fvColor2,
fvType,
//Vehicle Types
//0 = Standart
//1 = Grün
//2 = Lila
//3 = Gelb
//100 = Admin
//101 = Polizei
//10 = CarShop 1
//11 = CarShop 2
fvPaintjob,
fvPrice,
fvLocked,
fvNeon,
fvBesitzer[MAX_PLAYER_NAME]
}public OnVehicleSpawn(vehicleid)
{
for(new i; i < MAX_VEHICLES; i++)
{
if(Vehicles[i][fvType] == 10)
{
Admin3DText[i] = Create3DTextLabel( "Shop Vehicle", 0xB70000FF, 0.0, 0.0, 0.0, 50.0, 0, 1 );
Attach3DTextLabelToVehicle( Admin3DText[i] , i, 0.0, 0.0, 1.3);
}
else if(Vehicles[i][fvType] == 100)
{
Admin3DText[i] = Create3DTextLabel( "Admin Vehicle", 0xB70000FF, 0.0, 0.0, 0.0, 50.0, 0, 1 );
Attach3DTextLabelToVehicle( Admin3DText[i] , i, 0.0, 0.0, 1.3);
}
else if(Vehicles[i][fvType] == 101)
{
Admin3DText[i] = Create3DTextLabel( "Cop Vehicle", 0xB70000FF, 0.0, 0.0, 0.0, 50.0, 0, 1 );
Attach3DTextLabelToVehicle( Admin3DText[i] , i, 0.0, 0.0, 1.3);
}
SetVehicleNumberPlate(i,"Thug Life");
SetVehicleHealth(i, 999.0);
}...
return 1;
}public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
if(Vehicles[GetPlayerVehicleID(playerid)][fvType] == 10)
{
SendClientMessage(playerid, green, "{FF0000}[SERVER] {FFFFFF}Du kannst dir das Fahzeug mit /buyvehicle kaufen");
}
else if(Vehicles[GetPlayerVehicleID(playerid)][fvType] == 11)
{
SendClientMessage(playerid, green, "{FF0000}[SERVER] {FFFFFF}Du kannst dir das Fahzeug mit /buyvehicle kaufen");
}
}if(newstate == PLAYER_STATE_DRIVER)
{
if((Vehicles[GetPlayerVehicleID(playerid)][fvType] == 100) && SpielerInfo[playerid][pAdmin] <= 0)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, red, "{FF0000}[SERVER] {FFFFFF}Du bist leider kein Admin");
}
}if(newstate == PLAYER_STATE_DRIVER)
{
if((Vehicles[GetPlayerVehicleID(playerid)][fvType] == 101) && SpielerInfo[playerid][pCop] <= 0)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, red, "{FF0000}[SERVER] {FFFFFF}Du bist leider kein Cop");
}
}...
return 1;stock LoadVehicles()
{
new ID = 1, String[100];
while(ID < 500)
{
format(String, sizeof(String), "%d", ID);
Vehicles[ID][fvID] = mysql_GetInt("Vehicles", "ID", "ID", String);
Vehicles[ID][fvModel] = mysql_GetInt("Vehicles", "VehicleModel", "ID", String);
Vehicles[ID][fvX] = mysql_GetFloat("Vehicles", "VehicleX", "ID", String);
Vehicles[ID][fvY] = mysql_GetFloat("Vehicles", "VehicleY", "ID", String);
Vehicles[ID][fvZ] = mysql_GetFloat("Vehicles", "VehicleZ", "ID", String);
Vehicles[ID][fvA] = mysql_GetFloat("Vehicles", "VehicleAngle", "ID", String);
Vehicles[ID][fvColor1] = mysql_GetInt("Vehicles", "Color1", "ID", String);
Vehicles[ID][fvColor2] = mysql_GetInt("Vehicles", "Color2", "ID", String);
Vehicles[ID][fvType] = mysql_GetInt("Vehicles", "VehicleType", "ID", String);
Vehicles[ID][fvPaintjob] = mysql_GetInt("Vehicles", "Paintjob", "ID", String);
Vehicles[ID][fvPrice] = mysql_GetInt("Vehicles", "Price", "ID", String);
Vehicles[ID][fvLocked] = mysql_GetInt("Vehicles", "Locked", "ID", String);
Vehicles[ID][fvNeon] = mysql_GetInt("Vehicles", "Neon", "ID", String);
format(Vehicles[ID][fvBesitzer], MAX_PLAYER_NAME, mysql_GetString("Vehicles", "Besitzer", "ID", String));
if(strlen(Vehicles[ID][fvType]) < 999)
{
Vehicles[ID][fvID] = AddStaticVehicleEx(Vehicles[ID][fvModel], Vehicles[ID][fvX], Vehicles[ID][fvY], Vehicles[ID][fvZ], Vehicles[ID][fvA], Vehicles[ID][fvColor1], Vehicles[ID][fvColor2], (5*60));
SetVehicleHealth(Vehicles[ID][fvID], 999.0);
}
ID++;
}
printf("--> %i Vehicles Loaded FromMySQL", ID);
return 1;
} -
hmmm komisch das hatte ich vorher... vieleich war estwas anderes falsch
danke dir, eine frage nochIm datenbak steht als user einfach nur 'Staat'.
Jedoch zeigt es m Label mit komischen sonderzeichen.
ist mein sscanf nicht richtig? s (string) müsste doch richtig sein oder?
sscanf(Str, "p<|>isiffffffiiii", hID, hUser, hLevel, hEnterX,
hEnterY, hEnterZ, hExitX, hExitY, hExitZ, hInterior, hPrice,
hVirtualWorld, hLocked); -
hallo,
probiere grad mein eigenes hausscript in mein mod zu schrieben jedoch will wieder einiges nicht klappen..
mir gehen auch leider die ideen aus...Es soll pro Haus ein Textlabel angezeigt werden jedoch zeigt es nur das letzt Haus mit label an. Die Pickups jedoch werden richtig geladen.
mein code um die gepeicherten daten aus dem mysql datenbank zu laden:
stock AddHouseFromFile()
{
new Str[200], string[200], pTotal, hID, hUser, hLevel, Float:hEnterX, Float:hEnterY, Float:hEnterZ, Float:hExitX, Float:hExitY, Float:hExitZ, hInterior, hPrice, hVirtualWorld, hLocked;mysql_query("SELECT * FROM `House`");
mysql_store_result();
if(mysql_num_rows() > 0)
{
while(mysql_fetch_row(Str))
{
sscanf(Str, "p<|>isiffffffiiii", hID, hUser, hLevel, hEnterX, hEnterY, hEnterZ, hExitX, hExitY, hExitZ, hInterior, hPrice, hVirtualWorld, hLocked);
hID = CreateDynamicPickup(1273, 1, hEnterX, hEnterY, hEnterZ, -1, -1, -1, PICKUPDISTANCE);
pTotal++;
}
format(string,sizeof(string),"[ID] %d\n[BESITZER] %s\n[LEVEL] %d\n[PREIS] %d", hID, hUser, hLevel, hPrice);
CreateDynamic3DTextLabel(string, white, hEnterX, hEnterY, hEnterZ, 100.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, TEXTLABELDISTANCE);
}
mysql_free_result();
printf("--> %i Houses Loaded FromMySQL", pTotal);
return 1;
}Ich müsste eigentlich "CreateDynamic3DTextLabel" in die while schleife ziehen was mache ich jedoch mit "format(string,sizeof....).
Ich kann das ja nicht davor oder danach setzen oder gar in die schleife da es sonst nicht nur einmal pro haus gesetzt wird.while(mysql_fetch_row(Str))
{
sscanf(Str, "p<|>isiffffffiiii", hID, hUser, hLevel, hEnterX, hEnterY, hEnterZ, hExitX, hExitY, hExitZ, hInterior, hPrice, hVirtualWorld, hLocked);
hID = CreateDynamicPickup(1273, 1, hEnterX, hEnterY, hEnterZ, -1, -1, -1, PICKUPDISTANCE);
CreateDynamic3DTextLabel(string, white, hEnterX, hEnterY, hEnterZ, 100.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, TEXTLABELDISTANCE);
pTotal++;
}Mir qualmt wieder mein Kopf. Bitte um hilfe
danke schon mal
-
man verliert geld (100$) nicht beim sterben sondern beim respawnen nach dem tod "nur mal so nebenbei".
-
sry habe mich wieder vertippt gehabt, so muss es 100% gehen
Code
Alles anzeigenocmd:getprods(playerid, params[]) { if(isPlayerJob(playerid,5)) if(IsPlayerInRangeOfPoint(playerid,2.0,2659.6147,-1594.4108,13.3176)) { if(!HatPlayerProds(playerid,0))return SendClientMessage(playerid,DUNKELROT,"Du hast bereits 500 Prods bei dir."); if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 498) { return SendClientMessage(playerid,ROT,"Du bist in keinem Lieferfahrzeug"); } else { new string[128]; SetPVarInt(playerid,"Prods", 500); format(string,sizeof(string),"Du hast 500 Pakete Geladen, liefere sie nun am Makierten ort auf der Karte ab"); SendClientMessage(playerid,BLAU,string); SetPlayerCheckpoint(playerid, -117.4540,-323.7768,1.4942, 8.0); SpielerSpeichern(playerid); } } return 1; } ocmd:abliefern(playerid, params[]) { if(isPlayerJob(playerid,5)) if(IsPlayerInRangeOfPoint(playerid,2.0,-115.3805,-323.8688,1.4967)) { if(!HatPlayerProds(playerid,500))return SendClientMessage(playerid,DUNKELROT,"Du hast keine 500 Prods bei dir."); if(GetVehicleModel(GetPlayerVehicleID(playerid))) if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 498) { return SendClientMessage(playerid,ROT,"Du bist in keinem Lieferfahrzeug"); } else { new string[128]; SetPVarInt(playerid,"Prods", 0); format(string,sizeof(string),"Du hast 500 Pakete Abgeladen, und erhälst da durch 1500€"); SendClientMessage(playerid,BLAU,string); GivePlayerMoney(playerid, 1500); SetPlayerCheckpoint(playerid, -117.4540,-323.7768,1.4942, 8.0); SpielerSpeichern(playerid); } } return 1; }
-
Ich weiß wie das geht trd Danke aber die aus der savepositions.txt die Koords sind aber ganz anders als wie
891.110229,-782.841796,101.310699,
gib mal di ganze zeile aus savepos... -
ocmd:getprods(playerid, params[])
{
if(isPlayerJob(playerid,5))
if(IsPlayerInRangeOfPoint(playerid,2.0,2659.6147,-1594.4108,13.3176))
{
if(!HatPlayerProds(playerid,0))return SendClientMessage(playerid,DUNKELROT,"Du hast bereits 500 Prods bei dir.");
if(!GetVehicleModel(GetPlayerVehicleID(playerid)) == 498)
{
return SendClientMessage(playerid,ROT,"Du bist in keinem Lieferfahrzeug");
}
else
{
new string[128];
SetPVarInt(playerid,"Prods", 500);
format(string,sizeof(string),"Du hast 500 Pakete Geladen, liefere sie nun am Makierten ort auf der Karte ab");
SendClientMessage(playerid,BLAU,string);
SetPlayerCheckpoint(playerid, -117.4540,-323.7768,1.4942, 8.0);
SpielerSpeichern(playerid);
}
}
return 1;
}ocmd:abliefern(playerid, params[])
{
if(isPlayerJob(playerid,5))
if(IsPlayerInRangeOfPoint(playerid,2.0,-115.3805,-323.8688,1.4967))
{
if(!HatPlayerProds(playerid,500))return SendClientMessage(playerid,DUNKELROT,"Du hast keine 500 Prods bei dir.");
if(!GetVehicleModel(GetPlayerVehicleID(playerid)) == 498)
{
return SendClientMessage(playerid,ROT,"Du bist in keinem Lieferfahrzeug");
}
else
{
new string[128];
SetPVarInt(playerid,"Prods", 0);
format(string,sizeof(string),"Du hast 500 Pakete Abgeladen, und erhälst da durch 1500€");
SendClientMessage(playerid,BLAU,string);
GivePlayerMoney(playerid, 1500);
SetPlayerCheckpoint(playerid, -117.4540,-323.7768,1.4942, 8.0);
SpielerSpeichern(playerid);
}
}
return 1;
} -
so geht es thx :),
strcat hatte ich schonif(SpielerInfo[playerid][pAdmin] == 0)
{
format(string, sizeof(string), "{FF0000}[SPIELERDATEN]\n{00FF00}[NAME] {FFFFFF}%s {00FF00}[ID]{FFFFFF} %d\n{00FF00}[GETÖTET] {FFFFFF}%d\n{00FF00}[GESTORBEN] {FFFFFF}%d", SpielerNameAnzeige(playerid), playerid, SpielerInfo[playerid][pKills], SpielerInfo[playerid][pDeaths]);
format(string, sizeof(string), "%s\n\n{FF0000}[FINANZEN]\n{00FF00}[GELD] ${FFFFFF}%d\n{00FF00}[BANKGUTHABEN] ${FFFFFF}%d\n\n{FF0000}[SKILLINFO]\n{00FF00}[SKILL] {FFFFFF}%d/10", string, SpielerInfo[playerid][pMoney], SpielerInfo[playerid][pBankMoney], SpielerInfo[playerid][pSkill]);
format(string, sizeof(string), "%s\n{00FF00}[LEVEL] {FFFFFF}%d\n{00FF00}[SPIELZEIT] {FFFFFF}%d {00FF00}Tage {FFFFFF}%d:%d:%d {00FF00}Stunden", string, SpielerInfo[playerid][pLevel], SpielerInfo[playerid][pPlayerTimeDay], SpielerInfo[playerid][pPlayerTimeHour], SpielerInfo[playerid][pPlayerTimeMin], SpielerInfo[playerid][pPlayerTimeSec]);
format(string, sizeof(string), "%s\n{00FF00}[VIP-RANK] {FFFFFF}%s (%d)\n\n{FF0000}[ANDERE DATEN]\n{00FF00}[WANTED LEVEL] {FFFFFF}%d\n{00FF00}[WANTED WAHRSCHEINLICHKEIT] {FFFFFF}%s", string, VIPName, SpielerInfo[playerid][pVIPLevel], SpielerInfo[playerid][pWanted], VIPRandomWanted);
}strcat(string, string, sizeof(string));
ShowPlayerDialog(playerid, DIALOG_STATS, DIALOG_STYLE_MSGBOX, "{FF0000}Bloodz {FFFFFF}n {00FF00}Cripz {FFFFFF}- {FFFF00}Stats", string, "Schließen", "");
return 1;