02.02.2012, 10:24
I have a problem with rentroom!
I pRented online server for Renteria
The problem is next to the house I rent if I take my show on the home owner list, but if I go and take unrent and rent another house to appear on all lists
so all lists / renters appear to each owner
I know what the problem where it is, but do not know how to fix what they can do, atnci when owneru yes / renters to protect them Renteria's house!
How do I resolve?
I pRented online server for Renteria
The problem is next to the house I rent if I take my show on the home owner list, but if I go and take unrent and rent another house to appear on all lists
so all lists / renters appear to each owner
I know what the problem where it is, but do not know how to fix what they can do, atnci when owneru yes / renters to protect them Renteria's house!
How do I resolve?
Код:
if(strcmp(cmd, "/rentroom", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(PlayerToPoint(2.0, playerid, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]) && HouseInfo[h][hOwned] == 1 && HouseInfo[h][hRentabil] == 1)
{
/*if(HouseInfo[h][hInsurance] == 1)
{
SCM(playerid, COLOR_CRS2, "** This house has no insurance and you can not rent a room.");
return 1;
}*/
if(PlayerInfo[playerid][pPhousekey] != 255 && strcmp(playername, HouseInfo[PlayerInfo[playerid][pPhousekey]][hOwner], true) == 0)
{
SendClientMessage(playerid, COLOR_WHITE, "** You already own a house, type /sellhouse if you want to rent this one.");
return 1;
}
if(GetPlayerMoney(playerid) > HouseInfo[h][hRent])
{
PlayerInfo[playerid][pPhousekey] = h;
PlayerInfo[playerid][pRented] = 1;
GivePlayerCash(playerid,-HouseInfo[h][hRent]);
HouseInfo[h][hTakings] = HouseInfo[h][hTakings]+HouseInfo[h][hRent];
PlayerPlayMusic(playerid);
SetPlayerInterior(playerid,HouseInfo[h][hInt]);
SetPlayerVirtualWorld(playerid,HouseInfo[h][hWorld]);
PlayerInfo[playerid][pVirWorld] = HouseInfo[h][hWorld];
SetPlayerMapIcon(playerid,h + 20,HouseInfo[h][hEntrancex],HouseInfo[h][hEntrancey],HouseInfo[h][hEntrancez],31,COLOR_LIGHTRED);
SetPlayerPos(playerid,HouseInfo[h][hExitx],HouseInfo[h][hExity],HouseInfo[h][hExitz]);
GameTextForPlayer(playerid, "~w~Welcome Home~n~You can exit at any time by moving to this door and press enter", 5000, 3);
PlayerInfo[playerid][pInt] = HouseInfo[h][hInt];
PlayerInfo[playerid][pLocal] = h;
SpawnPlayer(playerid);
SendClientMessage(playerid, COLOR_WHITE, "** Congratulations, You can enter and exit here anytime.");
SendClientMessage(playerid, COLOR_WHITE, "** Type /help to review the new property help section.");
OnPlayerUpdateEx(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "You don't have the cash for that");
return 1;
}
}
}
}
return 1;
}
if(strcmp(cmd, "/renters", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new count = 0;
GetPlayerName(playerid, playername, sizeof(playername));
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if(PlayerInfo[playerid][pPhousekey] == h && strcmp(playername, HouseInfo[PlayerInfo[playerid][pPhousekey]][hOwner], true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(PlayerInfo[i][pRented] >= 1)
{
if(IsPlayerConnected(i))
{
GetPlayerName(i,giveplayer,sizeof(giveplayer));
format(string,sizeof(string),"** %s",giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
count++;
}
}
}
if(count == 0)
{
SendClientMessage(playerid,COLOR_CRS3,"* No renters online.");
}
else if(count >= 1)
{
format(string, 256, "* There are %d renters online.", count);
SCM(playerid, COLOR_CRS3, string);
}
}
}
}
return 1;
}

