Wir haben aktuell ein Funprojekt am laufen. Das Problem ist das er die Waffen nicht ausliest. Es wird wohl in der Datenbank gespeichert, aber sobald man connectet hat man keine waffen mehr.
Mfg
Savior44
Wir haben aktuell ein Funprojekt am laufen. Das Problem ist das er die Waffen nicht ausliest. Es wird wohl in der Datenbank gespeichert, aber sobald man connectet hat man keine waffen mehr.
Mfg
Savior44
aber sobald man connectet hat man keine waffen mehr.
So ganz ohne Code wird dir da vermutlich keiner weiter helfen können. Kannst du uns die Passagen, in dem du die Waffen ausließt bzw. die Waffen geladen werden zur Verfügung stellen?
Wir wissen derzeit gar nicht wo genau der Fehler liegt. Könntest ja kurz auf DC kommen und dir es anschauen.
Ist ein Spaghetti code
Am besten postest du hier den Code, dann haben auch alle im Forum die Möglichkeit dir zu helfen
Welche Zeile genau soll ich denn heraus kopieren aus dem Spaghetti?
Am besten ohne Soße.
Du hast doch das Problem beschrieben.. dann zeig uns auch den entsprechenden Code der zu dieser Thematik gehört und hör auf von Spaghetti zu reden.
Wir wissen nicht genau aus welcher Zeile es kommt.
Wir wissen nicht genau aus welcher Zeile es kommt.
Schau mal bei PlayerDisconnect ob du eine Funktion findest, was mit dem Speichern zutun hat, danach such nach der Funktion und dann müsste man es finden.
Die benutzen das Liberty Reallife Script und in der Datenbank unter User wird die Waffe gespeichert, sobald der Spieler von Server runtergeht und wieder draufgeht, sind die Waffen weg aber in der mysql werden die Waffen gespeichert
Kaliber hast du eine lösung woran das liegen kann?
Werden die Waffen den überhaupt nach dem Login des Users abgefragt und dementsprechend gesetzt?
unter onplayerlogin wird der user abgefragt mysqlload1 das ist der ganze acc
public MySQL_PlayerLoad1(playerid)
{
if(IsPlayerConnected(playerid))
{
new query[256], result6;
cache_get_value_name_int(0, "id", PlayerInfo[playerid][pDBID]);
GamePlayerSetUserID(playerid, PlayerInfo[playerid][pDBID]);
cache_get_value_name_int(0, "Level",PlayerInfo[playerid][pLevel]);
cache_get_value_name(0, "google2fa_secret", PlayerInfo[playerid][pAdminPin],24);
printf("%s",PlayerInfo[playerid][pAdminPin]);
cache_get_value_name_int(0, "AdminPin",PlayerInfo[playerid][pAdminPin]);
cache_get_value_name_int(0, "AdminTickets",PlayerInfo[playerid][pAdminTickets]);
cache_get_value_name_int(0, "Adminlevel",AdminSecurityLoad[playerid][0]);
cache_get_value_name_int(0, "Leaderverwalter",AdminSecurityLoad[playerid][1]);
cache_get_value_name_int(0, "Online",PlayerInfo[playerid][pOnline]);
cache_get_value_name_int(0, "Premium",PlayerInfo[playerid][pDonateRang]);
cache_get_value_name_int(0, "Ban",PlayerInfo[playerid][pBan]);
cache_get_value_name_int(0, "Spielzeit",PlayerInfo[playerid][pConnectTime]);
cache_get_value_name_int(0, "Registriert",PlayerInfo[playerid][pReg]);
cache_get_value_name_int(0, "Geschlecht",PlayerInfo[playerid][pSex]);
cache_get_value_name_int(0, "Gebalter",PlayerInfo[playerid][pAge]);
cache_get_value_name_int(0, "Herkunft",PlayerInfo[playerid][pOrigin]);
cache_get_value_name_int(0, "Muted",PlayerInfo[playerid][pMuted]);
cache_get_value_name_int(0, "Verklebt",PlayerInfo[playerid][pVerklebt]);
cache_get_value_name_int(0, "Levelpunkte",PlayerInfo[playerid][pExp]);
cache_get_value_name_int(0, "Geld", result6);
SetPlayerMoney(playerid, result6);
cache_get_value_name_int(0, "Bank",PlayerInfo[playerid][pAccount]);
cache_get_value_name_int(0, "Verbrechen",PlayerInfo[playerid][pCrimes]);
cache_get_value_name_int(0, "Morde",PlayerInfo[playerid][pKills]);
cache_get_value_name_int(0, "Tode",PlayerInfo[playerid][pDeaths]);
cache_get_value_name_int(0, "Verhaftet",PlayerInfo[playerid][pArrested]);
cache_get_value_name_int(0, "Wantedtod",PlayerInfo[playerid][pWantedDeaths]);
cache_get_value_name_int(0, "Telefonbuch",PlayerInfo[playerid][pPhoneBook]);
cache_get_value_name_int(0, "Telefon",PlayerInfo[playerid][pPhone]);
cache_get_value_name_int(0, "Telefontyp",PlayerInfo[playerid][pPhoneArt]);
cache_get_value_name_int(0, "Anbieter",PlayerInfo[playerid][pAnbieter]);
cache_get_value_name_int(0, "Rechnung",PlayerInfo[playerid][pRechnung]);
cache_get_value_name_int(0, "Guthaben",PlayerInfo[playerid][pGuthaben]);
cache_get_value_name_int(0, "Unterdrueckt",PlayerInfo[playerid][pUnterdrueckt]);
cache_get_value_name_int(0, "Telefonan",PlayerInfo[playerid][pPhoneOn]);
cache_get_value_name_int(0, "Bluetooth",PlayerInfo[playerid][pBluetooth]);
cache_get_value_name(0, "Bname", PlayerInfo[playerid][pBName],24);
cache_get_value_name_int(0, "Navi",PlayerInfo[playerid][pNavi]);
cache_get_value_name_int(0, "Werbungsapp",PlayerInfo[playerid][pWerbung]);
cache_get_value_name_int(0, "Peilsender",PlayerInfo[playerid][pPeilsender]);
cache_get_value_name_int(0, "Klebeband",PlayerInfo[playerid][pKlebeband]);
cache_get_value_name_int(0, "Seil",PlayerInfo[playerid][pSeil]);
cache_get_value_name_int(0, "Augenbinde",PlayerInfo[playerid][pBlindfold]);
cache_get_value_name_int(0, "Lottonr",PlayerInfo[playerid][pLottoNr]);
cache_get_value_name_int(0, "Fische",PlayerInfo[playerid][pFishes]);
cache_get_value_name_int(0, "Groessterfisch",PlayerInfo[playerid][pBiggestFish]);
cache_get_value_name_int(0, "Job",PlayerInfo[playerid][pJob]);
cache_get_value_name_int(0, "Blitzer",PlayerInfo[playerid][pBlitzer]);
cache_get_value_name_int(0, "Kopfgeld",PlayerInfo[playerid][pHeadValue]);
cache_get_value_name_int(0, "Inhaftiert",PlayerInfo[playerid][pJailed]);
cache_get_value_name_int(0, "Gefaenigszeit",PlayerInfo[playerid][pJailTime]);
cache_get_value_name_int(0, "Wartezeit",PlayerInfo[playerid][pWaitTime]);
cache_get_value_name_int(0, "Materialien",PlayerInfo[playerid][pMats]);
cache_get_value_name_int(0, "Drogen",PlayerInfo[playerid][pDrugs]);
cache_get_value_name_int(0, "Leader",PlayerInfo[playerid][pLeader]);
cache_get_value_name_int(0, "Member",PlayerInfo[playerid][pMember]);
if (PlayerInfo[playerid][pMember] > 0) {
GamePlayerSetFaction(playerid, PlayerInfo[playerid][pMember]);
}
if (PlayerInfo[playerid][pLeader] > 0) {
GamePlayerSetFaction(playerid, PlayerInfo[playerid][pLeader]);
}
if (PlayerInfo[playerid][pMember] == 0 && PlayerInfo[playerid][pLeader] == 0) {
GamePlayerSetFaction(playerid, 0);
}
cache_get_value_name_int(0, "Rang",PlayerInfo[playerid][pRang]);
cache_get_value_name_int(0, "Umember",PlayerInfo[playerid][pMember2]);
cache_get_value_name_int(0, "Urang",PlayerInfo[playerid][pRang2]);
cache_get_value_name_int(0, "Detskill",PlayerInfo[playerid][pDetSkill]);
cache_get_value_name_int(0, "Raubskill",PlayerInfo[playerid][pJackSkill]);
cache_get_value_name_int(0, "Drogenskill",PlayerInfo[playerid][pDrugsSkill]);
cache_get_value_name_int(0, "Kochskill",PlayerInfo[playerid][pCookSkill]);
cache_get_value_name_int(0, "Fischskill",PlayerInfo[playerid][pFishSkill]);
cache_get_value_name_float(0, "Shealth",PlayerInfo[playerid][pSHealth]);
cache_get_value_name_int(0, "Interior",PlayerInfo[playerid][pInt]);
cache_get_value_name_int(0, "Vwelt",PlayerInfo[playerid][pVwelt]);
cache_get_value_name_int(0, "Totls",PlayerInfo[playerid][pTotLS]);
cache_get_value_name_int(0, "Totlv",PlayerInfo[playerid][pTotLV]);
cache_get_value_name_int(0, "Totsf",PlayerInfo[playerid][pTotSF]);
cache_get_value_name_int(0, "Skin",PlayerInfo[playerid][pModel]);
cache_get_value_name_int(0, "Haus",PlayerInfo[playerid][pPhousekey]);
cache_get_value_name_int(0, "Biz",PlayerInfo[playerid][pPbiskey]);
cache_get_value_name_int(0, "Wantedlevel",PlayerInfo[playerid][pWantedlevel]);
cache_get_value_name_float(0, "Pos_x",PlayerInfo[playerid][pPos_x]);
cache_get_value_name_float(0, "Pos_y",PlayerInfo[playerid][pPos_y]);
cache_get_value_name_float(0, "Pos_z",PlayerInfo[playerid][pPos_z]);
cache_get_value_name_float(0, "Totpos_x",PlayerInfo[playerid][pTotPos_x]);
cache_get_value_name_float(0, "Totpos_y",PlayerInfo[playerid][pTotPos_y]);
cache_get_value_name_float(0, "Totpos_z",PlayerInfo[playerid][pTotPos_z]);
cache_get_value_name_int(0, "Perso",PlayerInfo[playerid][pPerso]);
cache_get_value_name_int(0, "Fuehrerschein",PlayerInfo[playerid][pCarLic]);
cache_get_value_name_int(0, "Motorradschein",PlayerInfo[playerid][pMotLic]);
cache_get_value_name_int(0, "Truckerschein",PlayerInfo[playerid][pTruckLic]);
cache_get_value_name_int(0, "Helischein",PlayerInfo[playerid][pHeliLic]);
cache_get_value_name_int(0, "Flugschein",PlayerInfo[playerid][pFlyLic]);
cache_get_value_name_int(0, "Bootschein",PlayerInfo[playerid][pBoatLic]);
cache_get_value_name_int(0, "Angelschein",PlayerInfo[playerid][pFishLic]);
cache_get_value_name_int(0, "Waffenschein",PlayerInfo[playerid][pGunLic]);
new weaponstring[20];
for(new i=1;i<10;i++)//waffenslots
{
format(weaponstring,sizeof(weaponstring),"Waffe%i",i);
cache_get_value_name_int(0, PlayerInfo[playerid][pGun][i], PlayerInfo[playerid][pGun][i]);
format(weaponstring,sizeof(weaponstring),"Munition%i",i);
cache_get_value_name_int(0, weaponstring, PlayerInfo[playerid][pAmmo][i]);
}
cache_get_value_name_int(0, "Autodiebzeit",PlayerInfo[playerid][pCarTime]);
cache_get_value_name_int(0, "Payday",PlayerInfo[playerid][pPayDay]);
cache_get_value_name_int(0, "Paydaypremium",PlayerInfo[playerid][pPayDayHad]);
cache_get_value_name_int(0, "Radio",PlayerInfo[playerid][pRadio]);
cache_get_value_name_int(0, "Tutorial",PlayerInfo[playerid][pTut]);
cache_get_value_name_int(0, "Warns",PlayerInfo[playerid][pWarns]);
cache_get_value_name_int(0, "Benzinkanister",PlayerInfo[playerid][pFuel]);
cache_get_value_name_int(0, "Verheiratet",PlayerInfo[playerid][pMarried]);
cache_get_value_name(0, "Verheiratetmit", PlayerInfo[playerid][pMarriedTo],24);
cache_get_value_name_int(0, "Sfpass",PlayerInfo[playerid][pSFPass]);
cache_get_value_name_int(0, "Lvpass",PlayerInfo[playerid][pLVPass]);
cache_get_value_name_int(0, "Pfandflaschen",PlayerInfo[playerid][pPfandflaschen]);
cache_get_value_name_int(0, "Klingelton",PlayerInfo[playerid][pKlingelton]);
cache_get_value_name_int(0, "Stummschalten",PlayerInfo[playerid][pStummschalten]);
cache_get_value_name_int(0, "Versicherung1",PlayerInfo[playerid][pVersicherung]);
cache_get_value_name_int(0, "Versicherung2",PlayerInfo[playerid][pVersicherung2]);
cache_get_value_name_int(0, "Versicherung3",PlayerInfo[playerid][pVersicherung3]);
cache_get_value_name_int(0, "Versicherung4",PlayerInfo[playerid][pVersicherung4]);
cache_get_value_name_int(0, "Versicherung5",PlayerInfo[playerid][pVersicherung5]);
cache_get_value_name_int(0, "Versicherung6",PlayerInfo[playerid][pVersicherung6]);
cache_get_value_name_int(0, "Hatuhr",PlayerInfo[playerid][pUhr2]);
cache_get_value_name(0, "Uhrenart", PlayerInfo[playerid][pUhrenart2],24);
cache_get_value_name(0, "Handyart", PlayerInfo[playerid][pHandyart],24);
cache_get_value_name_int(0, "Ausgebrochen",PlayerInfo[playerid][pIstausgebrochen]);
cache_get_value_name_int(0, "Theorie",PlayerInfo[playerid][pTheorie]);
cache_get_value_name_int(0, "Klingelton1", PlayerInfo[playerid][pKlingelton1]);
cache_get_value_name_int(0, "Klingelton2", PlayerInfo[playerid][pKlingelton2]);
cache_get_value_name_int(0, "Klingelton3", PlayerInfo[playerid][pKlingelton3]);
cache_get_value_name_int(0, "Klingelton4", PlayerInfo[playerid][pKlingelton4]);
cache_get_value_name_int(0, "Klingelton5", PlayerInfo[playerid][pKlingelton5]);
cache_get_value_name_int(0, "Hotelzimmer", PlayerInfo[playerid][pHotel]);
cache_get_value_name_int(0, "DarlehenTyp", PlayerInfo[playerid][pDarlehenType]);
cache_get_value_name_int(0, "Darlehen", PlayerInfo[playerid][pDarlehen]);
cache_get_value_name_int(0, "Darlehenzeit", PlayerInfo[playerid][pDarlehenZeit]);
cache_get_value_name_int(0, "Darlehenraten", PlayerInfo[playerid][pDarlehenRaten]);
cache_get_value_name_int(0, "Respawn1", PlayerInfo[playerid][pRespawn]);
cache_get_value_name_int(0, "Respawn2", PlayerInfo[playerid][pRespawn2]);
cache_get_value_name_int(0, "Kreditkarte", PlayerInfo[playerid][pKreditkarte]);
cache_get_value_name_int(0, "Scheckkarte", PlayerInfo[playerid][pScheckkarte]);
cache_get_value_name_int(0, "Kredit", PlayerInfo[playerid][pKredit]);
cache_get_value_name_int(0, "Kreditpayday", PlayerInfo[playerid][pKreditPayday]);
cache_get_value_name_int(0, "Erledigteauftraege", PlayerInfo[playerid][pContracts]);
cache_get_value_name_int(0, "Auftraegeverdientesgeld", PlayerInfo[playerid][pContractMoney]);
cache_get_value_name_int(0, "Kaution", PlayerInfo[playerid][pKaution]);
cache_get_value_name_int(0, "Cverhaftet", PlayerInfo[playerid][pVerhaftet]);
cache_get_value_name_int(0, "Erschossen", PlayerInfo[playerid][pErschossen]);
cache_get_value_name_int(0, "Ueberliefert", PlayerInfo[playerid][pUberliefert]);
cache_get_value_name_int(0, "Abgeschleppt", PlayerInfo[playerid][pAbgeschleppt]);
cache_get_value_name_int(0, "Bomben", Bomben[playerid]);
cache_get_value_name_int(0, "Parkschein", PlayerInfo[playerid][pParkschein]);
cache_get_value_name_int(0, "Parkzeit", PlayerInfo[playerid][pParkZeit]);
cache_get_value_name_int(0, "Local", PlayerInfo[playerid][pLocal]);
cache_get_value_name_int(0, "Uberfall", PlayerInfo[playerid][pUberfall]);
cache_get_value_name(0, "Arztevil", PlayerInfo[playerid][pArztevil],24);
cache_get_value_name(0, "Taxievil", PlayerInfo[playerid][pTaxievil],24);
cache_get_value_name(0, "FSevil", PlayerInfo[playerid][pFSevil],24);
cache_get_value_name(0, "ADACevil", PlayerInfo[playerid][pADACevil],24);
cache_get_value_name_int(0, "Busschein", PlayerInfo[playerid][pBusLic]);
cache_get_value_name_int(0, "SWATDeckname", PlayerInfo[playerid][pDeckname]);
cache_get_value_name_int(0, "HitmanName", PlayerInfo[playerid][pHitmanName]);
cache_get_value_name_int(0, "LetzterRaub", PlayerInfo[playerid][pRaubZeit]);
cache_get_value_name_int(0, "KautionsZeit", PlayerInfo[playerid][pKautionsZeit]);
cache_get_value_name_int(0, "KeineSB", PlayerInfo[playerid][pkeinesb]);
cache_get_value_name_int(0, "KeinAFK", PlayerInfo[playerid][pkeinafk]);
cache_get_value_name_int(0, "HitGlocke", PlayerInfo[playerid][pHitGlocke]); //hitsound
cache_get_value_name_int(0, "HitGlockeStatus", PlayerInfo[playerid][pHitSoundStatus]); //Hitsound Status
cache_get_value_name_int(0, "EuroStatus", PlayerInfo[playerid][pEuroStatus]);
cache_get_value_name_int(0, "Bekifft", PlayerInfo[playerid][pBekifft]);
#if defined Weihnachten
cache_get_value_name_int(0, "HatGeschenk", PlayerInfo[playerid][pHatGeschenk]);
cache_get_value_name_int(0, "HatMuetze", PlayerInfo[playerid][pHatMuetze]);
#endif
#if defined Fussball
cache_get_value_name_int(0, "StadionTicket", PlayerInfo[playerid][pTicket]);
#endif
Alles anzeigen
Musst natürlich noch uns mitteilen, was für Werte bei den prints rauskamen für die Waffen und wo setzt n dann GivePlayerWeapon?
für die waffen gibt es kein print nur wenn du dir eine waffe gibts ich kann dir von GivePlayerWeapon alles zeigen das würde aber etwas dauern weil das so viel ist das script ist leider nicht sauber geschrieben
for(new i=1;i<10;i++)//waffenslots
{
format(weaponstring,sizeof(weaponstring),"Waffe%i",i);
cache_get_value_name_int(0, PlayerInfo[playerid][pGun][i], PlayerInfo[playerid][pGun][i]);
format(weaponstring,sizeof(weaponstring),"Munition%i",i);
cache_get_value_name_int(0, weaponstring, PlayerInfo[playerid][pAmmo][i]);
}
So, da hast du die Waffen Sachen, dann mach doch mal ein printf("%d|%d",PlayerInfo[playerid][pGun][i], PlayerInfo[playerid][pAmmo][i]); darunter und zeig mal, was da so drinnen steht
Das kommt in der Server Log
[join] TestNichtJoinen has joined the server (119:83.135.191.84)
NULL
0|0
0|0
0|0
0|0
0|0
0|0
0|0
0|0
0|0
und in der Mysql Log habe ich das stehen
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
[2024-05-29 20:29:28.521] [async_file_logger] [error] empty field name
Wie steht es denn in der Datenbank, gibt es da die Felder Waffe1,Waffe2 etc mit den Ammo Feldern und da steht wirklich was drinnen?!
ja genau
Kannst du davon einen Screenshot machen? Am Besten so, dass man auch wirklich die Column-Names sieht.
format(weaponstring,sizeof(weaponstring),"Waffe%i",i);
cache_get_value_name_int(0, weaponstring, PlayerInfo[playerid][pGun][i]);
format(weaponstring,sizeof(weaponstring),"Munition%i",i);
cache_get_value_name_int(0, weaponstring, PlayerInfo[playerid][pAmmo][i]);
Schreib das mal so, das anderes macht keinen Sinn. und darunter nochmal das printf