Detaljan opis problema:Napravio sam sistem govornica kada igrac dodje u blizini govnornice da moze kucati /govornica i da zove nekog,sad imam jedan mali problemcic a zaboravio sam kako se to pravi jer sam dugo vremena skriptao neke druge stvari pa sam osnovno zaboravio.Pa ako moze neko da mi napravi kad igrac kuca /govornica i kad sa nekim da samo moze pricati ako je na mjestu gdje je govornica,a kod mene kad kucas /govornica kad nekog nazoves mozes tracati po cijelom gradu ne moras biti na govornici..
Nesto za dodati:Kod
CMD:govornica(playerid, params[])
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid, 3,1463.9500,-1011.4076,26.8438))
if(IsPlayerInRangeOfPoint(playerid, 3,1350.18433, -1271.44348, 13.04100))
if(IsPlayerInRangeOfPoint(playerid, 3,1390.92114, -1417.26001, 13.23020))
if(IsPlayerInRangeOfPoint(playerid, 3,1539.28430, -1699.58960, 13.20550))
if(IsPlayerInRangeOfPoint(playerid, 3,1185.69629, -1341.86548, 13.22210))
if(IsPlayerInRangeOfPoint(playerid, 3,1225.77539, -922.82501, 42.53040))
if(IsPlayerInRangeOfPoint(playerid, 3,1024.72864, -944.39618, 42.22520))
if(PlayerInfo == 1) return SCM(playerid, TEAM_CYAN_COLOR, "Ne mozete da pricate ucutkani ste");
if(PlayerInfo == 0) return SCM(playerid, COLOR_GRAD2, "Nemate karticu za govornicu, kupite je na trafici...");
new string,sendername,phonenumb,giveplayerid;
GetPlayerName(playerid, sendername,sizeof(sendername));
if(sscanf(params,"d",phonenumb))
{
SCM(playerid, COLOR_GRAD2, "Koriscenje: /govornica ");
SCM(playerid, COLOR_GRAD2, "SAVJET: /calllist (za listu vaznih brojeva)");
return 1;
}
format(string, sizeof(string), "* %s dize slusalicu i poziva nekog.", sendername);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USECELLPHONE);
ProxDetector(30.0, playerid, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
if(phonenumb == 115)
{
SCM(playerid, COLOR_GREEN, "____________Brojevi Servisa____________");
SCM(playerid, COLOR_WHITE, "111 - Picerija, 222 - Autobuska stanica");
SCM(playerid, COLOR_WHITE, "103 - Hitna pomoc, 444 - Taxi, 555 - Mehanicari");
SCM(playerid, COLOR_WHITE, "150 - RTS");
SCM(playerid, COLOR_GREEN, "____________________________________________");
return 1;
}
if(phonenumb == 111)
{
new pizzaworkers = 0;
foreach(Player, i)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo == 17 && JobDuty == 1)
{
pizzaworkers++;
}
}
}
if(PlayerInfo < 30)
{
SCM(playerid, COLOR_RED, "Nemate dovoljno kredita na vasoj kartici.");
SCM(playerid, COLOR_RED, "Nadopunite vas kredit na najblizoj trafici.");
return 1;
}
if(pizzaworkers < 1)
{
SCM(playerid, TEAM_GROVE_COLOR, "** Javili su se.");
SCM(playerid, 0xF4E19FAA, "Muski glas kaze (telefon): Trebate pizzu.");
SCM(playerid, 0xF4E19FAA, "Muski glas kaze (telefon): Zao nam je, nemamo ni jednog radnika na duznosti trenutno.");
SCM(playerid, 0xF4E19FAA, "Muski glas kaze (telefon): Pozovite kasnije.");
SCM(playerid, TEAM_CYAN_COLOR, "** Prekinuli su.");
return 1;
}
format(string, sizeof(string), "** %s zeli Pizzu (koristi /accept Pizza da prihvatite)", sendername);
SendJobMessage(17, COLOR_WHITE, string);
SCM(playerid, TEAM_GROVE_COLOR, "** Javili su se.");
SCM(playerid, 0xF4E19DAA, "Muski glas kaze (telefon): Trebate pizzu");
if(pizzaworkers == 1) { format(string, sizeof(string), "Muski glas kaze (telefon): Raznosac pizze je obavijesten o vasem pozivu."); }
else { format(string, sizeof(string), "Muski glas kaze (telefon): Trenutno imamo %d pizza radnika na duznosti, obavijesteni su o vasem pozivu !", pizzaworkers); }
SCM(playerid, 0xF4E19DAA, string);
SCM(playerid, TEAM_CYAN_COLOR, "** Prekinuli su.");
PizzaCall = playerid;
PlayerInfo -= 30;
new kred = PlayerInfo
format(string, sizeof(string), "Trenutno stanje na vasem racunu je %d$.",kred);
SCM(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
if(phonenumb == 222)
{
new routezonecheck = IsInBusrouteZone(playerid);
new drivercount = 0;
if(PlayerInfo < 10)
{
SCM(playerid, COLOR_RED, "Nemate dovoljno kredita na vasoj kartici.");
SCM(playerid, COLOR_RED, "Nadopunite vas kredit na najblizoj trafici.");
return 1;
}
if(routezonecheck == 0)
{
foreach(Player, i)
{
if(IsPlayerConnected(i) && BusrouteEast != 0) drivercount++;
}
if(drivercount != 0)
{
format(string, sizeof(string), "Trenutno imaju %d Vozaca Autobusa na istocnoj ruti. Slijedeca ruta:", drivercount);
SCM(playerid, COLOR_WHITE, string);
SendBusRoute(playerid, 0);
}
else SCM(playerid, COLOR_GREY, "Trenutno nema Vozaca Autobusa na istocnoj ruti.");
}
else if(routezonecheck == 1)
{
foreach(Player, i)
{
if(IsPlayerConnected(i) && BusrouteWest != 0) drivercount++;
}
if(drivercount != 0)
{
format(string, sizeof(string), "Trenutno imaju %d Vozaca Autobusa na zapadnoj ruti. Slijedeca ruta:", drivercount);
SCM(playerid, COLOR_WHITE, string);
SendBusRoute(playerid, 1);
PlayerInfo -= 10;
new kred = PlayerInfo
format(string, sizeof(string), "Trenutno stanje na vasem racunu je %d$.",kred);
SCM(playerid, TEAM_GROVE_COLOR, string);
}
else SCM(playerid, COLOR_GREY, "Trenutno nema Vozaca Autobusa na zapadnoj ruti.");
}
else SCM(playerid, COLOR_GREY, "Nema autobusa na ovoj liniji trenutno.");
return 1;
}
if(phonenumb == 103)
{
if(Medics < 1)
{
SCM(playerid, COLOR_GREY, "** Zao nam je, nemamo ni jednog Bolnicara na duznosti trenutno.");
SCM(playerid, COLOR_GREY, "** Pozovite ponovo za par sekundi");
return 1;
}
format(string, sizeof(string), "** %s treba pomoc. (koristi /accept medic da prihvatite)", sendername);
SendRadioMessage(4, TEAM_AZTECAS_COLOR, string);
SCM(playerid, COLOR_LIGHTGREEN, "* Pozvali ste Hitnu Pomoc ostanite gdje jeste.");
MedicCall = playerid;
return 1;
}
if(phonenumb == 444)
{
if(PlayerInfo < 30)
{
SCM(playerid, COLOR_RED, "Nemate dovoljno kredita na vasoj kartici..");
SCM(playerid, COLOR_RED, "Nadopunite vas kredit na najblizoj trafici.");
return 1;
}
if(TaxiDrivers < 1)
{
SCM(playerid, COLOR_GREY, "** Zao nam je, nemamo ni jednog Taxi vozaca na duznosti trenutno.");
SCM(playerid, COLOR_GREY, "** Pozovite ponovo za par sekundi");
return 1;
}
if(TransportDuty > 0)
{
SCM(playerid, COLOR_GREY, "** Vi ne možete pozvati taksi sada !");
return 1;
}
format(string, sizeof(string), "** %s je pozvao Taksi. (koristi /accept taxi da prihvatite poziv)", sendername);
SendJobMessage(13, TEAM_AZTECAS_COLOR, string);
SCM(playerid, TEAM_GROVE_COLOR, "** Javili su se.");
SCM(playerid, 0xF4E19FAA, "Muski glas kaze (telefon): Svi taksi vozaci su obavijesteni o vasem pozivu.");
SCM(playerid, 0xF4E19FAA, "Muski glas kaze (telefon): Pricekajte malo taksi brzo ce doci.");
SCM(playerid, TEAM_CYAN_COLOR, "** Prekinuli su.");
TaxiCall = playerid;
PlayerInfo -= 30;
new kred = PlayerInfo
format(string, sizeof(string), "Trenutno stanje na vasem racunu je %d$.",kred);
SCM(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
if(phonenumb == 555)
{
new mechanicworkers = 0;
foreach(Player, i)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo == 7 && JobDuty == 1)
{
mechanicworkers++;
}
}
}
if(PlayerInfo < 10)
{
SCM(playerid, COLOR_RED, "Nemate dovoljno kredita na vasoj kartici.");
SCM(playerid, COLOR_RED, "Nadopunite vas kredit na najblizoj trafici.");
return 1;
}
if(mechanicworkers < 1)
{
SCM(playerid, TEAM_GROVE_COLOR, "** Javili su se.");
SCM(playerid, 0xBBE1F2AA, "Muski glas kaze (telefon): Izvinite trenutno nemamo slobodnih mehanicara.");
SCM(playerid, TEAM_CYAN_COLOR, "** Prekinuli su.");
return 1;
}
format(string, sizeof(string), "** %s treba Automehanicara. (koristi /accept mechanic da prihvatite poziv)", sendername);
SendJobMessage(7, COLOR_WHITE, string);
SCM(playerid, TEAM_GROVE_COLOR, "** Javili su se.");
SCM(playerid, 0xBBE1F2AA, "Muski glas kaze (telefon): Svi Automehanicari su obavijesteni o vasem pozivu.");
SCM(playerid, 0xF4E19FAA, "Muski glas kaze (telefon): Pricekajte malo taksi brzo ce doci.");
SCM(playerid, TEAM_CYAN_COLOR, "** Prekinuli su.");
MechanicCall = playerid;
PlayerInfo -= 10;
new kred = PlayerInfo
format(string, sizeof(string), "Trenutno stanje na vasem racunu je %d$.",kred);
SCM(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
if(phonenumb == 150)
{
if(PlayerInfo < 30)
{
SCM(playerid, COLOR_RED, "Nemate dovoljno kredita na vasoj kartici.");
SCM(playerid, COLOR_RED, "Nadopunite vas kredit na najblizoj trafici.");
return 1;
}
SCM(playerid, COLOR_WHITE, "SAVJET: Sada mozete pricati. Koriscenje: T /hangup da prekinete");
SCM(playerid, COLOR_GREEN, "RTS: Molimo ostavite poruku nakon Beep-a!");
SCM(playerid, COLOR_WHITE, "Beep!");
Mobile = 3900;
PlayerInfo -= 30;
new kred = PlayerInfo
format(string, sizeof(string), "Trenutno stanje na vasem racunu je %d$.",kred);
SCM(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
if(phonenumb == 911)
{
SCM(playerid, TEAM_GROVE_COLOR, "Sada mozete pricati. Koriscenje: T /hangup da prekinete");
SCM(playerid, COLOR_BLUE, "HITNA: Koji vam je potrebna usluga, policija ili bolniÄar?");
Mobile = 911;
return 1;
}
if(phonenumb == PlayerInfo)
{
SCM(playerid, TEAM_CYAN_COLOR, "** Nemozete nazavit samog sebe...");
return 1;
}
if(Mobile != 255)
{
SCM(playerid, TEAM_CYAN_COLOR, "** Vec ucestvujete u jednog razgovoru...");
return 1;
}
if(PlayerInfo < 10)
{
SCM(playerid, COLOR_RED, "Nemate dovoljno kredita na vasoj kartici.");
SCM(playerid, COLOR_RED, "Nadopunite vas kredit na najblizoj trafici.");
return 1;
}
foreach(Player, i)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo == phonenumb && phonenumb != 0)
{
giveplayerid = i;
Mobile = giveplayerid; //caller connecting
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PhoneOnline > 0)
{
SCM(playerid, COLOR_GREY, "** Pozvani korisnik trenutno nije dostupan ili je iskljucio telefon.");
return 1;
}
if(Mobile == 255)
{
format(string, sizeof(string), "Vas mobilni telefon zvoni, kucajte (/pickup) da bi se javili CallerID: %s", sendername);
SCM(giveplayerid, COLOR_LIGHTGREEN, string);
GetPlayerName(giveplayerid, sendername, sizeof(sendername));
RingTone = 10;
format(string, sizeof(string), "* %s's telefon zvoni.", sendername);
SCM(playerid, COLOR_WHITE, "SAVJET: Koristite T da bi pricali preko telefona, kucajte /hangup da bi prekinuli.");
ProxDetector(30.0, i, string, COLOR_CHAT1,COLOR_CHAT2,COLOR_CHAT3,COLOR_CHAT4,COLOR_CHAT5);
CellTime = 1;
return 1;
}
}
}
}
}
SCM(playerid, TEAM_CYAN_COLOR, "** Birate nepostojeci broj, pozovite sluzbu...");
}
return 1;
}