Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //==============================================================================STAVIS NA VRH NEGDJE KOD OSTALIH ENUMA
- new Text:DateEvent[3];
- #define DATE_NAME IDDIALOGA PROMJENI
- #define DATE_DMY IDDIALOGA PROMJENI
- #define DATE_HMS IDDIALOGA PROMJENI
- #define DATE_MSG IDDIALOGA PROMJENI
- #define DATE_INFO IDDIALOGA PROMJENI
- enum dateInfo
- {
- bool:dateEvent,
- dateName[32],
- dateDay,
- dateMonth,
- dateYear,
- dateHour,
- dateMin,
- dateSec,
- datePoruka[72]
- };
- new DateInfo[dateInfo];
- //==============================================================================
- //==============================================================================STAVIS ON PLAYER SPAWN
- if(DateInfo[dateEvent] == true)
- {
- format(string, sizeof(string), "- ~r~%s~w~ -", DateInfo[dateName]);
- TextDrawSetString(DateEvent[0], string);
- ControlDateTD(playerid, true);
- }
- //==============================================================================
- //==============================================================================CMD UBACIS IH BILO GDJE I PROMJENIS SVOJE IF-OVE i to :D
- CMD:date(playerid, params[])
- {
- #pragma unused params
- if(Spawnovan[playerid] == false) return SEM(playerid, "Moras biti spawnovan da bi koristio ovu komandu!");
- if(PlayerInfo[playerid][pAdmin] < 5) return LMMSG(playerid, COL_SERVER, "Samo za LMA! "SERVER"[Admin Level 5]");
- if(StaffDuty[playerid] == false) return SEM(playerid, "Moras biti na LM Staff Duznost!");
- SPD(playerid, DATE_NAME, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Zapoceli ste odbrojavanje do Date Eventa!\n"RED"ۻ "BELA"Unesite naziv do Date Event odbrojavanja...", "Unesi", "Odustani");
- return 1;
- }
- //======================================
- CMD:dateremove(playerid, params[])
- {
- #pragma unused params
- if(Spawnovan[playerid] == false) return SEM(playerid, "Moras biti spawnovan da bi koristio ovu komandu!");
- if(PlayerInfo[playerid][pAdmin] < 5) return LMMSG(playerid, COL_SERVER, "Samo za LMA! "SERVER"[Admin Level 5]");
- if(StaffDuty[playerid] == false) return SEM(playerid, "Moras biti na LM Staff Duznost!");
- if(DateInfo[dateEvent] == false) return SEM(playerid, "Nijedan Date Event nije pokrenut!");
- RemoveDate();
- SCM(playerid, COL_RED, "LM| "BELA"Uspjesno si uklonio odbrojavanje do Date Eventa!");
- return 1;
- }
- //==============================================================================
- //==============================================================================ON DIALOG RESPONSE moras mozda umjesto case pisat else if(dialogid == DATE_NAME) Na vrhu definisati IDove dijaloga
- case DATE_NAME:
- {
- if(!response) return RemoveDate();
- if(response)
- {
- new name[64];
- if(sscanf(inputtext, "s[32]", name)) return SPD(playerid, DATE_NAME, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Zapoceli ste odbrojavanje do Date Eventa!\n"RED"ۻ "BELA"Unesite naziv do Date Event odbrojavanja...", "Unesi", "Odustani");
- format(DateInfo[dateName], 32, "%s", name);
- SaveDateTime();
- SPD(playerid, DATE_DMY, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si ime za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi datum...\n"RED"ۻ "BELA"Format: DD MM YYYY", "Unesi", "Odustani");
- }
- return 1;
- }
- //==============================================================================
- case DATE_DMY:
- {
- if(!response) RemoveDate();
- if(response)
- {
- new day, month, year;
- if(sscanf(inputtext, "iii", day, month, year)) return SPD(playerid, DATE_DMY, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si ime za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi datum...\n"RED"ۻ "BELA"Format: DD MM YYYY", "Unesi", "Odustani");
- if(day < 1 || day > 31)
- {
- SPD(playerid, DATE_DMY, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si ime za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi datum...\n"RED"ۻ "BELA"Format: DD MM YYYY", "Unesi", "Odustani");
- SEM(playerid, "Dan ne moze ici ispod 1 ili vise od 31");
- return 1;
- }
- if(month < 1 || month > 12)
- {
- SPD(playerid, DATE_DMY, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si ime za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi datum...\n"RED"ۻ "BELA"Format: DD MM YYYY", "Unesi", "Odustani");
- SEM(playerid, "Mjesec ne moze ici ispod 1 ili vise od 12");
- return 1;
- }
- DateInfo[dateDay] = day;
- DateInfo[dateMonth] = month;
- DateInfo[dateYear] = year;
- SaveDateTime();
- SPD(playerid, DATE_HMS, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si datum za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi satnicu...\n"RED"ۻ "BELA"Format: HH MM SS", "Unesi", "Odustani");
- }
- return 1;
- }
- //==============================================================================
- case DATE_HMS:
- {
- if(!response) RemoveDate();
- if(response)
- {
- new hour, mins, sec;
- if(sscanf(inputtext, "iii", hour, mins, sec)) return SPD(playerid, DATE_HMS, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si datum za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi satnicu...\n"RED"ۻ "BELA"Format: HH MM SS", "Unesi", "Odustani");
- if(hour < 0 || hour > 24)
- {
- SPD(playerid, DATE_HMS, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si datum za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi satnicu...\n"RED"ۻ "BELA"Format: HH MM SS", "Unesi", "Odustani");
- SEM(playerid, "Sati ne mogu ici ispod 0 ili vise od 24!");
- return 1;
- }
- if(mins < 0 || mins > 60)
- {
- SPD(playerid, DATE_HMS, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si datum za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi satnicu...\n"RED"ۻ "BELA"Format: HH MM SS", "Unesi", "Odustani");
- SEM(playerid, "Minute ne mogu ici ispod 0 ili vise od 60!");
- return 1;
- }
- if(sec < 0 || sec > 60)
- {
- SPD(playerid, DATE_HMS, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si datum za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi satnicu...\n"RED"ۻ "BELA"Format: HH MM SS", "Unesi", "Odustani");
- SEM(playerid, "Sekunde ne mogu ici ispod 0 ili vise od 60!");
- return 1;
- }
- DateInfo[dateHour] = hour;
- DateInfo[dateMin] = mins;
- DateInfo[dateSec] = sec;
- SaveDateTime();
- SPD(playerid, DATE_MSG, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si satnicu za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi poruku pri zavrsetku odbrojavanja...\n", "Unesi", "Odustani");
- }
- return 1;
- }
- //==============================================================================
- case DATE_MSG:
- {
- if(!response) RemoveDate();
- if(response)
- {
- new msg[72], string[128], dialog[512];
- if(sscanf(inputtext, "s[72]", msg)) return SPD(playerid, DATE_MSG, DSIN, ""RED"LM| "BELA"Date Event!", ""RED"ۻ "BELA"Unio si satnicu za odbrojavanje!\n"RED"ۻ "BELA"Sada unesi poruku pri zavrsetku odbrojavanja...\n", "Unesi", "Odustani");
- format(DateInfo[datePoruka], 72, "%s", msg);
- DateInfo[dateEvent] = true;
- SaveDateTime();
- strcat(dialog, ""RED"____________________________________________\n\n", sizeof(dialog));
- format(string, sizeof(string), ""RED"ۻ "BELA"Naziv Eventa: "RED"%s\n\n", DateInfo[dateName]);
- strcat(dialog, string, sizeof(dialog));
- format(string, sizeof(string), ""RED"ۻ "BELA"Dan: "RED"%d\n\n", DateInfo[dateDay]);
- strcat(dialog, string, sizeof(dialog));
- format(string, sizeof(string), ""RED"ۻ "BELA"Mjesec: "RED"%d\n\n", DateInfo[dateMonth]);
- strcat(dialog, string, sizeof(dialog));
- format(string, sizeof(string), ""RED"ۻ "BELA"Godina: "RED"%d\n\n", DateInfo[dateYear]);
- strcat(dialog, string, sizeof(dialog));
- strcat(dialog, string, sizeof(dialog));
- format(string, sizeof(string), ""RED"ۻ "BELA"Sat: "RED"%d\n\n", DateInfo[dateHour]);
- strcat(dialog, string, sizeof(dialog));
- format(string, sizeof(string), ""RED"ۻ "BELA"Minut: "RED"%d\n\n", DateInfo[dateMin]);
- strcat(dialog, string, sizeof(dialog));
- format(string, sizeof(string), ""RED"ۻ "BELA"Sekund: "RED"%d\n\n", DateInfo[dateSec]);
- strcat(dialog, string, sizeof(dialog));
- strcat(dialog, ""RED"____________________________________________\n\n", sizeof(dialog));
- format(string, sizeof(string), "- ~r~%s~w~ -", DateInfo[dateName]);
- TextDrawSetString(DateEvent[0], string);
- ControlDateAll(true);
- SPD(playerid, DATE_INFO, DSMSG, ""RED"LM| "BELA"Date Event!", dialog, "Uredu", "");
- }
- return 1;
- }
- //==============================================================================Gdje ti se ostalo ucivatava, LoadServerStats to trazi pa ces provalit
- if(fexist("Ostalo/Date.ini"))
- {
- INI_ParseFile( "Ostalo/Date.ini", "LoadDateTime" );
- }
- //==============================================================================LOADING - SAVING stavis tamo gdje se sve ostalo load/save // Najlakse ti kod ServerInfo gdje se cuva i to :D
- forward LoadDateTime(name[], value[]);
- public LoadDateTime(name[], value[])
- {
- INI_Bool("Event", DateInfo[dateEvent]);
- INI_String("Name", DateInfo[dateName], 32);
- INI_Int("Day", DateInfo[dateDay]);
- INI_Int("Month", DateInfo[dateMonth]);
- INI_Int("Year", DateInfo[dateYear]);
- INI_Int("Hour", DateInfo[dateHour]);
- INI_Int("Min", DateInfo[dateMin]);
- INI_Int("Sec", DateInfo[dateSec]);
- INI_String("Message", DateInfo[datePoruka], 72);
- return 1;
- }
- //====================================
- forward SaveDateTime();
- public SaveDateTime()
- {
- new INI:File = INI_Open("Ostalo/Date.ini"); //Promjeni putanju kako je i u athlone
- INI_SetTag(File, "Date");
- INI_WriteBool(File, "Event", DateInfo[dateEvent]);
- INI_WriteString(File, "Name", DateInfo[dateName]);
- INI_WriteInt(File, "Day", DateInfo[dateDay]);
- INI_WriteInt(File, "Month", DateInfo[dateMonth]);
- INI_WriteInt(File, "Year", DateInfo[dateYear]);
- INI_WriteInt(File, "Hour", DateInfo[dateHour]);
- INI_WriteInt(File, "Min", DateInfo[dateMin]);
- INI_WriteInt(File, "Sec", DateInfo[dateSec]);
- INI_WriteString(File, "Message", DateInfo[datePoruka]);
- INI_Close(File);
- return 1;
- }
- //====================================
- stock RemoveDate()
- {
- DateInfo[dateEvent] = false;
- format(DateInfo[dateName], 32, "Nepostojece");
- DateInfo[dateDay] = 0;
- DateInfo[dateMonth] = 0;
- DateInfo[dateYear] = 0;
- DateInfo[dateHour] = 0;
- DateInfo[dateMin] = 0;
- DateInfo[dateSec] = 0;
- format(DateInfo[datePoruka], 72, "Nepostojece");
- SaveDateTime();
- ControlDateAll(false);
- return 1;
- }
- //==============================================================================
- //==============================================================================UNEKI TIMER OD 1 SEC, u ATH je to pretrazujes task i vidices [1000]
- if(DateInfo[dateEvent] == true)
- {
- new dateyrs = DateInfo[dateYear] - year,
- datemonth = DateInfo[dateMonth] - month,
- dateday = DateInfo[dateDay] - day,
- datehrs = DateInfo[dateHour] - hours,
- datemin = DateInfo[dateMin] - minutes,
- datesec = DateInfo[dateSec] - seconds,
- time[64],
- stringic1[64],
- stringic2[64];
- if(DateInfo[dateYear] == year && DateInfo[dateMonth] == month && DateInfo[dateDay] == day && DateInfo[dateHour] == hours && DateInfo[dateMin] == minutes && DateInfo[dateSec] == seconds)
- {
- format(string, sizeof(string), "LM| "BELA"%s", DateInfo[datePoruka]);
- SCMA(COL_RED, string);
- format(string, sizeof(string), "~r~%s", DateInfo[datePoruka]);
- GameTextForAll(string, 5000, 3);
- RemoveDate();
- }
- //"~r~-~w~ 1 godina, 2 mjeseca, 3 dana ~r~-~w~"
- strcat(stringic1, "~r~- ~w~", sizeof(stringic1));
- if(dateyrs > 0)
- {
- format(time, sizeof(time), "%d god, ", dateyrs);
- strcat(stringic1, time, sizeof(stringic1));
- }
- if(datemonth > 0 && datemonth < 12)
- {
- format(time, sizeof(time), "%d mj, ", datemonth);
- strcat(stringic1, time, sizeof(stringic1));
- }
- if(dateday > 0 && dateday < 24)
- {
- format(time, sizeof(time), "%d days", dateday);
- strcat(stringic1, time, sizeof(stringic1));
- }
- strcat(stringic1, "~r~ -", sizeof(stringic1));
- TextDrawSetString(DateEvent[1], stringic1);
- //"~r~-~w~ 1 sat, 2 minuta, 3 sekunde ~r~-~w~"
- strcat(stringic2, "~r~- ~w~", sizeof(stringic2));
- if(datehrs > 0 && datehrs < 24)
- {
- format(time, sizeof(time), "%d hrs, ", datehrs);
- strcat(stringic2, time, sizeof(stringic2));
- }
- if(datemin > 0 && datemin < 60)
- {
- format(time, sizeof(time), "%d min, ", datemin);
- strcat(stringic2, time, sizeof(stringic2));
- }
- if(datesec > 0 && datesec < 60)
- {
- format(time, sizeof(time), "%d sec", datesec);
- strcat(stringic2, time, sizeof(stringic2));
- }
- strcat(stringic2, "~r~ -", sizeof(stringic2));
- TextDrawSetString(DateEvent[2], stringic2);
- }
- //==============================================================================
- //==============================================================================
- //==============================================================================
- //==============================================================================BILO GDJE, za show i hide TD-ova
- stock ControlDateTD(playerid, bool:show)
- {
- if(show == true)
- {
- TDSP(playerid, DateEvent[0]);
- TDSP(playerid, DateEvent[1]);
- TDSP(playerid, DateEvent[2]);
- }
- else
- {
- TDHP(playerid, DateEvent[0]);
- TDHP(playerid, DateEvent[1]);
- TDHP(playerid, DateEvent[2]);
- }
- return 1;
- }
- stock ControlDateAll(bool:show)
- {
- if(show == true)
- {
- TextDrawShowForAll(DateEvent[0]);
- TextDrawShowForAll(DateEvent[1]);
- TextDrawShowForAll(DateEvent[2]);
- }
- else
- {
- TextDrawHideForAll(DateEvent[0]);
- TextDrawHideForAll(DateEvent[1]);
- TextDrawHideForAll(DateEvent[2]);
- }
- return 1;
- }
- //==============================================================================
- //==============================================================================Tamo gdje ti se i ostali global tdovi kreiraju
- DateEvent[ 0 ] = TextDrawCreate(320.000000, 395.000000, "- ~r~Nova Godina~w~ -");
- TextDrawLetterSize(DateEvent[ 0 ], 0.217500, 0.952884);
- TextDrawAlignment(DateEvent[ 0 ], 2);
- TextDrawColor(DateEvent[ 0 ], -1);
- TextDrawSetShadow(DateEvent[ 0 ], 0);
- TextDrawSetOutline(DateEvent[ 0 ], 1);
- TextDrawBackgroundColor(DateEvent[ 0 ], 255);
- TextDrawFont(DateEvent[ 0 ], 1);
- TextDrawSetProportional(DateEvent[ 0 ], 1);
- DateEvent[ 1 ] = TextDrawCreate(320.000000, 405.333343, "~r~-~w~ 1 godina, 2 mjeseca, 3 dana ~r~-~w~");
- TextDrawLetterSize(DateEvent[ 1 ], 0.217500, 0.952884);
- TextDrawAlignment(DateEvent[ 1 ], 2);
- TextDrawColor(DateEvent[ 1 ], -1);
- TextDrawSetShadow(DateEvent[ 1 ], 0);
- TextDrawSetOutline(DateEvent[ 1 ], 1);
- TextDrawBackgroundColor(DateEvent[ 1 ], 255);
- TextDrawFont(DateEvent[ 1 ], 1);
- TextDrawSetProportional(DateEvent[ 1 ], 1);
- DateEvent[ 2 ] = TextDrawCreate(320.000000, 415.044464, "~r~-~w~ 1 sat, 2 minuta, 3 sekunde ~r~-~w~");
- TextDrawLetterSize(DateEvent[ 2 ], 0.217500, 0.952884);
- TextDrawAlignment(DateEvent[ 2 ], 2);
- TextDrawColor(DateEvent[ 2 ], -1);
- TextDrawSetShadow(DateEvent[ 2 ], 0);
- TextDrawSetOutline(DateEvent[ 2 ], 1);
- TextDrawBackgroundColor(DateEvent[ 2 ], 255);
- TextDrawFont(DateEvent[ 2 ], 1);
- TextDrawSetProportional(DateEvent[ 2 ], 1);
- //==============================================================================
- //==============================================================================OnGameModeExit Il gdje ti se ostali TDovi unistavaju
- TDD(DateEvent[0]);
- TDD(DateEvent[1]);
- TDD(DateEvent[2]);
- //==============================================================================
- //==============================================================================OnPlayerDisconnect Il gdje ti se ostali TD-ovi hide-aju ako nemas nesto tako nemoj ni ubacivat
- TDHP(playerid, DateEvent[0]); TDHP(playerid, DateEvent[1]);
- TDHP(playerid, DateEvent[2]);
Advertisement
Add Comment
Please, Sign In to add comment