hlmod.hu
https://hlmod.hu/

Idő levonás...
https://hlmod.hu/viewtopic.php?f=9&t=13119
Oldal: 1 / 1

Szerző:  laki5000 [2013.12.07. 15:25 ]
Hozzászólás témája:  Idő levonás...

Hello. Hogy kell helyesen megcsinálni, hogy egy változónál másodpercenként 1-gyet levonjon, de azt mindenkinek, tehát egy eseménykor az a változó mindenkinek 30 lesz, másodpercenként 1-et elvesz belőle.

Én így oldottam meg, de másodpercenként 4-et von le.
SMA Forráskód: [ Mindet kijelol ]
  1.  
  2. new ido
  3.  
  4. egy helyre:
  5. set_task(1.0, "idolevonas",_,_,_,"b")
  6.  
  7. és ugye a public:
  8. public idolevonas()
  9. {
  10. ido--
  11. }
  12.  


itt mi a hiba?

Szerző:  Vinnice [2013.12.07. 16:03 ]
Hozzászólás témája:  Re: Idő levonás...

Ha beírod azt ,hogy szamol akkor el kezd számolni 30-tól és 0-nál kiírja ,hogy Itt a Vége.

SMA Forráskód: [ Mindet kijelol ]
  1. #include < amxmodx >
  2. #include < amxmisc >
  3.  
  4. #define VERSION "0.0.1"
  5.  
  6. #define TASKID 13443584
  7.  
  8. new g_iSzam[ 33 ];
  9.  
  10. public plugin_init ( ) {
  11. register_plugin( "Project 1", VERSION, "#YouCantStopMe" );
  12.  
  13. register_clcmd( "say szamol", "szamolas" );
  14. }
  15.  
  16. public szamolas ( id )
  17. {
  18. if( !task_exists( id + TASKID ) ) //Ha nem fut ez a task akkor
  19. {
  20. g_iSzam[ id ] = 30; //beállítjuk az értékét
  21.  
  22. set_task( 1.0, "CountDown", TASKID + id, "", _, "b" ); //Létrehozzuk a taskot
  23. }
  24. client_print( id, print_chat, "Szamod: %d", g_iSzam[ id ] ) //kiírjuk az értékét
  25. }
  26.  
  27. public CountDown ( id )
  28. {
  29. id -= TASKID;
  30.  
  31. g_iSzam[ id ] -= 1 //levonunk 1-et
  32.  
  33. szamolas ( id ); //Meghívjuk az előző függvényt
  34.  
  35. if( g_iSzam[ id ] <= 0 ) //ha 0 vagy kisebb ,mint 0 akkor...
  36. {
  37. remove_task( TASKID + id ); //töröljük a taskot
  38. client_print( id, print_chat, "Itt a vege" ); //kiírjuk az üzenetet
  39. g_iSzam[ id ] = 30; //visszaállítjuk az értéket.
  40. }
  41. }

Szerző:  laki5000 [2013.12.07. 17:39 ]
Hozzászólás témája:  Re: Idő levonás...

nem érted mit akarok. Azt akarom hogy mindenkinek számoljon vissza

Szerző:  RaZzoR [2013.12.07. 17:42 ]
Hozzászólás témája:  Re: Idő levonás...

SMA Forráskód: [ Mindet kijelol ]
  1. new ido
  2.  
  3. public asd()
  4. {
  5. //.....
  6. set_task(1.0, "idolevonas")
  7. } 
  8.  
  9. public idolevonas()
  10. {
  11. ido--
  12. set_task(1.0, "idolevonas")
  13. }
  14.  

Szerző:  laki5000 [2013.12.07. 17:47 ]
Hozzászólás témája:  Re: Idő levonás...

ez nekem is megvan, csak rövidebbe, de ha ketten vagyunk fenn a szerveren, akkor másodpercenként 2-t von le...

Szerző:  RaZzoR [2013.12.07. 17:49 ]
Hozzászólás témája:  Re: Idő levonás...

talán az ido változónak értéket kellene adni, pl: ido = 1

Szerző:  CrB [2013.12.08. 13:22 ]
Hozzászólás témája:  Re: Idő levonás...

tessék
SMA Forráskód: [ Mindet kijelol ]
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5.  
  6. #define PLUGIN "New Plug-In"
  7. #define VERSION "1.0"
  8. #define AUTHOR "author"
  9.  
  10. new counter
  11. public plugin_init() {
  12. register_plugin(PLUGIN, VERSION, AUTHOR)
  13. set_task(1.0, "szamlalo",_,_,_,"b")
  14. counter = 99999
  15. }
  16. public szamlalo() {
  17. if(counter > 0) {
  18. counter--
  19. }
  20. }
  21.  

Szerző:  laki5000 [2013.12.09. 14:41 ]
Hozzászólás témája:  Re: Idő levonás...

ugyan ezt csináltam meg más névvel, de emberenként levon 1-gyet:C

Szerző:  HuBaBuBa [2013.12.09. 17:15 ]
Hozzászólás témája:  Re: Idő levonás...

SMA Forráskód: [ Mindet kijelol ]
  1. #define TASKID 1996

SMA Forráskód: [ Mindet kijelol ]
  1. RegisterHam(Ham_Spawn, "player", "Cmdround", 1)

SMA Forráskód: [ Mindet kijelol ]
  1. public Cmdround(id)
  2. {
  3. if(!is_user_alive(id))
  4. return PLUGIN_HANDLED
  5.  
  6. if (task_exists(TASKID))
  7. remove_task(TASKID)
  8.  
  9. Timer = 10
  10. set_task(1.0, "Cmdcountdown", TASKID, _, _, "a", Timer)
  11.  
  12. return PLUGIN_CONTINUE
  13. }

SMA Forráskód: [ Mindet kijelol ]
  1. public Cmdcountdown(id)
  2. {
  3. Timer--
  4.  
  5. if (Timer > 0)
  6. {
  7. set_hudmessage(255, 0, 0, -1.0, 0.03, 0, 0.1, 1.0, 0.1, 0.1, 2)
  8. show_hudmessage(0, "%i", Timer)
  9. }
  10. }

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