sasa50
Умник
Я выложил урок по созданию казны т.к не каждый сможет его сделать либо вырезать из мода и форум зачастую заполняется нуботемами по созданию казны для сервера ну начнем
Сначало ко всем NEW Добовляем
Вставляем в public OnPlayerCommandText
и вот эти команды
Далее в public OnDialogResponse
Если вылазиют вот такие ошибки:
То на той строчке где это указано можете смело удалять
Автор - НЕ ИЗВЕСТЕН СКРИПТ ВЫРЕЗАН ИЗ San Sity
Ставьте + если помог
Сначало ко всем NEW Добовляем
PHP:
new Tax = 0;
PHP:
new cmd[256];
PHP:
if(strcmp(cmd, "/treasury", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pLeader] == 7)
{
ShowPlayerDialog(playerid, 2305,DIALOG_STYLE_LIST,"Операций с казной","Снять\nПоложить\nПосмотреть\nРаздать Закону(часть)\nРаздать всем(часть)","Делать","Отмена");
}
}
}
PHP:
if(strcmp(cmd,"/checktax",true)==0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pLeader] != 7)
{
SendClientMessage(playerid, COLOR_GREY, " Вы не мэр!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, " Используйте: /checktax [ammount]");
return 1;
}
moneys = strval(tmp);
if(Tax < moneys)
{
SendClientMessage(playerid,COLOR_GREY,"В казне нет столько денег");
return 1;
}
Tax = Tax - moneys;
GivePlayerMoney(playerid,moneys);
format(string, sizeof(string), " Вы взяли %d$ из казны. Осталось в казне %d$", moneys, Tax);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SaveStuff();
}
return 1;
}
PHP:
new string[256];
if(dialogid == 2305)//Снять\nПоложить\nПосмотреть\nРаздать Закону(часть)\nРаздать всем(часть)"
{
if(response)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid, 2306,DIALOG_STYLE_INPUT,"Сколько?","Кол-во","OK","Отмена");
return 1;
}
else if(listitem == 1)
{
ShowPlayerDialog(playerid, 2307,DIALOG_STYLE_INPUT,"Сколько?","Кол-во","OK","Отмена");
}
else if(listitem == 2)
{
format(string,20,"В казне %d",Tax);
SendClientMessage(playerid,COLOR_LIGHTRED,string);
}
else if(listitem == 3)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pLeader] != 7)
{
SendClientMessage(playerid, COLOR_GREY, "Вы не Сенатор Штата.");
return 1;
}
if(Tax < 1)
{
SendClientMessage(playerid, COLOR_GREY, "В казне нету денег!");
return 1;
}
new Cops = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(IsACop(i)||PlayerInfo[i][pMember]==11||PlayerInfo[i][pLeader]==11)
{
Cops += 1;
}
}
}
if(Cops >= 1)
{
new value = Tax / 4;
new price = value / Cops;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(IsACop(i)||PlayerInfo[i][pMember]==11||PlayerInfo[i][pLeader]==11)
{
format(string, sizeof(string), "* Вы получили компенсацию в размере $%d от Государственной Думы.",price);
SendClientMessage(i, COLOR_LIGHTBLUE, string);
GivePlayerMoney(i, price);
Tax -= price;
}
}
}
SaveStuff();
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Сейчас нет ни одного полицейского!");
return 1;
}
}
}
else if(listitem == 4)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pLeader] != 7)
{
SendClientMessage(playerid, COLOR_GREY, "Вы не Сенатор Штата.");
return 1;
}
new AllPlayers = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
AllPlayers += 1;
}
}
if(AllPlayers >= 1)
{
new value = Tax / 4;
new price = value / AllPlayers;
if(Tax < price)
{
SendClientMessage(playerid, COLOR_GREY, "В казне нету столько денег!");
return 1;
}
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
format(string, sizeof(string), "* Вы получили денежное пособие в размере $%d от Государственной Думы.",price);
SendClientMessage(i, COLOR_LIGHTBLUE, string);
GivePlayerMoney(i, price);
Tax -= price;
}
}
SaveStuff();
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Сейчас нет ни одного игрока!");
return 1;
}
}
}
}
else
{
SendClientMessage(playerid,COLOR_ORANGE,"Ничего не было сделано с казною");
}
return 1;
}
if(dialogid == 2306)
{
if(response)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,COLOR_ORANGE,"Пустое значение");
return 1;
}
new zkx = strval(inputtext);
if(Tax > zkx)
{
Tax -=zkx;
GivePlayerMoney(playerid, zkx);
format(string,sizeof(string),"Вы успешно сняли себе в карман %d",zkx);
SendClientMessage(playerid,COLOR_ORANGE,string);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_LIGHTRED,"В казне нету столько денег");
return 1;
}
}
else
{
SendClientMessage(playerid,COLOR_ORANGE,"Ничего не было сделано с казною");
}
return 1;
}
if(dialogid == 2307)
{
if(response)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid,COLOR_ORANGE,"Пустое значение");
return 1;
}
new zkx = strval(inputtext);
if(PlayerInfo[playerid][pCash] > zkx)
{
Tax +=zkx;
GivePlayerMoney(playerid, -zkx);
format(string,sizeof(string),"Вы успешно положили в казну %d",zkx);
SendClientMessage(playerid,COLOR_ORANGE,string);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_LIGHTRED,"У вас в кармане нет столько денег");
return 1;
}
}
else
{
SendClientMessage(playerid,COLOR_ORANGE,"Ничего не было сделано с казною");
}
return 1;
}
HTML:
warning 219: local variable "string" shadows a variable at a preceding level
PHP:
new string[256];
Ставьте + если помог
