Maxim_Shmakov
Компетентный
Скажу сразу что я знаю такой урок уже есть! но, не всем удалось сделать по нему скилы, у меня у самого изначально ничего не получалось! тут код слегка другой.
Если модераторы посчитают эту тему лишней то удаляйте, я не чего против не имею!
Итак начнем:
Ищем в pinfo
И заменяем на:
в public OnPlayerRegister ищем
И заменяем на:
В public OnPlayerUpdateRL(playerid) ищем:
И заменяем на:
public OnPlayerLogin ищем:
И заменяем на:
Далее изменяем команду /myskill на эту:
В конец мода добавляем:
Ко всем forward Добавляем:
У некоторых еще есть public SavessAkk
Если есть то в него:
Внимание! что бы качались скиллы у вас должны кончаться патроны (Удалите чит!)
Если есть ошибки, пишите
Если вам так и не удалось поставить скиллы пишите в скайп maxi-cool6
Если модераторы посчитают эту тему лишней то удаляйте, я не чего против не имею!
Итак начнем:
Ищем в pinfo
PHP:
pDesert,
pSmg,
pAk,
pM4,
pShot,
PHP:
pSDPistol,
pDesertEagle,
pShotGun,
pMP5,
pAK47,
pM4,
PHP:
ini_setInteger(File,"Desertl",PlayerInfo[playerid][pDesert]);
ini_setInteger(File,"SMG",PlayerInfo[playerid][pSmg]);
ini_setInteger(File,"AK47",PlayerInfo[playerid][pAk]);
ini_setInteger(File,"M4",PlayerInfo[playerid][pM4]);
ini_setInteger(File,"pShot",PlayerInfo[playerid][pShot]);
PHP:
ini_setInteger(File,"SDPistol",PlayerInfo[playerid][pSDPistol]);
ini_setInteger(File,"DesertEagle",PlayerInfo[playerid][pDesertEagle]);
ini_setInteger(File,"ShotGun",PlayerInfo[playerid][pShotGun]);
ini_setInteger(File,"MP5",PlayerInfo[playerid][pMP5]);
ini_setInteger(File,"AK47",PlayerInfo[playerid][pAK47]);
ini_setInteger(File,"M4",PlayerInfo[playerid][pM4]);
PHP:
ini_getInteger(File,"Desert",PlayerInfo[playerid][pDesert]);
ini_getInteger(File,"Smg",PlayerInfo[playerid][pSmg]);
ini_getInteger(File,"Ak47",PlayerInfo[playerid][pAk]);
ini_getInteger(File,"M4",PlayerInfo[playerid][pM4]);
ini_getInteger(File,"pShot",PlayerInfo[playerid][pShot]);
PHP:
ini_getInteger(File,"SDPistol",PlayerInfo[playerid][pSDPistol]);
ini_getInteger(File,"DesertEagle",PlayerInfo[playerid][pDesertEagle]);
ini_getInteger(File,"ShotGun",PlayerInfo[playerid][pShotGun]);
ini_getInteger(File,"MP5",PlayerInfo[playerid][pMP5]);
ini_getInteger(File,"AK47",PlayerInfo[playerid][pAK47]);
ini_getInteger(File,"M4",PlayerInfo[playerid][pM4]);
PHP:
ini_getInteger(File,"Desert",PlayerInfo[playerid][pDesert]);
ini_getInteger(File,"Smg",PlayerInfo[playerid][pSmg]);
ini_getInteger(File,"Ak47",PlayerInfo[playerid][pAk]);
ini_getInteger(File,"M4",PlayerInfo[playerid][pM4]);
ini_getInteger(File,"pShot",PlayerInfo[playerid][pShot]);
PHP:
ini_getInteger(File,"SDPistol",PlayerInfo[playerid][pSDPistol]);
ini_getInteger(File,"DesertEagle",PlayerInfo[playerid][pDesertEagle]);
ini_getInteger(File,"ShotGun",PlayerInfo[playerid][pShotGun]);
ini_getInteger(File,"MP5",PlayerInfo[playerid][pMP5]);
ini_getInteger(File,"AK47",PlayerInfo[playerid][pAK47]);
ini_getInteger(File,"M4",PlayerInfo[playerid][pM4]);
PHP:
if(strcmp(cmd, "/myskill", true) == 0)
{
new stringskill[1000];
new points[6];
points[0] = 100 - PlayerInfo[playerid][pSDPistol];
points[1] = 100 - PlayerInfo[playerid][pDesertEagle];
points[2] = 100 - PlayerInfo[playerid][pShotGun];
points[3] = 100 - PlayerInfo[playerid][pMP5];
points[4] = 100 - PlayerInfo[playerid][pAK47];
points[5] = 100 - PlayerInfo[playerid][pM4];
format(stringskill,1000,"SDPistol:\t[%s]%d%\nDeagle:\t[%s]%d%\nShotGun:\t[%s]%d%\nMP5\t\t[%s]%d%\nAK47:\t\t[%s]%d%\nM4A1:\t\t[%s]%d%",
ToDevelopSkills(PlayerInfo[playerid][pSDPistol],points[0]),PlayerInfo[playerid][pSDPistol],
ToDevelopSkills(PlayerInfo[playerid][pDesertEagle],points[1]),PlayerInfo[playerid][pDesertEagle],
ToDevelopSkills(PlayerInfo[playerid][pShotGun],points[2]),PlayerInfo[playerid][pShotGun],
ToDevelopSkills(PlayerInfo[playerid][pMP5],points[3]),PlayerInfo[playerid][pMP5],
ToDevelopSkills(PlayerInfo[playerid][pAK47],points[4]),PlayerInfo[playerid][pAK47],
ToDevelopSkills(PlayerInfo[playerid][pM4],points[5]),PlayerInfo[playerid][pM4]);
ShowPlayerDialog(playerid,43,DIALOG_STYLE_MSGBOX,"<< Навыки владением оружия>>",stringskill,"Готово","");
return true;
}
PHP:
stock ToDevelopSkills(Slashes,Points)
{
new SlashesAndPoints[160];
new Slash[2] = "|";
new Point[2] = "'";
for(new i = 0; i < Slashes; i++) strcat(SlashesAndPoints, Slash);
for(new i = 0; i < Points; i++) strcat(SlashesAndPoints, Point);
return SlashesAndPoints;
}
stock SetPlayerSkills(playerid)
{
if(PlayerInfo[playerid][pSDPistol] >= 100) SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL_SILENCED, 1000); else SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL_SILENCED, 0);
if(PlayerInfo[playerid][pDesertEagle] >= 100) SetPlayerSkillLevel(playerid, WEAPONSKILL_DESERT_EAGLE, 1000); else SetPlayerSkillLevel(playerid, WEAPONSKILL_DESERT_EAGLE, 0);
if(PlayerInfo[playerid][pShotGun] >= 100) SetPlayerSkillLevel(playerid, WEAPONSKILL_SHOTGUN, 1000); else SetPlayerSkillLevel(playerid, WEAPONSKILL_SHOTGUN, 0);
if(PlayerInfo[playerid][pMP5] >= 100) SetPlayerSkillLevel(playerid, WEAPONSKILL_MP5, 1000); else SetPlayerSkillLevel(playerid, WEAPONSKILL_MP5, 0);
if(PlayerInfo[playerid][pAK47] >= 100) SetPlayerSkillLevel(playerid, WEAPONSKILL_AK47, 1000); else SetPlayerSkillLevel(playerid, WEAPONSKILL_AK47, 0);
if(PlayerInfo[playerid][pM4] >= 100) SetPlayerSkillLevel(playerid, WEAPONSKILL_M4, 1000); else SetPlayerSkillLevel(playerid, WEAPONSKILL_M4, 0);
return true;
}
public OnPlayerAmmoChange(playerid, newammo, oldammo)
{
if(newammo < oldammo)
{
Shot[playerid]++;
switch(GetPlayerWeapon(playerid))
{
case 24: if(Shot[playerid] >= 25 && PlayerInfo[playerid][pDesertEagle] < 100) PlayerInfo[playerid][pDesertEagle]++, Shot[playerid] = 0, SaveAccounts();
case 23: if(Shot[playerid] >= 25 && PlayerInfo[playerid][pSDPistol] < 100) PlayerInfo[playerid][pSDPistol]++, Shot[playerid] = 0, SaveAccounts();
case 25: if(Shot[playerid] >= 50 && PlayerInfo[playerid][pShotGun] < 100) PlayerInfo[playerid][pShotGun]++, Shot[playerid] = 0, SaveAccounts();
case 29: if(Shot[playerid] >= 50 && PlayerInfo[playerid][pMP5] < 100) PlayerInfo[playerid][pMP5]++, Shot[playerid] = 0, SaveAccounts();
case 30: if(Shot[playerid] >= 50 && PlayerInfo[playerid][pAK47] < 100) PlayerInfo[playerid][pAK47]++, Shot[playerid] = 0, SaveAccounts();
case 31: if(Shot[playerid] >= 50 && PlayerInfo[playerid][pM4] < 100) PlayerInfo[playerid][pM4]++, Shot[playerid] = 0, SaveAccounts();
}
}
return true;
}
Ко всем forward Добавляем:
PHP:
forward OnPlayerAmmoChange(playerid, newammo, oldammo);
Если есть то в него:
PHP:
ini_setInteger(File,"SDPistol",PlayerInfo[playerid][pSDPistol]);
ini_setInteger(File,"DesertEagle",PlayerInfo[playerid][pDesertEagle]);
ini_setInteger(File,"ShotGun",PlayerInfo[playerid][pShotGun]);
ini_setInteger(File,"MP5",PlayerInfo[playerid][pMP5]);
ini_setInteger(File,"AK47",PlayerInfo[playerid][pAK47]);
ini_setInteger(File,"M4",PlayerInfo[playerid][pM4]);
Внимание! что бы качались скиллы у вас должны кончаться патроны (Удалите чит!)
Если есть ошибки, пишите
Если вам так и не удалось поставить скиллы пишите в скайп maxi-cool6
