Salvare informazioni su file con dini_Int

Ok ma a me non hai ancora risposto, ti avevo chiesto una parte di codice.

Inviato dal mio LENNY utilizzando Tapatalk
 
@vinnythebest @#F96 funziona però non salva, ho visto sulla montecarlo c'è pfile[128] quindi ho provato pKey[128] ma non va, ho anche provato la directory dove si trovano gli account, leggi i codici negli spoiler cortesemente e ti chiedo anche di aiutarmi siccome sono in un problema da cui non riesco ad uscire da solo ho bisogno delle competenze di qualcuno più bravo di me; la scrittura su file non avviene e di conseguenza il contenuto del file non viene prelevato per caricarlo nel dialogmenu
#define dialog_Phone_AdressBook 1063
#define dialog_Phone_AdressBook_ChooseAction 1064
#define dialog_Phone_AdressBook_ChNumb 1065
#define dialog_Phone_AdressBook_Rename 1066

new Pone_AdreesBook_ChoosenID[MAX_PLAYERS];

if(strcmp(cmd,"/rubrica", true)==0)
{
if(PlayerInfo[playerid][pPhoneNumber]==0)return SendClientMessage(playerid,COLOR_WHITE,"Non hai un cellulare");
ShowPlayerPhoneAdressBook(playerid);
return 1;
}
Secondo me l'errore sta in dini_Get(dini_Get(PlayerInfo[playerid][pKey], non so risolverlo
stock ShowPlayerPhoneAdressBook(playerid)
{
new s[500];
new _key[50];
for(new x=0;x<20;x++)
{
format(_key,50,"phone_address%d_isset",x);
if(dini_Int(PlayerInfo[playerid][pKey],_key)==0)
{
if(x==0)format(s,sizeof(s),"Slot vuoto %d",x+1);
else format(s,sizeof(s),"%s\nSlot vuoto %d",s,x+1);
}
else
{
format(_key,50,"phone_address%d_name",x);
if(x==0)format(s,sizeof(s),"%s",dini_Get(PlayerInfo[playerid][pKey],_key));
else format(s,sizeof(s),"%s\n%s",s,dini_Get(PlayerInfo[playerid][pKey],_key));
}
}
ShowPlayerDialog(playerid,dialog_Phone_AdressBook,DIALOG_STYLE_LIST,"Cellulare - Rubrica",s,"Seleziona","Annulla");
return 1;
}

else if(dialogid==dialog_Phone_AdressBook && response)
{
Pone_AdreesBook_ChoosenID[playerid]=listitem;
new s[128];
format(s,128,"phone_address%d_isset",Pone_AdreesBook_ChoosenID[playerid]);
if(!dini_Int(PlayerInfo[playerid][pKey],s))
{
format(s,128,"Cellulare - Rubrica - Slot vuoto %d",Pone_AdreesBook_ChoosenID[playerid]);
}
else
{
format(s,128,"phone_address%d_name",Pone_AdreesBook_ChoosenID[playerid]);
format(s,128,"Cellulare - Rubrica - %s",dini_Get(PlayerInfo[playerid][pKey],s));
}
ShowPlayerDialog(playerid,dialog_Phone_AdressBook_ChooseAction,DIALOG_STYLE_LIST,s,"Chiama\nRinomina\nCambia numero","Seleziona","Annulla");
}
else if(dialogid==dialog_Phone_AdressBook_ChooseAction)
{
if(!response)return ShowPlayerPhoneAdressBook(playerid);
new s[128];
switch(listitem)
{
case 0://rubrica chiama
{
format(s,128,"phone_address%d_isset",Pone_AdreesBook_ChoosenID[playerid]);
if(!dini_Int(PlayerInfo[playerid][pKey],s))
{
SendClientMessage(playerid,COLOR_WHITE,"Numero inesistente");
return ShowPlayerPhoneAdressBook(playerid);
}
format(s,128,"phone_address%d_number",Pone_AdreesBook_ChoosenID[playerid]);
callchiama();
}
case 1://rubrica rinomina
{
ShowPlayerDialog(playerid,dialog_Phone_AdressBook_Rename,DIALOG_STYLE_INPUT,"Cellulare - Rubrica - Rinomina","Inserisci il nuovo nome per questo slot\nMinimo 2 caratteri","Conferma","Annulla");
}
case 2://cambia numero
{
ShowPlayerDialog(playerid,dialog_Phone_AdressBook_ChNumb,DIALOG_STYLE_INPUT,"Cellulare - Rubrica - Cambia numero","Inserisci il nuovo numero per questo slot","Conferma","Annulla");
}
}
}
else if(dialogid==dialog_Phone_AdressBook_Rename)
{
if(!response)return ShowPlayerPhoneAdressBook(playerid);
else if(strlen(inputtext)>24 || strlen(inputtext)<2)
{
SendClientMessage(playerid,COLOR_WHITE,"Lunghezza massima = 24 caratteri, minima = 2 caratteri");
return ShowPlayerPhoneAdressBook(playerid);
}
new s[128];
new string3[128];
format(string3, sizeof(string3), "CRP_Scriptfiles/Accounts/%s.ini", PlayerName(playerid));
new File: hFile = fopen(string3, io_write);
if(hFile) {
format(s,128,"phone_address%d_name",Pone_AdreesBook_ChoosenID[playerid]);
fwrite(hFile, s);
}
dini_Set(PlayerInfo[playerid][pKey],s,inputtext);
format(s,50,"phone_address%d_isset",Pone_AdreesBook_ChoosenID[playerid]);
dini_IntSet(PlayerInfo[playerid][pKey],s,1);
SendClientMessage(playerid,COLOR_WHITE,"Slot rubrica rinominato");
ShowPlayerPhoneAdressBook(playerid);
return 1;
}
else if(dialogid==dialog_Phone_AdressBook_ChNumb)
{
if(!response)return ShowPlayerPhoneAdressBook(playerid);
else if(strlen(inputtext)>10 || strlen(inputtext)<2)
{
SendClientMessage(playerid,COLOR_WHITE,"Lunghezza massima = 10 caratteri, minima = 2 caratteri");
return ShowPlayerPhoneAdressBook(playerid);
}
new s[128];
new string3[128];
format(string3, sizeof(string3), "CRP_Scriptfiles/Accounts/%s.ini", PlayerName(playerid));
new File: hFile = fopen(string3, io_write);
if(hFile) {
format(s,128,"phone_address%d_number",Pone_AdreesBook_ChoosenID[playerid]);
fwrite(hFile, s);
}
dini_Set(PlayerInfo[playerid][pKey],s,inputtext);
SendClientMessage(playerid,COLOR_WHITE,"Numero slot rubrica cambiato");
ShowPlayerPhoneAdressBook(playerid);
return 1;
}
 
Ultima modifica: