All pastes #1408822 Raw Edit

Mine

public text v1 · immutable
#1408822 ·published 2009-04-30 20:11 UTC
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;
}