hlmod.hu
https://hlmod.hu/

Nap vissza számláló
https://hlmod.hu/viewtopic.php?f=9&t=30368
Oldal: 1 / 1

Szerző:  adriansr14 [ 2020.04.06. 15:05 ]
Hozzászólás témája:  Nap vissza számláló

Sziasztok, hogyan tudom azt elérni, hogy még 12 nap van hátra az eventből?

Tehát megadok mondjuk 30-napot, és ezt a szerver magától vonná vissza fele. (Ne keljen ezmiatt mindig 00:00-kor szerver restartot tenni.)

Válaszaitokat előreis köszönöm!

Szerző:  8mTNNe [ 2020.04.06. 15:48 ]
Hozzászólás témája:  Re: Nap vissza számláló

Szia remélem jól írom, ha tévedek javítsatok.

  1. new event
  2.    
  3. }
  4. public Eventvan(id)
  5. {
  6.     new year, month, day; //dátumot regisztráljuk
  7.     date(year, month, day); //dátumot regisztráljuk date nem time mert akkor az idő óra perc másodperc  date meg év hónap nap
  8.     //Jelenleg neked a nap kell azaz a day
  9.  
  10.     if ( day != 12 )
  11.     {
  12.     event= 1;
  13.     ColorChat(id, GREEN, "Jelenleg 12 napos event van!");
  14.     }
  15.     else
  16.     {
  17.     event= 0;
  18.     ColorChat(id, GREEN, "12 napos event szokott lenni");
  19.     }

Szerző:  adriansr14 [ 2020.04.06. 16:05 ]
Hozzászólás témája:  Re: Nap vissza számláló

Ezt én értem így,de én menüben akarom megjeleníteni, és ott megadok egy 30 napot és a szerver azt számolnia vissza felé.

Szerző:  HellEnergY [ 2020.04.09. 17:22 ]
Hozzászólás témája:  Re: Nap vissza számláló

adriansr14 írta:
Ezt én értem így,de én menüben akarom megjeleníteni, és ott megadok egy 30 napot és a szerver azt számolnia vissza felé.


  1. #include <amxmodx>
  2. #include <amxmisc>
  3.  
  4. #define PLUGIN "New Plug-In"
  5. #define VERSION "1.0"
  6. #define AUTHOR "author"
  7.  
  8. new g_iTime, g_cTime;
  9.  
  10. public plugin_init() {
  11.     register_plugin(PLUGIN, VERSION, AUTHOR);
  12.    
  13.     g_cTime = register_cvar("time_insec", "604800"); //7nap ha több napot akarsz ezt oszd héttel, és szorozd be annyi nappal amennyivel szeretnéd.
  14.    
  15.     register_clcmd("say /asd", "Idoproba");
  16.     register_clcmd("say /add", "Idoprobaadd");
  17. }
  18. public ido_levon(iId)
  19. {
  20.     if(g_iTime != 0)
  21.     {
  22.         g_iTime --;
  23.         set_task(1.0, "ido_levon", iId);
  24.     }
  25.     else
  26.     {
  27.         if(task_exists(iId))
  28.             remove_task(iId);
  29.     }
  30. }
  31. public Idoprobaadd(iId)
  32. {
  33.     g_iTime += get_pcvar_num(g_cTime);
  34.     client_print_color(iId, print_team_default, "Sikeresen addoltal 7 napot!");
  35.     set_task(1.0, "ido_levon", iId);
  36. }
  37. public Idoproba(iId)
  38. {
  39.     if(g_iTime != 0)
  40.     {
  41.        
  42.         new iTimes[4];// iTimes[0] - sec, iTimes[1] - min, iTimes[2] - hr, iTimes[3] - d
  43.         iTimes[0] = g_iTime;
  44.         iTimes[1] = iTimes[0] / 60;
  45.         iTimes[2] = iTimes[1] / 60;
  46.         iTimes[3] = iTimes[2] / 24;
  47.         iTimes[0] = iTimes[0] - iTimes[1] * 60;
  48.         iTimes[1] = iTimes[1] - iTimes[2] * 60;
  49.         iTimes[2] = iTimes[2] - iTimes[3] * 24;
  50.         client_print_color(iId, print_team_default, "Az idobol hatra van: %i nap %i ora %i perc %i masodperc", iTimes[3], iTimes[2], iTimes[1], iTimes[0]);
  51.     }
  52.     else if(g_iTime == 0)
  53.     {
  54.         client_print_color(iId, print_team_default, "Nincs IDOD!");
  55.     }
  56. }


Ezt talán tud segíteni, annyi hogy amikor kilép a játékos törlöd a taskot ahogy benne is van, és amikor fellép a mentett értéket töltöd be neki aztán taskolod, persze ez nem eventre van de át lehet írni hogy arra legyen.

Igen, itt másodpercenként vonja de meg tudod azt is oldani hogy naponként akár.
Eléggé ramaty megoldás de máshogyan nem tudom megoldani xD

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/