hlmod.hu
https://hlmod.hu/

event drop időre
https://hlmod.hu/viewtopic.php?f=9&t=30503
Oldal: 1 / 1

Szerző:  Alekvar [ 2020.06.29. 19:18 ]
Hozzászólás témája:  event drop időre

Sziasztok, csináltam egy droprendszert, és melle szeretnek, hogy eltudjak inditani én is egy "eventet"

  1. if(Drop[id] == 15)
  2. {
  3. Lada[8][id] ++;
  4. Drop[id] = 0;
  5. ColorChat(0, GREEN, "%s^3%s ^1Talált egy: ^4%s^1-t.", Event_Prefix, Nev, LadaNev[8][0]);
  6. }
  7. }


És azt akarom, hogy pl beírom /event - akkor ez a kis dolog kb félóráig müködjön a "drop" aztán befelyeződjön.

Szerző:  Vieni [ 2020.06.29. 19:43 ]
Hozzászólás témája:  Re: event drop időre

Mint előző posztodnál:
dropTime = get_systime() + 60*30

Az ellenőrzése ott megvan

Szerző:  Pika [ 2020.06.29. 19:55 ]
Hozzászólás témája:  Re: event drop időre

Egy boolean ellenőrizze, hogy van-e event. Beírod /event, akkor event == true, elindul mondjuk egy set_task akár, és ha az lejár, akkor az kikapcsolja az eventet.
Csak annyit csinálj, hogy ha már beírták hogy /event, akkor többet ne lehessen, mert elindul megint a set task

Ez a kód biztosan nem működik, meg valószínű nem jól használom a set_task-ot de látszat megvan. Nem vagyok biztos benne, hogy ez elméleteben is oké-e, de elv. jónak kell lennie. A task másodpercben van szerintem szóval 1800mp az 30 perc.
  1. new bool:event = false;
  2.  
  3. public plugin_init() {
  4.     register_plugin(PLUGIN, VERSION, AUTHOR)
  5.     register_clcmd("event", "ev_fgv")
  6. }
  7. public ev_fgv()
  8. {
  9.     if(event == true){
  10.         print_chat(id, "online")
  11.     }
  12.     else
  13.     {
  14.         event == true
  15.         set_task(1800, "lejarat", 0)
  16.     }
  17. }
  18. lejarat
  19.  
  20. event == false


A te kódodban meg ezt is át kell akkor írni

  1. if(Drop[id] == 15 && event == true)

Szerző:  HellEnergY [ 2020.06.30. 10:14 ]
Hozzászólás témája:  Re: event drop időre

Alekvar írta:
Sziasztok, csináltam egy droprendszert, és melle szeretnek, hogy eltudjak inditani én is egy "eventet"

  1. if(Drop[id] == 15)
  2. {
  3. Lada[8][id] ++;
  4. Drop[id] = 0;
  5. ColorChat(0, GREEN, "%s^3%s ^1Talált egy: ^4%s^1-t.", Event_Prefix, Nev, LadaNev[8][0]);
  6. }
  7. }


És azt akarom, hogy pl beírom /event - akkor ez a kis dolog kb félóráig müködjön a "drop" aztán befelyeződjön.


Set_task nelkul akar ahogy Vieni irta:
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <mg_core>
  4.  
  5. #define PLUGIN "New Plug-In"
  6. #define VERSION "1.0"
  7. #define AUTHOR "author"
  8.  
  9. new dropTimeg;
  10.  
  11. public plugin_init() {
  12.     register_plugin(PLUGIN, VERSION, AUTHOR)
  13.    
  14.     register_clcmd("/event", "StartEvent");
  15. }
  16. public StartEvent(iId)
  17. {
  18.     dropTimeg = get_systime() + 60 * 30;
  19.     new sTime[32];
  20.     format_time(sTime , charsmax(sTime), "%H:%M:%S", dropTimeg);
  21.     client_print_color(0, print_team_default, "Az egyik admin EVENTET inditott xy ladara/valamire, %s-ig tart!", sTime);
  22. }
  23. public ChestDrop(iId)
  24. {
  25.     //es akkor ide a ladadropp ellenorzest ha dropTimeg nagyobb vagy egyenlo mint az alap rendszerido, akkor droppol, ha nem - nem.
  26.     //tehat
  27.     if(dropTimeg >= get_systime())
  28.         //droppol ladat
  29.     else
  30.         //nem droppol ladat mert nem nagyobb vagyis lejart, ide akar lehet az alap droppot ha peldaul csak nagyobb esellyel szeretned droppoltatni +%ra
  31. }

Szerző:  Alekvar [ 2020.06.30. 12:07 ]
Hozzászólás témája:  Re: event drop időre

Köszönöm, müködik!

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