Ok how can i make a /enter dialog i ready made me a /buy but not enter please tell me
Код:
if(strcmp(cmd, "/enter", true) == 0)
{
if(IsPlayerConnected(playerid))
{
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
{
//printf("Found House :%d",i);
if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0)
{
SetPlayerInterior(playerid,HouseInfo[i][hInt]);
SetPlayerVirtualWorld(playerid,HouseInfo[i][hWorld]);
SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
GameTextForPlayer(playerid, "~w~Welcome Home", 5000, 1);
PlayerInfo[playerid][pInt] = HouseInfo[i][hInt];
PlayerInfo[playerid][pLocal] = i;
HouseEntered[playerid] = i;
}
else
{
GameTextForPlayer(playerid, "~r~Locked", 5000, 1);
}
}
}
for(new i = 0; i < sizeof(BizzInfo); i++)
{
if (PlayerToPoint(3, playerid,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ]))
{
//printf("Found House :%d",i);
if(!IsACop(playerid) && i == 3)
{
SendClientMessage(playerid, COLOR_GREY, " Cops only !");
return 1;
}
if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= BizzInfo[i][bEntranceCost])
{
if(PlayerInfo[playerid][pPbiskey] != i)
{
if(BizzInfo[i][bLocked] == 1)
{
GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
return 1;
}
if(BizzInfo[i][bProducts] == 0)
{
GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
return 1;
}
SafeGivePlayerMoney(playerid,-BizzInfo[i][bEntranceCost]);
format(string, sizeof(string), "~r~-$%d~n~~w~type /exit~n~to get out", BizzInfo[i][bEntranceCost]);
BizzInfo[i][bTill] += BizzInfo[i][bEntranceCost];
ExtortionBiz(i, BizzInfo[i][bEntranceCost]);
BizzInfo[i][bProducts]--;
OnPropUpdate();
GameTextForPlayer(playerid, string, 5000, 3);
}
SetPlayerInterior(playerid,BizzInfo[i][bInterior]);
SetPlayerPos(playerid,BizzInfo[i][bExitX],BizzInfo[i][bExitY],BizzInfo[i][bExitZ]);
PlayerInfo[playerid][pInt] = BizzInfo[i][bInterior];
PlayerInfo[playerid][pLocal] = i+99;
new dood[MAX_PLAYER_NAME];
GetPlayerName(playerid, dood, sizeof(dood));
format(string, sizeof(string), "%s payed $%d to enter biz %d", dood, BizzInfo[i][bEntranceCost], i);
printf("%s", string);
PayLog(string);
//PlayerInfo[playerid][pLocal] = i;
}
else
{
GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
}
}
}
for(new i = 0; i < sizeof(SBizzInfo); i++)
{
if (PlayerToPoint(3, playerid,SBizzInfo[i][sbEntranceX], SBizzInfo[i][sbEntranceY], SBizzInfo[i][sbEntranceZ]))
{
if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= SBizzInfo[i][sbEntranceCost])
{
if(PlayerInfo[playerid][pPbiskey] != i)
{
if(SBizzInfo[i][sbLocked] == 1)
{
GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
return 1;
}
if(SBizzInfo[i][sbProducts] == 0)
{
GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
return 1;
}
if(i == 10)
{
PaintballPlayers ++;
PlayerPaintballing[playerid] = 1;
new rand = random(sizeof(PaintballSpawns));
SetPlayerPos(playerid, PaintballSpawns[rand][0], PaintballSpawns[rand][1], PaintballSpawns[rand][2]);
TogglePlayerControllable(playerid, 0);
}
else if(i == 11)
{
PlayerKarting[playerid] = 1;
SendClientMessage(playerid, TEAM_GROVE_COLOR, "You can now parcipitate in a Karting Race, grab a Kart.");
}
else
{
return 1;
}
SafeGivePlayerMoney(playerid,-SBizzInfo[i][sbEntranceCost]);
gSpentCash[playerid] = GetPlayerMoney(playerid);
SBizzInfo[i][sbProducts]--;
SBizzInfo[i][sbTill] += SBizzInfo[i][sbEntranceCost];
ExtortionSBiz(i, SBizzInfo[i][sbEntranceCost]);
new dood[MAX_PLAYER_NAME];
GetPlayerName(playerid, dood, sizeof(dood));
format(string, sizeof(string), "%s payed $%d to enter sbiz %d", dood, SBizzInfo[i][sbEntranceCost], i);
printf("%s", string);
PayLog(string);
OnPropUpdate();
}
}
else
{
GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
}
}
}
if (PlayerToPoint(3.0, playerid,2695.6235,-1704.6960,11.8438))
{
GameTextForPlayer(playerid, "~w~Welcome to the 8ball Track", 5000, 1);
SetPlayerInterior(playerid,7);
PlayerInfo[playerid][pInt] = 7;
SetPlayerPos(playerid,-1404.5299,-259.0602,1043.6563);
}
if (PlayerToPoint(3.0, playerid,725.3539,-1276.4338,13.6484))
{
if (PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6)
{
GameTextForPlayer(playerid, "~w~TheCrimsons HQ", 5000, 1);
SetPlayerInterior(playerid,5);
PlayerInfo[playerid][pInt] = 5;
SetPlayerPos(playerid,1278.0051,-782.0831,1089.9375);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " You are not a Crimison Member to enter the hq !");
return 1;
}
}
if (PlayerToPoint(3.0, playerid,1797.5171,-1579.3662,14.0893))
{
GameTextForPlayer(playerid, "~w~LSPD Prison", 5000, 1);
SetPlayerInterior(playerid,3);
PlayerInfo[playerid][pInt] = 3;
SetPlayerPos(playerid,288.7287,168.5377,1007.1719);
}
if (PlayerToPoint(3.0, playerid,2244.3423,-1665.5542,15.4766))
{
GameTextForPlayer(playerid, "~w~Welcome to Bincos Clothes shop", 5000, 1);
SetPlayerInterior(playerid,15);
PlayerInfo[playerid][pInt] = 15;
SetPlayerPos(playerid,207.7336,-108.6231,1005.1328);
}
if (PlayerToPoint(3.0, playerid,1554.9537,-1675.6584,16.1953))
{
GameTextForPlayer(playerid, "~b~LSPD HeadQuarters", 5000, 1);
SetPlayerInterior(playerid,6);
PlayerInfo[playerid][pInt] = 6;
SetPlayerPos(playerid,246.7079,66.2239,1003.6406);
}
if (PlayerToPoint(3.0, playerid,1352.1194,-1759.2534,13.5078))
{
GameTextForPlayer(playerid, "~y~24-7", 5000, 1);
SetPlayerInterior(playerid,6);
PlayerInfo[playerid][pInt] = 6;
SetPlayerPos(playerid,-26.6916,-55.7149,1003.5469);
}
else if (PlayerToPoint(8.0, playerid,-2111.5686,-443.9720,38.7344))
{
GameTextForPlayer(playerid, "~w~Welcome to the Dirt Track", 5000, 1);
SetPlayerInterior(playerid,4);
PlayerInfo[playerid][pInt] = 4;
SetPlayerPos(playerid,-1443.0554,-581.1879,1055.0472);
}
else if (PlayerToPoint(8.0, playerid,-2080.3079,-406.0309,38.7344))
{
GameTextForPlayer(playerid, "~w~Welcome to the Stunting Track", 5000, 1);
SetPlayerInterior(playerid,14);
PlayerInfo[playerid][pInt] = 14;
SetPlayerPos(playerid,-1464.7732,1557.5533,1052.5313);
}
else if (PlayerToPoint(8.0, playerid,1073.0094,-345.4233,73.9922))
{
GameTextForPlayer(playerid, "~w~Welcome to HitManHQ", 5000, 1);
SetPlayerInterior(playerid,11);
PlayerInfo[playerid][pInt] = 11;
SetPlayerPos(playerid,501.980987,-69.150199,998.757812);
}
else if (PlayerToPoint(4, playerid,2073.2979,-1831.1228,13.5469))
{ // Pay & Spray
if(GetPlayerState(playerid) == 2)
{
if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
{
if(SBizzInfo[5][sbProducts] > 0)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2062.1294,-1831.5498,13.5469);
SetVehicleZAngle(tmpcar, 90);
SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
SBizzInfo[5][sbProducts]--;
SetTimerEx("AfterSpray1", 5000, false, "i", playerid);
}
else
{
GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
}
}
}
else if (PlayerToPoint(4, playerid,1024.9756,-1030.7930,32.0257))
{ // Pay & Spray
if(GetPlayerState(playerid) == 2)
{
if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
{
if(SBizzInfo[5][sbProducts] > 0)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 1024.9763,-1021.8850,32.1016);
SetVehicleZAngle(tmpcar, 0);
SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
SBizzInfo[5][sbProducts]--;
SetTimerEx("AfterSpray2", 5000, false, "i", playerid);
}
else
{
GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
}
}
}
else if (PlayerToPoint(4, playerid,488.3819,-1733.0563,11.1752))
{ // Pay & Spray
if(GetPlayerState(playerid) == 2)
{
if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
{
if(SBizzInfo[5][sbProducts] > 0)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 487.4099,-1741.4585,11.1330);
SetVehicleZAngle(tmpcar, 180);
SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
SBizzInfo[5][sbProducts]--;
SetTimerEx("AfterSpray3", 5000, false, "i", playerid);
}
else
{
GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
}
}
}
else if (PlayerToPoint(4, playerid,719.8940,-464.8272,16.3359))
{ // Pay & Spray
if(GetPlayerState(playerid) == 2)
{
if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
{
if(SBizzInfo[5][sbProducts] > 0)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 720.3924,-456.0286,16.3359);
SetVehicleZAngle(tmpcar, 0);
SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
SBizzInfo[5][sbProducts]--;
SetTimerEx("AfterSpray4", 5000, false, "i", playerid);
}
else
{
GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
}
}
}
}
return 1;
}
Hmmm, you want the dialog to come up when the player types /enter, or when he walks into the area?
If you did it already it should be pretty easy.
Is were you create it, or at least thats were I would do it. If you've already done it then it should be a breeze. Same thing, just instead of /buy and setting stats. If the person clicks enter, then you do the following.