Poste den Code mit dem du das AdminLevel (etc) speichern lässt.
Und schalte den mysql_debug bzw. mysql_log an (1 bzw LOG_ALL) je nach Plugin, und poste dann was im Log steht, wenn du den Spieler speicherst.
Beiträge von Jeffry
-
-
Gehts überhaupt bei OnPlayerDisconnect?
Richtig, GetPlayerIp geht bei OnPlayerDisconnect nicht.new sip[20];
GetPlayerIp(playerid, sip, sizeof (sip));
SpielerInfo[playerid][pip] = sip;
Das muss raus aus OnPlayerDisconnect und rein bei OnPlayerConnect (die IP ändert sich ja während der Spieler online ist nicht).Du musst es als VARCHAR anlegen. (Sollte auch in NaviCat so heißen) = string
-
cache_get_field_content_float(0,"x",dbhandle);
zu:
cache_get_field_content_float(i,"x",dbhandle);Du lädst sonst immer die Haus ID 0.
Das Selbe natürlich für y, z, i_x, ... usw. -
Diese Meldung kann man soweit ich weiss nicht dekativieren, ist ja auch ein sinnvolles Feature
Doch kann man.Man muss in diesen beiden Pfaden in der Registry einen Wert ändern (Registry: Start => "regedit" eingeben => Enter):
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3Jeweils den Wert 1806'er Eintrag auf den Wert 0 setzen, und falls kein 1806'er vorhanden ist, den 1806'er als REG_DWORD erstellen, mit dem Wert 0.
Wissensquelle: http://stadt-bremerhaven.de/da…em-download-deaktivieren/
(Den Neustart des PCs kann man sich oft sogar sparen, wenn's nicht klappt dann neu starten.)
-
Mache die FilterScripts eine nach der anderen wieder rein. Bei dem FilterScript bei dem es dann nicht mehr geht, weißt du, dass der es verursacht. Gegebenenfalls kannst den FS ja mal posten, bzw einen Link dazu wo du ihn her hast.
-
Hm. Dann mal anders.
Nimm mal alle deine FilterScripts aus dem Server (server.cfg => filterscipts - Zeile leer machen.). Gehen die Befehle im GameMode dann?Wenn nein, kannst du das in deinen GameMode einfügen, oder gibt das Errors?
public OnPlayerCommandReceived(playerid, cmdtext[])
{
return print("Ich habe ZCMD :p");
} -
Benutzt du zufälligerweise zcmd als Command Prozessor in deinem GameMode oder einem der FilterScripts?
Wegen dem Log: Hast du das richtig eingebaut? Versuch es nochmal und poste den Log trotzdem mal, schadet ja nicht.
-
"Installiere" das Plugin crashdetect: http://forum.sa-mp.com/showthread.php?t=262796
Dann gebe einen solchen Befehl ein und sage uns was im Server Log steht.Zur weiteren Veranschaulichung, füge bei OnPlayerCommandText direkt unter die erste Zeile das ein, so:
public OnPlayerCommandText(playerid, cmdtext[])
{
printf("Befehl eingegeben: %s", cmdtext);
//alles Weitere hier...Dann poste den Server Log.
-
forward CarInfo(playerid,cardbid);
public CarInfo(playerid,cardbid)
{
new rows,fields,key_int, string2[256];
format(string2,sizeof(string2),"Keys:\n");
cache_get_data(rows,fields,serverdbhandle);
for(new i=0; i<rows; i++)
{
format(string2,sizeof(string2),"%s%i\n",string2,cache_get_field_content_int(i,"userID",serverdbhandle));
}
SendClientMessage(playerid,0xFFFFFFFF,string2);So.
-
Das funktioniert genau so wie du es machen wolltest, du wirst einfach nur string3 zu klein deklariert haben.
new string[128];
format(string, sizeof(string), "Hallo");
format(string, sizeof(string), "%s Welt!", string);
print(string);
//print gibt aus: "Hallo Welt!"Klar kannst du auch strins oder strcat verwenden, persönlich finde ich aber format anschaulicher.
-
Jeffry:
weißt du vielleicht was ich machen kann
das dass Objekt direkt respawnt?Nicht wirklich, ich kenne dem Code ja nicht.
-
Wie sieht es damit aus?
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0, 1); -
Naja, laden tust du es ja schon. Setzen, also wirklich setzen, machst du so:
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, SpielerInfo[playerid][pGeld]); -
Nein, so gibst du ihm das Geld das er schon hat, in deinem Fall -1.
new money = 1000;
GivePlayerMoney(playerid,money);
SpielerInfo[playerid][pGeld] += money;So würdest du dem Spieler 1000$ geben.
-
Gut, dann erkläre ich es dir.
Beispiel:
format(string, sizeof(string), "%sTotal Hours Online: %d ~ Warnings: %d ~ Upgrade Points: %d ~ Spawn Armor: %d ~ Experience: %d/%d ~ Crimes Committed: %d ~ Times Arrested: %d\n", string, hours, warns, upgradepoints, spawnhealth, exp, expamount, crimes, arrests);Ich hab vorne ein "%s" hin gemacht, und hinten ein \n.
In die Parameter hab ich als erstes "string" hingesetzt, das fügt den bereits vorhandenen string (Zeile davor) bei "%s" ein. \n macht hinten den Zeilenumbruch.Anschaulich:
new string[128];
format(string, sizeof(string), "Hallo");
format(string, sizeof(string), "%s Welt!", string);
print(string);
//print gibt aus: "Hallo Welt!" -
new whostats[48];
if (targetid == playerid) whostats = "Your";
else if(targetid != playerid) format(whostats, sizeof(whostats), "%s's", PlayerName(targetid));format(whostats, sizeof(whostats), "%s Statistics", whostats);
format(string, sizeof(string), "Level: %d ~ Gender: %s ~ Age: %d ~ Wallet: $%d ~ Bank Account: $%d ~ Bank PIN: %d ~ Phone Number: %d ~ Job: %s (%d)\n", plevel, gender, age, wallet, bank, bankpin, number, job, joblevel);
format(string, sizeof(string), "%sTotal Hours Online: %d ~ Warnings: %d ~ Upgrade Points: %d ~ Spawn Armor: %d ~ Experience: %d/%d ~ Crimes Committed: %d ~ Times Arrested: %d\n", string, hours, warns, upgradepoints, spawnhealth, exp, expamount, crimes, arrests);
new smallstr[64];
format(string, sizeof(string), "%sOrganization: %s ~ Rank: %s (%d) ~ Products: %d ~ Wanted Level: %d ~ \n", string, GetPlayerFactionName(targetid), GetPlayerRank(targetid), rank, prods, wantedlevel);
#if defined COOKIE_SYSTEM
format(smallstr, sizeof(smallstr), "Cookies: %d ~ ", cookies);
strcat(string, smallstr);
#endif
#if defined GIFT_SYSTEM
format(smallstr, sizeof(smallstr), "Gifts: %d ~ ", gifts);
strcat(string, smallstr);
#endif
#if defined REWARD_SYSTEM
format(smallstr, sizeof(smallstr), "Reward Tokens: %d ~ ", PlayerInfo[targetid][pRewardTokens]);
strcat(string, smallstr);
#endif
format(smallstr, sizeof(smallstr), "Channel: %d khz\n", wtc);
strcat(string, smallstr);format(string, sizeof(string), "%sHealth: %.0f ~ Armor: %.0f ~ %s: %s ~ Cocaine: %dg ~ Weed: %dg ~ Material Packages: %d ~ Drug Packages: %d ~ Materials: %d\n", string, health, armor, marriage, PlayerInfo[targetid][pMarriedTo], cocaine, weed, packages, drugpackages, materials);
format(string, sizeof(string), "%sVIP Rank: %s (%d) ~ Bills: $%d ~ Ropes: %d ~ Cigars: %d ~ Cans of Sprunk: %d ~ Spraycans: %d ~ Heroin: %dg ~ Meth: %dg\n", string, viprank, PlayerInfo[targetid][pDonateRank], bills, ropes, cigars, sprunk, spraycans, heroin, meth);
new divisiontext[32], divisiontag[12];
if (PlayerInfo[targetid][pDivision] == 0) divisiontext = "None", divisiontag = "N/A";
if (PlayerInfo[targetid][pDivision] >= 1) format(divisiontext, 32, DivisionInfo[PlayerInfo[targetid][pMember]][PlayerInfo[targetid][pDivision]][divisionName]), format(divisiontag, 12, DivisionInfo[PlayerInfo[targetid][pMember]][PlayerInfo[targetid][pDivision]][divisionTag]);new vehicles;
for (new i = 1; i <= MAX_OWNED_CARS; i++)
{
if (VehicleKeys[targetid] != 0) vehicles++;
}new yesno[10];
if (iPod[targetid] == 0) yesno = "No";
if (iPod[targetid] == 1) yesno = "Yes";format(string, sizeof(string), "%sDivision: %s (%s) ~ Vehicles: %d/%d ~ iPod: %s ~ Total Wealth: $%d ~ Date Registered: %s %d, %d @ %02d:%02d:%02d\n", string, divisiontext, divisiontag, vehicles, MAX_OWNED_CARS, yesno, wallet + bank, GetMonth(PlayerInfo[targetid][pRegisterDate][2]), PlayerInfo[targetid][pRegisterDate][1], PlayerInfo[targetid][pRegisterDate][3], PlayerInfo[targetid][pRegisterDate][4], PlayerInfo[targetid][pRegisterDate][5], PlayerInfo[targetid][pRegisterDate][6]);
if (PlayerInfo[playerid][pAdmin] > 0) // How come this wasn't added?
{
format(string, sizeof(string), "%sAdmin Level: %d ~ House Keys: %d/%d ~ Garage Keys: %d/%d ~ Business Keys: %d/%d ~ Interior: %d ~ World: %d ~ Jail: %s (%d sec)", string, admin, housekey, HouseKey2[targetid], garagekey, GarageKey2[targetid], bizkey, BizKey2[targetid], interior, virtualworld, jailtype, jailtime);
}
ShowPlayerDialog(playerid, 1337, DIALOG_STYLE_MSGBOX, whostats, string, "Ok", "");
}
return 1;
}Du musst aber bei
new string[was_auch_immer_hier_steht];
das "was_auch_immer_hier_steht" erhöhen, zu 1024 oder sowas. -
Hier haste ein Beispiel und die Map ist auch gleich noch dabei:
Problem mit Befehl (geht zwar zu compilen geht aber nicht)Hilft dir das?
-
Der der Thread schon geschlossen wurde bedanke ich mich hier bei Atrox: und lobe ihn für das extrem schnelle Handeln bei meinem Vorschlag: [ VORSCHLAG ] Mobiles Design -> Logout Button
Das ist wirklich keine Selbstverständlichkeit, dass es so schnell geht.Vielen lieben Dank, das erspart nicht nur mir sondern wie wir gesehen haben auch vielen anderen Usern hier eine Menge Frust.


-
Dann:
if(sscanf(params,"s",item)) -
Ich kenne deinen Code ja nicht, aber so könntest du es machen:
GivePlayerMoney(playerid,1000);
SpielerInfo[playerid][pGeld] += 1000;Nach diesem Prinzip.