Rosian
Умник
Автор:NickDex
Особенности:
-Три слота
-Сохранение
-Все на диалогах
Начнем....
В enum pInfo суем:
Дальше в паблик OnPlayerRegister:
В паблик OnPlayerSave:
Суем в паблик OnPlayerLogin:
В паблик OnPlayerConnect:
Таксс..теперь перейдем к командам и диалогам.
Ко всем командам:
Команды сделали, теперь диалоги.. Иды диалогов настраивайте под себя.
В паблик OnDialogRespone:
В конец мода суем:
А и еще ко всем new суем это:
Особенности:
-Три слота
-Сохранение
-Все на диалогах
Начнем....
В enum pInfo суем:
PHP:
pInvWeaponMedium,
pInvAmmoMedium,
pInvWeaponMedium1,
pInvAmmoMedium1,
pInvWeaponMedium2,
pInvAmmoMedium2,
PHP:
dini_IntSet(string, "InvWeaponMedium", PlayerInfo[playerid][pInvWeaponMedium]);
dini_IntSet(string, "InvAmmoMedium", PlayerInfo[playerid][pInvAmmoMedium]);
dini_IntSet(string, "InvWeaponMedium2", PlayerInfo[playerid][pInvWeaponMedium2]);
dini_IntSet(string, "InvAmmoMedium2", PlayerInfo[playerid][pInvAmmoMedium2]);
dini_IntSet(string, "InvWeaponMedium1", PlayerInfo[playerid][pInvWeaponMedium1]);
dini_IntSet(string, "InvAmmoMedium1", PlayerInfo[playerid][pInvAmmoMedium1]);
PHP:
dini_IntSet(string, "InvWeaponMedium", PlayerInfo[playerid][pInvWeaponMedium]);
dini_IntSet(string, "InvAmmoMedium", PlayerInfo[playerid][pInvAmmoMedium]);
dini_IntSet(string, "InvWeaponMedium2", PlayerInfo[playerid][pInvWeaponMedium2]);
dini_IntSet(string, "InvAmmoMedium2", PlayerInfo[playerid][pInvAmmoMedium2]);
dini_IntSet(string, "InvWeaponMedium1", PlayerInfo[playerid][pInvWeaponMedium1]);
dini_IntSet(string, "InvAmmoMedium1", PlayerInfo[playerid][pInvAmmoMedium1]);
PHP:
PlayerInfo[playerid][pInvWeaponMedium] = dini_Int(string2,"InvWeaponMedium");
PlayerInfo[playerid][pInvAmmoMedium] = dini_Int(string2,"InvAmmoMedium");
PlayerInfo[playerid][pInvWeaponMedium1] = dini_Int(string2,"InvWeaponMedium1");
PlayerInfo[playerid][pInvAmmoMedium1] = dini_Int(string2,"InvAmmoMedium1");
PlayerInfo[playerid][pInvWeaponMedium2] = dini_Int(string2,"InvWeaponMedium2");
PlayerInfo[playerid][pInvAmmoMedium2] = dini_Int(string2,"InvAmmoMedium2");
PHP:
PlayerInfo[playerid][pInvWeaponMedium] = 0;
PlayerInfo[playerid][pInvAmmoMedium] = 0;
PlayerInfo[playerid][pInvWeaponMedium1] = 0;
PlayerInfo[playerid][pInvAmmoMedium1] = 0;
PlayerInfo[playerid][pInvWeaponMedium2] = 0;
PlayerInfo[playerid][pInvAmmoMedium2] = 0;
Ко всем командам:
PHP:
if(!strcmp(cmdtext, "/inv", true)) //
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " Сначала нужно залогиниться ! ");
return 1;
}
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Тебе нужно подождать 3 секунды, прежде чем использовать этку команду опять !");
return 1;
}
ShowPlayerDialog(playerid,1111,DIALOG_STYLE_LIST,"Выберите слот","Первый слот\nВторой слот\nТретий слот","Ок","Отмена");
}
return 1;
PHP:
if(!strcmp(cmdtext, "/putmediumgun", true)) //
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " Сначала нужно залогиниться !");
return 1;
}
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Тебе нужно подождать 3 секунды, прежде чем использовать эту команду !");
return 1;
}
if(PlayerInfo[playerid][pInvWeaponMedium] != 0 || PlayerInfo[playerid][pInvAmmoMedium] != 0)
{
SendClientMessage(playerid, COLOR_GREY, " В твоем инвентаре уже что-то есть !");
return 1;
}
new gunID = GetPlayerWeapon(playerid);
new gunAmmo = GetPlayerAmmo(playerid);
if(gunID != 0 && gunAmmo != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
PlayerInfo[playerid][pInvWeaponMedium] = gunID;
PlayerInfo[playerid][pInvAmmoMedium] = gunAmmo;
RemovePlayerWeapon(playerid, gunID);
new gunname[100];
GetWeaponName(gunID, gunname, sizeof(gunname));
format(string, sizeof(string), " Ты ложишь %s в сумку.", gunname);
SendClientMessage(playerid, COLOR_GREY, string);
format(string,sizeof(string),"кладёт %s в свою сумку.",gunname);
Action(playerid,string);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " У тебя нет оружия ! ");
return 1;
}
}
return 1;
}
PHP:
if(!strcmp(cmdtext, "/putlightgun", true)) //
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " Сначала нужно залогиниться !");
return 1;
}
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Тебе нужно подождать 3 секунды, прежде чем использовать эту команду !");
return 1;
}
if(PlayerInfo[playerid][pInvWeaponMedium1] != 0 || PlayerInfo[playerid][pInvAmmoMedium1] != 0)
{
SendClientMessage(playerid, COLOR_GREY, " В твоем инвентаре уже что-то есть !");
return 1;
}
new gunID = GetPlayerWeapon(playerid);
new gunAmmo = GetPlayerAmmo(playerid);
if(gunID != 0 && gunAmmo != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
PlayerInfo[playerid][pInvWeaponMedium1] = gunID;
PlayerInfo[playerid][pInvAmmoMedium1] = gunAmmo;
RemovePlayerWeapon(playerid, gunID);
new gunname[100];
GetWeaponName(gunID, gunname, sizeof(gunname));
format(string, sizeof(string), " Ты ложишь %s в свой карман.", gunname);
SendClientMessage(playerid, COLOR_GREY, string);
format(string,sizeof(string),"положил %s в свой карман.",gunname);
Action(playerid,string);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " У тебя нет оружия ! ");
return 1;
}
}
return 1;
}
PHP:
if(!strcmp(cmdtext, "/putlightgun1", true)) //
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " Сначала нужно залогиниться !");
return 1;
}
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Тебе нужно подождать 3 секунды, прежде чем использовать эту команду !");
return 1;
}
if(PlayerInfo[playerid][pInvWeaponMedium2] != 0 || PlayerInfo[playerid][pInvAmmoMedium2] != 0)
{
SendClientMessage(playerid, COLOR_GREY, " В твоем инвентаре уже что-то есть !");
return 1;
}
new gunID = GetPlayerWeapon(playerid);
new gunAmmo = GetPlayerAmmo(playerid);
if(gunID != 0 && gunAmmo != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
PlayerInfo[playerid][pInvWeaponMedium2] = gunID;
PlayerInfo[playerid][pInvAmmoMedium2] = gunAmmo;
RemovePlayerWeapon(playerid, gunID);
new gunname[100];
GetWeaponName(gunID, gunname, sizeof(gunname));
format(string, sizeof(string), " Ты ложишь %s в свой карман.", gunname);
SendClientMessage(playerid, COLOR_GREY, string);
format(string,sizeof(string),"положил %s в свой карман.",gunname);
Action(playerid,string);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " У тебя нет оружия ! ");
return 1;
}
}
return 1;
}
В паблик OnDialogRespone:
PHP:
else if(dialogid == 1111)
{
if(response == 0) { }
else
{
if(listitem == 0)
{
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Тебе нужно подождать 3 секунды, прежде чем использовать этку команду опять !");
return 1;
}
ShowPlayerDialog(playerid,6437,DIALOG_STYLE_LIST,"Первый слот","Взять\nПоложить","Ок","Назад");
}
else if(listitem == 1)
{
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Тебе нужно подождать 3 секунды, прежде чем использовать этку команду опять !");
return 1;
}
ShowPlayerDialog(playerid,6438,DIALOG_STYLE_LIST,"Второй слот","Взять\nПоложить","Ок","Назад");
}
else if(listitem == 2)
{
if(ReduceTime[playerid] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Тебе нужно подождать 3 секунды, прежде чем использовать этку команду опять !");
return 1;
}
ShowPlayerDialog(playerid,6439,DIALOG_STYLE_LIST,"Третий слот","Взять\nПоложить","Ок","Назад");
}
}
}
else if(dialogid == 6437)
{
if(response)
{
if(listitem == 0)
{
if(PlayerInfo[playerid][pInvWeaponMedium1] != 0 && PlayerInfo[playerid][pInvAmmoMedium1] != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
GetWeaponName(PlayerInfo[playerid][pInvWeaponMedium1], gunname, sizeof(gunname));
ServerGivePlayerWeapon(playerid,PlayerInfo[playerid][pInvWeaponMedium1], PlayerInfo[playerid][pInvAmmoMedium1]);
format(string, sizeof(string), " Ты берешь %s из своего кармана.", gunname);
SendClientMessage(playerid, COLOR_GREY, string);
PlayerInfo[playerid][pInvWeaponMedium1] = 0;
PlayerInfo[playerid][pInvAmmoMedium1] = 0;
format(string,sizeof(string),"взял %s в из своего кармана.",gunname);
Action(playerid,string);
}
else
{
SendClientMessage(playerid, COLOR_GREY, " В твоем кармане нет оружия !");
return 1;
}
}
if(listitem == 1)
{
OnPlayerCommandText(playerid,"/putlightgun");
}
}
}
else if(dialogid == 6439)
{
if(response)
{
if(listitem == 0)
{
if(PlayerInfo[playerid][pInvWeaponMedium2] != 0 && PlayerInfo[playerid][pInvAmmoMedium2] != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
GetWeaponName(PlayerInfo[playerid][pInvWeaponMedium2], gunname, sizeof(gunname));
ServerGivePlayerWeapon(playerid,PlayerInfo[playerid][pInvWeaponMedium2], PlayerInfo[playerid][pInvAmmoMedium2]);
format(string, sizeof(string), " Ты берешь %s из своего кармана.", gunname);
SendClientMessage(playerid, COLOR_GREY, string);
PlayerInfo[playerid][pInvWeaponMedium2] = 0;
PlayerInfo[playerid][pInvAmmoMedium2] = 0;
format(string,sizeof(string),"взял %s в из своего кармана.",gunname);
Action(playerid,string);
}
else
{
SendClientMessage(playerid, COLOR_GREY, " В твоем кармане нет оружия !");
return 1;
}
}
if(listitem == 1)
{
OnPlayerCommandText(playerid,"/putlightgun1");
}
}
}
else if(dialogid == 6438)
{
if(response)
{
if(listitem == 0)
{
if(PlayerInfo[playerid][pInvWeaponMedium] != 0 && PlayerInfo[playerid][pInvAmmoMedium] != 0)
{
ReduceTime[playerid] = 1;
SetTimerEx("ReduceTimer", 3000, false, "i", playerid);
GetWeaponName(PlayerInfo[playerid][pInvWeaponMedium], gunname, sizeof(gunname));
ServerGivePlayerWeapon(playerid, PlayerInfo[playerid][pInvWeaponMedium], PlayerInfo[playerid][pInvAmmoMedium]);
format(string, sizeof(string), " Ты берешь %s из своего кармана.", gunname);
SendClientMessage(playerid, COLOR_GREY, string);
PlayerInfo[playerid][pInvWeaponMedium] = 0;
PlayerInfo[playerid][pInvAmmoMedium] = 0;
format(string,sizeof(string),"взял %s в из своего кармана.",gunname);
Action(playerid,string);
}
else
{
SendClientMessage(playerid, COLOR_GREY, " В твоем кармане нет оружия !");
return 1;
}
}
if(listitem == 1)
{
OnPlayerCommandText(playerid,"/putmediumgun");
}
}
}
PHP:
forward ReduceTimer(playerid);
public ReduceTimer(playerid)
{
if(IsPlayerConnected(playerid))
{
if(ReduceTime[playerid] == 1)
{
ReduceTime[playerid] = 0;
}
}
}
PHP:
new ReduceTime[MAX_PLAYERS];
