• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

Почему пропадают лицензии после перезахода на сервер?

Статус
В этой теме нельзя размещать новые ответы.

paveltv

Начинающий
Пользователь
Регистрация
14 Июн 2019
Сообщения
10
Лучшие ответы
0
Репутация
0
Приветствую, прошу помощи!!!
Покупаю/выдаю лицензии на вождение, бизнес, полёт и т.д и после перезахода на сервер они пропадают.
После получения лицензий они не записываются в БД
PHP:
#define GiveLicCar(%0)                    (pInfo[%0][pLicenses] |= 1)
#define GiveLicWater(%0)                  (pInfo[%0][pLicenses] |= (1<<1))
#define GiveLicPlane(%0)                  (pInfo[%0][pLicenses] |= (1<<2))
#define GiveLicWeapon(%0)                 (pInfo[%0][pLicenses] |= (1<<3))
PHP:
    case dJob+9:
        {
            if(!response) return 1;
            if(GetCash(playerid) < 600) return SendClientMessage(playerid, COLOR_GREY, NoMoney);
            TransferMoney(playerid, -1, 600);
            SendClientMessage(playerid, COLOR_GREEN, "Поздравляем! Вас с покупкой лицензии на управление наземным транспортом.");
            GiveLicCar(playerid);
            return 1;
        }
    case dJob+10:
        {
            if(!response) return 1;
            if(GetCash(playerid) < 10000) return SendClientMessage(playerid, COLOR_GREY, NoMoney);
            TransferMoney(playerid, -1, 10000);
            SendClientMessage(playerid, COLOR_GREEN, "Поздравляем! Вас с покупкой лицензии на управление воздушным транспортом.");
            GiveLicPlane(playerid);
            return 1;
        }
    case dJob+11:
        {
            if(!response) return 1;
            if(GetCash(playerid) < 3000) return SendClientMessage(playerid, COLOR_GREY, NoMoney);
            TransferMoney(playerid, -1, 3000);
            SendClientMessage(playerid, COLOR_GREEN, "Поздравляем! Вас с покупкой лицензии на управление водным транспортом.");
            GiveLicWater(playerid);
            return 1;
        }
Сохранение
PHP:
stock SaveAccount(playerid)
{
    if(!IsPlayerConnected(playerid) || !gPlayerLogged[playerid]) return 1;
    if(pInfo[playerid][pCash] > 1000000000 || pInfo[playerid][pCash] < 0)
    {
        pInfo[playerid][pCash] = 0;
        MysqlUpdatePlayerInt(playerid, "cash", pInfo[playerid][pCash]);
    }
    if(pInfo[playerid][pBank] > 1000000000 || pInfo[playerid][pBank] < 0)
    {
        pInfo[playerid][pBank] = 0;
        MysqlUpdatePlayerInt(playerid, "bank", pInfo[playerid][pBank]);
    }
    new gunids[56], ammos[56], cnt, pgun[128], weapid, ammo;
    for(new i; i < 13; i++)
    {
        GetPlayerWeaponData(playerid, i, weapid, ammo);
        if(weapid && ammo && gGuns[playerid][i] == weapid && gAmmos[playerid][i] <= ammo)
        {
            if(!cnt)
            {
                format(gunids, sizeof(gunids), "%d", gGuns[playerid][i]);
                format(ammos, sizeof(ammos), "%d", gAmmos[playerid][i]);
            }
            else
            {
                format(gunids, sizeof(gunids), "%s|%d", gunids, gGuns[playerid][i]);
                format(ammos, sizeof(ammos), "%s|%d", ammos, gAmmos[playerid][i]);
            }
            cnt++;
            if(cnt >= 6) break;
        }
    }
    if(strlen(gunids) && strlen(ammos)) format(pgun,sizeof(pgun),"%s;%s",gunids,ammos);
    mysql_query_string[0] = EOS;
    format(mysql_query_string, sizeof(mysql_query_string), "UPDATE "T_ACCOUNTS" SET ip='%s', thour=%d, heal='%f', sportexp=%d, gun='%s' WHERE id=%d LIMIT 1", pInfo[playerid][pIP], pInfo[playerid][pTimeHour], pInfo[playerid][pHeal], pInfo[playerid][pSportExp], pgun, pInfo[playerid][pID]);
    return mysql_tquery(dbHandle, mysql_query_string, "", "");
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу