Dima_Neo
Умник
Здравствуйте ув.юзеры Pawno-info.Сегодня я решил выложить урок по созданию бизнеса "Продажа Домов".
Итак начнем.
Для начала ко всем new добавим
Затем в public OnPlayerConnect(playerid) Добавим
Затем в команды
Затем в команду /accept вписываем
Затем в команду /enter вставим
Затем вставим в public OnPlayerKeyStateChange(playerid, newkeys,oldkeys)
Теперь в файл sbizz.cfg вставим вот это
Спасибо за внимание. :df:
Итак начнем.
Для начала ко всем new добавим
PHP:
new prodhouse[MAX_PLAYERS];
new prodmoney[MAX_PLAYERS];
new prodid[MAX_PLAYERS];
PHP:
prodhouse[playerid] = -1;
prodmoney[playerid] = -1;
prodid[playerid] = -1;
PHP:
if(strcmp(cmd, "/sellhouse", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, playername, sizeof(playername));
if(PlayerInfo[playerid][pPhousekey] == 555)
{
SendClientMessage(playerid, COLOR_WHITE, "Вам не пренадлежит дом.");
return 1;
}
if(GetPlayerInterior(playerid) == 18 && GetPlayerVirtualWorld(playerid) == 84) //
{
if(PlayerInfo[playerid][pMarried] > 0)
{
SendClientMessage(playerid, COLOR_GREY, " Вы жената и поэтому не можете продать свой дом!");
return 1;
}
if(PlayerInfo[playerid][pPhousekey] != 555 && strcmp(playername, HouseInfo[PlayerInfo[playerid][pPhousekey]][hOwner], true) == 0)
{
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_GREY,"Используйте: /sellhouse [id] [сумма]");
return 1;
}
giveplayerid = strval(tmp);
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_GREY,"Используйте: /sellhouse [id] [сумма]");
return 1;
}
new money = strval(tmp);
if(!IsPlayerConnected(giveplayerid))
{
SendClientMessage(playerid,COLOR_GREY,"Нет такого игрока");
return 1;
}
if(GetPlayerMoney(giveplayerid) < money)
{
SendClientMessage(playerid,COLOR_GREY,"У вас нету столько денег");
return 1;
}
if(PlayerInfo[giveplayerid][pPhousekey] != 555)
{
SendClientMessage(playerid,COLOR_GREY,"У этого игрока уже есть дом");
return 1;
}
GetPlayerName(playerid,sendername,sizeof(sendername));
GetPlayerName(giveplayerid,giveplayer,sizeof(giveplayer));
prodid[giveplayerid] = playerid;
prodhouse[giveplayerid] = PlayerInfo[playerid][pPhousekey];
prodmoney[giveplayerid] = money;
format(string,sizeof(string),"Вы предложили купить дом %s за %d$",giveplayer,money);
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
format(string,sizeof(string)," %s Предложил вам купить его дом %d$ (/accept house)",sendername,money);
SendClientMessage(giveplayerid,COLOR_LIGHTBLUE,string);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Вы бомж.");
}
}
else
{
SendClientMessage(playerid, COLOR_RED, "** Вы не находитесь в бизнесе продажи домов");
}
}
return 1;
}
PHP:
if(strcmp(cmd, "/charityhouse", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, playername, sizeof(playername));
if(PlayerInfo[playerid][pPhousekey] == 555)
{
SendClientMessage(playerid, COLOR_RED, "** Вы не владелец дома.");
return 1;
}
if(GetPlayerInterior(playerid) == 18 && GetPlayerVirtualWorld(playerid) == 84)
{
if(PlayerInfo[playerid][pMarried] > 0)
{
SendClientMessage(playerid, COLOR_RED, "** Вы женаты и не можете продать дом !");
return 1;
}
if(PlayerInfo[playerid][pPhousekey] != 555 && strcmp(playername, HouseInfo[PlayerInfo[playerid][pPhousekey]][hOwner], true) == 0)
{
new house = PlayerInfo[playerid][pPhousekey];
HouseInfo[house][hHel] = 0;
HouseInfo[house][hArm] = 0;
HouseInfo[house][hHealthx] = 0;
HouseInfo[house][hHealthy] = 0;
HouseInfo[house][hHealthz] = 0;
HouseInfo[house][hArmourx] = 0;
HouseInfo[house][hArmoury] = 0;
HouseInfo[house][hArmourz] = 0;
HouseInfo[house][hLock] = 1;
HouseInfo[house][hOwned] = 0;
HouseInfo[house][hVec] = 479;
HouseInfo[house][hVcol1] = -1;
HouseInfo[house][hVcol2] = -1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(HouseInfo[house][hOwner], "The State", 0, strlen("The State"), 555);
ConsumingMoney[playerid] = 1;
nMoney[playerid] += HouseInfo[house][hValue];
GivePlayerMoney(playerid,HouseInfo[house][hValue]);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "~w~Congratulations~n~ You have sold your property for ~n~~g~$%d", HouseInfo[house][hValue]);
GameTextForPlayer(playerid, string, 10000, 3);
PlayerInfo[playerid][pPhousekey] = 555;
SBizzInfo[34][sbTill] += 30000;
ExtortionSBiz(34, 30000);
if(PlayerInfo[playerid][pLocal] == house)
{
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,HouseInfo[house][hEntrancex],HouseInfo[house][hEntrancey],HouseInfo[house][hEntrancez]);
PlayerInfo[playerid][pInt] = 0;
}
OnPropUpdate();
SavePlayer(playerid);
// OnPlayerUpdate(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "** Вы не владелец дома.");
}
}
else
{
SendClientMessage(playerid, COLOR_RED, "*Вы не находитесь в бизнесе продажи домов* ");
}
}
return 1;
}
PHP:
else if(strcmp(x_job,"house",true) == 0)
{
new house = prodhouse[playerid];
new ididpl = prodid[playerid];
new moneyy = prodmoney[playerid];
if(ididpl == -1)
{
SendClientMessage(playerid,COLOR_GREY,"Вам никто не предлогал купить дом");
return 1;
}
if(!IsPlayerConnected(ididpl))
{
SendClientMessage(playerid,COLOR_GREY,"Вам никто не предлогал купить дом, или этот человек вышел");
return 1;
}
if(GetPlayerMoney(playerid) < moneyy)
{
SendClientMessage(playerid,COLOR_GREY,"У вас не хватает денег!");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(ididpl, giveplayer, sizeof(giveplayer));
strmid(HouseInfo[house][hOwner], sendername, 0, strlen(sendername), 555);
ConsumingMoney[ididpl] = 1;
nMoney[ididpl] += moneyy;
GivePlayerMoney(ididpl,moneyy);
ConsumingMoney[playerid] = 1;
nMoney[playerid] -= moneyy;
GivePlayerMoney(playerid,-moneyy);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
GameTextForPlayer(ididpl, string, 10000, 3);
PlayerInfo[playerid][pPhousekey] = house;
PlayerInfo[ididpl][pPhousekey] = 555;
OnPropUpdate();
SavePlayer(playerid);
SavePlayer(ididpl);
format(string,sizeof(string),"");
SendClientMessage(playerid,COLOR_LIGHTBLUE," Дом успешно продан !");
SendClientMessage(ididpl,COLOR_LIGHTBLUE," Вы успешно купили дом!");
format(string,sizeof(string),"");
SendClientMessage(ididpl,COLOR_LIGHTBLUE,string);
prodhouse[playerid] = -1;
prodid[playerid] = -1;
prodmoney[playerid] = -1;
}
PHP:
else if(PlayerToPoint(3.0, playerid, 1726.9163, -1639.1139, 20.2236))
{
if(GetPlayerInterior(playerid) == 18)
{
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerPos(playerid, SBizzInfo[34][sbEntranceX], SBizzInfo[34][sbEntranceY], SBizzInfo[34][sbEntranceZ]);
SetPlayerFacingAngle(playerid, 0);
SetCameraBehindPlayer(playerid);
}
}
}
return 1;
}
PHP:
else if(PlayerToPoint(3.0, playerid, 1726.9163, -1639.1139, 20.2236))
{
if(GetPlayerInterior(playerid) == 18)
{
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerPos(playerid, SBizzInfo[34][sbEntranceX], SBizzInfo[34][sbEntranceY], SBizzInfo[34][sbEntranceZ]);
SetPlayerFacingAngle(playerid, 0);
SetCameraBehindPlayer(playerid);
}
}
PHP:
0|The State|House Sell|No-one|1726.937988|-1636.936645|20.217300|1|1|1|240109|0|0|546|100|100
Последнее редактирование:
