DREZZ 45 Опубликовано 14 июля, 2018 Доброго времени суток! Мне надо сделать сохранение оружия после смерти... (Или скинуть готовое) Может кто помочь )) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Vegos 42 Опубликовано 20 июля, 2018 В enum где хранятся все переменные(данные) о игроке добавляем pAmmo[13], pGun[13], Далее двигаемся в stock где сохраняется аккаунт игрока при выходе как правило в RLS или любом моде с интернета этот сток называется stock OnPlayerUpdateRLИдём в сток и добавляем наши массивы с аргументами static string[] = "\ Ammo 1 = '%d',\ Ammo 2 = '%d',\ Ammo 3 = '%d',\ Ammo 4 = '%d',\ Ammo 5 = '%d',\ Ammo 6 = '%d',\ Ammo 7 = '%d',\ Ammo 8 = '%d',\ Ammo 9 = '%d',\ Ammo 10 = '%d',\ Ammo 11 = '%d',\ Ammo 12 = '%d',\ Ammo 13 = '%d',\ Gun 1 = '%d',\ Gun 2 = '%d',\ Gun 3 = '%d',\ Gun 4 = '%d',\ Gun 5 = '%d',\ Gun 6 = '%d',\ Gun 7 = '%d',\ Gun 8 = '%d',\ Gun 9 = '%d',\ Gun 10 = '%d',\ Gun 11 = '%d',\ Gun 12 = '%d',\ Gun 13 = '%d'\ WHERE `Name` = '%s'\ "; new string_2[sizeof(string)-52+52+26+MAX_PLAYER_NAME]; mysql_format(переменная подключения к бд,string_2,sizeof(string_2),string , Info[playerid][pAmmo][0], Info[playerid][pAmmo][1], Info[playerid][pAmmo][2], Info[playerid][pAmmo][3], Info[playerid][pAmmo][4], Info[playerid][pAmmo][5], Info[playerid][pAmmo][6], Info[playerid][pAmmo][7], Info[playerid][pAmmo][8], Info[playerid][pAmmo][9], Info[playerid][pAmmo][10], Info[playerid][pAmmo][11], Info[playerid][pAmmo][12], Info[playerid][pGun][0], Info[playerid][pGun][1], Info[playerid][pGun][2], Info[playerid][pGun][3], Info[playerid][pGun][4], Info[playerid][pGun][5], Info[playerid][pGun][6], Info[playerid][pGun][7], Info[playerid][pGun][8], Info[playerid][pGun][9], Info[playerid][pGun][10], Info[playerid][pGun][11], Info[playerid][pGun][12], Info[playerid][pNames] ); mysql_function_query(переменная коннекта к бд,string_2,false,"",""); Далее создаём stock для сохранения оружия в данные(переменные) stock SaveGun(playerid) { GetPlayerWeaponData(playerid,0,Info[playerid][pGun][0],Info[playerid][pAmmo][0]); GetPlayerWeaponData(playerid,1,Info[playerid][pGun][1],Info[playerid][pAmmo][1]); GetPlayerWeaponData(playerid,2,Info[playerid][pGun][2],Info[playerid][pAmmo][2]); GetPlayerWeaponData(playerid,3,Info[playerid][pGun][3],Info[playerid][pAmmo][3]); GetPlayerWeaponData(playerid,4,Info[playerid][pGun][4],Info[playerid][pAmmo][4]); GetPlayerWeaponData(playerid,5,Info[playerid][pGun][5],Info[playerid][pAmmo][5]); GetPlayerWeaponData(playerid,6,Info[playerid][pGun][6],Info[playerid][pAmmo][6]); GetPlayerWeaponData(playerid,7,Info[playerid][pGun][7],Info[playerid][pAmmo][7]); GetPlayerWeaponData(playerid,8,Info[playerid][pGun][8],Info[playerid][pAmmo][8]); GetPlayerWeaponData(playerid,9,Info[playerid][pGun][9],Info[playerid][pAmmo][9]); GetPlayerWeaponData(playerid,10,Info[playerid][pGun][10],Info[playerid][pAmmo][10]); GetPlayerWeaponData(playerid,11,Info[playerid][pGun][11],Info[playerid][pAmmo][11]); GetPlayerWeaponData(playerid,12,Info[playerid][pGun][12],Info[playerid][pAmmo][12]); } Описание функции GePlayerWeaponData:Получает id оружия и патроны у игрока и записывает их в переменную: к примеру GetPlayerWeaponData(id игрока,слот оружия,переменная для оружия,переменная для патрон); Далее в OnPlayerDisconnects добавляем: SaveGun(playerid); Далее что-бы выдать игроку оружия нам потребуется создать еще один сток: stock GetGun(playerid) { GiveWeapon(playerid,Info[playerid][pGun][0],Info[playerid][pAmmo][0]); GiveWeapon(playerid,Info[playerid][pGun][1],Info[playerid][pAmmo][1]); GiveWeapon(playerid,Info[playerid][pGun][2],Info[playerid][pAmmo][2]); GiveWeapon(playerid,Info[playerid][pGun][3],Info[playerid][pAmmo][3]); GiveWeapon(playerid,Info[playerid][pGun][4],Info[playerid][pAmmo][4]); GiveWeapon(playerid,Info[playerid][pGun][5],Info[playerid][pAmmo][5]); GiveWeapon(playerid,Info[playerid][pGun][6],Info[playerid][pAmmo][6]); GiveWeapon(playerid,Info[playerid][pGun][7],Info[playerid][pAmmo][7]); GiveWeapon(playerid,Info[playerid][pGun][8],Info[playerid][pAmmo][8]); GiveWeapon(playerid,Info[playerid][pGun][9],Info[playerid][pAmmo][9]); GiveWeapon(playerid,Info[playerid][pGun][10],Info[playerid][pAmmo][10]); GiveWeapon(playerid,Info[playerid][pGun][11],Info[playerid][pAmmo][11]); GiveWeapon(playerid,Info[playerid][pGun][12],Info[playerid][pAmmo][12]); } Теперь в OnPlayerSpawn(playerid) добавляем: GetGun(playerid); В OnPlayerDeath(playerid,killerid,reason) добавляем: if(GetPlayerState(playerid) == PLAYER_STATE_WASTED)//Если игрок умер то { SaveGun(playerid);//Активируем сток для сохранения оружия. } P.S Надеюсь я тебе помог, так же надеюсь сможешь сам вставить (Админы, выделил красным чтоб он заметил). 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
DREZZ 45 Опубликовано 20 июля, 2018 @Vegos,Спасибо большое,думаю что будет работать (я как раз искал) вставить то я смогу ))) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты