hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.29. 09:10



Jelenlévő felhasználók

Jelenleg 333 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 332 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Majestic-12 [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 13 hozzászólás ]  Oldal Előző 1 2
Szerző Üzenet
 Hozzászólás témája: Re: Csetben VIP írása
HozzászólásElküldve: 2013.03.09. 17:35 
Offline
Tiszteletbeli

Csatlakozott: 2010.02.04. 19:12
Hozzászólások: 3528
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 180 alkalommal
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3.  
  4. #define PLUGIN "Admin Chat Colors"
  5. #define VERSION "2.0"
  6. #define AUTHOR "Arion"
  7.  
  8. #define ACCESS_LEVEL ADMIN_IMMUNITY
  9. #define ADMIN_LISTEN ADMIN_LEVEL_C
  10.  
  11. new message[192]
  12. new sayText
  13. new teamInfo
  14. new maxPlayers
  15.  
  16. new g_AdminListen
  17.  
  18. new strName[191]
  19. new alive[11]
  20.  
  21. new const g_szTag[][] = {
  22. "",
  23. "[Tulaj]",
  24. "[ADMIN]",
  25. "[Vegrehajto]",
  26. "[VIP]"
  27. }
  28.  
  29. public plugin_init()
  30. {
  31. register_plugin(PLUGIN, VERSION, AUTHOR)
  32.  
  33. g_AdminListen = register_cvar("amx_listen", "1") // Set whether admins see or not all messages(Alive, dead and team-only)
  34.  
  35.  
  36. sayText = get_user_msgid("SayText")
  37. teamInfo = get_user_msgid("TeamInfo")
  38. maxPlayers = get_maxplayers()
  39.  
  40. register_clcmd("say", "hook_say")
  41. register_clcmd("say_team", "hook_teamsay")
  42. }
  43.  
  44. public hook_say(id)
  45. {
  46. read_args(message, 191)
  47. remove_quotes(message)
  48.  
  49. // Gungame commands and empty messages
  50. if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
  51. return PLUGIN_CONTINUE
  52.  
  53. new name[32]
  54. get_user_name(id, name, 31)
  55.  
  56. new admin = 0, iFlags = get_user_flags(id)
  57.  
  58. if(iFlags & ADMIN_RCON)
  59. admin = 1
  60. else if(iFlags & ADMIN_IMMUNITY)
  61. admin = 2
  62. else if(iFlags & ADMIN_BAN)
  63. admin = 3
  64. else if(iFlags & ADMIN_LEVEL_H)
  65. admin = 4
  66.  
  67. new isAlive
  68.  
  69. if(is_user_alive(id))
  70. {
  71. isAlive = 1
  72. alive = "^x01"
  73. }
  74. else
  75. {
  76. isAlive = 0
  77. alive = "^x01*DEAD* "
  78. }
  79.  
  80. static color[10]
  81.  
  82. if(admin)
  83. {
  84. get_user_team(id, color, 9)
  85. format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
  86. format(message, 191, "%s ^x01:^x04 %s", strName, message)
  87. }
  88. else // Player is not admin. Team-color name : Yellow message
  89. {
  90. get_user_team(id, color, 9)
  91. format(strName, 191, "%s^x03%s", alive, name)
  92. format(message, 191, "^%s^x01 : %s", strName, message)
  93. }
  94.  
  95.  
  96. sendMessage(color, isAlive) // Sends the colored message
  97.  
  98. return PLUGIN_HANDLED
  99. }
  100.  
  101.  
  102. public hook_teamsay(id)
  103. {
  104. new playerTeam = get_user_team(id)
  105. new playerTeamName[19]
  106.  
  107. switch(playerTeam) // Team names which appear on team-only messages
  108. {
  109. case 1:
  110. copy(playerTeamName, 11, "Terrorists")
  111.  
  112. case 2:
  113. copy(playerTeamName, 18, "Counter-Terrorists")
  114.  
  115. default:
  116. copy(playerTeamName, 9, "Spectator")
  117. }
  118.  
  119. read_args(message, 191)
  120. remove_quotes(message)
  121.  
  122. // Gungame commands and empty messages
  123. if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
  124. return PLUGIN_CONTINUE
  125.  
  126. new name[32]
  127. get_user_name(id, name, 31)
  128.  
  129. new admin = 0, iFlags = get_user_flags(id)
  130.  
  131. if(iFlags & ADMIN_RCON)
  132. admin = 1
  133. else if(iFlags & ADMIN_IMMUNITY)
  134. admin = 2
  135. else if(iFlags & ADMIN_BAN)
  136. admin = 3
  137. else if(iFlags & ADMIN_LEVEL_H)
  138. admin = 4
  139.  
  140. new isAlive
  141.  
  142. if(is_user_alive(id))
  143. {
  144. isAlive = 1
  145. alive = "^x01"
  146. }
  147. else
  148. {
  149. isAlive = 0
  150. alive = "^x01*DEAD* "
  151. }
  152.  
  153. static color[10]
  154.  
  155. if(admin)
  156. {
  157. get_user_team(id, color, 9)
  158. format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
  159. format(message, 191, "%s ^x01: ^x04%s", strName, message)
  160. }
  161. else // Player is not admin. Team-color name : Yellow message
  162. {
  163. get_user_team(id, color, 9)
  164. format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
  165. format(message, 191, "%s ^x01: %s", strName, message)
  166. }
  167.  
  168.  
  169. sendTeamMessage(color, isAlive, playerTeam) // Sends the colored message
  170.  
  171. return PLUGIN_HANDLED
  172. }
  173.  
  174. public sendMessage(color[], alive)
  175. {
  176. new teamName[10]
  177.  
  178. for(new player = 1; player < maxPlayers; player++)
  179. {
  180. if(!is_user_connected(player))
  181. continue
  182.  
  183. if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
  184. {
  185. get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
  186. changeTeamInfo(player, color) // Changes user's team according to color choosen
  187. writeMessage(player, message) // Writes the message on player's chat
  188. changeTeamInfo(player, teamName) // Changes user's team back to original
  189. }
  190. }
  191. }
  192.  
  193.  
  194. public sendTeamMessage(color[], alive, playerTeam)
  195. {
  196. new teamName[10]
  197.  
  198. for(new player = 1; player < maxPlayers; player++)
  199. {
  200. if(!is_user_connected(player))
  201. continue
  202.  
  203. if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
  204. {
  205. if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
  206. {
  207. get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
  208. changeTeamInfo(player, color) // Changes user's team according to color choosen
  209. writeMessage(player, message) // Writes the message on player's chat
  210. changeTeamInfo(player, teamName) // Changes user's team back to original
  211. }
  212. }
  213. }
  214. }
  215.  
  216.  
  217. public changeTeamInfo(player, team[])
  218. {
  219. message_begin(MSG_ONE, teamInfo, _, player) // Tells to to modify teamInfo(Which is responsable for which time player is)
  220. write_byte(player) // Write byte needed
  221. write_string(team) // Changes player's team
  222. message_end() // Also Needed
  223. }
  224.  
  225.  
  226. public writeMessage(player, message[])
  227. {
  228. message_begin(MSG_ONE, sayText, {0, 0, 0}, player) // Tells to modify sayText(Which is responsable for writing colored messages)
  229. write_byte(player) // Write byte needed
  230. write_string(message) // Effectively write the message, finally, afterall
  231. message_end() // Needed as always
  232. }
  233.  

_________________
http://www.ebateam.eu/

Ők köszönték meg IrOn nek ezt a hozzászólást: balintfan (2013.03.09. 18:15)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Csetben VIP írása
HozzászólásElküldve: 2013.03.09. 18:15 
Offline
Beavatott
Avatar

Csatlakozott: 2012.04.11. 16:07
Hozzászólások: 87
Megköszönt másnak: 12 alkalommal
Megköszönték neki: 2 alkalommal
Köszi :D
Megy a köszönöm


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Csetben VIP írása
HozzászólásElküldve: 2013.04.08. 15:39 
Offline
Veterán
Avatar

Csatlakozott: 2013.03.26. 20:20
Hozzászólások: 1846
Megköszönt másnak: 27 alkalommal
Megköszönték neki: 120 alkalommal
Kékkel nem lehet íratni sztem.

_________________
Projektem:

[CSO2] Ghost Mod
CSO2 GamePlay video: https://www.youtube.com/watch?feature=p ... iOS4Ik1Yrk


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 13 hozzászólás ]  Oldal Előző 1 2


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 15 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole