rendered paste body#include <a_samp>
forward Pikap(playerid);
forward WyplataXD(playerid);
#define WYPLATA_CO... 3
#define Pickupy 5
new Float:P[Pickupy][3] = {
{0.0, 0.0, 1.0},
{348.2, 5778.3256, 14.3333},
{10.0, 10.0, 3.0},
{30.0, 30.0, 3.0},
{348.234, 3257.56, 1.0}
};
new PNazwy[Pickupy][128] = {
"K's Palace",
"Oh! This is K!",
"Fucking K...",
"AAaaaa (pisk xd)! Tam idzie K!",
"<3 K <3"
};
new PKoszt[Pickupy] = {
348,
3,
999999,
0,
843
};
new PWyplaty[Pickupy] = {
348000,
300000,
999999,
0,
843000
};
new bool:Pickup[200][Pickupy];
new ByKxD[Pickupy];
public OnGameModeInit()
{
for(new a = 0; a < Pickupy; a++)
{
ByKxD[a] = 348;
}
CreatePickups();
return 1;
}
public OnPlayerSpawn(playerid)
{
SetTimerEx("Pikap", 500, true, "d", playerid);
SetTimerEx("WyplataXD", WYPLATA_CO...*1000*60, true, "d", playerid);
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new s[128];
if(!strcmp("kup", cmdtext[1], true))
{
for(new a = 0; a < Pickupy; a++)
{
if(Pickup[playerid][a] == true)
{
if(ByKxD[a] == playerid)
{
SendClientMessage(playerid, 0xFFFFFFFF, "Ta posiadłość należy do Ciebie!");
return 1;
}
if(GetPlayerMoney(playerid)<PKoszt[a])
{
SendClientMessage(playerid, 0xFFFFFFFF, "Nie masz tyle pieniędzy!");
return 1;
}
if(ByKxD[a] != 348)
{
format(s, 128, "Kupiłeś posiadłość '%s' za %d$!", PNazwy[a], 2*PKoszt[a]);
SendClientMessage(playerid, 0xFFFFFFFF, s);
GivePlayerMoney(playerid, -PKoszt[a]*2);
ByKxD[a] = playerid;
}
if(ByKxD[a] == 348)
{
format(s, 128, "Kupiłeś posiadłość '%s' za %d$!", PNazwy[a], PKoszt[a]);
SendClientMessage(playerid, 0xFFFFFFFF, s);
GivePlayerMoney(playerid, -PKoszt[a]);
ByKxD[a] = playerid;
}
}
}
return 1;
}
return 0;
}
public Pikap(playerid)
{
new s[128];
for(new a = 0; a < Pickupy; a++)
{
if(PlayerToPoint(2.0, playerid, P[a][0], P[a][1], P[a][2])==1)
{
if(Pickup[playerid][a] == false)
{
if(ByKxD[a] != 348)
{
format(s, 128, "Witaj w '%s'! Wpisz /kup, aby kupić tą posiadłość za %d$", PNazwy[a], 2*PKoszt[a]);
SendClientMessage(playerid, 0xFFFFFFFF, s);
format(s, 128, "Posiadłość należy do %s", Nazwa(ByKxD[a]));
SendClientMessage(playerid, 0xFFFFFFFF, s);
}
else if(ByKxD[a] == 348)
{
format(s, 128, "Witaj w '%s'! Wpisz /kup, aby kupić tą posiadłość za %d$", PNazwy[a], PKoszt[a]);
SendClientMessage(playerid, 0xFFFFFFFF, s);
}
}
Pickup[playerid][a] = true;
}
else if(PlayerToPoint(2.0, playerid, P[a][0], P[a][1], P[a][2])==0)
{
Pickup[playerid][a] = false;
}
}
return 1;
}
public WyplataXD(playerid)
{
for(new a = 0; a < Pickupy; a++)
{
if(ByKxD[a] == playerid)
{
GivePlayerMoney(playerid, PWyplaty[a]);
}
}
return 1;
}
stock CreatePickups() {
for(new a = 0; a < Pickupy; a++)
{
CreatePickup(1273, 1, P[a][0], P[a][1], P[a][2]);
}
return 0;
}
stock PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
if(IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
//printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
}
return 0;
}
stock Nazwa(playerid)
{
new n[24];
GetPlayerName(playerid, n, 24);
return n;
}