HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. //-----------------------------------------------------------------------
  2. #include <amxmodx>
  3. #include <nvault>
  4. //-----------------------------------------------------------------------
  5. #define PLUGIN "Last Visited"
  6. #define VERSION "1.1"
  7. #define AUTHOR "GordonFreeman"
  8. //-----------------------------------------------------------------------
  9. new vault
  10. new const tag[]="[AMXX]"
  11. new chour[6],cmin[6],cday[6],cm[6],cyear[6],ctime[32] // Az idõ lekérése
  12. new bool:g_messages[33],bool:g_sounds[33] // Cvarok
  13. //-----------------------------------------------------------------------
  14. public plugin_init() {
  15. register_plugin(PLUGIN, VERSION, AUTHOR)
  16. // Client commands
  17. register_clcmd("say /lastvisited","say_lastvisited")
  18. register_clcmd("say /lv","say_lastvisited")
  19. // Server commands
  20. register_srvcmd("amx_lv_messages","set_messages") // Köszöntõ üzenet
  21. register_srvcmd("amx_lv_sounds","set_sounds") // Köszöntõ hang lejátszása
  22.  
  23. vault=nvault_open("last_visited") // A Vault fájl neve
  24.  
  25. set_time() // Idõ beállítása
  26. }
  27. //-----------------------------------------------------------------------
  28. public plugin_end(){
  29. nvault_close(vault)
  30. }
  31. //-----------------------------------------------------------------------
  32. public plugin_cfg(){
  33. new messages_status=nvault_get(vault,"set_messages")
  34. new sounds_status=nvault_get(vault,"set_sounds")
  35.  
  36. if(messages_status==0){
  37. g_messages[32]=false
  38. }else{
  39. g_messages[32]=true
  40. }
  41.  
  42. if(sounds_status==0){
  43. g_sounds[32]=false
  44. }else{
  45. g_sounds[32]=true
  46. }
  47. }
  48. //-----------------------------------------------------------------------
  49. public set_time(){
  50. get_time("%H",chour,5)
  51. get_time("%M",cmin,5)
  52. get_time("%d",cday,5)
  53. get_time("%m",cm,5)
  54. get_time("%Y",cyear,5)
  55. get_time("%H:%M:%S - %m/%d/%Y",ctime,31)
  56. }
  57. //-----------------------------------------------------------------------
  58. public client_putinserver(id){
  59. set_time()
  60. set_task(5.0,"check_data",id) // Csatlakozás után hány másodperc múlva írja ki az üzenetet, illetve játsza le a hangot
  61. }
  62. //-----------------------------------------------------------------------
  63. public check_data(id){
  64. set_time()
  65. new user[32],nick[31],value[64]
  66. new shour[6],smin[6],sday[6],sm[6],syear[6]
  67.  
  68. get_user_authid(id,user,31)
  69. get_user_name(id,nick,31)
  70.  
  71. nvault_get(vault,user,value,63)
  72. parse(value,shour,5,smin,5,sday,5,sm,5,syear,5)
  73.  
  74. if(g_messages[32]==true)greet_messages(id)
  75. if(g_sounds[32]==true)greet_sounds(id)
  76.  
  77. if(nvault_get(vault,user)==0){
  78. client_print(id,print_chat,"%s Ez az első látogatásod!",tag)
  79. }else{
  80. client_print(id,print_chat,"%s Utolsó látogatásod: %s:%s - %s/%s/%s",tag,shour,smin,sm,sday,syear)
  81. }
  82.  
  83. save_data(id)
  84. }
  85. //------------------------------------------------------------------------------
  86. public greet_messages(id){
  87. new user[32],hostname[64]
  88.  
  89. new hrs=str_to_num(chour)
  90.  
  91. get_user_name(id,user,31)
  92.  
  93. get_cvar_string("hostname",hostname,63)
  94.  
  95. set_time()
  96.  
  97. if(hrs<12){
  98. client_print(id,print_chat,"%s Jó reggelt %s! Üdv a %s szerveren!",tag,user,hostname)
  99. client_print(id,print_chat,"%s Az idő: %s",tag,ctime)
  100. }else if(hrs<=16){
  101. client_print(id,print_chat,"%s Jó napot %s! Üdv a %s szerveren",tag,user,hostname)
  102. client_print(id,print_chat,"%s Az idő: %s",tag,ctime)
  103. }else if(hrs<=23){
  104. client_print(id,print_chat,"%s Jó estét %s! Üdv a %s szerveren",tag,user,hostname)
  105. client_print(id,print_chat,"%s Az idő: %s",tag,ctime)
  106. }else if(hrs<=03){
  107. client_print(id,print_chat,"%s Jó estét %s! Üdv a %s szerveren",tag,user,hostname)
  108. client_print(id,print_chat,"%s Az idő: %s",tag,ctime)
  109. }else{
  110. client_print(id,print_chat,"%s Szia %s! Üdv a %s szerveren",tag,user,hostname)
  111. client_print(id,print_chat,"%s Az idő: %s",tag,ctime)
  112. }
  113. }
  114. //-------------------------------------------------------------------------------
  115. public greet_sounds(id){
  116. new hrs=str_to_num(chour)
  117.  
  118. new morningsounds[2][]={
  119. "scientist/c1a0_sci_gm(e55)",
  120. "scientist/c1a0_sci_gm1(e60)"
  121. }
  122. new afternoonsounds[5][]={
  123. "scientist/goodtoseeyou",
  124. "scientist/greetings",
  125. "scientist/greetings2",
  126. "scientist/hellofreeman(e35)",
  127. "scientist/hellothere"
  128. }
  129. new evningsounds[3][]={
  130. "scientist/hellothere",
  131. "scientist/greetings",
  132. "scientist/c1a0_sci_itsyou"
  133. }
  134. if(hrs<=12){
  135. client_cmd(id,"spk %s",morningsounds[random_num(0,1)])
  136. }else if(hrs<=16){
  137. client_cmd(id,"spk %s",afternoonsounds[random_num(0,4)])
  138. }else if(hrs<=23){
  139. client_cmd(id,"spk %s",evningsounds[random_num(0,2)])
  140. }
  141. }
  142. //--------------------------------------------------------------------------------
  143. public save_data(id){
  144. new user[32],value[64]
  145.  
  146. get_user_authid(id,user,31)
  147.  
  148. set_time()
  149. formatex(value,63,"%s %s %s %s %s",chour,cmin,cday,cm,cyear)
  150. nvault_set(vault,user,value)
  151. }
  152. //--------------------------------------------------------------------------------
  153. public set_messages(){
  154. if(g_messages[32]==false){
  155. g_messages[32]=true
  156. nvault_set(vault,"set_messages","1")
  157. log_amx(">>> Üdvözlő üzenet bekapcsolva")
  158. server_print("%s Üdvözlő üzenet bekapcsolva",tag)
  159. }else{
  160. g_messages[32]=false
  161. nvault_set(vault,"set_messages","0")
  162. log_amx(">>> Üdvözlő üzenet kikapcsolva")
  163. server_print("%s Üdvözlő üzenet kikapcsolva",tag)
  164. }
  165. }
  166. public set_sounds(){
  167. if(g_sounds[32]==false){
  168. g_sounds[32]=true
  169. nvault_set(vault,"set_sounds","1")
  170. log_amx(">>> Üdvözlő hang bekapcsolva")
  171. server_print("%s Üdvözlő hang bekapcsolva",tag)
  172. }else{
  173. g_sounds[32]=false
  174. nvault_set(vault,"set_sounds","0")
  175. log_amx(">>> Üdvözlő hang kikapcsolva")
  176. server_print("%s Üdvözlő hang kikapcsolva",tag)
  177. }
  178. }
  179. //--------------------------------------------------------------------------------
  180. public say_lastvisited(id){
  181. new shour[6],smin[6],sday[6],sm[6],syear[6],value[64],user[32]
  182.  
  183. get_user_authid(id,user,31)
  184.  
  185. nvault_get(vault,user,value,63)
  186. parse(value,shour,5,smin,5,sday,5,sm,5,syear,5)
  187.  
  188. client_print(id,print_chat,"%s Utolsó látogatásod: %s:%s - %s/%s/%s",tag,shour,smin,sm,sday,syear)
  189. }
  190.