Advertisement
Meta__

NewYearCounter v0.2a

Nov 16th, 2011
1,007
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.12 KB | None | 0 0
  1. /*############################################*\
  2. ##                                            ##
  3. ##  NYC (New Year Counter :D) v.0.2a by Meta  ##
  4. ##                                            ##
  5. \*############################################*/
  6.  
  7. #include <a_samp>
  8.  
  9. #pragma tabsize 0
  10.  
  11. //#define German // Display the counter with german settings?
  12.  
  13. new cTime;
  14. new Text:NYCounter;
  15. new Text:HappyNewYearText;
  16.  
  17. public OnFilterScriptInit()
  18. {
  19.     NYCounter = TextDrawCreate(357.000000, 399.000000, "_");
  20.     TextDrawAlignment(NYCounter, 2);
  21.     TextDrawBackgroundColor(NYCounter, 255);
  22.     TextDrawFont(NYCounter, 2);
  23.     TextDrawLetterSize(NYCounter, 0.40000, 2);
  24.     TextDrawColor(NYCounter, -16776961);
  25.     TextDrawSetOutline(NYCounter, 1);
  26.     TextDrawSetProportional(NYCounter, 1);
  27.  
  28.     new message[40], year, month, day;
  29.     getdate(year, month, day);
  30.     if(month != 1) { year--; }
  31.     #if defined German
  32.         format(message, sizeof(message), "~>~ FROHES NEUES JAHR ~<~~n~~y~%d!", year);
  33.     #else
  34.         format(message, sizeof(message), "~>~ HAPPY NEW YEAR ~<~~n~~y~%d!", year);
  35.     #endif
  36.     HappyNewYearText = TextDrawCreate(340.000000, 350.000000, message);
  37.     TextDrawAlignment(HappyNewYearText, 2);
  38.     TextDrawBackgroundColor(HappyNewYearText, 255);
  39.     TextDrawFont(HappyNewYearText, 1);
  40.     TextDrawLetterSize(HappyNewYearText, 1.000000, 4.000000);
  41.     TextDrawColor(HappyNewYearText, 16777215);
  42.     TextDrawSetOutline(HappyNewYearText, 1);
  43.     TextDrawSetProportional(HappyNewYearText, 1);
  44.  
  45.     CounterTimer();
  46.     cTime = SetTimer("CounterTimer", 400, 1);
  47.     return 1;
  48. }
  49.  
  50. public OnFilterScriptExit()
  51. {
  52.     TextDrawDestroy(NYCounter);
  53.     TextDrawDestroy(HappyNewYearText);
  54.     KillTimer(cTime);
  55. }
  56.  
  57. public OnPlayerConnect(playerid)
  58. {
  59.     new year, month, day, hour, minute, second;
  60.     getdate(year, month, day);
  61.     gettime(hour, minute, second);
  62.     if(day == 1 && month == 1 && (second > 0 || hour > 0))
  63.     {
  64.         TextDrawShowForPlayer(playerid, HappyNewYearText);
  65.     }
  66. }
  67.  
  68. forward CounterTimer();
  69. public CounterTimer()
  70. {
  71.     new string[150];
  72.     new year, month, day, hour, minute, second;
  73.     getdate(year, month, day);
  74.     gettime(hour, minute, second);
  75.     if(month == 1 && day == 1)
  76.     {
  77.         TextDrawHideForAll(NYCounter);
  78.         TextDrawShowForAll(HappyNewYearText);
  79.         KillTimer(cTime);
  80.     }
  81.     else
  82.     {
  83.         gettime(hour, minute, second);
  84.  
  85.         new day2;
  86.         switch(month)
  87.         {
  88.             case 1, 3, 5, 7, 8, 10, 12: day2 = 31;
  89.             case 2: { if(year%4 == 0) { day2 = 29; } else { day2 = 28; } }
  90.             case 4, 6, 9, 11: day2 = 30;
  91.         }
  92.         month = 12 - month;
  93.         day = day2 - day;
  94.         hour = 24 - hour;       if(hour == 24) { hour = 0; }        if(minute != 0) { hour--; }
  95.         minute = 60 - minute;   if(minute == 60) { minute = 0; }    if(second != 0) { minute--; }
  96.         second = 60 - second;   if(second == 60) { second = 0; }
  97.  
  98.         #if defined German
  99.         format(string, sizeof(string), "~y~2012: ~g~%02d ~w~Mo, ~g~%02d ~w~T, ~g~%02d ~w~St, ~g~%02d ~w~M, ~g~%02d ~w~S", month, day, hour, minute, second);
  100.         #else
  101.         format(string, sizeof(string), "~y~2012: ~g~%02d ~w~Mo, ~g~%02d ~w~D, ~g~%02d ~w~H, ~g~%02d ~w~M, ~g~%02d ~w~S", month, day, hour, minute, second);
  102.         #endif
  103.         TextDrawHideForAll(NYCounter);
  104.         TextDrawSetString(NYCounter, string);
  105.         TextDrawShowForAll(NYCounter);
  106.     }
  107.     return 1;
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement