hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.28. 21:26



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: nincs regisztrált felhasználó 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  [ 6 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: xp / level mod + ichat
HozzászólásElküldve: 2017.11.06. 19:44 
Offline
GFX-Designer
Avatar

Csatlakozott: 2015.03.12. 15:06
Hozzászólások: 624
Megköszönt másnak: 199 alkalommal
Megköszönték neki: 78 alkalommal
Megoldva!

_________________
„Nem azért felejtünk el játszani, mert megöregszünk, hanem attól öregszünk meg, hogy elfelejtünk játszani.”

-MAXHACKED Website-
-HERViD Website-
► Spoiler mutatása


A hozzászólást 1 alkalommal szerkesztették, utoljára *GrafitY* 2017.11.10. 20:02-kor.

Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: xp / level mod + ichat
HozzászólásElküldve: 2017.11.06. 21:20 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 964
Megköszönt másnak: 102 alkalommal
Megköszönték neki: 134 alkalommal
*GrafitY* írta:
Megoldva!


UUUU.. pedig pont most akartam leírni a megoldást (láttam hamarabb a topicot, de hát most értem géphez, nos örülök hogy megoldódott)

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!

Ők köszönték meg The Peace nek ezt a hozzászólást: *GrafitY* (2017.11.06. 21:23)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: xp / level mod + ichat
HozzászólásElküldve: 2017.11.06. 21:24 
Offline
GFX-Designer
Avatar

Csatlakozott: 2015.03.12. 15:06
Hozzászólások: 624
Megköszönt másnak: 199 alkalommal
Megköszönték neki: 78 alkalommal
The Peace írta:
*GrafitY* írta:
Megoldva!


UUUU.. pedig pont most akartam leírni a megoldást (láttam hamarabb a topicot, de hát most értem géphez, nos örülök hogy megoldódott)


Írd le privátban. ;)

_________________
„Nem azért felejtünk el játszani, mert megöregszünk, hanem attól öregszünk meg, hogy elfelejtünk játszani.”

-MAXHACKED Website-
-HERViD Website-
► Spoiler mutatása


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: xp / level mod + ichat
HozzászólásElküldve: 2017.11.06. 21:33 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 964
Megköszönt másnak: 102 alkalommal
Megköszönték neki: 134 alkalommal
*GrafitY* írta:
The Peace írta:
*GrafitY* írta:
Megoldva!


UUUU.. pedig pont most akartam leírni a megoldást (láttam hamarabb a topicot, de hát most értem géphez, nos örülök hogy megoldódott)


Írd le privátban. ;)


Leírnám ha nem töröltem volna az Unitled.sma-t (de ha megint leírod nekem pm-be azt hogy mit akartál akkor megoldom:D)


Készen volna, privátban megtalálod (ha valami nem lenne elérhető STEAM-on írj.)

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: xp / level mod + ichat
HozzászólásElküldve: 2017.11.10. 20:37 
Offline
GFX-Designer
Avatar

Csatlakozott: 2015.03.12. 15:06
Hozzászólások: 624
Megköszönt másnak: 199 alkalommal
Megköszönték neki: 78 alkalommal
További problémák:
1. Mivel iChat - v2.3.3 használok, és mikor be rakom az XP / Level plugint, az iChat nem működik. (pedig .ini-ben utolsó sorban van.)
2. Nem működik a(z) /xp és /level parancs.
3. Kapok egy hibát is fordításkor:

Error: Expected token: "}", but found "-string-" on line 175

Valaki?

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <nvault>  
  4. #include <colorchat>
  5. #include <cstrike>
  6. #include <fun>
  7. #include <hamsandwich>
  8. #include <fakemeta>
  9.  
  10. new Level[33], XP[33]
  11. new KillXp, HSXp, HEXp
  12. new Vault
  13.  
  14. new const szPrefix[] = "^4[XP / Level]"
  15.  
  16. #define MaxLevels 12  
  17. #define IsPlayer(%1) ( 1 <= %1 <=  g_iMaxPlayers )
  18. #define TASK_SHOW_HUD 10113
  19.  
  20. new msgHudSync
  21. new bool:is_user_ignored[ 33 ]
  22.  
  23. new const Levels[MaxLevels] = {
  24.     100, // Újonc #1
  25.     150, // Legénység #2
  26.     200, // Közkatona #3
  27.     250, // Őrvezető #4
  28.     300, // Tizedes #5
  29.     350, // Szakaszvezető #6
  30.     400, // Altiszt #7
  31.     450, // Tiszthelyettes #8
  32.     550, // Őrmester #9
  33.     600, // Törzsőrmester #10
  34.     650, // Főtörzsőrmester #11
  35.     700, // Zászlós #12
  36.     750, // Törzszászlós #13
  37.     800, // Főtörzszászlós #14
  38.     850, // Tiszt #15
  39.     900, // Hadnagy #16
  40.     950, // Főhadnagy #17
  41.     1100, // Százados #18
  42.     1250, // Főtiszt #19
  43.     1350, // Őrnagy #20
  44.     1500, // Alezredes #21
  45.     1750, // Ezredes #22
  46.     2000, // Tábornok #23
  47.     2250, // Dandártábornok #24
  48.     2500, // Vezérőrnagy #25
  49.     2750, // Altábornagy #26
  50.     3000, // Vezérezredes #27
  51.     3500, // Hadseregtábornok  #28
  52.     4000 // Marsall #29
  53. }
  54. new const Prefix[MaxLevels +1][] ={
  55.     "Újonc", // 1
  56.     "Legénység", // 2
  57.     "Közkatona",  // 3
  58.     "Őrvezető", // 4
  59.     "Tizedes", // 5
  60.     "Szakaszvezető",  // 6
  61.     "Altiszt", // 7
  62.     "Tiszthelyettes", // 8
  63.     "Őrmester", // 9
  64.     "Törzsőrmester", // 10
  65.     "Főtörzsőrmester", // 11
  66.     "Zászlós", // 12
  67.     "Törzszászlós" // 13
  68.     "Főtörzszászlós" // 14
  69.     "Tiszt" // 15
  70.     "Hadnagy" // 16
  71.     "Főhadnagy" // 17
  72.     "Százados" // 18
  73.     "Főtiszt" // 19
  74.     "Őrnagy" // 20
  75.     "Alezredes" // 21
  76.     "Ezredes" // 22
  77.     "Tábornok" // 23
  78.     "Dandártábornok" // 24
  79.     "Vezérőrnagy" // 25
  80.     "Altábornagy" // 26
  81.     "Vezérezredes" // 27
  82.     "Hadseregtábornok" // 28
  83.     "Marsall" // 29
  84. }
  85.  
  86. // Bonus Stuff
  87. new healthperlevel,armorperlevel,damageperlevel,maxplayers
  88.  
  89.  
  90.  
  91.  
  92. public plugin_init()
  93. {
  94.     register_plugin("sDeathrun XP & Level Mod", "1.0.2", "Freestyle")
  95.    
  96.    
  97.     RegisterHam ( Ham_Spawn, "player", "Ham_CheckOthers_Bonus", 1);
  98.     RegisterHam ( Ham_TakeDamage, "player", "Ham_CheckDamage_Bonus", .Post = false );
  99.    
  100.     maxplayers = get_maxplayers( );
  101.    
  102.     register_cvar( "dr_staff_tags", "1" ); // default 1 (enable)
  103.     register_cvar( "dr_reward_msgs", "1" ); // default 1 (enable)
  104.    
  105.     register_clcmd("say","handlesay")
  106.     register_clcmd("say_team","handlesay")
  107.     register_clcmd ( "say /xp", "ShowPlayerXP")
  108.     register_clcmd ( "say_team /xp", "ShowPlayerXP")
  109.     register_clcmd ( "say /level", "ShowPlayerLevel")
  110.     register_clcmd ( "say_team /level", "ShowPlayerLevel")
  111.    
  112.    
  113.     KillXp  = register_cvar("dr_exp_kill", "5") // Experience for killing a player
  114.     HSXp    = register_cvar("dr_exp_hs", "10") // Experience for killing a player with HeadShot
  115.     HEXp    = register_cvar("dr_exp_nade_kill", "10") // Experience for killing a player with a HE Grenade
  116.    
  117.    
  118.     register_concmd ( "dr_exp_give", "CmdAddXP", ADMIN_RCON, "<nick, #userid, authid | @all> <xp>" )
  119.     register_concmd ( "dr_exp_remove", "CmdRemoveXP", ADMIN_RCON, "<nick, #userid, authid | @all> <xp>" )
  120.    
  121.    
  122.     healthperlevel  = register_cvar("dr_health_per_lvl", "10")
  123.     armorperlevel   = register_cvar("dr_armor_per_lvl", "10")
  124.     damageperlevel  = register_cvar("damage_per_lvl", "10")
  125.    
  126.     msgHudSync = CreateHudSyncObj()
  127. }
  128.  
  129. public plugin_cfg( )
  130. {  
  131.     Vault = nvault_open( "DEATHRUN_XP" )
  132.    
  133.     if ( Vault == INVALID_HANDLE )
  134.         set_fail_state( "Error opening nVault" );
  135. }
  136.  
  137. /*      INFO ABOUT PERSONAL XP/LEVEL      */
  138. public ShowPlayerXP(id)
  139. {
  140.     ColorChat(id, GREY, "%s^1 You have ^3%i^1 of Experience and your Level are ^3%s^1!", szPrefix, XP[id], Prefix[Level[id]])
  141. }
  142.  
  143. public ShowPlayerLevel(id)
  144. {
  145.     new name[32]
  146.     get_user_name(id, name, sizeof(name) -1)
  147.    
  148.     ColorChat(id, GREY, "%s^1 You are Level ^3%s^1 with ^3%i^1 of Experience!", szPrefix, Prefix[Level[id]], XP[id])
  149. }
  150.  
  151. public Ham_CheckDamage_Bonus( pevVictim, pevInflictor, pevAttacker, Float:flDamage, iDmgBits )
  152. {
  153.     if( !( 1 <= pevAttacker <= maxplayers) )
  154.     {
  155.         return HAM_HANDLED;
  156.     }
  157.    
  158.     if( !is_user_alive( pevAttacker )  )
  159.     {
  160.         return HAM_HANDLED;
  161.     }
  162.    
  163.     SetHamParamFloat( 4 , flDamage + ( get_pcvar_num( damageperlevel ) * Level[ pevAttacker ] ) )
  164.    
  165.     return HAM_IGNORED;
  166. }
  167.  
  168. /*      HP & AP & Gravity Check      */
  169. public Ham_CheckOthers_Bonus(id)
  170. {
  171.     if( !is_user_alive( id ) || cs_get_user_team( id ) != CS_TEAM_T )
  172.         return HAM_IGNORED;
  173.    
  174.     // HP Check
  175.     new HPCheck = ( get_user_health(id) + get_pcvar_num(healthperlevel) * Level[ id ] );
  176.     set_user_health( id, HPCheck );
  177.    
  178.     // AP Check
  179.     new APCheck = ( get_user_armor(id) + get_pcvar_num(armorperlevel) * Level[ id ] );
  180.     set_user_armor( id, APCheck );
  181.    
  182.    
  183.     remove_task( TASK_SHOW_HUD + id );    
  184.    
  185.     set_task(0.1, "ShowHud", TASK_SHOW_HUD + id)
  186.    
  187.     return HAM_IGNORED;
  188. }
  189.  
  190. /*      Respected Player Join / Leave Stuff      */
  191.  
  192. public LvL_12_PlayerJoin(id)
  193. {
  194.     new name[32]
  195.     get_user_name(id, name, sizeof(name) -1)
  196.    
  197.     ColorChat(0, GREY, "%s ^3Respected Player : ^4%s^1 has joined with ^3%i^1 of Experience!", szPrefix, name, XP[id])
  198. }
  199.  
  200. public LvL_12_PlayerRemove(id)
  201. {
  202.     new name[32]
  203.     get_user_name(id, name, sizeof(name) -1)
  204.    
  205.     ColorChat(0, GREY, "%s ^3Respected Player : ^4%s^1 has left with ^3%i^1 of Experience!", szPrefix, name, XP[id])
  206. }
  207.  
  208. public plugin_end( )
  209.     nvault_close( Vault )
  210.  
  211. public client_putinserver(id)
  212. {
  213.     LoadData(id)
  214.     set_task( 3.0, "ShowHud", id, .flags = "b" );
  215.    
  216.     if(Level[id] == 12)
  217.     {
  218.         set_task(5.0, "LvL_12_PlayerJoin", id)
  219.     }
  220. }
  221.  
  222. public client_disconnect(id)
  223. {
  224.     SaveData(id)
  225.    
  226.     if(Level[id] == 12)
  227.     {
  228.         set_task(1.0, "LvL_12_PlayerRemove", id)
  229.     }
  230. }
  231.  
  232. /*      XP REWARDS      */
  233. public client_death( iKiller, iVictim, wpnindex, hitplace )
  234. {
  235.     new vname[32]
  236.     new kname[32]
  237.    
  238.     get_user_name( iKiller, kname, charsmax( kname ) )
  239.     get_user_name( iVictim, vname, charsmax( vname ) )
  240.    
  241.     if( is_user_ignored[ iKiller ] )
  242.         return PLUGIN_HANDLED_MAIN
  243.    
  244.     get_user_name( iKiller, kname, charsmax( kname ) )
  245.     get_user_name( iVictim, vname, charsmax( vname ) )
  246.    
  247.     if( iKiller != iVictim && ( 1 <= iKiller <= maxplayers ) && ( 1 <= iVictim <= maxplayers ) && !( hitplace == HIT_HEAD ) && !( wpnindex == CSW_HEGRENADE ) )
  248.     {
  249.         XP[iKiller] += get_pcvar_num(KillXp)
  250.        
  251.         if( get_cvar_num("XP_Reward_MSG") == 1 )
  252.         {
  253.             ColorChat ( iKiller, GREY, "%s^1 You got^3 %i^1 of Experience for killing^3 %s^1", szPrefix, get_pcvar_num(KillXp), vname )
  254.         }
  255.     }
  256.    
  257.     if( hitplace == HIT_HEAD )
  258.     {
  259.         XP[iKiller] += get_pcvar_num(HSXp)
  260.        
  261.         if( get_cvar_num("XP_Reward_MSG") == 1 )
  262.         {
  263.             ColorChat ( iKiller, GREY, "%s^1 You got ^3%i^1 of Experience for killing ^3%s^1 with a ^4HeadShot", szPrefix, get_pcvar_num (HSXp), vname )
  264.         }
  265.     }
  266.    
  267.     if( wpnindex == CSW_HEGRENADE && iKiller != iVictim )
  268.     {
  269.         XP[iKiller] += get_pcvar_num(HEXp)
  270.        
  271.         if( get_cvar_num("XP_Reward_MSG") == 1 )
  272.         {
  273.             ColorChat( iKiller, GREEN, "%s^1 You got^3 %i^1 of Experience for killing^3 %s^1 with a ^4Grenade", szPrefix, get_pcvar_num (HEXp), vname )
  274.         }
  275.     }
  276.     CheckLevel(iKiller)
  277.     SaveData(iKiller)
  278.    
  279.     return PLUGIN_CONTINUE
  280. }
  281.  
  282. public CheckLevel(id)
  283. {
  284.     if(Level[id] < MaxLevels-1)
  285.     {
  286.         while(XP[id] >= Levels[Level[id]])
  287.         {
  288.             Level[id] += 1
  289.             ColorChat(id, GREY, "%s^1 Congratulations, you've leveled up! You are now level : ^3%i^3", szPrefix, Level[id])
  290.         }
  291.     }
  292. }
  293.  
  294. /*      HUD PERMANENT INFO      */
  295. public ShowHud(task)
  296. {
  297.     new id = task - TASK_SHOW_HUD
  298.    
  299.     if(!is_user_alive(id))
  300.         return;
  301.    
  302.     set_hudmessage(0, 255, 0, 0.02, 0.33, 0, 0.0, 0.3, 0.0, 0.0)
  303.     ShowSyncHudMsg(id, msgHudSync,"[Status : %s]^n[XP : %i]", Prefix[Level[id]], XP[id])
  304.    
  305.     set_task(0.1, "ShowHud", TASK_SHOW_HUD + id)  
  306. }
  307.  
  308. /*      nVault Stuff      */
  309. public SaveData(id)
  310. {
  311.     new AuthID[35]
  312.     get_user_authid(id,AuthID,34)
  313.     new vaultkey[64],vaultdata[256]
  314.    
  315.     format(vaultkey,63,"%s-Mod",AuthID)
  316.     format(vaultdata,255,"%i#%i#",XP[id],Level[id])
  317.    
  318.     nvault_set(Vault,vaultkey,vaultdata)
  319.    
  320.     return PLUGIN_CONTINUE
  321. }
  322. public LoadData(id)
  323. {
  324.     new AuthID[35]
  325.     get_user_authid(id,AuthID,34)
  326.     new vaultkey[64],vaultdata[256]
  327.    
  328.     format(vaultkey,63,"%s-Mod",AuthID)
  329.     format(vaultdata,255,"%i#%i#",XP[id],Level[id])
  330.    
  331.     nvault_get(Vault,vaultkey,vaultdata,255)
  332.    
  333.     replace_all(vaultdata, 255, "#", " ")
  334.    
  335.     new playerxp[32], playerlevel[32]
  336.    
  337.     parse(vaultdata, playerxp, 31, playerlevel, 31)
  338.    
  339.     XP[id] = str_to_num(playerxp)
  340.    
  341.     Level[id] = str_to_num(playerlevel)
  342.    
  343.     return PLUGIN_CONTINUE
  344. }
  345.  
  346. /*      Remove And Add XP      */
  347. public CmdAddXP ( iPlayer, level, cid )
  348. {
  349.     if( !cmd_access( iPlayer, level, cid, 3 ) ) return PLUGIN_HANDLED;
  350.    
  351.     new arg [ 32 ]
  352.     read_argv ( 1, arg, 31 )
  353.    
  354.     new AddXP [ 32 ]
  355.     read_argv ( 2, AddXP, charsmax ( AddXP ) )
  356.    
  357.     new XPtoGive = str_to_num ( AddXP )
  358.    
  359.     new AdminName [ 32 ]
  360.     new TargetName [ 32 ]
  361.     get_user_name ( iPlayer, AdminName, charsmax ( AdminName ) )
  362.    
  363.     if( arg[0]=='@' )
  364.     {
  365.         if( equali(arg[1],"All") || equali(arg[1],"ALL") )
  366.         {
  367.             new players[32], totalplayers, All
  368.             get_players( players, totalplayers )
  369.            
  370.             for ( new i = 0; i < totalplayers; i++ )
  371.             {
  372.                 All = players[ i ]
  373.                
  374.                 XP[ All ] += XPtoGive
  375.             }
  376.            
  377.             CheckLevel( All )
  378.             ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to all ^1 players^3!", szPrefix, AdminName, XPtoGive )
  379.         }
  380.         else if( equali(arg[1],"T") || equali(arg[1],"t") )
  381.         {
  382.             new players[32], totalplayers, T
  383.             get_players( players, totalplayers )
  384.            
  385.             for ( new i = 0; i < totalplayers; i++ )
  386.             {
  387.                 if ( get_user_team(players[ i ]) == 1 )
  388.                 {
  389.                     T = players[ i ]
  390.                    
  391.                     XP[ T ] += XPtoGive
  392.                 }
  393.             }
  394.            
  395.             CheckLevel( T )
  396.             ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to all ^1 Terrorists^3!", szPrefix, AdminName, XPtoGive )
  397.         }
  398.         else if( equali(arg[1],"CT") || equali(arg[1],"ct") )
  399.         {
  400.             new players[32], totalplayers, CT
  401.             get_players( players, totalplayers )
  402.            
  403.             for( new i = 0; i < totalplayers; i++ )
  404.             {
  405.                 if( get_user_team(players[ i ] ) == 2 )
  406.                 {
  407.                     CT = players[ i ]
  408.                    
  409.                     XP[ CT ] += XPtoGive
  410.                 }
  411.             }
  412.            
  413.             CheckLevel( CT )
  414.             ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to all ^1 Counter-Terrorists^3!", szPrefix, AdminName, XPtoGive )
  415.         }
  416.     }
  417.     else
  418.     {
  419.         new iTarget = cmd_target( iPlayer, arg, 3 )
  420.         get_user_name ( iTarget, TargetName, charsmax ( TargetName ) )
  421.        
  422.         if( iTarget )
  423.         {
  424.             XP[ iTarget ] += XPtoGive
  425.            
  426.             CheckLevel( iTarget )
  427.             ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to^1 %s^3", szPrefix, AdminName, XPtoGive, TargetName )
  428.         }
  429.     }
  430.     return PLUGIN_HANDLED
  431. }
  432.  
  433. public CmdRemoveXP ( iPlayer, level, cid )
  434. {
  435.     if( !cmd_access(iPlayer, level, cid, 3) ) return PLUGIN_HANDLED;
  436.    
  437.     new arg [ 32 ]
  438.     read_argv ( 1, arg, 31 )
  439.    
  440.     new RemoveXP [ 32 ]
  441.     read_argv ( 2, RemoveXP, charsmax ( RemoveXP ) )
  442.    
  443.     new XPtoRemove = str_to_num ( RemoveXP )
  444.    
  445.     new AdminName [ 32 ]
  446.     new TargetName [ 32 ]
  447.     get_user_name ( iPlayer, AdminName, charsmax ( AdminName ) )
  448.    
  449.     if( arg[0]=='@' )
  450.     {
  451.         if( equali(arg[1],"All") || equali(arg[1],"ALL") )
  452.         {
  453.             new players[32], totalplayers, All
  454.             get_players( players, totalplayers )
  455.            
  456.             for ( new i = 0; i < totalplayers; i++ )
  457.             {
  458.                 All = players[ i ]
  459.                
  460.                 XP[ All ] -= XPtoRemove
  461.             }
  462.            
  463.             CheckLevel( All )
  464.             ColorChat ( 0, GREY, "%s ^3%s^1 toke^3 %i^1 of Experience of all ^3 players^3!", szPrefix, AdminName, XPtoRemove )
  465.         }
  466.         else if( equali(arg[1],"T") || equali(arg[1],"t") )
  467.         {
  468.             new players[32], totalplayers, T
  469.             get_players( players, totalplayers )
  470.            
  471.             for ( new i = 0; i < totalplayers; i++ )
  472.             {
  473.                 if ( get_user_team(players[ i ]) == 1 )
  474.                 {
  475.                     T = players[ i ]
  476.                    
  477.                     XP[ T ] -= XPtoRemove
  478.                 }
  479.             }
  480.            
  481.             CheckLevel( T )
  482.             ColorChat ( 0, GREY, "%s ^3%s^1 toke^3 %i^1 of Experience of all ^3 Terrorists^1!", szPrefix, AdminName, XPtoRemove )
  483.         }
  484.         else if( equali(arg[1],"CT") || equali(arg[1],"ct") )
  485.         {
  486.             new players[32], totalplayers, CT
  487.             get_players( players, totalplayers )
  488.            
  489.             for( new i = 0; i < totalplayers; i++ )
  490.             {
  491.                 if( get_user_team(players[ i ] ) == 2 )
  492.                 {
  493.                     CT = players[ i ]
  494.                    
  495.                     XP[ CT ] -= XPtoRemove
  496.                 }
  497.             }
  498.            
  499.             CheckLevel( CT )
  500.             ColorChat ( 0, GREY, "%s ^3%s^1 toke^3 %i^1 of Experience of all ^3 Counter-Terrorists^1!", szPrefix, AdminName, XPtoRemove )
  501.         }
  502.     }
  503.     else
  504.     {
  505.         new iTarget = cmd_target( iPlayer, arg, 3 )
  506.         get_user_name ( iTarget, TargetName, charsmax ( TargetName ) )
  507.        
  508.         if( !iTarget )
  509.             return PLUGIN_HANDLED
  510.        
  511.         XP[ iTarget ] -= XPtoRemove
  512.        
  513.         CheckLevel( iTarget )
  514.         ColorChat ( 0, GREY, "%s ^3%s^1 give^3 %i^1 of Experience to^3 %s^1", szPrefix, AdminName, XPtoRemove, TargetName )
  515.     }
  516.    
  517.     return PLUGIN_HANDLED
  518. }
  519. public handlesay(id)
  520. {
  521.     new message[192]
  522.     new strName[191], strText[191];
  523.     read_args (message, 191)
  524.     remove_quotes (message)
  525.    
  526.     new name[32];
  527.     get_user_name (id, name, 31);
  528.    
  529.     if( is_user_connected(id))
  530.     {
  531.         if( is_user_alive(id))
  532.         {
  533.             format (strName, 191, "^x04[%s]^x03 %s", Prefix[Level[id]],name)
  534.             format (strText, 191, "^x01%s", message)
  535.         }
  536.     }
  537.     format (message, 191, "%s: %s", strName, strText)
  538.    
  539.     new players[32], pnum, is;
  540.     get_players(players, pnum);
  541.    
  542.     for(new i; i<pnum; i++)
  543.     {
  544.         is = players[i];
  545.        
  546.         if(cs_get_user_team(id) == CS_TEAM_CT)
  547.             ColorChat(is, BLUE, message)
  548.         else if(cs_get_user_team(id) == CS_TEAM_T)
  549.             ColorChat(is, RED, message)
  550.         else
  551.             ColorChat(is, GREY, message)
  552.     }
  553.    
  554.     return PLUGIN_HANDLED;
  555. }

