pawn Код:
// if(strcmp(cmd, "/entra", true) == 0)
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) {
if(newkeys & KEY_SECONDARY_ATTACK) {
for(new i = 0; i < sizeof(Houses); i++)
{
if (PlayerToPoint(1.0, playerid,Houses[i][EnterX], Houses[i][EnterY], Houses[i][EnterZ]))
{
//if(GetPlayerVirtualWorld(playerid) == Houses[i][EnterWorldщ])
//{
if(PlayerInfo[playerid][pHouseKey] == i || Houses[i][Locked] == 0 || PlayerInfo[playerid][pAdmin] >= 1)
{
PlayerActionMessage(playerid,15.0,"apre la porta ed entra.");
SetPlayerInterior(playerid,Houses[i][ExitInterior]);
SetPlayerPos(playerid,Houses[i][ExitX],Houses[i][ExitY],Houses[i][ExitZ]);
SetPlayerVirtualWorld(playerid,i);
SetPlayerFacingAngle(playerid,Houses[i][ExitAngle]);
}
else
{
GameTextForPlayer(playerid, "~r~Chiuso", 5000, 1);
}
//}
}
}
for(new i = 0; i < sizeof(Building); i++)
{
if (PlayerToPoint(1.0, playerid,Building[i][EnterX], Building[i][EnterY], Building[i][EnterZ]))
{
if(GetPlayerVirtualWorld(playerid) == Building[i][EnterWorld])
{
if(Building[i][Locked] == 0 || PlayerInfo[playerid][pAdmin] >= 1)
{
if(GetPlayerCash(playerid) >= Building[i][EntranceFee])
{
PlayerActionMessage(playerid,15.0,"apre la porta ed entra.");
SetPlayerInterior(playerid,Building[i][ExitInterior]);
SetPlayerVirtualWorld(playerid,i);
SetPlayerPos(playerid,Building[i][ExitX],Building[i][ExitY],Building[i][ExitZ]);
SetPlayerFacingAngle(playerid,Building[i][ExitAngle]);
GivePlayerCash(playerid,-Building[i][EntranceFee]);
}
else
{
PlayerActionMessage(playerid,15.0,"apre la porta ed entra.");
SetPlayerInterior(playerid,Building[i][ExitInterior]);
SetPlayerVirtualWorld(playerid,i);
SetPlayerPos(playerid,Building[i][ExitX],Building[i][ExitY],Building[i][ExitZ]);
SetPlayerFacingAngle(playerid,Building[i][ExitAngle]);
}
}
else
{
GameTextForPlayer(playerid, "~r~Chiuso", 5000, 1);
}
}
}
}
for(new i = 0; i < sizeof(Businesses); i++)
{
if (PlayerToPoint(1.0, playerid,Businesses[i][EnterX], Businesses[i][EnterY], Businesses[i][EnterZ]))
{
if(GetPlayerVirtualWorld(playerid) == Businesses[i][EnterWorld])
{
if(PlayerInfo[playerid][pBizKey] == i || GetPlayerCash(playerid) >= Businesses[i][EntranceCost])
{
if(PlayerInfo[playerid][pBizKey] != i)
{
if(Businesses[i][Locked] == 1 && PlayerInfo[playerid][pAdmin] == 0)
{
GameTextForPlayer(playerid, "~r~Business Chiuso.", 5000, 1);
return 1;
}
if(Businesses[i][Products] == 0)
{
GameTextForPlayer(playerid, "~r~Non ci sono prodotti.", 5000, 1);
return 1;
}
new businesstype[126];
if(Businesses[i][BizType] == 1) { businesstype = "[INFO] Comandi disponibili: /mangia"; }
else if(Businesses[i][BizType] == 2) { businesstype = "[INFO] Comandi disponibili: /compracellulare"; }
else if(Businesses[i][BizType] == 3) { businesstype = "[INFO] Comandi disponibili: /compra"; }
else if(Businesses[i][BizType] == 4) { businesstype = "[INFO] Comandi disponibili: /compraarma"; }
else if(Businesses[i][BizType] == 5) { businesstype = "[INFO] Comandi disponibili: /pub"; }
else if(Businesses[i][BizType] == 6) { businesstype = "[INFO] Comandi disponibili: /vestiti"; }
else if(Businesses[i][BizType] == 7) { businesstype = "[INFO] Comandi disponibili: /bere"; }
else if(Businesses[i][BizType] == 12) { businesstype = "[INFO] Comandi disponibili: /comprapc - /installamsn - /installaantivirus"; }
else if(Businesses[i][BizType] == 13) { businesstype = "[INFO] Comandi disponibili: /assicura"; }
PlayerActionMessage(playerid,15.0,"apre la porta ed entra.");
GivePlayerCash(playerid,-Businesses[i][EntranceCost]);
format(string, sizeof(string), "[INFO:] Hai pagato $%d per entrare in %s.", Businesses[i][EntranceCost],Businesses[i][BusinessName]);
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,string);
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,businesstype);
Businesses[i][Till] += Businesses[i][EntranceCost];
Businesses[i][Products]--;
SetPlayerInterior(playerid,Businesses[i][ExitInterior]);
SetPlayerPos(playerid,Businesses[i][ExitX],Businesses[i][ExitY],Businesses[i][ExitZ]);
SetPlayerVirtualWorld(playerid,i);
SetPlayerFacingAngle(playerid,Businesses[i][ExitAngle]);
if(Businesses[i][BizType] == 8)
{
PlayerActionMessage(playerid,15.0,"apre la porta ed entra.");
SoftAirPlayers ++;
SetPlayerVirtualWorld(playerid,0);
PlayerSoftAiring[playerid] = 1;
SetPlayerInterior(playerid,10);
new rand = random(sizeof(SoftAirSpawns));
SetPlayerPos(playerid, SoftAirSpawns[rand][0], SoftAirSpawns[rand][1], SoftAirSpawns[rand][2]);
TogglePlayerControllable(playerid, 0);
}
if(Businesses[i][BizType] == 9)
{
PlayerKarting[playerid] = 1;
SendClientMessage(playerid, COLOR_GREEN, "Puoi adesso partecipare alla Kart Race. Prendi un Kart");
SetPlayerInterior(playerid,Businesses[i][EnterInterior]);
SetPlayerVirtualWorld(playerid,Businesses[i][EnterWorld]);
SetPlayerPos(playerid,Businesses[i][EnterX],Businesses[i][EnterY],Businesses[i][EnterZ]);
SetPlayerFacingAngle(playerid,Businesses[i][EnterAngle]);
}
SaveBusinesses();
}
else
{
new businesstype[126];
if(Businesses[i][BizType] == 1) { businesstype = "[INFO] Comandi disponibili: /mangia"; }
else if(Businesses[i][BizType] == 2) { businesstype = "[INFO] Comandi disponibili: /compracellulare"; }
else if(Businesses[i][BizType] == 3) { businesstype = "[INFO] Comandi disponibili: /compra"; }
else if(Businesses[i][BizType] == 4) { businesstype = "[INFO] Comandi disponibili: /compraarma"; }
else if(Businesses[i][BizType] == 5) { businesstype = "[INFO] Comandi disponibili: /pub"; }
else if(Businesses[i][BizType] == 6) { businesstype = "[INFO] Comandi disponibili: /vestiti"; }
else if(Businesses[i][BizType] == 7) { businesstype = "[INFO] Comandi disponibili: /bere"; }
else if(Businesses[i][BizType] == 12) { businesstype = "[INFO] Comandi disponibili: /comprapc - /installamsn - /installaantivirus"; }
PlayerActionMessage(playerid,15.0,"apre la porta ed entra.");
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"[INFO:] Entrata Free per il proprietario.");
SendClientMessage(playerid,COLOR_LIGHTYELLOW2, businesstype);
SetPlayerInterior(playerid,Businesses[i][ExitInterior]);
SetPlayerPos(playerid,Businesses[i][ExitX],Businesses[i][ExitY],Businesses[i][ExitZ]);
SetPlayerVirtualWorld(playerid,i);
SetPlayerFacingAngle(playerid,Businesses[i][ExitAngle]);
if(Businesses[i][BizType] == 8)
{
SoftAirPlayers ++;
SetPlayerVirtualWorld(playerid,0);
PlayerSoftAiring[playerid] = 1;
SetPlayerInterior(playerid,10);
new rand = random(sizeof(SoftAirSpawns));
SetPlayerPos(playerid, SoftAirSpawns[rand][0], SoftAirSpawns[rand][1], SoftAirSpawns[rand][2]);
TogglePlayerControllable(playerid, 0);
}
if(Businesses[i][BizType] == 9)
{
PlayerKarting[playerid] = 1;
SendClientMessage(playerid, COLOR_GREEN, "Puoi adesso partecipare alla Kart Race. Prendi un Kart");
SetPlayerInterior(playerid,Businesses[i][EnterInterior]);
SetPlayerVirtualWorld(playerid,Businesses[i][EnterWorld]);
SetPlayerPos(playerid,Businesses[i][EnterX],Businesses[i][EnterY],Businesses[i][EnterZ]);
SetPlayerFacingAngle(playerid,Businesses[i][EnterAngle]);
}
}
}
else
{
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"[ERRORE:] Non hai abbastanza soldi per entrare!");
}
}
}
}
return 1;
}