04.05.2012, 12:36
Попробуйте так:
Code:
case DIALOG_SETRANK: { if(!response) return 1; if(!strlen(inputtext)) { format(string,sizeof(string),"Введите номер ранга и через пробел название.\n(Пример: 5 Директор)"); ShowPlayerDialog(playerid,DIALOG_SETRANK,DIALOG_STYLE_INPUT,"Изменить название",string,"Принять","Скрыть"); return 1; } new tmp[24],idx;//Может ругаться на размер массива tmp, в этом случае увеличте его tmp = strtok(inputtext,idx); if(!strlen(tmp)) { format(string,sizeof(string),"Введите номер ранга и через пробел название.\n(Пример: 5 Директор)"); ShowPlayerDialog(playerid,DIALOG_SETRANK,DIALOG_STYLE_INPUT,"Изменить название",string,"Принять","Скрыть"); return 1; } new rank = strval(tmp); if(rank > 10 || rank < 0) return SendClientMessage(playerid, COLOR_GRAD2, "Можно изменить только с 1го по 10ый ранг"); tmp = strrest(inputtext,idx); if(!strlen(tmp)) { format(string,sizeof(string),"Введите номер ранга и через пробел название.\n(Пример: 5 Директор)"); ShowPlayerDialog(playerid,DIALOG_SETRANK,DIALOG_STYLE_INPUT,"Изменить название",string,"Принять","Скрыть"); return 1; } new l = Player[playerid][pLeader]; if(rank==0)strcpy(RankInfo[l][rank0], tmp); else if(rank==1)strcpy(RankInfo[l][rank1], tmp); else if(rank==2)strcpy(RankInfo[l][rank2], tmp); else if(rank==3)strcpy(RankInfo[l][rank3], tmp); else if(rank==4)strcpy(RankInfo[l][rank4], tmp); else if(rank==5)strcpy(RankInfo[l][rank5], tmp); else if(rank==6)strcpy(RankInfo[l][rank6], tmp); else if(rank==7)strcpy(RankInfo[l][rank7], tmp); else if(rank==8)strcpy(RankInfo[l][rank8], tmp); else if(rank==9)strcpy(RankInfo[l][rank9], tmp); else if(rank==10)strcpy(RankInfo[l][rank10], tmp); //сохранение ранга в файл new file = ini_openFile("/mod/ranks.ini"); if(file<0) { SendClientMessage(playerid, COLOR_RED,"Ошибка сохранения ранга"); return 1; } for(new i=1;i<6;i++) { format(string, sizeof(string), "Ранг 0 фракции %d",i);ini_setString (file, string, RankInfo[i][rank0]); format(string, sizeof(string), "Ранг 1 фракции %d",i);ini_setString (file, string, RankInfo[i][rank1]); format(string, sizeof(string), "Ранг 2 фракции %d",i);ini_setString (file, string, RankInfo[i][rank2]); format(string, sizeof(string), "Ранг 3 фракции %d",i);ini_setString (file, string, RankInfo[i][rank3]); format(string, sizeof(string), "Ранг 4 фракции %d",i);ini_setString (file, string, RankInfo[i][rank4]); format(string, sizeof(string), "Ранг 5 фракции %d",i);ini_setString (file, string, RankInfo[i][rank5]); format(string, sizeof(string), "Ранг 6 фракции %d",i);ini_setString (file, string, RankInfo[i][rank6]); format(string, sizeof(string), "Ранг 7 фракции %d",i);ini_setString (file, string, RankInfo[i][rank7]); format(string, sizeof(string), "Ранг 8 фракции %d",i);ini_setString (file, string, RankInfo[i][rank8]); format(string, sizeof(string), "Ранг 9 фракции %d",i);ini_setString (file, string, RankInfo[i][rank9]); format(string, sizeof(string), "Ранг 10 фракции %d",i);ini_setString (file, string, RankInfo[i][rank10]); } ini_closeFile (file); format(string, sizeof(string), "Ранг успешно сохранен: '%s'",tmp); SendClientMessage(playerid, COLOR_RED,string); return 1; }