hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.28. 02:41



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: Google [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  [ 19 hozzászólás ]  Oldal 1 2 Következő
Szerző Üzenet
 Hozzászólás témája: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 02:18 
Offline
Beavatott

Csatlakozott: 2014.07.08. 18:46
Hozzászólások: 70
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 1 alkalommal
Hello
Szeretnék egy sima alap SMA ba bele irni a color chet et.
Hogy tudjak szinezni
A segitségeteket szeretném kérni hogy hogyan is lehetséges ezt meg csinálni.
Találtam egy Link et de nem igazán értem
Ha segitenétek meg köszönném :)
http://hlmod.hu/viewtopic.php?f=23&t=2503


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 04:38 
Offline
Minden6ó
Avatar

Csatlakozott: 2011.01.19. 12:14
Hozzászólások: 4280
Megköszönt másnak: 218 alkalommal
Megköszönték neki: 285 alkalommal
Itt egy példa:

1. Lépés. Beírod a plugin elejére a colorchat inc-t így:

Kód:
#include <colorchat>


2. Lépes meg keresed a szöveget és ott a sor ahol kiírja a szöveg én esetem ez:

Kód:
client_printcolor(id, "^4[<<eb@>> - Ajandek]^1 10 Percet jatszotal a szerveren, ^4Loszer Csomag jutalomban reszesultel.", SMALL)


Utána ahogy látod a sor elején nem a ColorChat van így ezt át kell írni és akkor ez így néz ki:

Kód:
ColorChat(0, RED, "^4[<<eb@>> - Ajandek]^1 10 Percet jatszotal a szerveren, ^4Loszer Csomag jutalomban reszesultel.", SMALL)


A 'RED' szócska az a szín mit ahogy kiki is leírta: RED-Piros, BLUE-Kék, GREY-Szürke, GREEN-Zöld, YELLOW-Sárga(alap cs szín), TEAM_COLOR-Csapat szín-Ha ct vagy kék ha terror akkor piros és így tovább.

Idézet:
ColorChat(0, RED, "üzenet")
ColorChat(0, BLUE, "üzenet")
ColorChat(0, GREY, "üzenet")
ColorChat(0, GREEN, "üzenet")
ColorChat(0, YELLOW, "üzenet")


Lehet szerkeszteni azt is hogy csak 1 adott játékosnak írja ki a üzenetet vagy mindenkinek ehez ezt kell szerkeszteni: ColorChat(0, RED, <- A 0-t, lehet írni 'id'-re ami csak egy adott játékosnak írja vagy 'player'-re ami szént csak 1 adott játékosnak írja ki és végül van a '0' ami minden játékosnak kiírja. Bocsi a fura leírásért de kicsit fáradt vagyok már...

És végül a kész kód.
SMA Forráskód: [ Mindet kijelol ]
  1.  
  2. #include <amxmodx>
  3. #include <zombieplague>
  4. #include <colorchat>
  5.  
  6. /*================================================================================
  7.  [Macros]
  8. =================================================================================*/
  9.  
  10. #define SMALL 30
  11. #define AVERAGE 50
  12. #define LARGE 100
  13.  
  14. /*================================================================================
  15.  [Plugin Init]
  16. =================================================================================*/
  17.  
  18. public plugin_init()
  19. {
  20. register_plugin("Time Presents", "0.1", "WPMG Team")
  21. }
  22.  
  23. /*================================================================================
  24.  [Set Tasks]
  25. =================================================================================*/
  26.  
  27. public client_putinserver(id)
  28. {
  29. set_task(600.0, "small_present", id)
  30. set_task(900.0, "average_present", id)
  31. set_task(1200.0, "large_present", id)
  32. }
  33.  
  34. /*================================================================================
  35.  [Remove Task]
  36. =================================================================================*/
  37.  
  38. public client_disconnect(id)
  39. {
  40. if(task_exists(id))
  41. remove_task(id)
  42. }
  43.  
  44. /*================================================================================
  45.  [Give Presents]
  46. =================================================================================*/
  47.  
  48. public small_present(id)
  49. {
  50. zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + SMALL)
  51. ColorChat(0, RED, "^4[<<eb@>> - Ajandek]^1 10 Percet jatszotal a szerveren, ^4Loszer Csomag jutalomban reszesultel.", SMALL)
  52. }
  53.  
  54. public average_present(id)
  55. {
  56. zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + AVERAGE)
  57. ColorChat(0, RED, "^4[<<eb@>> - Ajandek] ^4[<<eb@>> - Ajandek]^1 15 Percet jatszotal a szerveren, ^4Loszer Csomag jutalomban reszesultel.", AVERAGE)
  58. }
  59.  
  60. public large_present(id)
  61. {
  62. zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + LARGE)
  63. ColorChat(0, RED, "^4[<<eb@>> - Ajandek] ^4[<<eb@>> - Ajandek]^1 20 Percet jatszotal a szerveren, ^4Loszer Csomag jutalomban reszesultel.", LARGE)
  64. }
  65.  

