_FliKZeT_
Умник
Здравствуйте, вот выкладываю вам работу: "Перевозчик казны", как на Orio[N](не реклама)
Да оптимизация с переменными хромает, но мне лень было делать так: new Moneys3D[3]; и.т.д
Кому надо, те сделают! Не буду же я за вас все делать, по вашим понятиям, код должен работать лучше всех, вот вам ответ: "Значит код должен работать, а вы нет?";
Ко всем переменным:
PHP:
new takemoneys;
new getfinance;
new Text3D: Moneys3D;
new takemoneys2;
new Text3D: Moneys3D2;
new takemoneys3;
new Text3D: Moneys3D3;
new startfinance;
new Text3D: finance;
PHP:
CreatePickup(1210,23,361.9660,173.5963,1008.3828,-1); //
CreatePickup(1274,23,-2023.5557,156.8807,28.8359,-1); //
CreatePickup(1274,23,-2057.1189,-92.0222,35.3203,-1); //
CreatePickup(1274,23,40.4211,-1531.6410,5.3947,-1);// КПП (ЛС-СФ)
getfinance = CreatePickup(1274,23,-2169.3740,-2380.3608,30.6250,-1);//Мерия /startfinance | /slary
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys);
Moneys3D = Create3DTextLabel(strgg,0xFFFFFFFF,-2023.5557,156.8807,28.8359,15.0,0);
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys2);
Moneys3D2 = Create3DTextLabel(strgg,0xFFFFFFFF,-2057.1189,-92.0222,35.3203,15.0,0);
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys3);
Moneys3D3 = Create3DTextLabel(strgg,0xFFFFFFFF,40.4211,-1531.6410,5.3947,15.0,0);
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Ф И Н А Н С О В А Я К А З Н А Ш Т А Т А {FF3300}*{FFFFFF}\n/salary(Команда для лидеров фракции)\n/startfinance(Начать сбор денег для казны)\n\n[ В казне штата $ %d ]",startfinance);
finance = Create3DTextLabel(strgg,0xFFFFFFFF,-2169.3740,-2380.3608,30.6250,15.0,0);
PHP:
if(strcmp(cmd, "/salary", true) == 0)
{
new strgg[200];
if(!PlayerToPoint(7.0,playerid,-2169.3740,-2380.3608,30.6250)) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не у мерии.");
if(startfinance < 1000) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Зарплату забрать ниже $1000 нельзя.");
if(PlayerInfo[playerid][pLeader] <= 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не лидер.");
SFM(playerid,COLOR_WHITE,"{E3BE88}[Мэрия]{FFFFFF} Тебе выдана зарплата в размере $%d",startfinance);
GiveMoney(playerid,startfinance);
startfinance = 0;
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Ф И Н А Н С О В А Я К А З Н А Ш Т А Т А {FF3300}*{FFFFFF}\n/salary(Команда для лидеров фракции)\n/startfinance(Начать сбор денег для казны)\n\n[ В казне штата $ %d ]",startfinance);
Update3DTextLabelText(finance, 0xFFFFFFFF, strgg);
return true;
}
if(strcmp(cmd,"/startfinance", true) == 0)
{
if(GetPVarInt(playerid,"finance") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Ты уже начал(а) работу.");
if(!PlayerToPoint(7.0,playerid,-2169.3740,-2380.3608,30.6250)) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не у мерии.");
SetPVarInt(playerid,"finance",1);
SetPlayerSkin(playerid,153);
SendClientMessage(playerid,COLOR_WHITE,"{E3BE88}[Мэрия]{FFFFFF} Забери деньги с любого предприятия и доставь их в казну.");
return 1;
}
if(strcmp(cmd,"/takemoneys", true) == 0)
{
if(GetPVarInt(playerid,"finance") < 1) return true;
if(GetPVarInt(playerid,"takem") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Ты уже взял(а) деньги, отвези их в мерию!");
if(GetPVarInt(playerid,"takem") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы уже взяли суточное накопление.");
if(PlayerToPoint(3.0,playerid,-2023.5557,156.8807,28.8359))
{
if(takemoneys < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys);
takemoneys = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys);
Update3DTextLabelText(Moneys3D, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
else if(PlayerToPoint(3.0,playerid,2057.1189,-92.0222,35.3203))
{
if(takemoneys2 < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys2);
takemoneys2 = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys2);
Update3DTextLabelText(Moneys3D2, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
else if(PlayerToPoint(3.0,playerid,40.4211,-1531.6410,5.3947))
{
if(takemoneys3 < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys3);
takemoneys3 = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys3);
Update3DTextLabelText(Moneys3D3, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
return 1;
}
PHP:
CMD:salary(playerid,params[])
{
new strgg[200];
if(!PlayerToPoint(7.0,playerid,-2169.3740,-2380.3608,30.6250)) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не у мерии.");
if(startfinance < 1000) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Зарплату забрать ниже $1000 нельзя.");
if(PlayerInfo[playerid][pLeader] <= 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не лидер.");
SFM(playerid,COLOR_WHITE,"{E3BE88}[Мэрия]{FFFFFF} Тебе выдана зарплата в размере $%d",startfinance);
GiveMoney(playerid,startfinance);
startfinance = 0;
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Ф И Н А Н С О В А Я К А З Н А Ш Т А Т А {FF3300}*{FFFFFF}\n/salary(Команда для лидеров фракции)\n/startfinance(Начать сбор денег для казны)\n\n[ В казне штата $ %d ]",startfinance);
Update3DTextLabelText(finance, 0xFFFFFFFF, strgg);
return true;
}
CMD:startfinance(playerid,params[])
{
if(GetPVarInt(playerid,"finance") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Ты уже начал(а) работу.");
if(!PlayerToPoint(7.0,playerid,-2169.3740,-2380.3608,30.6250)) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не у мерии.");
SetPVarInt(playerid,"finance",1);
SetPlayerSkin(playerid,153);
SendClientMessage(playerid,COLOR_WHITE,"{E3BE88}[Мэрия]{FFFFFF} Забери деньги с любого предприятия и доставь их в казну.");
return 1;
}
CMD:takemoneys(playerid,params[])
{
if(GetPVarInt(playerid,"finance") < 1) return true;
if(GetPVarInt(playerid,"takem") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Ты уже взял(а) деньги, отвези их в мерию!");
if(GetPVarInt(playerid,"takem") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы уже взяли суточное накопление.");
if(PlayerToPoint(3.0,playerid,-2023.5557,156.8807,28.8359))
{
if(takemoneys < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys);
takemoneys = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys);
Update3DTextLabelText(Moneys3D, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
else if(PlayerToPoint(3.0,playerid,2057.1189,-92.0222,35.3203))
{
if(takemoneys2 < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys2);
takemoneys2 = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys2);
Update3DTextLabelText(Moneys3D2, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
else if(PlayerToPoint(3.0,playerid,40.4211,-1531.6410,5.3947))
{
if(takemoneys3 < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys3);
takemoneys3 = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys3);
Update3DTextLabelText(Moneys3D3, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
return 1;
}
PHP:
YCMD:salary(playerid,params[],help[])
{
new strgg[200];
if(!PlayerToPoint(7.0,playerid,-2169.3740,-2380.3608,30.6250)) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не у мерии.");
if(startfinance < 1000) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Зарплату забрать ниже $1000 нельзя.");
if(PlayerInfo[playerid][pLeader] <= 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не лидер.");
SFM(playerid,COLOR_WHITE,"{E3BE88}[Мэрия]{FFFFFF} Тебе выдана зарплата в размере $%d",startfinance);
GiveMoney(playerid,startfinance);
startfinance = 0;
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Ф И Н А Н С О В А Я К А З Н А Ш Т А Т А {FF3300}*{FFFFFF}\n/salary(Команда для лидеров фракции)\n/startfinance(Начать сбор денег для казны)\n\n[ В казне штата $ %d ]",startfinance);
Update3DTextLabelText(finance, 0xFFFFFFFF, strgg);
return true;
}
YCMD:startfinance(playerid,params[],help[])
{
if(GetPVarInt(playerid,"finance") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Ты уже начал(а) работу.");
if(!PlayerToPoint(7.0,playerid,-2169.3740,-2380.3608,30.6250)) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы не у мерии.");
SetPVarInt(playerid,"finance",1);
SetPlayerSkin(playerid,153);
SendClientMessage(playerid,COLOR_WHITE,"{E3BE88}[Мэрия]{FFFFFF} Забери деньги с любого предприятия и доставь их в казну.");
return 1;
}
YCMD:takemoneys(playerid,params[],help[])
{
if(GetPVarInt(playerid,"finance") < 1) return true;
if(GetPVarInt(playerid,"takem") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Ты уже взял(а) деньги, отвези их в мерию!");
if(GetPVarInt(playerid,"takem") > 0) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Вы уже взяли суточное накопление.");
if(PlayerToPoint(3.0,playerid,-2023.5557,156.8807,28.8359))
{
if(takemoneys < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys);
takemoneys = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys);
Update3DTextLabelText(Moneys3D, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
else if(PlayerToPoint(3.0,playerid,2057.1189,-92.0222,35.3203))
{
if(takemoneys2 < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys2);
takemoneys2 = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys2);
Update3DTextLabelText(Moneys3D2, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
else if(PlayerToPoint(3.0,playerid,40.4211,-1531.6410,5.3947))
{
if(takemoneys3 < 60) return SendClientMessage(playerid,COLOR_WHITE,"{FF3300}[Ошибка]{FFFFFF} Здесь не достаточно денег для сбора.");
SetPVarInt(playerid,"takem",takemoneys3);
takemoneys3 = 0;
new strgg[145];
SFM(playerid,0xFFFFFFFF,"{FFFFFF}Ты забрал(а) из предприятия налог на сумму %d$. Достивь эти деньги в Казну!",GetPVarInt(playerid,"takem"));
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Суточное накопление предприятия: {e3be88}$%d{FFFFFF} {FF3300}*{FFFFFF}\n/takemoneys (Команда для Инкассационной службы)",takemoneys3);
Update3DTextLabelText(Moneys3D3, 0xFFFFFFFF, strgg);
SetPlayerAttachedObject(playerid, 0, 1210, 6, 0.247000,0.078999,0.041999, -51.199943,-96.100021,-79.800056, 1.0,1.0,1.0);
return true;
}
return 1;
}
В OnPlayerPickUpPickup:
[PHP]if(pickupid == getfinance)
{
if(GetPVarInt(playerid,"finance") > 0)
{
new strgg[200];
if(GetPVarInt(playerid,"finance") < 1) return true;
if(GetPVarInt(playerid,"takem") < 1) return true;
SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
SFM(playerid,0xE3BE88FF,"[Мерия]{FFFFFF} Деньги успешно доставлены в казну! Ты заработал(а) %d$",GetPVarInt(playerid,"takem")/2);
startfinance += GetPVarInt(playerid,"takem");
GiveMoney(playerid,GetPVarInt(playerid,"takem")/2);
DeletePVar(playerid,"takem");
DeletePVar(playerid,"finance");
RemovePlayerAttachedObject(playerid, 0);
format(strgg,sizeof(strgg),"{FF3300}*{FFFFFF} Ф И Н А Н С О В А Я К А З Н А Ш Т А Т А {FF3300}*{FFFFFF}\n/salary(Команда для лидеров фракции)\n/startfinance(Начать сбор денег для казны)\n\n[ В казне штата $ %d ]",startfinance);
Update3DTextLabelText(finance, 0xFFFFFFFF, strgg);
}
return true;
}
Автор работы: - Я(_FliKZeT_ aka TekVak aka FreeOram aka FreeDom)
Скрины позже будут, если будут ошибки, исправлю. Только скажите!
Последнее редактирование:
