rendered paste body
/*
* Full house script by Antironix, modified by Leopard.
*/
//----------------------------
//----------------------------
#define BUSINESS 30
//----------------------------
//----------------------------
#define c_y 0xFFFF00AA
#define c_r 0xAA3333AA
new BizPickup[BUSINESS];
new playericonbiz[MAX_PLAYERS];
new Float:bizx, Float:bizy, Float:bizz;
forward UnFreeze(playerid);
AddBusiness(bizid, bizname, Float:iconX, Float:iconY, Float:iconZ, Float:interiorX, Float:interiorY, Float:interiorZ, Cost, Sell, Paycheck, Interior)
{
new biz[128];
format(biz, sizeof(biz), "BusinessID%d",bizid);
if(!(dini_Exists(biz)))
{
dini_Create(udb_encode(biz));
dini_Set(udb_encode(biz), "BusinessName", bizname);
dini_Set(udb_encode(biz), "Name", "ForSale");
dini_IntSet(udb_encode(biz), "Cost", Cost);
dini_IntSet(udb_encode(biz), "Sell", Sell);
dini_IntSet(udb_encode(biz), "Wager", Paycheck);
dini_IntSet(udb_encode(biz), "Interior", Interior);
dini_Set(udb_encode(biz), "Locked", "1");
dini_FloatSet(udb_encode(biz), "X", interiorX);
dini_FloatSet(udb_encode(biz), "Y", interiorY);
dini_FloatSet(udb_encode(biz), "Z", interiorZ);
}
format(house, sizeof(house),"BusinessID%d Has Been Created!",bizid);
print(house);
BizPickup[bizid] = CreatePickup(1272, 23, iconX, iconY, iconZ);
}
GetBizStats(playerid, pickupid)
{
if(pickupid<(BUSINESS-1))
{
new str[256],str1[256], str2[256];
format(str, sizeof(str), "BusinessID%d", pickupid);
str1 = dini_Get(udb_encode(str), "Name");
format(str2, sizeof(str2), "~g~Owner: ~b~~h~%s", str1);
GameTextForPlayer(playerid, str1, 4000, 4);
str1 = dini_Get(udb_encode(str),"Cost");
format(str2,sizeof(str2),"Cost: %i",strval(str1));
SendClientMessage(playerid, c_y, str2); //str1
str1 = dini_Get(udb_encode(str),"Wager");
format(str2,sizeof(str2),"Wager: %i",strval(str1));
str1 = dini_Get(udb_encode(str),"BusinessName");
SendClientMessage(playerid, c_y, str2); //str1
playericonbiz[playerid] = pickupid;
}
}
dcmd_sellbiz(playerid,params[])
{
#pragma unused params
new str[255],str1[256],pname[24];
GetPlayerName(playerid, pname, 24);
format(str1, sizeof(str1), "BusinessID%d", playericonbiz[playerid]);
str = dini_Get(udb_encode(str1),"Name");
if (strcmp(str,pname,false)) return SendClientMessage(playerid, c_r, "This house isn't yours!");
SendClientMessage(playerid, c_y, "You have sold your biz!");
format(str, sizeof(str), "%s has sold bizid 0",pname);
print(str);
str = dini_Get(udb_encode(str1),"Sell");
GivePlayerMoney(playerid, strval(str));
dini_Set(udb_encode(str1), "Name", "ForSale");
dini_IntSet(udb_encode(str1),"Locked",1);
dini_IntSet(udb_encode(str1),"Wager", 0);
dini_IntSet(udb_encode(pname),"House",-255);
return 1;
}
dcmd_buybiz(playerid,params[])
{
#pragma unused params
new str[255],str1[255],str2[256],pname[24];
GetPlayerName(playerid, pname, 24);
format(str1, sizeof(str1), "BusinessID%d", playericonbiz[playerid]);
str = dini_Get(udb_encode(str1),"Name");
if (strcmp(str,"ForSale",true)) return SendClientMessage(playerid, c_r, "This biz isn't for sale!");
str = dini_Get(udb_encode(str1),"Cost");
if(GetPlayerMoney(playerid)<strval(str)) return SendClientMessage(playerid, c_r, "Not enough money!");
SendClientMessage(playerid, c_y, "You have bought the biz!");
format(str, sizeof(str), "%s has bought bizid 0",pname);
print(str);
str = dini_Get(udb_encode(str1),"Cost");
str2 = dini_Get(udb_encode(str1),"Wager");
GivePlayerMoney(playerid, -strval(str));
dini_Set(udb_encode(str1), "Name", pname);
dini_IntSet(udb_encode(str1),"Locked",0);
dini_IntSet(udb_encode(str1),"Wager", strval(str2));
dini_IntSet(udb_encode(pname),"House",playericonbiz[playerid]);
return 1;
}
dcmd_enterbiz(playerid,params[])
{
#pragma unused params
new str[255],str1[255],pname[24],Float:x,Float:y,Float:z;
format(str1, sizeof(str1), "BusinessID%d", playericonbiz[playerid]);
GetPlayerName(playerid, pname, 24);
str = dini_Get(str1,"Locked");
if(strval(str)==1) return SendClientMessage(playerid, c_r, "This biz is locked!");
SendClientMessage(playerid, c_y, "You entered the biz!");
str = dini_Get(str1,"Interior");
SetPlayerInterior(playerid, strval(str));
x = dini_Float(str1,"X");
y = dini_Float(str1,"Y");
z = dini_Float(str1,"Z");
SetPlayerPos(playerid, x, y, z);
GetPlayerPos(playerid, bizx, bizy, bizz);
return 1;
}
dcmd_exitbiz(playerid,params[])
{
#pragma unused params
if(GetPlayerInterior(playerid)>0)
{
SetPlayerPos(playerid, bizx, bizy, bizz);
SetPlayerInterior(playerid, 0);
TogglePlayerControllable(playerid, false);
SetTimerEx("UnFreeze", 2000, 0, "i", playerid);
}
return 1;
}
/*dcmd_lock(playerid,params[])
{
#pragma unused params
new str[256], str1[256];
new pName[MAX_PLAYER_NAME], pStr[256];
format(str1, sizeof(str1), "houseid%d", playericonhouse[playerid]);
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
format(pStr, sizeof(pStr), "%s", pName);
str = dini_Get(str1,"Name");
if(strval(str) == "ForSale")
{
SendClientMessage(playerid, c_r, "Youre not owning this house! :P");
return 1;
}
else if(strval(str) == pStr)
{
dini_Set(udb_encode(str1), "Locked", 1);
}
return 1;
}
dcmd_unlock(playerid,params[])
{
#pragma unused params
new str[256], str1[256];
new pName[MAX_PLAYER_NAME], pStr[256];
format(str1, sizeof(str1), "houseid%d", playericonhouse[playerid]);
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
format(pStr, sizeof(pStr), "%s", pName);
str = dini_Get(str1,"Name");
if(strval(str) == "ForSale")
{
SendClientMessage(playerid, c_r, "Youre not owning this house! :P");
return 1;
}
else if(strval(str) == pStr)
{
dini_Set(udb_encode(str1), "Locked", 0);
}
return 1;
}*/
public UnFreeze(playerid)
{
TogglePlayerControllable(playerid, true);
}
//native AddHouse(houseid, Float:iconX, Float:iconY, Float:iconZ, Float:interiorX, Float:interiorY, Float:interiorZ, Cost, Sell, Interior);