_________________
<<eb@>>Team Website - Közösség
17Buddies - Általam készített pályák.
GameBanana - Általam készített pályák/vágott hangok.

Kép
Kép

Ők köszönték meg norbee.16 nek ezt a hozzászólást: david19 (2014.08.04. 06:40)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 06:39 
Offline
Beavatott

Csatlakozott: 2014.07.08. 18:46
Hozzászólások: 70
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 1 alkalommal
Nagyon szépen köszönöm ezt a leirást :)
Nem is számitottam ekkorára hallod:)
De még csak annyit nem értek sajnos hogy ezt az #include <colorchat> et hogyan tudom a sor elejére hejezni
Mert hát biztosan nem elég csak annyi hogy a sor elejére be irom és kész,mert ugy menne :D
Ha tényleg be kell helyezni ezt akkor kérlek ezt a részt is pótold ki nekem hogy világgos legyenn számomra.
Ha gond irni vagy hasonló szivesen jelölnélek Skype on vagy Facebook mindegy nekem :)
Csak ird meg priviben .:P
Ahogy szeretnéd
Csak ez ami még engem nagyon érdekelne fontos .Fogom várni a válaszod előre is köszönöm


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 07:33 
Offline
Beavatott

Csatlakozott: 2014.07.08. 18:46
Hozzászólások: 70
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 1 alkalommal
Itt is van egy próbálkozásom :D
Nem jött össze :D
Csak elé irtam a #include <colorchat> szócskát és ki javitottam amit javasoltál.
Itt van nézd meg mit rontottam el :D
SMA Forráskód: [ Mindet kijelol ]
  1. #include <colorchat>
  2.  
  3. *
  4.  
  5. * Author: Cheesy Peteza
  6.  
  7. * Date: 18-Mar-2004
  8.  
  9. *
  10.  
  11. *
  12.  
  13. * Description: A generic AFK Kicker that should work with nearly all Half-Life mods.
  14.  
  15. * Tested with Natural-Selection v3.0 beta 3, Counter-Strike 1.6 and Day of Defeat.
  16.  
  17. *
  18.  
  19. * Cvars:
  20.  
  21. * mp_afktime 90 Time a player is allowed to be AFK in seconds before they are kicked. (minimum 30 sec)
  22.  
  23. * They time is only accumulated while they are alive.
  24.  
  25. * mp_afkminplayers 8 Minimum number of players required to be on the server before the plugin starts kicking.
  26.  
  27. *
  28.  
  29. *
  30.  
  31. * Requirements: AMXModX
  32.  
  33. *
  34.  
  35. *
  36.  
  37. */
  38.  
  39.  
  40.  
  41. #include <amxmodx>
  42.  
  43.  
  44.  
  45. #define MIN_AFK_TIME 30 // I use this incase stupid admins accidentally set mp_afktime to something silly.
  46.  
  47. #define WARNING_TIME 15 // Start warning the user this many seconds before they are about to be kicked.
  48.  
  49. #define CHECK_FREQ 5 // This is also the warning message frequency.
  50.  
  51.  
  52.  
  53. new g_oldangles[33][3]
  54.  
  55. new g_afktime[33]
  56.  
  57. new bool:g_spawned[33] = {true, ...}
  58.  
  59.  
  60.  
  61. public plugin_init() {
  62.  
  63. register_plugin("AFK Kicker","1.0b","Cheesy Peteza")
  64.  
  65. register_cvar("afk_version", "1.0b", FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_SPONLY)
  66.  
  67.  
  68.  
  69. register_cvar("mp_afktime", "90") // Kick people AFK longer than this time
  70.  
  71. register_cvar("mp_afkminplayers", "8") // Only kick AFKs when there is atleast this many players on the server
  72.  
  73. set_task(float(CHECK_FREQ),"checkPlayers",_,_,_,"b")
  74.  
  75. register_event("ResetHUD", "playerSpawned", "be")
  76.  
  77. }
  78.  
  79.  
  80.  
  81. public checkPlayers() {
  82.  
  83. for (new i = 1; i <= get_maxplayers(); i++) {
  84.  
  85. if (is_user_alive(i) && is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i) && g_spawned[i]) {
  86.  
  87. new newangle[3]
  88.  
  89. get_user_origin(i, newangle)
  90.  
  91.  
  92.  
  93. if ( newangle[0] == g_oldangles[i][0] && newangle[1] == g_oldangles[i][1] && newangle[2] == g_oldangles[i][2] ) {
  94.  
  95. g_afktime[i] += CHECK_FREQ
  96.  
  97. check_afktime(i)
  98.  
  99. } else {
  100.  
  101. g_oldangles[i][0] = newangle[0]
  102.  
  103. g_oldangles[i][1] = newangle[1]
  104.  
  105. g_oldangles[i][2] = newangle[2]
  106.  
  107. g_afktime[i] = 0
  108.  
  109. }
  110.  
  111. }
  112.  
  113. }
  114.  
  115. return PLUGIN_HANDLED
  116.  
  117. }
  118.  
  119.  
  120.  
  121. check_afktime(id) {
  122.  
  123. new numplayers = get_playersnum()
  124.  
  125. new minplayers = get_cvar_num("mp_afkminplayers")
  126.  
  127.  
  128.  
  129. if (numplayers >= minplayers) {
  130.  
  131. new maxafktime = get_cvar_num("mp_afktime")
  132.  
  133. if (maxafktime < MIN_AFK_TIME) {
  134.  
  135. log_amx("cvar mp_afktime %i tul alacsony. Minimum ertek %i.", maxafktime, MIN_AFK_TIME)
  136.  
  137. maxafktime = MIN_AFK_TIME
  138.  
  139. set_cvar_num("mp_afktime", MIN_AFK_TIME)
  140.  
  141. }
  142.  
  143.  
  144.  
  145. if ( maxafktime-WARNING_TIME <= g_afktime[id] < maxafktime) {
  146.  
  147. new timeleft = maxafktime - g_afktime[id]
  148.  
  149. Color_Chat(0,RED, "[AFK Kicker] Van %i masodperc, hogy meg mozdul, vagy ki leszel rugva mert AFK vagy!", timeleft)
  150.  
  151. } else if (g_afktime[id] > maxafktime) {
  152.  
  153. new name[32]
  154.  
  155. get_user_name(id, name, 31)
  156.  
  157. client_print(0, print_chat, "[AFK Kicker] %s kirugva, mert AFK volt %i masodpercig!", name, maxafktime)
  158.  
  159. log_amx("%s kirugva, mert AFK volt %i masodpercig!", name, maxafktime)
  160.  
  161. server_cmd("kick #%d ^"Kickelve lettel! AFK voltal %i masodpercig!^"", get_user_userid(id), maxafktime)
  162.  
  163. }
  164.  
  165. }
  166.  
  167. }
  168.  
  169.  
  170.  
  171. public client_connect(id) {
  172.  
  173. g_afktime[id] = 0
  174.  
  175. return PLUGIN_HANDLED
  176.  
  177. }
  178.  
  179.  
  180.  
  181. public client_putinserver(id) {
  182.  
  183. g_afktime[id] = 0
  184.  
  185. return PLUGIN_HANDLED
  186.  
  187. }
  188.  
  189.  
  190.  
  191. public playerSpawned(id) {
  192.  
  193. g_spawned[id] = false
  194.  
  195. new sid[1]
  196.  
  197. sid[0] = id
  198.  
  199. set_task(0.75, "delayedSpawn",_, sid, 1) // Give the player time to drop to the floor when spawning
  200.  
  201. return PLUGIN_HANDLED
  202.  
  203. }
  204.  
  205.  
  206.  
  207. public delayedSpawn(sid[]) {
  208.  
  209. get_user_origin(sid[0], g_oldangles[sid[0]])
  210.  
  211. g_spawned[sid[0]] = true
  212.  
  213. return PLUGIN_HANDLED
  214.  
  215. }
  216. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  217. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
  218. */
  219.  


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 07:50 
Offline
Beavatott

Csatlakozott: 2014.07.08. 18:46
Hozzászólások: 70
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 1 alkalommal
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

afkproba5.sma(3) : error 010: invalid function or declaration
afkproba5.sma(5) : error 010: invalid function or declaration
afkproba5.sma(7) : error 010: invalid function or declaration
afkproba5.sma(9) : error 010: invalid function or declaration
afkproba5.sma(11) : error 010: invalid function or declaration
afkproba5.sma(13) : error 010: invalid function or declaration
afkproba5.sma(15) : error 010: invalid function or declaration
afkproba5.sma(17) : error 010: invalid function or declaration
afkproba5.sma(19) : error 010: invalid function or declaration
afkproba5.sma(21) : error 010: invalid function or declaration
afkproba5.sma(23) : error 010: invalid function or declaration
afkproba5.sma(25) : error 010: invalid function or declaration
afkproba5.sma(27) : error 010: invalid function or declaration
afkproba5.sma(29) : error 010: invalid function or declaration
afkproba5.sma(31) : error 010: invalid function or declaration
afkproba5.sma(33) : error 010: invalid function or declaration
afkproba5.sma(35) : error 010: invalid function or declaration
afkproba5.sma(37) : error 010: invalid function or declaration
afkproba5.sma(149) : error 017: undefined symbol "Color_Chat"
afkproba5.sma(151) : warning 204: symbol is assigned a value that is never used: "timeleft"
afkproba5.sma(219) : warning 203: symbol is never used: "ColorChat"
afkproba5.sma(219) : warning 203: symbol is never used: "ColorSelection"
afkproba5.sma(219) : warning 203: symbol is never used: "FindPlayer"
afkproba5.sma(219) : warning 203: symbol is never used: "ShowColorMessage"
afkproba5.sma(219) : warning 203: symbol is never used: "Team_Info"

19 Errors.
Could not locate output file afkproba5.amx (compile failed).


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 07:54 
Szerintem az a baj hogy csak a "colorchat" van ott ahogy simma a plugin oda irod az elejere PL igy
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <colorchat>


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 07:58 
Offline
Beavatott

Csatlakozott: 2014.07.08. 18:46
Hozzászólások: 70
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 1 alkalommal
Köszönöm hogy segiteni próbálsz :)
De sajnos ugyan annyi a hiba :(
Lehetséges ezt az include colorchat et be kell hejezni valahová,csak arra tudok gondolni már. :(


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 08:01 
Igy már csak egy Hiba van
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <colorchat>
  4.  
  5. *
  6.  
  7. * Author: Cheesy Peteza
  8.  
  9. * Date: 18-Mar-2004
  10.  
  11. *
  12.  
  13. *
  14.  
  15. * Description: A generic AFK Kicker that should work with nearly all Half-Life mods.
  16.  
  17. * Tested with Natural-Selection v3.0 beta 3, Counter-Strike 1.6 and Day of Defeat.
  18.  
  19. *
  20.  
  21. * Cvars:
  22.  
  23. * mp_afktime 90 Time a player is allowed to be AFK in seconds before they are kicked. (minimum 30 sec)
  24.  
  25. * They time is only accumulated while they are alive.
  26.  
  27. * mp_afkminplayers 8 Minimum number of players required to be on the server before the plugin starts kicking.
  28.  
  29. *
  30.  
  31. *
  32.  
  33. * Requirements: AMXModX
  34.  
  35. *
  36.  
  37. *
  38.  
  39. */
  40.  
  41.  
  42.  
  43. #include <amxmodx>
  44.  
  45.  
  46.  
  47. #define MIN_AFK_TIME 30 // I use this incase stupid admins accidentally set mp_afktime to something silly.
  48.  
  49. #define WARNING_TIME 15 // Start warning the user this many seconds before they are about to be kicked.
  50.  
  51. #define CHECK_FREQ 5 // This is also the warning message frequency.
  52.  
  53.  
  54.  
  55. new g_oldangles[33][3]
  56.  
  57. new g_afktime[33]
  58.  
  59. new bool:g_spawned[33] = {true, ...}
  60.  
  61.  
  62.  
  63. public plugin_init() {
  64.  
  65. register_plugin("AFK Kicker","1.0b","Cheesy Peteza")
  66.  
  67. register_cvar("afk_version", "1.0b", FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_SPONLY)
  68.  
  69.  
  70.  
  71. register_cvar("mp_afktime", "90") // Kick people AFK longer than this time
  72.  
  73. register_cvar("mp_afkminplayers", "8") // Only kick AFKs when there is atleast this many players on the server
  74.  
  75. set_task(float(CHECK_FREQ),"checkPlayers",_,_,_,"b")
  76.  
  77. register_event("ResetHUD", "playerSpawned", "be")
  78.  
  79. }
  80.  
  81.  
  82.  
  83. public checkPlayers() {
  84.  
  85. for (new i = 1; i <= get_maxplayers(); i++) {
  86.  
  87. if (is_user_alive(i) && is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i) && g_spawned[i]) {
  88.  
  89. new newangle[3]
  90.  
  91. get_user_origin(i, newangle)
  92.  
  93.  
  94.  
  95. if ( newangle[0] == g_oldangles[i][0] && newangle[1] == g_oldangles[i][1] && newangle[2] == g_oldangles[i][2] ) {
  96.  
  97. g_afktime[i] += CHECK_FREQ
  98.  
  99. check_afktime(i)
  100.  
  101. } else {
  102.  
  103. g_oldangles[i][0] = newangle[0]
  104.  
  105. g_oldangles[i][1] = newangle[1]
  106.  
  107. g_oldangles[i][2] = newangle[2]
  108.  
  109. g_afktime[i] = 0
  110.  
  111. }
  112.  
  113. }
  114.  
  115. }
  116.  
  117. return PLUGIN_HANDLED
  118.  
  119. }
  120.  
  121.  
  122.  
  123. check_afktime(id) {
  124.  
  125. new numplayers = get_playersnum()
  126.  
  127. new minplayers = get_cvar_num("mp_afkminplayers")
  128.  
  129.  
  130.  
  131. if (numplayers >= minplayers) {
  132.  
  133. new maxafktime = get_cvar_num("mp_afktime")
  134.  
  135. if (maxafktime < MIN_AFK_TIME) {
  136.  
  137. log_amx("cvar mp_afktime %i tul alacsony. Minimum ertek %i.", maxafktime, MIN_AFK_TIME)
  138.  
  139. maxafktime = MIN_AFK_TIME
  140.  
  141. set_cvar_num("mp_afktime", MIN_AFK_TIME)
  142.  
  143. }
  144.  
  145.  
  146.  
  147. if ( maxafktime-WARNING_TIME <= g_afktime[id] < maxafktime) {
  148.  
  149. new timeleft = maxafktime - g_afktime[id]
  150.  
  151. Color_Chat(0,RED, "[AFK Kicker] Van %i masodperc, hogy meg mozdul, vagy ki leszel rugva mert AFK vagy!", timeleft)
  152.  
  153. } else if (g_afktime[id] > maxafktime) {
  154.  
  155. new name[32]
  156.  
  157. get_user_name(id, name, 31)
  158.  
  159. client_print(0, print_chat, "[AFK Kicker] %s kirugva, mert AFK volt %i masodpercig!", name, maxafktime)
  160.  
  161. log_amx("%s kirugva, mert AFK volt %i masodpercig!", name, maxafktime)
  162.  
  163. server_cmd("kick #%d ^"Kickelve lettel! AFK voltal %i masodpercig!^"", get_user_userid(id), maxafktime)
  164.  
  165. }
  166.  
  167. }
  168.  
  169. }
  170.  
  171.  
  172.  
  173. public client_connect(id) {
  174.  
  175. g_afktime[id] = 0
  176.  
  177. return PLUGIN_HANDLED
  178.  
  179. }
  180.  
  181.  
  182.  
  183. public client_putinserver(id) {
  184.  
  185. g_afktime[id] = 0
  186.  
  187. return PLUGIN_HANDLED
  188.  
  189. }
  190.  
  191.  
  192.  
  193. public playerSpawned(id) {
  194.  
  195. g_spawned[id] = false
  196.  
  197. new sid[1]
  198.  
  199. sid[0] = id
  200.  
  201. set_task(0.75, "delayedSpawn",_, sid, 1) // Give the player time to drop to the floor when spawning
  202.  
  203. return PLUGIN_HANDLED
  204.  
  205. }
  206.  
  207.  
  208.  
  209. public delayedSpawn(sid[]) {
  210.  
  211. get_user_origin(sid[0], g_oldangles[sid[0]])
  212.  
  213. g_spawned[sid[0]] = true
  214.  
  215. return PLUGIN_HANDLED
  216.  
  217. }
  218. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  219. *{\ rtf1\ ansi\ deff0{\ fonttbl{\ f0\ fnil Tahoma;}}n\ viewkind4\ uc1\ pard\ lang1038\ f0\ fs16 n\ par }
  220. */


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 08:01 
Offline
Beavatott

Csatlakozott: 2014.07.08. 18:46
Hozzászólások: 70
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 1 alkalommal
Csatolmány:
Magyarázat: Valami ilyesmiről is olvastam csak nem értem hogy hová kell mit kell stb
colorchat.inc [1.92 KiB]
Letöltve 64 alkalommal.
Ilyen is van hallotam róla


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pluginba szinezést irni
HozzászólásElküldve: 2014.08.04. 08:18 
Tessek proba nem volt

SMX Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <colorchat>
  4.  
  5.  
  6.  
  7. #define MIN_AFK_TIME 30 // I use this incase stupid admins accidentally set mp_afktime to something silly.
  8.  
  9. #define WARNING_TIME 15 // Start warning the user this many seconds before they are about to be kicked.
  10.  
  11. #define CHECK_FREQ 5 // This is also the warning message frequency.
  12.  
  13.  
  14.  
  15. new g_oldangles[33][3]
  16.  
  17. new g_afktime[33]
  18.  
  19. new bool:g_spawned[33] = {true, ...}
  20.  
  21.  
  22.  
  23. public plugin_init() {
  24.  
  25. register_plugin("AFK Kicker","1.0b","Cheesy Peteza")
  26.  
  27. register_cvar("afk_version", "1.0b", FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_SPONLY)
  28.  
  29.  
  30.  
  31. register_cvar("mp_afktime", "90") // Kick people AFK longer than this time
  32.  
  33. register_cvar("mp_afkminplayers", "8") // Only kick AFKs when there is atleast this many players on the server
  34.  
  35. set_task(float(CHECK_FREQ),"checkPlayers",_,_,_,"b")
  36.  
  37. register_event("ResetHUD", "playerSpawned", "be")
  38.  
  39. }
  40.  
  41.  
  42.  
  43. public checkPlayers() {
  44.  
  45. for (new i = 1; i <= get_maxplayers(); i++) {
  46.  
  47. if (is_user_alive(i) && is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i) && g_spawned[i]) {
  48.  
  49. new newangle[3]
  50.  
  51. get_user_origin(i, newangle)
  52.  
  53.  
  54.  
  55. if ( newangle[0] == g_oldangles[i][0] && newangle[1] == g_oldangles[i][1] && newangle[2] == g_oldangles[i][2] ) {
  56.  
  57. g_afktime[i] += CHECK_FREQ
  58.  
  59. check_afktime(i)
  60.  
  61. } else {
  62.  
  63. g_oldangles[i][0] = newangle[0]
  64.  
  65. g_oldangles[i][1] = newangle[1]
  66.  
  67. g_oldangles[i][2] = newangle[2]
  68.  
  69. g_afktime[i] = 0
  70.  
  71. }
  72.  
  73. }
  74.  
  75. }
  76.  
  77. return PLUGIN_HANDLED
  78.  
  79. }
  80.  
  81.  
  82.  
  83. check_afktime(id) {
  84.  
  85. new numplayers = get_playersnum()
  86.  
  87. new minplayers = get_cvar_num("mp_afkminplayers")
  88.  
  89.  
  90.  
  91. if (numplayers >= minplayers) {
  92.  
  93. new maxafktime = get_cvar_num("mp_afktime")
  94.  
  95. if (maxafktime < MIN_AFK_TIME) {
  96.  
  97. log_amx("cvar mp_afktime %i tul alacsony. Minimum ertek %i.", maxafktime, MIN_AFK_TIME)
  98.  
  99. maxafktime = MIN_AFK_TIME
  100.  
  101. set_cvar_num("mp_afktime", MIN_AFK_TIME)
  102.  
  103. }
  104.  
  105.  
  106.  
  107. if ( maxafktime-WARNING_TIME <= g_afktime[id] < maxafktime) {
  108.  
  109. new timeleft = maxafktime - g_afktime[id]
  110.  
  111. ColorChat(0,RED, "[AFK Kicker] Van %i masodperc, hogy meg mozdul, vagy ki leszel rugva mert AFK vagy!", timeleft)
  112.  
  113. } else if (g_afktime[id] > maxafktime) {
  114.  
  115. new name[32]
  116.  
  117. get_user_name(id, name, 31)
  118.  
  119. client_print(0, print_chat, "[AFK Kicker] %s kirugva, mert AFK volt %i masodpercig!", name, maxafktime)
  120.  
  121. log_amx("%s kirugva, mert AFK volt %i masodpercig!", name, maxafktime)
  122.  
  123. server_cmd("kick #%d ^"Kickelve lettel! AFK voltal %i masodpercig!^"", get_user_userid(id), maxafktime)
  124.  
  125. }
  126.  
  127. }
  128.  
  129. }
  130.  
  131.  
  132.  
  133. public client_connect(id) {
  134.  
  135. g_afktime[id] = 0
  136.  
  137. return PLUGIN_HANDLED
  138.  
  139. }
  140.  
  141.  
  142.  
  143. public client_putinserver(id) {
  144.  
  145. g_afktime[id] = 0
  146.  
  147. return PLUGIN_HANDLED
  148.  
  149. }
  150.  
  151.  
  152.  
  153. public playerSpawned(id) {
  154.  
  155. g_spawned[id] = false
  156.  
  157. new sid[1]
  158.  
  159. sid[0] = id
  160.  
  161. set_task(0.75, "delayedSpawn",_, sid, 1) // Give the player time to drop to the floor when spawning
  162.  
  163. return PLUGIN_HANDLED
  164.  
  165. }
  166.  
  167.  
  168.  
  169. public delayedSpawn(sid[]) {
  170.  
  171. get_user_origin(sid[0], g_oldangles[sid[0]])
  172.  
  173. g_spawned[sid[0]] = true
  174.  
  175. return PLUGIN_HANDLED
  176.  
  177. }
  178. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  179.   *{\ rtf1\ ansi\ deff0{\ fonttbl{\ f0\ fnil Tahoma;}}n\ viewkind4\ uc1\ pard\ lang1038\ f0\ fs16 n\ par }
  180.   */


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  [ 19 hozzászólás ]  Oldal 1 2 Következő


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 47 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