Mr.Snecer
Новичок
Почему после вступления в партию игроку пишет, что он в партии "KULL", хотя в БД пишется правильное название. И только после перезахода на сервер в игре пишется правильное значение. А партии "KULL" даже нету. Что не так? Почему значение в игре сразу не обновляется?
Код:
CMD:pinv(playerid, params[])
{
if(!pTemp[playerid][pLogined]) return 1;
if(pData[playerid][pPartlvl] == 0) return SendErr(playerid,"Вы не состоите в партии");
if(pData[playerid][pPartlvl] < 2) return SendErr(playerid,"Ваш ранг в партии недостаточен");
if(sscanf(params,"d",params[0])) return SendClientMessage(playerid,CGRAY,"/pinv [ID игрока]");
if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid,CGRAY,"Неверный ID игрока");
if(pData[params[0]][pPartlvl]>0) return SendClientMessage(playerid,CGRAY,"Игрок уже состоит в партии");
if(GetPlayerDistanceToPlayer(playerid,params[0]) > 3.0 || GetPlayerVirtualWorld(playerid) != GetPlayerVirtualWorld(params[0])) return SendClientMessage(playerid,CGRAY,"Вы далеко друг от друга");
new mes[128];
format(mes,sizeof(mes),"Вы предложили %s вступить в вашу партию",pData[params[0]][pNickname]);
SendClientMessage(playerid,CBLUE,mes);
format(mes,sizeof(mes),"%s предложил Вам вступить в партию \"%s\"",pData[playerid][pNickname],pData[playerid][pParty]);
SendClientMessage(params[0], 0xFFFFFFFF, mes);
SetPVarInt(params[0],"actinplayerid",playerid);
ShowPlayerDialog(params[0],8910,0,"Вступление в партию",mes,"Вступить","Отмена");
return true;
}
///////////////////////////////////////////////////////////////////////////////////////
if(!response) return 1;
new actplayerid = GetPVarInt(playerid,"actinplayerid"); // получаем ид игрока
pData[playerid][pPartlvl] = 1;
pData[playerid][pParty] = pData[actplayerid][pParty];
new query[256];
format(query,sizeof(query),"UPDATE `aplayerakk` SET `party`='%s', `partlvl` = '1' WHERE `id` = '%d'", pData[actplayerid][pParty], pData[playerid][pMysqlID]);
sql_query(snow, query);
new query1[256];
format(query1,sizeof(query1),"UPDATE `party` SET `PartyMember`=`PartyMember`+1 WHERE `PartyName` = '%s'", pData[actplayerid][pParty]);
sql_query(snow, query1);
new string[64];
format(string, sizeof(string), "Вы вступили в партию {FF0000}%s", pData[actplayerid][pParty]);
SendClientMessage(playerid, 0xFFFFFFFF, string);
new mes[128];
format(mes,sizeof(mes),"%s вступил в вашу партию",pData[playerid][pNickname]);
SendClientMessage(actplayerid,CBLUE,mes);