_________________
„Nem azért felejtünk el játszani, mert megöregszünk, hanem attól öregszünk meg, hogy elfelejtünk játszani.”

-MAXHACKED Website-
-HERViD Website-
► Spoiler mutatása


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: xp / level mod + ichat
HozzászólásElküldve: 2017.11.12. 11:15 
Offline
Tag
Avatar

Csatlakozott: 2015.08.03. 19:26
Hozzászólások: 38
Megköszönt másnak: 8 alkalommal
Megköszönték neki: 3 alkalommal
Így nincsen hibaüzenet fordításkor

  1. #include <amxmodx>
  2.     #include <amxmisc>
  3.     #include <nvault>  
  4.     #include <colorchat>
  5.     #include <cstrike>
  6.     #include <fun>
  7.     #include <hamsandwich>
  8.     #include <fakemeta>
  9.      
  10.     new Level[33], XP[33]
  11.     new KillXp, HSXp, HEXp
  12.     new Vault
  13.      
  14.     new const szPrefix[] = "^4[XP / Level]"
  15.      
  16.     #define MaxLevels 28  
  17.     #define IsPlayer(%1) ( 1 <= %1 <=  g_iMaxPlayers )
  18.     #define TASK_SHOW_HUD 10113
  19.      
  20.     new msgHudSync
  21.     new bool:is_user_ignored[ 33 ]
  22.      
  23.     new const Levels[] = {
  24.         100, // Újonc #1
  25.         150, // Legénység #2
  26.         200, // Közkatona #3
  27.         250, // Őrvezető #4
  28.         300, // Tizedes #5
  29.         350, // Szakaszvezető #6
  30.         400, // Altiszt #7
  31.         450, // Tiszthelyettes #8
  32.         550, // Őrmester #9
  33.         600, // Törzsőrmester #10
  34.         650, // Főtörzsőrmester #11
  35.         700, // Zászlós #12
  36.         750, // Törzszászlós #13
  37.         800, // Főtörzszászlós #14
  38.         850, // Tiszt #15
  39.         900, // Hadnagy #16
  40.         950, // Főhadnagy #17
  41.         1100, // Százados #18
  42.         1250, // Főtiszt #19
  43.         1350, // Őrnagy #20
  44.         1500, // Alezredes #21
  45.         1750, // Ezredes #22
  46.         2000, // Tábornok #23
  47.         2250, // Dandártábornok #24
  48.         2500, // Vezérőrnagy #25
  49.         2750, // Altábornagy #26
  50.         3000, // Vezérezredes #27
  51.         3500, // Hadseregtábornok  #28
  52.         4000 // Marsall #29
  53.     }
  54.     new const Prefix[] ={
  55.         "Újonc", // 1
  56.         "Legénység", // 2
  57.         "Közkatona",  // 3
  58.         "Őrvezető", // 4
  59.         "Tizedes", // 5
  60.         "Szakaszvezető",  // 6
  61.         "Altiszt", // 7
  62.         "Tiszthelyettes", // 8
  63.         "Őrmester", // 9
  64.         "Törzsőrmester", // 10
  65.         "Főtörzsőrmester", // 11
  66.         "Zászlós", // 12
  67.         "Törzszászlós", // 13
  68.         "Főtörzszászlós", // 14
  69.         "Tiszt", // 15
  70.         "Hadnagy", // 16
  71.         "Főhadnagy", // 17
  72.         "Százados", // 18
  73.         "Főtiszt", // 19
  74.         "Őrnagy", // 20
  75.         "Alezredes", // 21
  76.         "Ezredes", // 22
  77.         "Tábornok", // 23
  78.         "Dandártábornok", // 24
  79.         "Vezérőrnagy", // 25
  80.         "Altábornagy", // 26
  81.         "Vezérezredes", // 27
  82.         "Hadseregtábornok", // 28
  83.         "Marsall" // 29
  84.     };
  85.      
  86.     // Bonus Stuff
  87.     new healthperlevel,armorperlevel,damageperlevel,maxplayers
  88.      
  89.      
  90.      
  91.      
  92.     public plugin_init()
  93.     {
  94.         register_plugin("sDeathrun XP & Level Mod", "1.0.2", "Freestyle")
  95.        
  96.        
  97.         RegisterHam ( Ham_Spawn, "player", "Ham_CheckOthers_Bonus", 1);
  98.         RegisterHam ( Ham_TakeDamage, "player", "Ham_CheckDamage_Bonus", .Post = false );
  99.        
  100.         maxplayers = get_maxplayers( );
  101.        
  102.         register_cvar( "dr_staff_tags", "1" ); // default 1 (enable)
  103.         register_cvar( "dr_reward_msgs", "1" ); // default 1 (enable)
  104.        
  105.         register_clcmd("say","handlesay")
  106.         register_clcmd("say_team","handlesay")
  107.         register_clcmd ( "say /xp", "ShowPlayerXP")
  108.         register_clcmd ( "say_team /xp", "ShowPlayerXP")
  109.         register_clcmd ( "say /level", "ShowPlayerLevel")
  110.         register_clcmd ( "say_team /level", "ShowPlayerLevel")
  111.        
  112.        
  113.         KillXp  = register_cvar("dr_exp_kill", "5") // Experience for killing a player
  114.         HSXp    = register_cvar("dr_exp_hs", "10") // Experience for killing a player with HeadShot
  115.         HEXp    = register_cvar("dr_exp_nade_kill", "10") // Experience for killing a player with a HE Grenade
  116.        
  117.        
  118.         register_concmd ( "dr_exp_give", "CmdAddXP", ADMIN_RCON, "<nick, #userid, authid | @all> <xp>" )
  119.         register_concmd ( "dr_exp_remove", "CmdRemoveXP", ADMIN_RCON, "<nick, #userid, authid | @all> <xp>" )
  120.        
  121.        
  122.         healthperlevel  = register_cvar("dr_health_per_lvl", "10")
  123.         armorperlevel   = register_cvar("dr_armor_per_lvl", "10")
  124.         damageperlevel  = register_cvar("damage_per_lvl", "10")
  125.        
  126.         msgHudSync = CreateHudSyncObj()
  127.     }
  128.      
  129.     public plugin_cfg( )
  130.     {  
  131.         Vault = nvault_open( "DEATHRUN_XP" )
  132.        
  133.         if ( Vault == INVALID_HANDLE )
  134.             set_fail_state( "Error opening nVault" );
  135.     }
  136.      
  137.     /*      INFO ABOUT PERSONAL XP/LEVEL      */
  138.     public ShowPlayerXP(id)
  139.     {
  140.         ColorChat(id, GREY, "%s^1 You have ^3%i^1 of Experience and your Level are ^3%s^1!", szPrefix, XP[id], Prefix[Level[id]])
  141.     }
  142.      
  143.     public ShowPlayerLevel(id)
  144.     {
  145.         new name[32]
  146.         get_user_name(id, name, sizeof(name) -1)
  147.        
  148.         ColorChat(id, GREY, "%s^1 You are Level ^3%s^1 with ^3%i^1 of Experience!", szPrefix, Prefix[Level[id]], XP[id])
  149.     }
  150.      
  151.     public Ham_CheckDamage_Bonus( pevVictim, pevInflictor, pevAttacker, Float:flDamage, iDmgBits )
  152.     {
  153.         if( !( 1 <= pevAttacker <= maxplayers) )
  154.         {
  155.             return HAM_HANDLED;
  156.         }
  157.        
  158.         if( !is_user_alive( pevAttacker )  )
  159.         {
  160.             return HAM_HANDLED;
  161.         }
  162.        
  163.         SetHamParamFloat( 4 , flDamage + ( get_pcvar_num( damageperlevel ) * Level[ pevAttacker ] ) )
  164.        
  165.         return HAM_IGNORED;
  166.     }
  167.      
  168.     /*      HP & AP & Gravity Check      */
  169.     public Ham_CheckOthers_Bonus(id)
  170.     {
  171.         if( !is_user_alive( id ) || cs_get_user_team( id ) != CS_TEAM_T )
  172.             return HAM_IGNORED;
  173.        
  174.         // HP Check
  175.         new HPCheck = ( get_user_health(id) + get_pcvar_num(healthperlevel) * Level[ id ] );
  176.         set_user_health( id, HPCheck );
  177.        
  178.         // AP Check
  179.         new APCheck = ( get_user_armor(id) + get_pcvar_num(armorperlevel) * Level[ id ] );
  180.         set_user_armor( id, APCheck );
  181.        
  182.        
  183.         remove_task( TASK_SHOW_HUD + id );    
  184.        
  185.         set_task(0.1, "ShowHud", TASK_SHOW_HUD + id)
  186.        
  187.         return HAM_IGNORED;
  188.     }
  189.      
  190.     /*      Respected Player Join / Leave Stuff      */
  191.      
  192.     public LvL_12_PlayerJoin(id)
  193.     {
  194.         new name[32]
  195.         get_user_name(id, name, sizeof(name) -1)
  196.        
  197.         ColorChat(0, GREY, "%s ^3Respected Player : ^4%s^1 has joined with ^3%i^1 of Experience!", szPrefix, name, XP[id])
  198.     }
  199.      
  200.     public LvL_12_PlayerRemove(id)
  201.     {
  202.         new name[32]
  203.         get_user_name(id, name, sizeof(name) -1)
  204.        
  205.         ColorChat(0, GREY, "%s ^3Respected Player : ^4%s^1 has left with ^3%i^1 of Experience!", szPrefix, name, XP[id])
  206.     }
  207.      
  208.     public plugin_end( )
  209.         nvault_close( Vault )
  210.      
  211.     public client_putinserver(id)
  212.     {
  213.         LoadData(id)
  214.         set_task( 3.0, "ShowHud", id, .flags = "b" );
  215.        
  216.         if(Level[id] == 12)
  217.         {
  218.             set_task(5.0, "LvL_12_PlayerJoin", id)
  219.         }
  220.     }
  221.      
  222.     public client_disconnect(id)
  223.     {
  224.         SaveData(id)
  225.        
  226.         if(Level[id] == 12)
  227.         {
  228.             set_task(1.0, "LvL_12_PlayerRemove", id)
  229.         }
  230.     }
  231.      
  232.     /*      XP REWARDS      */
  233.     public client_death( iKiller, iVictim, wpnindex, hitplace )
  234.     {
  235.         new vname[32]
  236.         new kname[32]
  237.        
  238.         get_user_name( iKiller, kname, charsmax( kname ) )
  239.         get_user_name( iVictim, vname, charsmax( vname ) )
  240.        
  241.         if( is_user_ignored[ iKiller ] )
  242.             return PLUGIN_HANDLED_MAIN
  243.        
  244.         get_user_name( iKiller, kname, charsmax( kname ) )
  245.         get_user_name( iVictim, vname, charsmax( vname ) )
  246.        
  247.         if( iKiller != iVictim && ( 1 <= iKiller <= maxplayers ) && ( 1 <= iVictim <= maxplayers ) && !( hitplace == HIT_HEAD ) && !( wpnindex == CSW_HEGRENADE ) )
  248.         {
  249.             XP[iKiller] += get_pcvar_num(KillXp)
  250.            
  251.             if( get_cvar_num("XP_Reward_MSG") == 1 )
  252.             {
  253.                 ColorChat ( iKiller, GREY, "%s^1 You got^3 %i^1 of Experience for killing^3 %s^1", szPrefix, get_pcvar_num(KillXp), vname )
  254.             }
  255.         }
  256.        
  257.         if( hitplace == HIT_HEAD )
  258.         {
  259.             XP[iKiller] += get_pcvar_num(HSXp)
  260.            
  261.             if( get_cvar_num("XP_Reward_MSG") == 1 )
  262.             {
  263.                 ColorChat ( iKiller, GREY, "%s^1 You got ^3%i^1 of Experience for killing ^3%s^1 with a ^4HeadShot", szPrefix, get_pcvar_num (HSXp), vname )
  264.             }
  265.         }
  266.        
  267.         if( wpnindex == CSW_HEGRENADE && iKiller != iVictim )
  268.         {
  269.             XP[iKiller] += get_pcvar_num(HEXp)
  270.            
  271.             if( get_cvar_num("XP_Reward_MSG") == 1 )
  272.             {
  273.                 ColorChat( iKiller, GREEN, "%s^1 You got^3 %i^1 of Experience for killing^3 %s^1 with a ^4Grenade", szPrefix, get_pcvar_num (HEXp), vname )
  274.             }
  275.         }
  276.         CheckLevel(iKiller)
  277.         SaveData(iKiller)
  278.        
  279.         return PLUGIN_CONTINUE
  280.     }
  281.      
  282.     public CheckLevel(id)
  283.     {
  284.         if(Level[id] < MaxLevels-1)
  285.         {
  286.             while(XP[id] >= Levels[Level[id]])
  287.             {
  288.                 Level[id] += 1
  289.                 ColorChat(id, GREY, "%s^1 Congratulations, you've leveled up! You are now level : ^3%i^3", szPrefix, Level[id])
  290.             }
  291.         }
  292.     }
  293.      
  294.     /*      HUD PERMANENT INFO      */
  295.     public ShowHud(task)
  296.     {
  297.         new id = task - TASK_SHOW_HUD
  298.        
  299.         if(!is_user_alive(id))
  300.             return;
  301.        
  302.         set_hudmessage(0, 255, 0, 0.02, 0.33, 0, 0.0, 0.3, 0.0, 0.0)
  303.         ShowSyncHudMsg(id, msgHudSync,"[Status : %s]^n[XP : %i]", Prefix[Level[id]], XP[id])
  304.        
  305.         set_task(0.1, "ShowHud", TASK_SHOW_HUD + id)  
  306.     }
  307.      
  308.     /*      nVault Stuff      */
  309.     public SaveData(id)
  310.     {
  311.         new AuthID[35]
  312.         get_user_authid(id,AuthID,34)
  313.         new vaultkey[64],vaultdata[256]
  314.        
  315.         format(vaultkey,63,"%s-Mod",AuthID)
  316.         format(vaultdata,255,"%i#%i#",XP[id],Level[id])
  317.        
  318.         nvault_set(Vault,vaultkey,vaultdata)
  319.        
  320.         return PLUGIN_CONTINUE
  321.     }
  322.     public LoadData(id)
  323.     {
  324.         new AuthID[35]
  325.         get_user_authid(id,AuthID,34)
  326.         new vaultkey[64],vaultdata[256]
  327.        
  328.         format(vaultkey,63,"%s-Mod",AuthID)
  329.         format(vaultdata,255,"%i#%i#",XP[id],Level[id])
  330.        
  331.         nvault_get(Vault,vaultkey,vaultdata,255)
  332.        
  333.         replace_all(vaultdata, 255, "#", " ")
  334.        
  335.         new playerxp[32], playerlevel[32]
  336.        
  337.         parse(vaultdata, playerxp, 31, playerlevel, 31)
  338.        
  339.         XP[id] = str_to_num(playerxp)
  340.        
  341.         Level[id] = str_to_num(playerlevel)
  342.        
  343.         return PLUGIN_CONTINUE
  344.     }
  345.      
  346.     /*      Remove And Add XP      */
  347.     public CmdAddXP ( iPlayer, level, cid )
  348.     {
  349.         if( !cmd_access( iPlayer, level, cid, 3 ) ) return PLUGIN_HANDLED;
  350.        
  351.         new arg [ 32 ]
  352.         read_argv ( 1, arg, 31 )
  353.        
  354.         new AddXP [ 32 ]
  355.         read_argv ( 2, AddXP, charsmax ( AddXP ) )
  356.        
  357.         new XPtoGive = str_to_num ( AddXP )
  358.        
  359.         new AdminName [ 32 ]
  360.         new TargetName [ 32 ]
  361.         get_user_name ( iPlayer, AdminName, charsmax ( AdminName ) )
  362.        
  363.         if( arg[0]=='@' )
  364.         {
  365.             if( equali(arg[1],"All") || equali(arg[1],"ALL") )
  366.             {
  367.                 new players[32], totalplayers, All
  368.                 get_players( players, totalplayers )
  369.                
  370.                 for ( new i = 0; i < totalplayers; i++ )
  371.                 {
  372.                     All = players[ i ]
  373.                    
  374.                     XP[ All ] += XPtoGive
  375.                 }
  376.                
  377.                 CheckLevel( All )
  378.                 ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to all ^1 players^3!", szPrefix, AdminName, XPtoGive )
  379.             }
  380.             else if( equali(arg[1],"T") || equali(arg[1],"t") )
  381.             {
  382.                 new players[32], totalplayers, T
  383.                 get_players( players, totalplayers )
  384.                
  385.                 for ( new i = 0; i < totalplayers; i++ )
  386.                 {
  387.                     if ( get_user_team(players[ i ]) == 1 )
  388.                     {
  389.                         T = players[ i ]
  390.                        
  391.                         XP[ T ] += XPtoGive
  392.                     }
  393.                 }
  394.                
  395.                 CheckLevel( T )
  396.                 ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to all ^1 Terrorists^3!", szPrefix, AdminName, XPtoGive )
  397.             }
  398.             else if( equali(arg[1],"CT") || equali(arg[1],"ct") )
  399.             {
  400.                 new players[32], totalplayers, CT
  401.                 get_players( players, totalplayers )
  402.                
  403.                 for( new i = 0; i < totalplayers; i++ )
  404.                 {
  405.                     if( get_user_team(players[ i ] ) == 2 )
  406.                     {
  407.                         CT = players[ i ]
  408.                        
  409.                         XP[ CT ] += XPtoGive
  410.                     }
  411.                 }
  412.                
  413.                 CheckLevel( CT )
  414.                 ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to all ^1 Counter-Terrorists^3!", szPrefix, AdminName, XPtoGive )
  415.             }
  416.         }
  417.         else
  418.         {
  419.             new iTarget = cmd_target( iPlayer, arg, 3 )
  420.             get_user_name ( iTarget, TargetName, charsmax ( TargetName ) )
  421.            
  422.             if( iTarget )
  423.             {
  424.                 XP[ iTarget ] += XPtoGive
  425.                
  426.                 CheckLevel( iTarget )
  427.                 ColorChat ( 0, GREY, "%s ^1%s^3 give^1 %i^3 XP to^1 %s^3", szPrefix, AdminName, XPtoGive, TargetName )
  428.             }
  429.         }
  430.         return PLUGIN_HANDLED
  431.     }
  432.      
  433.     public CmdRemoveXP ( iPlayer, level, cid )
  434.     {
  435.         if( !cmd_access(iPlayer, level, cid, 3) ) return PLUGIN_HANDLED;
  436.        
  437.         new arg [ 32 ]
  438.         read_argv ( 1, arg, 31 )
  439.        
  440.         new RemoveXP [ 32 ]
  441.         read_argv ( 2, RemoveXP, charsmax ( RemoveXP ) )
  442.        
  443.         new XPtoRemove = str_to_num ( RemoveXP )
  444.        
  445.         new AdminName [ 32 ]
  446.         new TargetName [ 32 ]
  447.         get_user_name ( iPlayer, AdminName, charsmax ( AdminName ) )
  448.        
  449.         if( arg[0]=='@' )
  450.         {
  451.             if( equali(arg[1],"All") || equali(arg[1],"ALL") )
  452.             {
  453.                 new players[32], totalplayers, All
  454.                 get_players( players, totalplayers )
  455.                
  456.                 for ( new i = 0; i < totalplayers; i++ )
  457.                 {
  458.                     All = players[ i ]
  459.                    
  460.                     XP[ All ] -= XPtoRemove
  461.                 }
  462.                
  463.                 CheckLevel( All )
  464.                 ColorChat ( 0, GREY, "%s ^3%s^1 toke^3 %i^1 of Experience of all ^3 players^3!", szPrefix, AdminName, XPtoRemove )
  465.             }
  466.             else if( equali(arg[1],"T") || equali(arg[1],"t") )
  467.             {
  468.                 new players[32], totalplayers, T
  469.                 get_players( players, totalplayers )
  470.                
  471.                 for ( new i = 0; i < totalplayers; i++ )
  472.                 {
  473.                     if ( get_user_team(players[ i ]) == 1 )
  474.                     {
  475.                         T = players[ i ]
  476.                        
  477.                         XP[ T ] -= XPtoRemove
  478.                     }
  479.                 }
  480.                
  481.                 CheckLevel( T )
  482.                 ColorChat ( 0, GREY, "%s ^3%s^1 toke^3 %i^1 of Experience of all ^3 Terrorists^1!", szPrefix, AdminName, XPtoRemove )
  483.             }
  484.             else if( equali(arg[1],"CT") || equali(arg[1],"ct") )
  485.             {
  486.                 new players[32], totalplayers, CT
  487.                 get_players( players, totalplayers )
  488.                
  489.                 for( new i = 0; i < totalplayers; i++ )
  490.                 {
  491.                     if( get_user_team(players[ i ] ) == 2 )
  492.                     {
  493.                         CT = players[ i ]
  494.                        
  495.                         XP[ CT ] -= XPtoRemove
  496.                     }
  497.                 }
  498.                
  499.                 CheckLevel( CT )
  500.                 ColorChat ( 0, GREY, "%s ^3%s^1 toke^3 %i^1 of Experience of all ^3 Counter-Terrorists^1!", szPrefix, AdminName, XPtoRemove )
  501.             }
  502.         }
  503.         else
  504.         {
  505.             new iTarget = cmd_target( iPlayer, arg, 3 )
  506.             get_user_name ( iTarget, TargetName, charsmax ( TargetName ) )
  507.            
  508.             if( !iTarget )
  509.                 return PLUGIN_HANDLED
  510.            
  511.             XP[ iTarget ] -= XPtoRemove
  512.            
  513.             CheckLevel( iTarget )
  514.             ColorChat ( 0, GREY, "%s ^3%s^1 give^3 %i^1 of Experience to^3 %s^1", szPrefix, AdminName, XPtoRemove, TargetName )
  515.         }
  516.        
  517.         return PLUGIN_HANDLED
  518.     }
  519.     public handlesay(id)
  520.     {
  521.         new message[192]
  522.         new strName[191], strText[191];
  523.         read_args (message, 191)
  524.         remove_quotes (message)
  525.        
  526.         new name[32];
  527.         get_user_name (id, name, 31);
  528.        
  529.         if( is_user_connected(id))
  530.         {
  531.             if( is_user_alive(id))
  532.             {
  533.                 format (strName, 191, "^x04[%s]^x03 %s", Prefix[Level[id]],name)
  534.                 format (strText, 191, "^x01%s", message)
  535.             }
  536.         }
  537.         format (message, 191, "%s: %s", strName, strText)
  538.        
  539.         new players[32], pnum, is;
  540.         get_players(players, pnum);
  541.        
  542.         for(new i; i<pnum; i++)
  543.         {
  544.             is = players[i];
  545.            
  546.             if(cs_get_user_team(id) == CS_TEAM_CT)
  547.                 ColorChat(is, BLUE, message)
  548.             else if(cs_get_user_team(id) == CS_TEAM_T)
  549.                 ColorChat(is, RED, message)
  550.             else
  551.                 ColorChat(is, GREY, message)
  552.         }
  553.        
  554.         return PLUGIN_HANDLED;
  555.     }

_________________
Kép


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  [ 6 hozzászólás ] 


Ki van itt

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