Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ////////////////////////////////gReeDy's House System///////////////////////////////
- #include <a_samp>
- #include <sscanf2>
- #include <foreach>
- #include <YSI\y_commands>
- #include <YSI\y_ini>
- /////////////////////////////////////////////////////////
- //Da bi vam fs radila potrebni su gore ovi includovi
- //Da bi vam fs radila morate napraviti u scriptfiles
- //folder Igraci i Kuce
- //FS je u beta fazi tako da su bugovi moguci
- /////////////////////////////////////////////////////////
- #define BELA "{FFFFFF}"
- #define ZELENA "{0ed400}"
- #define CRVENA "{F81414}"
- #define ZUTA "{F3FF02}"
- #define SPLAVA "{00C0FF}"
- #define SIVA "{C0C0C0}"
- ////////////////////////////////////////////////////////
- #define SCM SendClientMessage
- #define SPD ShowPlayerDialog
- ////////////////////////////////////////////////////////
- #define KUCE_FILE "Kuce/%d.ini"
- #define IGRAC_FILE "Igraci/%s.ini"
- #define DIALOG_KUCA 321
- #define DIALOG_OKNOVAC 323
- #define DIALOG_UKNOVAC 325
- #define DIALOG_IKUCA 327
- #define DIALOG_KRENT 330
- #define MAX_KUCA 1500
- ///////////////////////////////////////////////////////
- enum Kuce
- {
- kProveraVlasnika,
- kVlasnik[45],
- kVrsta[35],
- kIme[60],
- Float:kUlazX,
- Float:kUlazY,
- Float:kUlazZ,
- Float:kIzlazX,
- Float:kIzlazY,
- Float:kIzlazZ,
- kLevel,
- kCena,
- kNovac,
- kInt,
- kZatvoreno,
- kVW,
- kOruzije,
- kMunicija,
- kRent,
- kCenaRenta,
- kZvono
- };
- new KucaInfo[MAX_KUCA][Kuce];
- new KucaPickup[sizeof(KucaInfo)];
- new Text3D:KucaLabel[sizeof(KucaInfo)];
- ///////////////////////////////////////////////////
- enum pInfo
- {
- pPosedovanjeKuce,
- pProveraSpawna,
- pRent
- }
- new PlayerInfo[MAX_PLAYERS][pInfo];
- ///////////////////////////////////////////////////
- public OnFilterScriptInit()
- {
- for(new idkuce = 0; idkuce < sizeof(KucaInfo); idkuce++)
- {
- new kFile[50], string[400];
- format(kFile, sizeof(kFile), KUCE_FILE, idkuce);
- if(fexist(kFile))
- {
- INI_ParseFile(kFile, "UcitajKuce", .bExtra = true, .extra = idkuce);
- if(KucaInfo[idkuce][kProveraVlasnika] == 0)
- {
- format(string,sizeof(string),""ZELENA"Kukja na prodazba!\nVrsta: "BELA"%s\n"ZELENA"Cena: "BELA"%d\n"ZELENA"Level: "BELA"%d\n"ZELENA"ID Kuce: "BELA"%d\n"ZELENA"Za da ja kupite /kupikukja",KucaInfo[idkuce][kVrsta],KucaInfo[idkuce][kCena],KucaInfo[idkuce][kLevel],idkuce);
- KucaLabel[idkuce] = Create3DTextLabel(string ,0x33CCFFAA,KucaInfo[idkuce][kUlazX],KucaInfo[idkuce][kUlazY],KucaInfo[idkuce][kUlazZ],25,0,1);
- KucaPickup[idkuce] = CreatePickup(1273, 1, KucaInfo[idkuce][kUlazX], KucaInfo[idkuce][kUlazY], KucaInfo[idkuce][kUlazZ]);
- }
- else if(KucaInfo[idkuce][kProveraVlasnika] == 1)
- {
- format(string,sizeof(string),""ZELENA"[ "BELA"%s "ZELENA"]\n"ZELENA"Gazda: "BELA"%s\n"ZELENA"Vrsta: "BELA"%s\n"ZELENA"Level: "BELA"%d\n"ZELENA"Cena: "BELA"%d\n"ZELENA"Rent: "BELA"%d\n"ZELENA"ID Kukja: "BELA"%d\n"ZELENA"'F' za vlez vo kukjata",KucaInfo[idkuce][kIme],KucaInfo[idkuce][kVlasnik],KucaInfo[idkuce][kVrsta],KucaInfo[idkuce][kLevel],KucaInfo[idkuce][kCena],KucaInfo[idkuce][kCenaRenta],idkuce);
- KucaLabel[idkuce] = Create3DTextLabel(string ,0x33CCFFAA,KucaInfo[idkuce][kUlazX],KucaInfo[idkuce][kUlazY],KucaInfo[idkuce][kUlazZ],25,0,1);
- KucaPickup[idkuce] = CreatePickup(1239, 1, KucaInfo[idkuce][kUlazX], KucaInfo[idkuce][kUlazY], KucaInfo[idkuce][kUlazZ]);
- }
- }
- }
- DisableInteriorEnterExits(); print("House System by gReeDy.aMx");
- return 1;
- }
- ///////////////////////////////////////////////////
- public OnFilterScriptExit()
- {
- for(new k = 0; k <= MAX_KUCA; k++) { SacuvajKucu(k); }
- return 1;
- }
- ///////////////////////////////////////////////////
- public OnPlayerConnect(playerid)
- {
- PlayerInfo[playerid][pProveraSpawna] = 0; PlayerInfo[playerid][pPosedovanjeKuce] = -1; PlayerInfo[playerid][pRent] = -1;
- new igraci[50]; format(igraci, sizeof(igraci), IGRAC_FILE, ImeIgraca(playerid));
- if(!fexist(igraci))
- {
- MiniRegis(playerid);
- }
- else
- {
- INI_ParseFile(igraci, "UcitavanjeIgraca", .bExtra = true, .extra = playerid);
- SCM(playerid,-1,"Ucitavanje...");
- }
- return 1;
- }
- ///////////////////////////////////////////////////
- public OnPlayerDisconnect(playerid, reason)
- {
- SacuvajIgraca(playerid);
- return 1;
- }
- ///////////////////////////////////////////////////
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if( newkeys == KEY_SECONDARY_ATTACK )
- {
- for(new i; i < MAX_KUCA; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.0, KucaInfo[i][kUlazX], KucaInfo[i][kUlazY], KucaInfo[i][kUlazZ]))
- {
- if(KucaInfo[i][kZatvoreno] == 1) return SCM(playerid,-1,""SPLAVA"[Kukja] "SIVA"Zakluceno!");
- SetPlayerVirtualWorld(playerid, KucaInfo[i][kVW]);
- SetPlayerInterior(playerid, KucaInfo[i][kInt]);
- SetPlayerPos(playerid, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ]);
- return 1;
- }
- if(IsPlayerInRangeOfPoint(playerid, 3.0, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ]) && GetPlayerVirtualWorld(playerid) == KucaInfo[i][kVW])
- {
- SetPlayerInterior(playerid, 0);
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerPos(playerid, KucaInfo[i][kUlazX], KucaInfo[i][kUlazY], KucaInfo[i][kUlazZ]);
- return 1;
- }
- }
- }
- return 1;
- }
- ///////////////////////////////////////////////////
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_KUCA)
- {
- if(!response) return 1;
- if(PlayerInfo[playerid][pPosedovanjeKuce] == -1) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Nemate kukja!");
- new i = PlayerInfo[playerid][pPosedovanjeKuce];
- switch(listitem)
- {
- case 0:
- {
- new string[256];
- SCM(playerid,-1,""ZELENA"|---------------------------------------------------------------------------------------------------|");
- format(string,sizeof(string),""SIVA"Ime Kukja: %s | Gazda: %s | Level: %d ",KucaInfo[i][kIme],KucaInfo[i][kVlasnik],KucaInfo[i][kLevel]);
- SCM(playerid,-1,string);
- format(string,sizeof(string),""SIVA"Cena: %d | ID: %d | Vrednost: %d | Oruzje: %d | Kursumi: %d",KucaInfo[i][kCena],i,KucaInfo[i][kNovac],KucaInfo[i][kOruzije],KucaInfo[i][kMunicija]);
- SCM(playerid,-1,string);
- SCM(playerid,-1,""ZELENA"|---------------------------------------------------------------------------------------------------|");
- }
- case 1:
- {
- if(KucaInfo[i][kZatvoreno] == 0) return SCM(playerid,-1,"HS | "CRVENA"Vekje e otklucena!");
- KucaInfo[i][kZatvoreno] = 0; SacuvajKucu(i);
- SCM(playerid,-1, ""ZELENA"[HS] "BELA"Kuca otkljucana!");
- }
- case 2:
- {
- if(KucaInfo[i][kZatvoreno] == 1) return SCM(playerid,-1,"HS | "CRVENA"Vekje e zaklucena!");
- KucaInfo[i][kZatvoreno] = 1; SacuvajKucu(i);
- SCM(playerid,-1, ""ZELENA"[HS] "BELA"Kukjata e zaklucena!");
- }
- case 3:
- {
- SPD(playerid,DIALOG_OKNOVAC,DIALOG_STYLE_INPUT, ""ZELENA"Ostavaete pari", ""BELA"Vnesete kolicina na pari kolku sakate da vnesete", "Ostavi", "Izlez");
- }
- case 4:
- {
- SPD(playerid,DIALOG_UKNOVAC,DIALOG_STYLE_INPUT, ""ZELENA"Podignuvanje pari", ""BELA"Vnesete kolicina na pari kolku sakate da zemete", "Zemi", "Izlez");
- }
- case 5:
- {
- if(KucaInfo[i][kOruzije] != -1) return SCM(playerid,-1,""ZUTA"Vekje imate oruzje vo kukjata!");
- if(GetPlayerWeapon(playerid) <= 0) return SCM(playerid,-1,"HS | "ZUTA"Nemas oruzje vo rakata!");
- KucaInfo[i][kOruzije] = GetPlayerWeapon(playerid); KucaInfo[i][kMunicija] = GetPlayerAmmo(playerid);
- SCM(playerid,-1,""ZUTA"Ostavili ste oruzije u kucu!"); SacuvajKucu(i); SetPlayerAmmo(playerid, GetPlayerWeapon(playerid), 0);
- }
- case 6:
- {
- if(KucaInfo[i][kOruzije] == -1) return SCM(playerid,-1,""ZUTA"Nemas oruzje vo kukjata!");
- GivePlayerWeapon(playerid,KucaInfo[i][kOruzije],KucaInfo[i][kMunicija]); KucaInfo[i][kOruzije] = -1; KucaInfo[i][kMunicija] = -1;
- SacuvajKucu(i); SCM(playerid,-1,""ZUTA"Zedovte oruzje od vasata kukja!");
- }
- case 7:
- {
- new string[60]; GivePlayerMoney(playerid,KucaInfo[i][kCena]);
- KucaInfo[i][kProveraVlasnika] = 0; KucaInfo[i][kNovac] = 0; KucaInfo[i][kOruzije] = -1; KucaInfo[i][kMunicija] = 0;
- KucaInfo[i][kZatvoreno] = 1; strmid(KucaInfo[i][kIme],"Default",0,strlen("Default"),255);
- strmid(KucaInfo[i][kVlasnik], "Niko", 0, strlen("Niko"), 255); PlayerInfo[playerid][pPosedovanjeKuce] = -1;
- SacuvajKucu(i); KuceLP(i); SacuvajIgraca(playerid);
- format(string,sizeof(string),""ZUTA"Ja prodadovte vasata kukja za %d!",KucaInfo[i][kCena]);
- SCM(playerid,-1,string);
- }
- case 8:
- {
- SPD(playerid, DIALOG_IKUCA, DIALOG_STYLE_INPUT, ""ZELENA"Kukja Ime", ""BELA"Vnesete go imeto na kukjata", "Promeni", "Izlez");
- }
- case 9:
- {
- PlayerInfo[playerid][pProveraSpawna] = 1;
- SCM(playerid,-1,""ZUTA"Odbravte spawn na vasata kukja, odsega ovde kje se respawnuvate!");
- }
- case 10:
- {
- if(KucaInfo[i][kRent] == 0)
- {
- KucaInfo[i][kRent] = 1;
- SCM(playerid,-1,""ZUTA"Odbravte rent na kukjata!");
- }
- else if(KucaInfo[i][kRent] == 1)
- {
- KucaInfo[i][kRent] = 0;
- SCM(playerid,-1,""ZUTA"Zabranivte rent na vasata kukja!");
- }
- }
- case 11:
- {
- if(KucaInfo[i][kRent] == 0) return SCM(playerid,-1,""ZUTA"Na vasata kukja zabranet e rentot, nemozete da postavuvate cena na rent!");
- SPD(playerid, DIALOG_KRENT, DIALOG_STYLE_INPUT, ""ZELENA"Cena Rent", ""BELA"Vnesete ja novata cena na rent", "Promeni", "Izlez");
- }
- case 12:
- {
- if(KucaInfo[i][kZvono] == 1) return SCM(playerid,-1,""ZUTA"Vekje imate zvonce na vasata kukja!");
- if(GetPlayerMoney(playerid) < 5000) return SCM(playerid,-1,""ZUTA"Nemate dovolno pari!");
- KucaInfo[i][kZvono] = 1; GivePlayerMoney(playerid,-5000); SCM(playerid,-1,""ZUTA"Postavivte zvonce na vasata kukja!");
- }
- }
- }
- ///////////////////////////////////////////////////
- if(dialogid == DIALOG_KRENT)
- {
- if(response)
- {
- new i = PlayerInfo[playerid][pPosedovanjeKuce],cena;
- if(sscanf(inputtext, "i", cena)) return SPD(playerid, DIALOG_KRENT, DIALOG_STYLE_INPUT, ""ZELENA"Cena Rent", ""BELA"Vnesete cena na rent", "Promeni", "Izlez");
- if(cena < 1 || cena > 1000) return SCM(playerid,-1,""ZUTA"Cenata nemoze da bide pomala od 1 ili pogolema od 1000!");
- KucaInfo[i][kCenaRenta] = cena; SacuvajKucu(i); KuceLP(i); SCM(playerid,-1,""ZUTA"Ja promenivte cenata na rentot!");
- }
- }
- ///////////////////////////////////////////////////
- if(dialogid == DIALOG_OKNOVAC)
- {
- if(PlayerInfo[playerid][pPosedovanjeKuce] == -1) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Nemate kukja!");
- new i = PlayerInfo[playerid][pPosedovanjeKuce];
- if(response)
- {
- new iznos,string[256];
- if(sscanf(inputtext, "i", iznos)) return SPD(playerid,DIALOG_OKNOVAC,DIALOG_STYLE_INPUT, ""ZELENA"Ostavanje pari", ""BELA"Vnesete kolicina kolku pari sakate da ostavite", "Ostavi", "Izlez");
- if(iznos > GetPlayerMoney(playerid)) return SCM(playerid,-1,"Nemate tolku pari!");
- if(iznos < 1 || iznos > 50000) return SCM(playerid,-1,"Iznosot nemoze da bide pomal od 1 ni pogolem od 50000!");
- KucaInfo[i][kNovac] += iznos; GivePlayerMoney(playerid, -iznos); SacuvajKucu(i);
- format(string,sizeof(string),"HS | "ZELENA"Ostavivte vo vasata kukja %d$!",iznos);
- SCM(playerid,-1,string);
- }
- }
- //////////////////////////////////////////////////
- if(dialogid == DIALOG_UKNOVAC)
- {
- if(PlayerInfo[playerid][pPosedovanjeKuce] == -1) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Nemate kukja!");
- new i = PlayerInfo[playerid][pPosedovanjeKuce];
- if(response)
- {
- new iznos,string[256];
- if(sscanf(inputtext, "i", iznos)) return SPD(playerid,DIALOG_UKNOVAC,DIALOG_STYLE_INPUT, ""ZELENA"Podignuvanje pari", ""BELA"Vnesete kolicina kolku pari sakate da zemete", "Zemi", "Izlez");
- if(iznos > KucaInfo[i][kNovac]) return SCM(playerid,-1,"Nemate tolku pari vo kukjata!");
- if(iznos < 1 || iznos > 50000) return SCM(playerid,-1,"Sumata nemoze da bide pomala od 1 ni pogolema od 50000!");
- KucaInfo[i][kNovac] -= iznos; GivePlayerMoney(playerid, iznos); SacuvajKucu(i);
- format(string,sizeof(string),"HS | "ZELENA"Podignavte od vasata kukja %d$!",iznos);
- SCM(playerid,-1,string);
- }
- }
- //////////////////////////////////////////////////
- if(dialogid == DIALOG_IKUCA)
- {
- if(response)
- {
- if(PlayerInfo[playerid][pPosedovanjeKuce] == -1) return SCM(playerid,-1, "HS | "ZUTA"Nemate kukja!");
- new ime[40],string[80],i = PlayerInfo[playerid][pPosedovanjeKuce];
- if(sscanf(inputtext, "s[40]", ime)) return SPD(playerid, DIALOG_IKUCA, DIALOG_STYLE_INPUT, ""ZELENA"Kukja Ime", ""BELA"Vnesete go novoto ime na kukjata", "Promeni", "Izlez");
- if(strlen(ime) > 40) return SCM(playerid,-1,""CRVENA"Imeto od kukjata nemoze da sodrzi povekje od 40 znakovi!");
- strmid(KucaInfo[i][kIme],ime,0,strlen(ime),255); SacuvajKucu(i); KuceLP(i);
- format(string,sizeof(string),""ZUTA"Vasto ime na kukjata e postaveno na %s!",ime);
- SCM(playerid,-1,string);
- }
- }
- //////////////////////////////////////////////////
- return 1;
- }
- ////////////////////////////////////////////////////
- public OnPlayerSpawn(playerid)
- {
- if(PlayerInfo[playerid][pProveraSpawna] == 1 && PlayerInfo[playerid][pPosedovanjeKuce] != -1)
- {
- new i = PlayerInfo[playerid][pPosedovanjeKuce];
- SetPlayerInterior(playerid, 0); SetPlayerVirtualWorld(playerid, 0);
- SetPlayerPos(playerid, KucaInfo[i][kUlazX], KucaInfo[i][kUlazY], KucaInfo[i][kUlazZ]);
- }
- if(PlayerInfo[playerid][pProveraSpawna] == 2)
- {
- new i = PlayerInfo[playerid][pRent];
- SetPlayerInterior(playerid, 0); SetPlayerVirtualWorld(playerid, 0);
- SetPlayerPos(playerid, KucaInfo[i][kUlazX], KucaInfo[i][kUlazY], KucaInfo[i][kUlazZ]);
- }
- return 1;
- }
- ///////////////////////////////////////////////////
- forward UcitajKuce(idkuce, name[], value[]);
- public UcitajKuce(idkuce, name[], value[])
- {
- INI_Int("ProveraVlasnika",KucaInfo[idkuce][kProveraVlasnika]);
- INI_String("Vlasnik",KucaInfo[idkuce][kVlasnik],45);
- INI_String("Vrsta",KucaInfo[idkuce][kVrsta],35);
- INI_String("Ime",KucaInfo[idkuce][kIme], 60);
- INI_Float("UlazX",KucaInfo[idkuce][kUlazX]);
- INI_Float("UlazY",KucaInfo[idkuce][kUlazY]);
- INI_Float("UlazZ",KucaInfo[idkuce][kUlazZ]);
- INI_Float("IzlazX",KucaInfo[idkuce][kIzlazX]);
- INI_Float("IzlazY",KucaInfo[idkuce][kIzlazY]);
- INI_Float("IzlazZ",KucaInfo[idkuce][kIzlazZ]);
- INI_Int("Level",KucaInfo[idkuce][kLevel]);
- INI_Int("Cena",KucaInfo[idkuce][kCena]);
- INI_Int("Novac",KucaInfo[idkuce][kNovac]);
- INI_Int("Interior",KucaInfo[idkuce][kInt]);
- INI_Int("Zatvoreno",KucaInfo[idkuce][kZatvoreno]);
- INI_Int("VW",KucaInfo[idkuce][kVW]);
- INI_Int("Oruzije",KucaInfo[idkuce][kOruzije]);
- INI_Int("Municija",KucaInfo[idkuce][kMunicija]);
- INI_Int("Rent",KucaInfo[idkuce][kRent]);
- INI_Int("CenaRenta",KucaInfo[idkuce][kCenaRenta]);
- INI_Int("Zvono",KucaInfo[idkuce][kZvono]);
- return 1;
- }
- ///////////////////////////////////////////////////
- stock SacuvajKucu(idkuce)
- {
- new kFile[128];
- format(kFile, sizeof(kFile), KUCE_FILE, idkuce);
- new INI:File = INI_Open(kFile);
- INI_WriteInt(File,"ProveraVlasnika",KucaInfo[idkuce][kProveraVlasnika]);
- INI_WriteString(File,"Vlasnik",KucaInfo[idkuce][kVlasnik]);
- INI_WriteString(File,"Vrsta",KucaInfo[idkuce][kVrsta]);
- INI_WriteString(File,"Ime",KucaInfo[idkuce][kIme]);
- INI_WriteFloat(File,"UlazX",KucaInfo[idkuce][kUlazX]);
- INI_WriteFloat(File,"UlazY",KucaInfo[idkuce][kUlazY]);
- INI_WriteFloat(File,"UlazZ",KucaInfo[idkuce][kUlazZ]);
- INI_WriteFloat(File,"IzlazX",KucaInfo[idkuce][kIzlazX]);
- INI_WriteFloat(File,"IzlazY",KucaInfo[idkuce][kIzlazY]);
- INI_WriteFloat(File,"IzlazZ",KucaInfo[idkuce][kIzlazZ]);
- INI_WriteInt(File,"Level",KucaInfo[idkuce][kLevel]);
- INI_WriteInt(File,"Cena",KucaInfo[idkuce][kCena]);
- INI_WriteInt(File,"Novac",KucaInfo[idkuce][kNovac]);
- INI_WriteInt(File,"Interior",KucaInfo[idkuce][kInt]);
- INI_WriteInt(File,"Zatvoreno",KucaInfo[idkuce][kZatvoreno]);
- INI_WriteInt(File,"VW",KucaInfo[idkuce][kVW]);
- INI_WriteInt(File,"Oruzije",KucaInfo[idkuce][kOruzije]);
- INI_WriteInt(File,"Municija",KucaInfo[idkuce][kMunicija]);
- INI_WriteInt(File,"Rent",KucaInfo[idkuce][kRent]);
- INI_WriteInt(File,"CenaRenta",KucaInfo[idkuce][kCenaRenta]);
- INI_WriteInt(File,"Zvono",KucaInfo[idkuce][kZvono]);
- INI_Close(File);
- return 1;
- }
- //////////////////////////////////////////////////////
- stock MiniRegis(playerid)
- {
- new igraci[50]; format(igraci, sizeof(igraci), IGRAC_FILE, ImeIgraca(playerid));
- new INI:File = INI_Open(igraci);
- INI_WriteInt(File,"PosedovanjeKuce",-1);
- INI_WriteInt(File,"ProveraSpawna",0);
- INI_WriteInt(File,"Rent",-1);
- INI_Close(File);
- SCM(playerid,-1,"Registracija uspesna!");
- return 1;
- }
- /////////////////////////////////////////////////////
- forward UcitavanjeIgraca(playerid, name[], value[]);
- public UcitavanjeIgraca(playerid, name[], value[])
- {
- INI_Int("PosedovanjeKuce",PlayerInfo[playerid][pPosedovanjeKuce]);
- INI_Int("ProveraSpawna",PlayerInfo[playerid][pProveraSpawna]);
- INI_Int("Rent",PlayerInfo[playerid][pRent]);
- return 1;
- }
- /////////////////////////////////////////////////////
- stock SacuvajIgraca(playerid)
- {
- new igraci[50]; format(igraci, sizeof(igraci), IGRAC_FILE, ImeIgraca(playerid));
- new INI:File = INI_Open(igraci);
- INI_WriteInt(File,"PosedovanjeKuce",PlayerInfo[playerid][pPosedovanjeKuce]);
- INI_WriteInt(File,"ProveraSpawna",PlayerInfo[playerid][pProveraSpawna]);
- INI_WriteInt(File,"Rent",PlayerInfo[playerid][pRent]);
- INI_Close(File);
- return 1;
- }
- /////////////////////////////////////////////////////
- stock KuceLP(idkuce)
- {
- new string[400];
- if(KucaInfo[idkuce][kProveraVlasnika] == 0)
- {
- Delete3DTextLabel(KucaLabel[idkuce]);
- DestroyPickup(KucaPickup[idkuce]);
- format(string,sizeof(string),""ZELENA"Kukja na prodazba!\nVrsta: "BELA"%s\n"ZELENA"Cena: "BELA"%d\n"ZELENA"Level: "BELA"%d\n"ZELENA"ID Kuce: "BELA"%d\n"ZELENA"za da ja kupite /kupikukja",KucaInfo[idkuce][kVrsta],KucaInfo[idkuce][kCena],KucaInfo[idkuce][kLevel],idkuce);
- KucaLabel[idkuce] = Create3DTextLabel(string ,0x33CCFFAA,KucaInfo[idkuce][kUlazX],KucaInfo[idkuce][kUlazY],KucaInfo[idkuce][kUlazZ],25,0,1);
- KucaPickup[idkuce] = CreatePickup(1273, 1, KucaInfo[idkuce][kUlazX], KucaInfo[idkuce][kUlazY], KucaInfo[idkuce][kUlazZ]);
- }
- else if(KucaInfo[idkuce][kProveraVlasnika] == 1)
- {
- Delete3DTextLabel(KucaLabel[idkuce]);
- DestroyPickup(KucaPickup[idkuce]);
- format(string,sizeof(string),""ZELENA"[ "BELA"%s "ZELENA"]\n"ZELENA"Gazda: "BELA"%s\n"ZELENA"Vrsta: "BELA"%s\n"ZELENA"Level: "BELA"%d\n"ZELENA"Cena: "BELA"%d\n"ZELENA"Rent: "BELA"%d\n"ZELENA"ID Kukja: "BELA"%d\n"ZELENA"'F' za vlez vo kukjata",KucaInfo[idkuce][kIme],KucaInfo[idkuce][kVlasnik],KucaInfo[idkuce][kVrsta],KucaInfo[idkuce][kLevel],KucaInfo[idkuce][kCena],KucaInfo[idkuce][kCenaRenta],idkuce);
- KucaLabel[idkuce] = Create3DTextLabel(string ,0x33CCFFAA,KucaInfo[idkuce][kUlazX],KucaInfo[idkuce][kUlazY],KucaInfo[idkuce][kUlazZ],25,0,1);
- KucaPickup[idkuce] = CreatePickup(1239, 1, KucaInfo[idkuce][kUlazX], KucaInfo[idkuce][kUlazY], KucaInfo[idkuce][kUlazZ]);
- }
- return 1;
- }
- ////////////////////////////////////////////////////
- stock ImeIgraca(playerid)
- {
- new ime[MAX_PLAYER_NAME];
- GetPlayerName(playerid, ime, sizeof(ime));
- return ime;
- }
- ///////////////////////////////////////////////////
- YCMD:pkukja(playerid, params[],help)
- {
- #pragma unused help
- if(!IsPlayerAdmin(playerid)) return SCM(playerid,-1,"[HS] "CRVENA"Ne ste ovlasteni da ja koristite ovaa komanda!");
- new idkuce,vrsta,level,cena,Float:X,Float:Y,Float:Z,fkuce[80],string[400]; GetPlayerPos(playerid,X,Y,Z);
- if(sscanf(params, "iiii",idkuce,vrsta,level,cena)) return SCM(playerid,-1,""CRVENA"HS | "SIVA"/kreirajkucu [ID] [Vrsta] [Level] [Cena]");
- if(idkuce >= MAX_KUCA) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Maximum na kukji e napraveno nemozes da koristis toj ID!");
- format(fkuce, sizeof(fkuce), KUCE_FILE, idkuce);
- if(fexist(fkuce)) return SCM(playerid,-1, "HS | "SPLAVA"ID od taa kukja vekje postoi!");
- if(vrsta == 3) // Mala Kukja
- {
- KucaInfo[idkuce][kIzlazX] = 223.043991;
- KucaInfo[idkuce][kIzlazY] = 1289.259888;
- KucaInfo[idkuce][kIzlazZ] = 1082.199951;
- KucaInfo[idkuce][kInt] = 1;
- strmid(KucaInfo[idkuce][kVrsta],"Mala Kukja",0,strlen("Mala Kukja"),255);
- }
- else if(vrsta == 1) // Sredna Kukja
- {
- KucaInfo[idkuce][kIzlazX] = 225.756989;
- KucaInfo[idkuce][kIzlazY] = 1240.000000;
- KucaInfo[idkuce][kIzlazZ] = 1082.149902;
- KucaInfo[idkuce][kInt] = 2;
- strmid(KucaInfo[idkuce][kVrsta],"Sredna Kukja",0,strlen("Sredna Kukja"),255);
- }
- else if(vrsta == 2) // Golema Kukja
- {
- KucaInfo[idkuce][kIzlazX] = 235.508994;
- KucaInfo[idkuce][kIzlazY] = 1189.169897;
- KucaInfo[idkuce][kIzlazZ] = 1080.339966;
- KucaInfo[idkuce][kInt] = 3;
- strmid(KucaInfo[idkuce][kVrsta],"Golema Kukja",0,strlen("Golema Kukja"),255);
- }
- KucaInfo[idkuce][kCena] = cena; KucaInfo[idkuce][kLevel] = level; KucaInfo[idkuce][kUlazX] = X;
- KucaInfo[idkuce][kUlazY] = Y; KucaInfo[idkuce][kUlazZ] = Z; KucaInfo[idkuce][kProveraVlasnika] = 0;
- KucaInfo[idkuce][kNovac] = 0; KucaInfo[idkuce][kZatvoreno] = 1; KucaInfo[idkuce][kVW] = idkuce; KucaInfo[idkuce][kZvono] = 0;
- KucaInfo[idkuce][kOruzije] = -1; KucaInfo[idkuce][kMunicija] = 0; KucaInfo[idkuce][kRent] = 0; KucaInfo[idkuce][kCenaRenta] = 50;
- strmid(KucaInfo[idkuce][kVlasnik],"Niko",0,strlen("Niko"),255); strmid(KucaInfo[idkuce][kIme],"Default",0,strlen("Default"),255);
- format(string,sizeof(string),""ZELENA"Kukja na prodazba!\nVrsta: "BELA"%s\n"ZELENA"Cena: "BELA"%d\n"ZELENA"Level: "BELA"%d\n"ZELENA"ID Kukja: "BELA"%d\n"ZELENA"za da ja kupite /kupikukja",KucaInfo[idkuce][kVrsta],KucaInfo[idkuce][kCena],KucaInfo[idkuce][kLevel],idkuce);
- KucaLabel[idkuce] = Create3DTextLabel(string ,0x33CCFFAA,X,Y,Z,25,0,1);
- KucaPickup[idkuce] = CreatePickup(1273, 1, KucaInfo[idkuce][kUlazX], KucaInfo[idkuce][kUlazY], KucaInfo[idkuce][kUlazZ]);
- SCM(playerid,-1,""SIVA"Kukjata e uspesno kreirana!"); SacuvajKucu(idkuce);
- return 1;
- }
- ///////////////////////////////////////////////////
- YCMD:kupikukja(playerid, params[], help)
- {
- #pragma unused help
- #pragma unused params
- for(new i; i < sizeof(KucaInfo); i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.0, KucaInfo[i][kUlazX], KucaInfo[i][kUlazY], KucaInfo[i][kUlazZ]))
- {
- if(!strcmp(KucaInfo[i][kVlasnik], "Niko", true) && KucaInfo[i][kProveraVlasnika] == 0)
- {
- if(PlayerInfo[playerid][pPosedovanjeKuce] != -1) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Vekje imate kukja!");
- if(GetPlayerScore(playerid) < KucaInfo[i][kLevel]) return SCM(playerid,-1,"HS | "CRVENA"Nemate dovolno golem level za da ja kupite kukjata!");
- if(GetPlayerMoney(playerid) < KucaInfo[i][kCena]) return SCM(playerid,-1, "HS | "CRVENA"Nemate dovolno pari za da ja kupite kukjata!");
- if(PlayerInfo[playerid][pRent] != -1) return SCM(playerid,-1,"HS | "CRVENA"Rentate kukja, prvo unrentajte ja za da ja kupite ovaa kukja!");
- strmid(KucaInfo[i][kVlasnik], ImeIgraca(playerid), 0, strlen(ImeIgraca(playerid)), 255);
- KucaInfo[i][kProveraVlasnika] = 1; SetPlayerInterior(playerid, KucaInfo[i][kInt]); PlayerInfo[playerid][pPosedovanjeKuce] = i;
- SetPlayerVirtualWorld(playerid, KucaInfo[i][kVW]); SetPlayerPos(playerid, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ]);
- KucaInfo[i][kZatvoreno] = 0; GivePlayerMoney(playerid, -KucaInfo[i][kCena]); KuceLP(i); SacuvajKucu(i);
- SCM(playerid,-1, ""SPLAVA"MWRPG | "SIVA"Cestitame, ste kupile kukja!");
- SCM(playerid,-1, ""SPLAVA"MWRPG | "SIVA"Za komandite koristete /kuca!");
- SCM(playerid,-1, ""SPLAVA"MWRPG | "SIVA"Za vlez koristete bukva (F) ili Enter!");
- return 1;
- }
- else return SCM(playerid, -1, ""CRVENA"HS | "SIVA"Taa kukja ne se prodava!");
- }
- }
- return 1;
- }
- ////////////////////////////////////////////////////
- YCMD:kukja(playerid, params[], help)
- {
- #pragma unused help
- #pragma unused params
- if(PlayerInfo[playerid][pPosedovanjeKuce] == -1) return SCM(playerid,-1,""CRVENA"HS | "SIVA"Nemate kukja!");
- if(strcmp(KucaInfo[PlayerInfo[playerid][pPosedovanjeKuce]][kVlasnik], ImeIgraca(playerid), true)) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Niste vlasnik te kuce!");
- new string[256];
- format(string,sizeof(string),""BELA"Informacii\nOtkluci\nZakluci\nOstavi pari\nZemi pari\nOstavi gun\nZemi gun\nProdaj kukja\nPromeni Ime\nKukja Spawn\nDozvoli/Zabrani Rent\nCena Rent\nZvonce (5000$)");
- SPD(playerid, DIALOG_KUCA, DIALOG_STYLE_LIST, ""ZELENA"Kukja Opcii", string, "Odberi", "Izlez");
- return 1;
- }
- ////////////////////////////////////////////////////
- YCMD:rentajkukja(playerid, params[], help)
- {
- #pragma unused help
- #pragma unused params
- for(new i = 0; i < MAX_KUCA; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.0, KucaInfo[i][kUlazX], KucaInfo[i][kUlazY], KucaInfo[i][kUlazZ]))
- {
- if(PlayerInfo[playerid][pPosedovanjeKuce] != -1) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Vekje imate kukja nemozete da rentate druga!");
- if(KucaInfo[i][kRent] == 0) return SCM(playerid,-1,"HS | "ZUTA"Vo ovaa kukja rentot e zabranet!");
- if(GetPlayerMoney(playerid) < KucaInfo[i][kCenaRenta]) return SCM(playerid,-1,"HS | "ZUTA"Nemate dovolno pari za rent!");
- GivePlayerMoney(playerid, KucaInfo[i][kCenaRenta]); KucaInfo[i][kNovac] += KucaInfo[i][kCenaRenta];
- PlayerInfo[playerid][pRent] = i; SetPlayerInterior(playerid, KucaInfo[i][kInt]); SetPlayerVirtualWorld(playerid, KucaInfo[i][kVW]);
- SetPlayerPos(playerid, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ]); PlayerInfo[playerid][pProveraSpawna] = 2;
- SCM(playerid,-1,""ZUTA"Uspesno ja rentate kukjata!"); SacuvajKucu(i); SacuvajIgraca(playerid);
- return 1;
- }
- }
- return 1;
- }
- ///////////////////////////////////////////////////
- YCMD:zvoni(playerid, params[], help)
- {
- #pragma unused params
- #pragma unused help
- for(new i = 0; i < sizeof(KucaInfo); i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 3.0, KucaInfo[i][kUlazX], KucaInfo[i][kUlazY], KucaInfo[i][kUlazZ]))
- {
- if(KucaInfo[i][kZvono] == 0) return SCM(playerid,-1,""SIVA"Taa kukja nema zvonce!");
- SCM(playerid,-1,""ZUTA"Zvonite na vrata!");
- foreach(Player, k)
- {
- if (IsPlayerInRangeOfPoint(k,3.0,KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ]))
- {
- SCM(k,-1, ""ZUTA"Nekoj zvoni na vasata vrata.");
- }
- }
- }
- }
- return 1;
- }
- ////////////////////////////////////////////////////
- YCMD:unrentaj(playerid, params[], help)
- {
- #pragma unused params
- #pragma unused help
- if(PlayerInfo[playerid][pPosedovanjeKuce] != -1) return SCM(playerid,-1, ""CRVENA"HS | "SIVA"Imate kukja nemozete ova!");
- if(PlayerInfo[playerid][pRent] == -1) return SCM(playerid,-1,""ZUTA"Ne rentate kukja!");
- PlayerInfo[playerid][pRent] = -1; SetPlayerHealth(playerid,0); SCM(playerid,-1,""ZUTA"Ja unrentovavte kukjata!");
- return 1;
- }
- ////////////////////////////////////////////////////
- YCMD:izbrisikukja(playerid, params[], help)
- {
- #pragma unused help
- #pragma unused params
- if(!IsPlayerAdmin(playerid)) return SCM(playerid,-1,"HS | "CRVENA"Ne ste ovlasteni da ja koristete ovaa komanda!");
- new kFile[50],id;
- if(sscanf(params,"i",id)) return SCM(playerid,-1,"HS | "ZUTA"/izbrisikucu [ID]");
- format(kFile, sizeof(kFile), KUCE_FILE, id);
- if(fexist(kFile)){ fremove(kFile); Delete3DTextLabel(KucaLabel[id]); DestroyPickup(KucaPickup[id]); }
- else { SCM(playerid,-1,"Toj ID od kukjata ne postoj!"); }
- return 1;
- }
- ////////////////////////////////////////////////////
- YCMD:portkukja(playerid, params[], help)
- {
- #pragma unused help
- #pragma unused params
- if(!IsPlayerAdmin(playerid)) return SCM(playerid,-1,"HS | "CRVENA"Ne ste ovlasteni da ja koristite ovaa komanda!");
- new id,kFile[50];
- if(sscanf(params,"i",id)) return SCM(playerid,-1,"HS | "ZUTA"/portkuca [ID]");
- format(kFile, sizeof(kFile), KUCE_FILE, id);
- SetPlayerPos(playerid,KucaInfo[id][kUlazX], KucaInfo[id][kUlazY], KucaInfo[id][kUlazZ]);
- SetPlayerInterior(playerid,0); SetPlayerVirtualWorld(playerid,0);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement