Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //=-=-=-=-=-=-=-=-= • DINAMICNO PRAVLJENJE POKLONA BY SHOMY • =-=-=-=-=-=-=-=-//
- /*
- NAPOMENA: Da bi koristili ovu FilterScriptu, MORATE imati folder "Pokloni",
- u Vasem scriptfiles folderu !
- */
- //=-= • INCLUDE • =-=//
- #include < a_samp >
- #include < YSI\y_ini >
- #include < YSI\y_commands >
- #include < sscanf2 >
- //=-= • DEFINE • =-=//
- #undef MAX_PLAYERS
- #define MAX_PLAYERS 300 // • NAMESTITE OVO KAKO VAMA ODGOVARA • //
- #define MAX_POKLONI 150
- #define PFile "/Pokloni/%d.ini"
- //=-= • BOJE • =-=//
- #define COL_SERVER "{FF1414}"
- #define BELA "{FFFFFF}"
- //=-= • SKRACENICE • =-=//
- #define SCM SendClientMessage
- #define SCMTA SendClientMessageToAll
- //=-= • ENUM • =-=//
- enum pInfo
- {
- Float:PosX,
- Float:PosY,
- Float:PosZ,
- Model,
- pID
- }
- //=-= • NEW • =-=//
- new PoklonInfo[MAX_POKLONI][pInfo];
- new Text3D:poklonlabel;
- new PravljeniPoklon;
- new RandomDobijanje[][6] =
- {
- { 5000 },
- { 3000 },
- { 4000 },
- { 3500 },
- { 2500 }
- };
- //=-= • PUBLICS • =-=//
- public OnFilterScriptInit()
- {
- LoadPoklon();
- return 1;
- }
- forward PoklonOcitavanje(id, name[], value[]);
- public PoklonOcitavanje(id, name[], value[])
- {
- INI_Float("Pozicija X", PoklonInfo[id][PosX]);
- INI_Float("Pozicija Y", PoklonInfo[id][PosY]);
- INI_Float("Pozicija Z", PoklonInfo[id][PosZ]);
- INI_Int("Model", PoklonInfo[id][Model]);
- INI_Int("ID", PoklonInfo[id][pID]);
- return 1;
- }
- forward BrisanjeObjecta(playerid);
- public BrisanjeObjecta(playerid)
- {
- for(new i = 1; i < MAX_POKLONI; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, PoklonInfo[i][PosX], PoklonInfo[i][PosY], PoklonInfo[i][PosZ]))
- {
- DestroyObject(PravljeniPoklon);
- Delete3DTextLabel(poklonlabel);
- new rand = random(sizeof(RandomDobijanje));
- GivePlayerMoney(playerid, RandomDobijanje[rand][0]);
- SCM(playerid, -1, ""COL_SERVER"[INFO] "BELA"Otvorili ste poklon !");
- new poklonfile[64];
- format(poklonfile,sizeof(poklonfile), PFile, i);
- fremove(poklonfile);
- }
- }
- return 1;
- }
- //=-= • STOCK • =-=//
- stock SacuvajPoklon(id)
- {
- new pFile[60];
- format(pFile, sizeof(pFile ), PFile,id);
- new INI:File = INI_Open(pFile);
- INI_WriteFloat(File, "Pozicija X", PoklonInfo[id][PosX]);
- INI_WriteFloat(File, "Pozicija Y", PoklonInfo[id][PosY]);
- INI_WriteFloat(File, "Pozicija Z", PoklonInfo[id][PosZ]);
- INI_WriteInt(File, "Model", PoklonInfo[id][Model]);
- INI_WriteInt(File, "ID", PoklonInfo[id][pID]);
- INI_Close(File);
- return 1;
- }
- stock LoadPoklon()
- {
- for(new i = 1; i < MAX_POKLONI; i++)
- {
- new pFile[50];
- format(pFile, sizeof(pFile), PFile, i);
- if(fexist(pFile))
- {
- INI_ParseFile(pFile, "PoklonOcitavanje", .bExtra = true, .extra = i);
- PravljeniPoklon = CreateObject(PoklonInfo[i][Model], PoklonInfo[i][PosX],PoklonInfo[i][PosY],PoklonInfo[i][PosZ], 0.0, 0.0, 0.0, 300.0);
- poklonlabel = Create3DTextLabel(""COL_SERVER"(( POKLON ))\n"BELA"Da ga otvorite kucajte\n/otvoripoklon", 0x008080FF, PoklonInfo[i][PosX],PoklonInfo[i][PosY],PoklonInfo[i][PosZ], 5.0, 0, 0);
- }
- }
- }
- PlayAnim(playerid, animlib[], animname[], Float:fDelta, loop, lockx, locky, freeze, time, forcesync)
- {
- ApplyAnimation(playerid, animlib, animname, fDelta, loop, lockx, locky, freeze, time, forcesync);
- }
- //=-= • CMD • =-=//
- YCMD:napravipoklon(playerid, params[], help)
- {
- #pragma unused help
- if(IsPlayerAdmin(playerid))
- {
- new boja, Float:X,Float:Y,Float:Z;
- if(sscanf(params, "d", boja)) { SCM(playerid, -1, ""COL_SERVER"[GRESKA] "BELA"Koristite /napravipoklon [Boja]"); SCM(playerid, -1, ""COL_SERVER"[GRESKA] "BELA"Boja 1 - Crvena || Boja 2 - Narandzasta || Boja 3 - Crna || Boja 4 - Sarena"); }
- if(boja < 1 || boja > 4) return SCM(playerid, -1, ""COL_SERVER"[GRESKA] "BELA"ID Boje ne moze biti manji od 1 ili veci od 4 !");
- SCM(playerid, -1, ""COL_SERVER"[INFO] "BELA"Stvorili ste poklon !");
- GetPlayerPos(playerid, X,Y,Z);
- if(boja == 1) { PravljeniPoklon = CreateObject(19057, X,Y,Z, 0.0, 0.0, 0.0, 300.0); }
- if(boja == 2) { PravljeniPoklon = CreateObject(19055, X,Y,Z, 0.0, 0.0, 0.0, 300.0); }
- if(boja == 3) { PravljeniPoklon = CreateObject(19058, X,Y,Z, 0.0, 0.0, 0.0, 300.0); }
- if(boja == 4) { PravljeniPoklon = CreateObject(19056, X,Y,Z, 0.0, 0.0, 0.0, 300.0); }
- SetPlayerPos(playerid, X,Y,Z+3);
- PoklonInfo[PravljeniPoklon][PosX] = X;
- PoklonInfo[PravljeniPoklon][PosY] = Y;
- PoklonInfo[PravljeniPoklon][PosZ] = Z;
- if(boja == 1) { PoklonInfo[PravljeniPoklon][Model] = 19057; }
- else if(boja == 2) { PoklonInfo[PravljeniPoklon][Model] = 19055; }
- else if(boja == 3) { PoklonInfo[PravljeniPoklon][Model] = 19058; }
- else if(boja == 4) { PoklonInfo[PravljeniPoklon][Model] = 19056; }
- poklonlabel = Create3DTextLabel(""COL_SERVER"(( POKLON ))\n"BELA"Da ga otvorite kucajte\n/otvoripoklon", 0x008080FF, X,Y,Z, 5.0, 0, 0);
- SacuvajPoklon(PravljeniPoklon);
- }
- return 1;
- }
- YCMD:otvoripoklon(playerid, params[], help)
- {
- for(new i = 1; i < MAX_POKLONI; i++)
- {
- if(IsPlayerInRangeOfPoint(playerid, 1.0, PoklonInfo[i][PosX], PoklonInfo[i][PosY], PoklonInfo[i][PosZ]))
- {
- SetTimerEx("BrisanjeObjecta", 2200, false, "i", playerid);
- PlayAnim(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0, 1);
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment