denis32rus
Компетентный
Здравствуйте!! еше 1 вырезка из мода!!! (((((
Создадим паблик
в public OnPlayerConnect(playerid)
в public SetPlayerSpawn(playerid)
в public OnPlayerRegister(playerid, password[])
в public OnPlayerUpdate_GF(playerid)
в public OnPlayerLogin(playerid,password[])
в команду /su:
ко всем командам
Ко всем диалогам
Чат призыва К командам
PHP:
в Enum pinfo
PHP:
pVoennik,
pPriziv
PHP:
forward SendPrizivMessage(color, string[]);
public SendPrizivMessage(color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pPriziv] >= 1)
{
SendClientMessage(i, color, string);
}
}
}
}
PHP:
PlayerInfo[playerid][pVoennik] = 0;
PlayerInfo[playerid][pPriziv] = 0;
PHP:
if (PlayerInfo[playerid][pPriziv] == 2 || PlayerInfo[playerid][pPriziv] == 1)//PRIZIVNIK
{
SetPlayerInterior(playerid, 0);
SetPlayerHealth(playerid, 100);
SetPlayerPos(playerid,197.9412,1974.7468,17.6568);
return 1;
}
PHP:
iniSetInt(File,"Voennik",PlayerInfo[playerid][pVoennik]);
iniSetInt(File,"Priziv",PlayerInfo[playerid][pPriziv]);
PHP:
iniSetInt(File,"Voennik",PlayerInfo[playerid][pVoennik]);
iniSetInt(File,"Priziv",PlayerInfo[playerid][pPriziv]);
PHP:
iniGetInt(File,"Voennik",PlayerInfo[playerid][pVoennik]);
iniGetInt(File,"Priziv",PlayerInfo[playerid][pPriziv]);
PHP:
if(level < 1)
{
SendClientMessage(playerid,COLOR_GREY,"* Меньше 1 звезды кидать нельзя!");
return 1;
}
if(IsACop(para1) || PlayerInfo[para1][pPriziv] >= 1)
{
SendClientMessage(playerid,COLOR_GREY,"* Он законник!");
return 1;
}
PHP:
if(strcmp(cmd, "/prizivniki", true) == 0)
{
if(PlayerInfo[playerid][pLeader] == 3 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pPriziv] >= 1)
{
SendClientMessage(playerid, COLOR_LIGHTRED, "{FFFFFF}***************** {008006}Призывники Онлайн {FFFFFF}*****************");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pPriziv] == 1)
{
GetPlayerName(i, sendername, sizeof(sendername));
format(string, 256, "{008006} Призывник: {FFA500}%s", sendername);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
}
}
PHP:
if(strcmp(cmd,"/voen",true)== 0 || strcmp(cmd,"/voin",true)== 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "* Используйте: /voen [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(PlayerInfo[playerid][pVoennik] == 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(8.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new attext[20],otext[20];
if(PlayerInfo[playerid][pSex] == 1) { attext = "Мужской"; }
else if(PlayerInfo[playerid][pSex] == 2) { attext = "Женский"; }
if(PlayerInfo[playerid][pOrigin] == 1) { otext = "Лос Сантос"; }
else if(PlayerInfo[playerid][pOrigin] == 2) { otext = "Лас Вентурас"; }
format(string, sizeof(string),"{565e08}** Имя: {FF9000}[%s]\n{565e08}** Возраст: {FF9000}[%d]\n{565e08}** Пол: {FF9000}[%s]\n{565e08}** Прописка: {FF9000}[%s]\n{565e08}** Звание: {FF9000}Рядовой(ая)\n{565e08}** Место службы: {FF9000}Зона 51",
sendername,PlayerInfo[playerid][pAge],attext,otext);
ShowPlayerDialog(giveplayerid, 1161, 0, "{565e08}|_______ {FF9000}Военный Билет {565e08}_______|", string, "Ок", "Ок");
format(string, sizeof(string), "{565e08}|_____ {FF9000}Военный Билет %s {565e08}_____|", sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
format(string, sizeof(string), "{565e08}Возраст: {FF9000}%d.", PlayerInfo[playerid][pAge]);
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "{565e08}Пол: {FF9000}%s.", attext);
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "{565e08}Прописка: {FF9000}%s.", otext);
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "{565e08}Звание: {FF9000}Рядовой(ая).");
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "{565e08}Место службы: {FF9000}Зона 51.");
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
if(playerid != giveplayerid)
{
format(string, sizeof(string), "* %s показывает военный билет %s", sendername, giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,0,0);
printf("%s", string);
}
}
else SendClientMessage(playerid, COLOR_GREY, " Этот игрок не рядом с вами !");
}
}
else SendClientMessage(playerid, COLOR_GREY, " Игрок оффлайн !");
}
else SendClientMessage(playerid, COLOR_GREY, " У тебя нет Военного Билета (смотри /voenhelp)");
}
else SendClientMessage(playerid, COLOR_WHITE, "* Используйте: /voen [ID игрока]");
return 1;
}
PHP:
if(strcmp(cmd,"/priziv",true)== 0)
{
if(PlayerInfo[playerid][pLeader] == 3 || PlayerInfo[playerid][pPriziv] == 2)
{
new listitems[] = "{00FF00}** {FFFFFF}Принять Призывника\n{00FF00}** {FFFFFF}Уволить Призывника\n{00FF00}** {FFFFFF}Призывники Онлайн\n{00FF00}** {FFFFFF}Назанчить Руководителя Призывом\n{00FF00}** {FFFFFF}Снять Руководителя Призывом\n{00FF00}** {FFFFFF}Объявить Построение Призывников\n{00FF00}** {FFFFFF}Установить Точку для Марш-броска\n{00FF00}** {FFFFFF}Выдать Военный Билет";
ShowPlayerDialog(playerid,251,DIALOG_STYLE_LIST,"{00FF06}******* {FFFFFF}Меню Военного Призыва {00FF06}*******",listitems,"Выбрать","Отмена");
}
return 1;
}
PHP:
if(dialogid==251)
{
if(response)
{
if(listitem == 0) // Meele
{
ShowPlayerDialog(playerid,252,DIALOG_STYLE_INPUT,"Приглашение Призывника","Введите id игрока\nкоторого хотите пригласить на Военный Призыв","Принять","Отмена");
}
if(listitem == 1) // Meele
{
ShowPlayerDialog(playerid,253,DIALOG_STYLE_INPUT,"Увольнение Призывника","Введите id игрока\nкоторого хотите уволить с Военного Призыва","Принять","Отмена");
}
if(listitem == 2) // Meele
{
SendClientMessage(playerid, COLOR_LIGHTRED, "{FFFFFF}***************** {008006}Призывники Онлайн {FFFFFF}*****************");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pPriziv] == 1)
{
GetPlayerName(i, sendername, sizeof(sendername));
format(string, 256, "{008006} Призывник: {FF9000}%s", sendername);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
}
}
if(listitem == 3) // Meele
{
ShowPlayerDialog(playerid,254,DIALOG_STYLE_INPUT,"Назначение Руководителя Призывом","Введите id игрока\nкоторого хотите назначить Руководителем Военного Призыва","Принять","Отмена");
}
if(listitem == 4) // Meele
{
ShowPlayerDialog(playerid,256,DIALOG_STYLE_INPUT,"Снятие Руководителя Призывом","Введите id игрока\nкоторого хотите снять с Руководства Военным Призывом","Принять","Отмена");
}
if(listitem == 5) // Meele
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "{FF0000}*[Внимание Призывники] %s[%d]: {FF9000}Объявлено Построение Призывников на Военной Базе в течении 5-ти минут.", sendername, playerid);
SendPrizivMessage(COLOR_LIGHTRED, string);
}
if(listitem == 6) // Meele
{
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "{FF0000}*[Внимание Призывники] %s[%d] {FF9000}Установил Точку для Марш-Броска.", sendername, playerid);
SendPrizivMessage(COLOR_LIGHTRED, string);
format(string, sizeof(string), "{FF0000}*[Внимание Призывники] {FF9000}Ваша задача прибыть к ней пешком вместе с другими призывниками в кротчайшие сроки");
SendPrizivMessage(COLOR_LIGHTRED, string);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pPriziv] >= 1)
{
SetPlayerCheckpoint(i,X-10, Y, Z, 10.0);
SetPVarInt(i,"GP",1);
}
}
}
}
if(listitem == 7) // Meele
{
ShowPlayerDialog(playerid,255,DIALOG_STYLE_INPUT,"Выдача Военного Билета","Введите id игрока\nкоторому хотите выдать Военный Билет","Принять","Отмена");
}
}
return 1;
}
if(dialogid==252)
{
if(response)
{
new cashdeposit = strval(inputtext);
new giveplayer[MAX_PLAYER_NAME];
if(cashdeposit != INVALID_PLAYER_ID)
{
if(IsPlayerConnected(cashdeposit))
{
if(PlayerInfo[cashdeposit][pLevel] >= 2)
{
GetPlayerName(cashdeposit, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "{FFFFFF}Руководитель Призывом {FF8000}%s{FFFFFF}, приглашает вас пройти Военный Призыв в Армии\n{FFFFFF}И получить Военный Билет по его окончании. ", sendername);
ShowPlayerDialog(cashdeposit,244,DIALOG_STYLE_MSGBOX,"Повестка в Армию",string,"Да","Нет");
}
else
{
format(string, sizeof(string), "* Игрок %s не годен к службе(не достиг 2-ого уровня)", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Этот игрок не в игре!");
}
}
}
}
if(dialogid==253)
{
if(response)
{
new cashdeposit = strval(inputtext);
new giveplayer[MAX_PLAYER_NAME];
if(cashdeposit != INVALID_PLAYER_ID)
{
if(IsPlayerConnected(cashdeposit))
{
if(PlayerInfo[cashdeposit][pPriziv] == 1)
{
GetPlayerName(cashdeposit, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Руководитель Призывом %s признал вас не годным к прохождению призывной службы.Вы уволены", sendername);
SendClientMessage(cashdeposit, COLOR_LIGHTBLUE, string);
PlayerInfo[cashdeposit][pMember] = 0;
PlayerInfo[cashdeposit][pTeam] = 3;
PlayerInfo[cashdeposit][pPriziv] = 0;
SetPlayerHealth(cashdeposit, 0);
SetPlayerSkin(cashdeposit, 137);
PlayerInfo[cashdeposit][pModel] = 137;
}
else
{
format(string, sizeof(string), "* Игрок %s не проходит Призывную Службу в армии", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Этот игрок не в игре!");
}
}
}
}
if(dialogid==254)
{
if(response)
{
new cashdeposit = strval(inputtext);
new giveplayer[MAX_PLAYER_NAME];
if(cashdeposit != INVALID_PLAYER_ID)
{
if(IsPlayerConnected(cashdeposit))
{
if(PlayerInfo[cashdeposit][pMember] == 3 || PlayerInfo[cashdeposit][pLeader] == 3)
{
GetPlayerName(cashdeposit, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s назначил Вас Руководителем Военного Призыва", sendername);
SendClientMessage(cashdeposit, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Вы назанчили %s Руководителем Военного Призыва", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[cashdeposit][pPriziv] = 2;
}
else
{
format(string, sizeof(string), "* Игрок %s не годен к руководству Призывом(не состоит в Армии)", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Этот игрок не в игре!");
}
}
}
}
if(dialogid==255)
{
if(response)
{
new cashdeposit = strval(inputtext);
new giveplayer[MAX_PLAYER_NAME];
if(cashdeposit != INVALID_PLAYER_ID)
{
if(IsPlayerConnected(cashdeposit))
{
if(PlayerInfo[cashdeposit][pPriziv] >= 1)
{
GetPlayerName(cashdeposit, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Вы выдали Военный Билет %s", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "{FFFFFF}Руководитель Призывом {FF8000}%s{FFFFFF}, протягивает вам Военный Билет {FF8000}%s\n{FFFFFF}Взять Военный Билет?. ", sendername);
ShowPlayerDialog(cashdeposit,247,DIALOG_STYLE_MSGBOX,"*** Военный Билет ***",string,"Да","Нет");
}
else
{
format(string, sizeof(string), "* Игрок %s не проходит призыв и не может получить военный Билет", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Этот игрок не в игре!");
}
}
}
}
if(dialogid==256)
{
if(response)
{
new cashdeposit = strval(inputtext);
new giveplayer[MAX_PLAYER_NAME];
if(cashdeposit != INVALID_PLAYER_ID)
{
if(IsPlayerConnected(cashdeposit))
{
if(PlayerInfo[cashdeposit][pMember] == 3 || PlayerInfo[cashdeposit][pLeader] == 3)
{
GetPlayerName(cashdeposit, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s отстронил вас от Руководства Военным Призывом", sendername);
SendClientMessage(cashdeposit, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Вы отстронили %s от Руководства Военным Призывом", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[cashdeposit][pPriziv] = 0;
}
else
{
format(string, sizeof(string), "* Игрок %s не состоит в Армии", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Этот игрок не в игре!");
}
}
}
}
if(dialogid==244)
{
if(response)
{
SetPlayerSkin(playerid, 73);
PlayerInfo[playerid][pModel] = 73;
PlayerInfo[playerid][pMember] = 0;
PlayerInfo[playerid][pTeam] = 3;
PlayerInfo[playerid][pPriziv] = 1;
SaveAccounts();
ApplyAnimation(playerid,"DANCING","dnce_M_b",4.1,1,1,1,1,1);
ShowPlayerDialog(playerid,245,DIALOG_STYLE_MSGBOX,"Выбор скина Призывника","{FFFFFF}Для переключения скина нажимайте {FF8000}'>>>'\n{FFFFFF}Когда вы выберете нужный скин - нажмите {FF8000}'Готово'",">>>","Готово");
return 0;
}
else
{
SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
SetPlayerHealth(playerid, 0);
return 0;
}
}
if(dialogid==245)
{
if(response)
{
SetPlayerSkin(playerid, 191);
PlayerInfo[playerid][pModel] = 191;
PlayerInfo[playerid][pPriziv] = 1;
SaveAccounts();
ApplyAnimation(playerid,"DANCING","dnce_M_b",4.1,1,1,1,1,1);
ShowPlayerDialog(playerid,246,DIALOG_STYLE_MSGBOX,"Выбор скина Призывника","{FFFFFF}Для переключения скина нажимайте {FF8000}'>>>'\n{FFFFFF}Когда вы выберете нужный скин - нажмите {FF8000}'Готово'",">>>","Готово");
return 0;
}
else
{
SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
SetPlayerHealth(playerid, 0);
return 0;
}
}
if(dialogid==246)
{
if(response)
{
SetPlayerSkin(playerid, 73);
PlayerInfo[playerid][pModel] = 73;
PlayerInfo[playerid][pPriziv] = 1;
SaveAccounts();
ApplyAnimation(playerid,"DANCING","dnce_M_b",4.1,1,1,1,1,1);
ShowPlayerDialog(playerid,245,DIALOG_STYLE_MSGBOX,"Выбор скина Призывника","{FFFFFF}Для переключения скина нажимайте {FF8000}'>>>'\n{FFFFFF}Когда вы выберете нужный скин - нажмите {FF8000}'Готово'",">>>","Готово");
return 0;
}
else
{
SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
SetPlayerHealth(playerid, 0);
return 0;
}
}
if(dialogid==247)
{
if(response)
{
if(PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3)
{
SetPlayerSkin(playerid, 287);
PlayerInfo[playerid][pModel] = 287;
PlayerInfo[playerid][pVoennik] = 1;
PlayerInfo[playerid][pPriziv] = 0;
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_LIC, "{FF8000}**** {FFFFFF}Вы закончили прохождение Военного Призыва и Получили Военный Билет(/voen) {FF8000}****");
return 0;
}
else
{
SetPlayerSkin(playerid, 170);
PlayerInfo[playerid][pModel] = 170;
PlayerInfo[playerid][pVoennik] = 1;
PlayerInfo[playerid][pPriziv] = 0;
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_LIC, "{FF8000}**** {FFFFFF}Вы закончили Военную Службу и Получили Военный Билет(/voen) {FF8000}****");
SendClientMessage(playerid, COLOR_LIC, "{FF8000}**** {FFFFFF}Имея военный билет,мед.карту и требуемый уровень,вы можете поступить в законную организацию. {FF8000}****");
return 0;
}
}
else
{
SendClientMessage(playerid, COLOR_LIC, "{FF0000}** {FFFFFF}Вы отказались от получения военного билета {FF0000}**");
return 0;
}
}
PHP:
if(strcmp(cmd, "/g", true) == 0 || strcmp(cmd, "/gg", true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Используйте: {ff9000}/g [Текст Сообщения]");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
if(PlayerInfo[playerid][pPriziv] == 1)
{
format(string, sizeof(string), "*[ARMY] %s[%d]: {FFFFFF}%s", sendername, playerid, result);
SendPrizivMessage(TEAM_LIC_COLOR, string);
}
else if(PlayerInfo[playerid][pPriziv] == 2)
{
format(string, sizeof(string), "*[ARMY] %s[%d]: {FFFFFF}%s", sendername, playerid, result);
SendPrizivMessage(COLOR_LIGHTRED, string);
}
return 1;
}
