- Регистрация
- 16 Янв 2012
- Сообщения
- 58
- Лучшие ответы
- 0
- Репутация
- 6
Суть проблемы:
При покупке бизнеса, пикап должен удалятся, а на его место ставится другой.
Происходит следующее - старый пикап не убирается, новый добавляется и плюс ко всему этому в бизнес становится зайти невозможно, так как при заходе на пикап тп*шит в интерьер Грув.
Уже вертел этот код и так, и сяк, может посоветует кто, что сделать можно, для воплощения моей задумки.
Буду премного благодарен.
При покупке бизнеса, пикап должен удалятся, а на его место ставится другой.
Происходит следующее - старый пикап не убирается, новый добавляется и плюс ко всему этому в бизнес становится зайти невозможно, так как при заходе на пикап тп*шит в интерьер Грув.
if(strcmp(cmd, "/buybiz", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new Floatldposx, Floatldposy, Floatldposz;
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
if(PlayerInfo[playerid][pPbiskey] != 255)
{
SendClientMessage(playerid, COLOR_WHITE, "Вы владеете бизнессом, введите /sellbiz чтобы продать свой бизнесс.");
return 1;
}
for(new b = 0; b < sizeof(SBizzInfo); b++)
{
if(PlayerToPoint(2.0, playerid, SBizzInfo[sbEntranceX], SBizzInfo[sbEntranceY], SBizzInfo[sbEntranceZ]) && SBizzInfo[sbOwned] == 0)
{
if(PlayerInfo[playerid][pLevel] < SBizzInfo[sbLevelNeeded])
{
format(string, sizeof(string), "Вы должны быть %d уровня, чтобы купить это",SBizzInfo[sbLevelNeeded]);
SendClientMessage(playerid, COLOR_GRAD5, string);
return 1;
}
//------------------------------------------------------------------------------
if(GetPlayerMoney(playerid) > SBizzInfo[sbBuyPrice])
{
PlayerInfo[playerid][pPbiskey] = b+100;
SBizzInfo[sbOwned] = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(SBizzInfo[sbOwner], sendername, 0, strlen(sendername), 255);
GivePlayerMoney(playerid,-SBizzInfo[sbBuyPrice]);
PlayerPlayMusic(playerid);
SendClientMessage(playerid, COLOR_WHITE, "* Поздравляем с новой покупкой.");
SendClientMessage(playerid, COLOR_WHITE, "* Вводите /help чтобы посмотреть справку по бизнесу.");
SendClientMessage(playerid, COLOR_WHITE, "* Если вы захотите купить другой бизнес то сначала продайте ваш /sellbiz.");
new temp[MAX_STRING];
format(temp,sizeof(temp), "{ffffff}%s\n{2864fc}Владелец:{ffffff} %s\n{2864fc}Вход:{ffffff} $%d\n{2864fc}Заместитель:{ffffff} %s\n{2864fc}Уровень:{ffffff} %d\n{2864fc}Продукты:{ffffff} [%d/%d] $%d", SBizzInfo[sbMessage],SBizzInfo[sbOwner],SBizzInfo[sbEntranceCost],SBizzInfo[sbExtortion],SBizzInfo[sbLevelNeeded],SBizzInfo[sbProducts],SBizzInfo[sbMaxProducts],SBizzInfo[sbPriceProd]);
Update3DTextLabelText(sbizz3d,0x4CD10FF,temp);
DestroyPickup(b);
if(SBizzInfo[sbOwned] == 0)
{
AddStaticPickup(1274, 23, SBizzInfo[sbEntranceX], SBizzInfo[sbEntranceY], SBizzInfo[sbEntranceZ]);
}
else if(SBizzInfo[sbOwned] == 1)
{
AddStaticPickup(1239, 23, SBizzInfo[sbEntranceX], SBizzInfo[sbEntranceY], SBizzInfo[sbEntranceZ]);
}
OnPropUpdate();
OnPlayerUpdate(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "** У Вас не хватает денег для этого");
return 1;
}
}
}
{
if(IsPlayerConnected(playerid))
{
new Floatldposx, Floatldposy, Floatldposz;
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
if(PlayerInfo[playerid][pPbiskey] != 255)
{
SendClientMessage(playerid, COLOR_WHITE, "Вы владеете бизнессом, введите /sellbiz чтобы продать свой бизнесс.");
return 1;
}
for(new b = 0; b < sizeof(SBizzInfo); b++)
{
if(PlayerToPoint(2.0, playerid, SBizzInfo[sbEntranceX], SBizzInfo[sbEntranceY], SBizzInfo[sbEntranceZ]) && SBizzInfo[sbOwned] == 0)
{
if(PlayerInfo[playerid][pLevel] < SBizzInfo[sbLevelNeeded])
{
format(string, sizeof(string), "Вы должны быть %d уровня, чтобы купить это",SBizzInfo[sbLevelNeeded]);
SendClientMessage(playerid, COLOR_GRAD5, string);
return 1;
}
//------------------------------------------------------------------------------
if(GetPlayerMoney(playerid) > SBizzInfo[sbBuyPrice])
{
PlayerInfo[playerid][pPbiskey] = b+100;
SBizzInfo[sbOwned] = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(SBizzInfo[sbOwner], sendername, 0, strlen(sendername), 255);
GivePlayerMoney(playerid,-SBizzInfo[sbBuyPrice]);
PlayerPlayMusic(playerid);
SendClientMessage(playerid, COLOR_WHITE, "* Поздравляем с новой покупкой.");
SendClientMessage(playerid, COLOR_WHITE, "* Вводите /help чтобы посмотреть справку по бизнесу.");
SendClientMessage(playerid, COLOR_WHITE, "* Если вы захотите купить другой бизнес то сначала продайте ваш /sellbiz.");
new temp[MAX_STRING];
format(temp,sizeof(temp), "{ffffff}%s\n{2864fc}Владелец:{ffffff} %s\n{2864fc}Вход:{ffffff} $%d\n{2864fc}Заместитель:{ffffff} %s\n{2864fc}Уровень:{ffffff} %d\n{2864fc}Продукты:{ffffff} [%d/%d] $%d", SBizzInfo[sbMessage],SBizzInfo[sbOwner],SBizzInfo[sbEntranceCost],SBizzInfo[sbExtortion],SBizzInfo[sbLevelNeeded],SBizzInfo[sbProducts],SBizzInfo[sbMaxProducts],SBizzInfo[sbPriceProd]);
Update3DTextLabelText(sbizz3d,0x4CD10FF,temp);
DestroyPickup(b);
if(SBizzInfo[sbOwned] == 0)
{
AddStaticPickup(1274, 23, SBizzInfo[sbEntranceX], SBizzInfo[sbEntranceY], SBizzInfo[sbEntranceZ]);
}
else if(SBizzInfo[sbOwned] == 1)
{
AddStaticPickup(1239, 23, SBizzInfo[sbEntranceX], SBizzInfo[sbEntranceY], SBizzInfo[sbEntranceZ]);
}
OnPropUpdate();
OnPlayerUpdate(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "** У Вас не хватает денег для этого");
return 1;
}
}
}
Уже вертел этот код и так, и сяк, может посоветует кто, что сделать можно, для воплощения моей задумки.
Буду премного благодарен.