hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.05.24. 20:20



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: Bing [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  [ 3 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: sql mentés rangrendszerhez
HozzászólásElküldve: 2019.11.18. 17:54 
Offline
Senior Tag

Csatlakozott: 2015.11.20. 17:59
Hozzászólások: 270
Megköszönt másnak: 33 alkalommal
Megköszönték neki: 2 alkalommal
Sziasztok!

valaki beletudná írni az sql mentést?

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <cstrike>
  4. #include <csstats>
  5.  
  6. #pragma tabsize 0
  7.  
  8. #define PLUGIN "Rankrendszer (HUD + prefix)"
  9. #define VERSION "1.5"
  10. #define AUTHOR "6lmasok,qKKKJ;>, RaZ_HU" ///Szerk:. Jucika
  11.  
  12. #define ACCESS_LEVEL ADMIN_CHAT
  13. #define ADMIN_LISTEN ADMIN_CHAT
  14.  
  15. #define MAXRANKS 19
  16.  
  17. new message[192]
  18.  
  19. new strName[191]
  20. new strText[191]
  21. new sayText
  22. new teamInfo
  23. new maxPlayers
  24. new PlayerRank[33]
  25. new bool: g_bHud[ 33 ]
  26. new Float:HUD_INTERVAL
  27. new static color[10]
  28. new ShowSyncHudMSG
  29.  
  30. new const RANKS[MAXRANKS][] =
  31. {
  32.          "[«Újonc»]",
  33.     "[«JátĂ©kos»]",
  34.     "[«Királynő»]",
  35.     "[«Király»]",
  36.     "[«ÉlĹ‘ Zombie»]",
  37.     "[«Csont hĂĽlye»]",
  38.     "[«Gladiátor»]",
  39.     "[«Manusz»]",
  40.     "[«Átkozot»]",
  41.     "[«VĂ©n ember»]",
  42.     "[«Focista»]",
  43.     "[«HamupipĹ‘ke»]",
  44.     "[«Kristály»]",
  45.     "[«Szarvas»]",
  46.     "[«Legendary»]",
  47.     "[«FĂĽles bagoly»]",
  48.     "[«Porno szĂnĂ©sz»]",
  49.     "[«VĂ©delmező»]",
  50.     "[«DSF Szerver Tag»]"
  51.  
  52. }
  53.  
  54. new const szamok[MAXRANKS-1] =
  55. {
  56.         50,
  57.         100,
  58.         150,
  59.         200,
  60.         250,
  61.         300,
  62.         350,
  63.         400,
  64.         450,
  65.         500,
  66.         550,
  67.         600,
  68.         650,
  69.         700,
  70.         750,
  71.         800,
  72.         850,
  73.         900
  74. }
  75.  
  76. public plugin_init()
  77. {
  78.         register_plugin(PLUGIN, VERSION, AUTHOR)
  79.         register_clcmd("say /rang", "hud")
  80.         register_clcmd("say rang", "hud")
  81.         register_clcmd( "say /rangok", "cmdRangs" );
  82.         register_clcmd( "say /hud", "cmdHud" );
  83.         register_clcmd ("say", "hook_say")
  84.         register_clcmd ("say_team", "hook_teamsay")
  85.  
  86.         register_cvar("sv_rankrendszer","1") // A plugin be- illetve kikapcsolása
  87.         register_cvar("sv_rankrendszer_HUD","1") // A HUD-ra valĂł kijelzĂ©s be- illetve kikapcsolása
  88.         sethudtime()
  89.  
  90.         sayText = get_user_msgid ("SayText")
  91.         teamInfo = get_user_msgid ("TeamInfo")
  92.         maxPlayers = get_maxplayers()
  93.  
  94.         set_task(160.0, "korUzenet", 0, _, _, "b")
  95.        
  96.         ShowSyncHudMSG = CreateHudSyncObj()
  97.  
  98.         register_message (sayText, "avoid_duplicated")
  99. }
  100.  
  101. public cmdRangs( iPlayerId )
  102. {
  103.         static iLen = 0, sMotd[ 2048 ], iMotdLen = charsmax( sMotd );
  104.  
  105.         iLen = formatex( sMotd, iMotdLen, "<meta charset=utf-8><style>table{color:#FFB000;} td,th{border:1px solid #666;text-align:center;}</style><body bgcolor=#000000><center><table width='400'><tr><th>Rang</th><th>Ă–lĂ©s</th><tr>" );
  106.         iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>0</td><tr>", RANKS[ 0 ] );
  107.  
  108.         for ( new i; i < MAXRANKS-1; ++i )
  109.                 iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>%d</td><tr>", RANKS[ i + 1 ], szamok[ i ] );
  110.  
  111.         show_motd( iPlayerId, sMotd, "Rangrendszer infĂł" );
  112. }
  113.  
  114. public cmdHud( iPlayerId )
  115. {
  116.         ColorChat( iPlayerId, "^1A hud kijelzĹ‘ ^3%skapcsolva^1!", ( g_bHud[ iPlayerId ] ^= true ) ? "be" : "ki" );
  117.  
  118.         if ( !g_bHud[ iPlayerId ] ) remove_task( iPlayerId );
  119.         else { if ( !task_exists( iPlayerId ) ) set_task( HUD_INTERVAL, "setDisplay", iPlayerId ); }
  120. }
  121.  
  122. public sethudtime()
  123. {
  124.         new refreshtime = register_cvar("sv_rankrendszer_HUDtime","0.9") // A HUD-ra valĂł kijelzĂ©s frissĂ­tĂ©si ideje másodpercben
  125.         if (refreshtime == 0.9)
  126.         {
  127.                 HUD_INTERVAL = 0.9
  128.         }
  129.         else if (refreshtime != 0.9)
  130.         {
  131.                 HUD_INTERVAL = get_pcvar_float(refreshtime)
  132.         }
  133. }
  134.  
  135. public avoid_duplicated (msgId, msgDest, receiver)
  136. {
  137.         return PLUGIN_HANDLED
  138. }
  139.  
  140. public korUzenet()
  141. {
  142.         ColorChat( 0, "^4[.:*DSF*:.]^3ĂŤrd be ^4/rang ^3vagy ^4rang ^3hogy megnĂ©zd hány Ă–lĂ©s kell a következĹ‘ ranghoz.")
  143.         return PLUGIN_HANDLED;
  144. }
  145.  
  146. public hud(id)
  147. {
  148.         ColorChat( id, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d",RANKS[PlayerRank[id]], get_player_stats(id,0))
  149.  
  150.         if(PlayerRank[id] == MAXRANKS-1)
  151.         {
  152.                 ColorChat( id, "^4Mar elĂ©rted a legnagyobb ^4rangot.")
  153.         }
  154.         else
  155.         {
  156.                 ColorChat( id, "^4következĹ‘ rang: ^3%s ^1| ^4A következĹ‘ ranghoz kell mĂ©g: ^3%d",RANKS[PlayerRank[id]+1], szamok[PlayerRank[id]]-get_player_stats(id,0))
  157.         }
  158. }
  159.  
  160. public hook_say(id)
  161. {
  162.         read_args (message, 191)
  163.         remove_quotes (message)
  164.  
  165.         if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
  166.         return PLUGIN_CONTINUE
  167.  
  168.         static name[32]
  169.         name = get_player_name(id)
  170.         new isAlive, alive[32]
  171.  
  172.         if (is_user_alive (id))
  173.         {
  174.                 isAlive = 1
  175.                 alive = ""
  176.         }
  177.         else
  178.         {
  179.                 isAlive = 0
  180.                 alive = "^1*Halott* "
  181.         }
  182.  
  183.         getTeam(id)
  184.         if(get_user_flags(id)&ADMIN_CVAR) // G jog
  185.         {
  186.                 formatex (strName, 191, "%s^4[«Tulajdonos»]^3%s^1» ^4%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  187.                 formatex (strText, 191, "^4%s", message)
  188.         }
  189.        
  190.         else if(get_user_flags(id)&ADMIN_CFG) // H jog
  191.         {
  192.                 formatex (strName, 191, "%s^4[«FĹ‘Admin»]^3%s^1» ^4%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  193.                 formatex (strText, 191, "^4%s", message)       
  194.                
  195.         }
  196.  
  197.         else if(get_user_flags(id)&ADMIN_MAP) // F jog
  198.         {
  199.                 formatex (strName, 191, "%s^4[«Admin»]^3%s^1» ^3%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  200.                 formatex (strText, 191, "^4%s", message)
  201.         }
  202.  
  203.         else if(get_user_flags(id)&ADMIN_MENU) // U jog
  204.         {
  205.                 formatex (strName, 191, "%s^4[«Vip»]^3%s^1» ^3%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  206.                 formatex (strText, 191, "^4%s", message)
  207.         }
  208.  
  209.         else if(get_user_flags(id)&ADMIN_USER) // Z jog (alapbĂłl minden player)
  210.         {
  211.                 formatex (strName, 191, "%s^4[%s] ^3%s:",alive, RANKS[PlayerRank[id]], name)
  212.                 formatex (strText, 191, "^1%s", message)
  213.         }
  214.  
  215.         formatex (message, 191, "%s ^1%s", strName, strText)
  216.         sendMessage (color, isAlive)
  217.  
  218.         return PLUGIN_HANDLED
  219. }
  220.  
  221. public hook_teamsay(id)
  222. {
  223.         new playerTeam = get_user_team(id)
  224.         new playerTeamName[19]
  225.  
  226.         switch (playerTeam)
  227.         {
  228.                 case 1:
  229.                         copy (playerTeamName, 11, "Terrorista")
  230.  
  231.                 case 2:
  232.                         copy (playerTeamName, 18, "Anti-Terrorista")
  233.  
  234.                 default:
  235.                         copy (playerTeamName, 9, "NĂ©zĹ‘")
  236.         }
  237.  
  238.         read_args (message, 191)
  239.         remove_quotes (message)
  240.  
  241.         if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  242.         return PLUGIN_CONTINUE
  243.        
  244.         static name[32]
  245.         name = get_player_name(id)
  246.         new isAlive, alive[32]
  247.  
  248.         if (is_user_alive (id))
  249.         {
  250.                 isAlive = 1
  251.                 alive = "^1*Él*"
  252.         }
  253.         else
  254.         {
  255.                 isAlive = 0
  256.                 alive = "^1*Halott* "
  257.         }
  258.  
  259.         getTeam(id)
  260.         if(get_user_flags(id)&ADMIN_CVAR) // G jog
  261.         {
  262.                 formatex (strName, 191, "%s(%s)^4[«Tulajdonos»]^3%s^1» ^4%s^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  263.                 formatex (strText, 191, "^4%s", message)
  264.         }
  265.  
  266.         else if(get_user_flags(id)&ADMIN_CFG) // H jog
  267.         {
  268.                 formatex (strName, 191, "%s(%s)^4[«FĹ‘Admin»]^3%s^1» ^4%s^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  269.                 formatex (strText, 191, "^4%s", message)
  270.         }
  271.  
  272.         else if(get_user_flags(id)&ADMIN_MAP) // F jog
  273.         {
  274.                 formatex (strName, 191, "%s(%s)^4[«Admin»]^3%s^1» ^3%s^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  275.                 formatex (strText, 191, "^4%s", message)
  276.         }
  277.  
  278.         else if(get_user_flags(id)&ADMIN_MENU) // U jog
  279.         {
  280.                 formatex (strName, 191, "%s(%s)^4[«Vip»]^3%s^1» ^3%s:^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  281.                 formatex (strText, 191, "^4%s", message)
  282.         }
  283.  
  284.         else if(get_user_flags(id)&ADMIN_USER) // Z jog (alapbĂłl minden player)
  285.         {
  286.                 formatex (strName, 191, "%s(%s)[%s] ^1%s:",alive ,playerTeamName, RANKS[PlayerRank[id]], name)
  287.                 formatex (strText, 191, "^1%s", message)
  288.         }
  289.  
  290.         formatex (message, 191, "%s ^1%s", strName, strText)
  291.         sendTeamMessage (color,isAlive, playerTeam)
  292.  
  293.         return PLUGIN_HANDLED
  294. }
  295.  
  296. public sendMessage (color[], alive)
  297. {
  298.         new teamName[10]
  299.  
  300.         for (new player = 1; player < maxPlayers; player++)
  301.         {
  302.                 if (!is_user_connected(player))
  303.                         continue
  304.                 if((alive && is_user_alive(player)) || (!alive && !is_user_alive(player)) || (get_user_flags(player) && ADMIN_LISTEN))
  305.                 {
  306.                         get_user_team (player, teamName, 9)
  307.                         changeTeamInfo (player, color)
  308.                         writeMessage (player, message)
  309.                         changeTeamInfo (player, teamName)
  310.                 }
  311.         }
  312. }
  313.  
  314. public sendTeamMessage (color[], alive, playerTeam)
  315. {
  316.         new teamName[10]
  317.  
  318.         for (new player = 1; player < maxPlayers; player++)
  319.         {
  320.                 if (!is_user_connected(player))
  321.                         continue
  322.  
  323.                 if (get_user_team(player) == playerTeam || get_user_flags(player) & ADMIN_LISTEN)
  324.                 {
  325.                         if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_user_flags(player) & ADMIN_LISTEN)
  326.                         {
  327.                                 get_user_team (player, teamName, 9)
  328.                                 changeTeamInfo (player, color)
  329.                                 writeMessage (player, message)
  330.                                 changeTeamInfo (player, teamName)
  331.                         }
  332.                 }
  333.         }
  334. }
  335.  
  336. public changeTeamInfo (player, team[])
  337. {
  338.         message_begin (MSG_ONE, teamInfo, _, player)
  339.         write_byte (player)
  340.         write_string (team)
  341.         message_end()
  342. }
  343.  
  344. public writeMessage (player, message[])
  345. {
  346.         message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
  347.         write_byte (player)
  348.         write_string (message)
  349.         message_end ()
  350. }
  351.  
  352. public client_putinserver(id)
  353. {
  354.         if(get_cvar_num("sv_rankrendszer")==0)
  355.         {
  356.                 return
  357.         }
  358.         if (get_cvar_num("sv_rankrendszer")==1)
  359.         {
  360.                 g_bHud[ id ] = true;
  361.                 set_task(HUD_INTERVAL, "setDisplay", id)
  362.         }
  363.         else
  364.         {
  365.                 set_task(0.5, "remTask", id)
  366.         }
  367. }
  368.  
  369. public remTask(id)
  370. {
  371.         remove_task(id, 0)
  372. }
  373.  
  374. public getTeam(id)
  375. {
  376.         get_user_team (id, color, 9)
  377. }
  378.  
  379. public setDisplay(id)
  380. {
  381.         if(!is_user_connected(id))
  382.                 return
  383.  
  384.         new kills = get_player_stats(id,0)
  385.  
  386.         if(kills < 50)
  387.         {
  388.                 PlayerRank[id] = 0
  389.         }
  390.         else if(kills >= 50 && kills < 100)
  391.         {
  392.                 PlayerRank[id] = 1
  393.         }
  394.         else if(kills >= 100 && kills < 150)
  395.         {
  396.                 PlayerRank[id] = 2
  397.         }
  398.         else if(kills >= 150 && kills < 200)
  399.         {
  400.                 PlayerRank[id] = 3
  401.         }
  402.         else if(kills >= 200 && kills < 250)
  403.         {
  404.                 PlayerRank[id] = 4
  405.         }
  406.         else if(kills >= 250 && kills < 300)
  407.         {
  408.                 PlayerRank[id] = 5
  409.         }
  410.         else if(kills >= 300 && kills < 350)
  411.         {
  412.                 PlayerRank[id] = 6
  413.         }
  414.         else if(kills >= 350 && kills < 400)
  415.         {
  416.                 PlayerRank[id] = 7
  417.         }
  418.         else if(kills >= 400 && kills < 450)
  419.         {
  420.                 PlayerRank[id] = 8
  421.         }
  422.         else if(kills >= 450 && kills < 500)
  423.         {
  424.                 PlayerRank[id] = 9
  425.         }
  426.         else if(kills >= 500 && kills < 550)
  427.         {
  428.                 PlayerRank[id] = 10
  429.         }
  430.         else if(kills >= 550 && kills < 600)
  431.         {
  432.                 PlayerRank[id] = 11
  433.         }
  434.         else if(kills >= 600 && kills < 650)
  435.         {
  436.                 PlayerRank[id] = 12
  437.         }
  438.         else if(kills >= 650 && kills < 700)
  439.         {
  440.                 PlayerRank[id] = 13
  441.         }
  442.         else if(kills >= 700 && kills < 750)
  443.         {
  444.                 PlayerRank[id] = 14
  445.         }
  446.         else if(kills >= 750 && kills < 800)
  447.         {
  448.                 PlayerRank[id] = 15
  449.         }
  450.         else if(kills >= 800 && kills < 850)
  451.         {
  452.                 PlayerRank[id] = 16
  453.         }
  454.         else if(kills >= 850 && kills < 900)
  455.         {
  456.                 PlayerRank[id] = 17
  457.         }
  458.         else if(kills >= 900)
  459.         {
  460.                 PlayerRank[id] = 18
  461.         }
  462.  
  463.         set_hudmessage(142, 239, 39, 0.01, 0.20, 0, 6.0, 1.0, 0.0, 0.0, -1)
  464.         ShowSyncHudMsg(id, ShowSyncHudMSG, "", kills, RANKS[PlayerRank[id]])
  465.        
  466.         set_task(HUD_INTERVAL, "setDisplay", id)
  467. }
  468.  
  469. stock ColorChat(const id, const input[], any:...)
  470. {
  471.         new count = 1, players[32];
  472.         static msg[191];
  473.         vformat(msg, 190, input, 3);
  474.  
  475.         replace_all(msg, 190, "!g", "^4"); // Green Color
  476.         replace_all(msg, 190, "!y", "^1"); // Default Color
  477.         replace_all(msg, 190, "!t", "^3"); // Team Color
  478.  
  479.         if (id) players[0] = id; else get_players(players, count, "ch");
  480.         {
  481.                 for (new i = 0; i < count; i++)
  482.                 {
  483.                         if (is_user_connected(players[i]))
  484.                         {
  485.                                 message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
  486.                                 write_byte(players[i]);
  487.                                 write_string(msg);
  488.                                 message_end();
  489.                         }
  490.                 }
  491.         }
  492. }
  493.  
  494. stock get_player_stats(id, type)
  495. {
  496.     new stats[8]
  497.     new bodyhits[8]
  498.     get_user_stats(id, stats, bodyhits);
  499.  
  500.     return stats[type];
  501. }
  502.  
  503. stock get_player_name(id)
  504. {
  505.     static szName[32]
  506.     get_user_name(id,szName,31)
  507.     return szName
  508. }
  509.  
  510. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  511. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
  512. */

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: sql mentés rangrendszerhez
HozzászólásElküldve: 2019.11.18. 19:01 
Offline
Őstag
Avatar

Csatlakozott: 2015.07.27. 22:56
Hozzászólások: 1367
Megköszönt másnak: 28 alkalommal
Megköszönték neki: 351 alkalommal
A StatsX plugin statisztikáit használja (avagy top15 statisztikákat), vagyis csak megjeleníti, mentést nem végez. Ha SQL-re akarod akkor használd az SQL verziót abból: https://github.com/serfreeman1337/csstatsx-sql


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: sql mentés rangrendszerhez
HozzászólásElküldve: 2019.11.18. 19:24 
Offline
Senior Tag

Csatlakozott: 2015.11.20. 17:59
Hozzászólások: 270
Megköszönt másnak: 33 alkalommal
Megköszönték neki: 2 alkalommal
regener írta:
A StatsX plugin statisztikáit használja (avagy top15 statisztikákat), vagyis csak megjeleníti, mentést nem végez. Ha SQL-re akarod akkor használd az SQL verziót abból: https://github.com/serfreeman1337/csstatsx-sql



bocsi de nekem nem az kell :)

nekem ebbe egy sql mentés kellene ami steam idre ment! :)

  1. #include <amxmodx>
  2.     #include <amxmisc>
  3.     #include <cstrike>
  4.     #include <csstats>
  5.      
  6.     #pragma tabsize 0
  7.      
  8.     #define PLUGIN "Rankrendszer (HUD + prefix)"
  9.     #define VERSION "1.5"
  10.     #define AUTHOR "6lmasok,qKKKJ;>, RaZ_HU" ///Szerk:. Jucika
  11.      
  12.     #define ACCESS_LEVEL ADMIN_CHAT
  13.     #define ADMIN_LISTEN ADMIN_CHAT
  14.      
  15.     #define MAXRANKS 19
  16.      
  17.     new message[192]
  18.      
  19.     new strName[191]
  20.     new strText[191]
  21.     new sayText
  22.     new teamInfo
  23.     new maxPlayers
  24.     new PlayerRank[33]
  25.     new bool: g_bHud[ 33 ]
  26.     new Float:HUD_INTERVAL
  27.     new static color[10]
  28.     new ShowSyncHudMSG
  29.      
  30.     new const RANKS[MAXRANKS][] =
  31.     {
  32.         "[«Újonc»]",
  33.         "[«JátĂ©kos»]",
  34.         "[«Királynő»]",
  35.         "[«Király»]",
  36.         "[«ÉlĹ‘ Zombie»]",
  37.         "[«Csont hĂĽlye»]",
  38.         "[«Gladiátor»]",
  39.         "[«Manusz»]",
  40.         "[«Átkozott»]",
  41.         "[«VĂ©n ember»]",
  42.         "[«Focista»]",
  43.         "[«HamupipĹ‘ke»]",
  44.         "[«Kristály»]",
  45.         "[«Szarvas»]",
  46.         "[«Legendary»]",
  47.         "[«FĂĽles bagoly»]",
  48.         "[«PornĂłszĂ­nĂ©sz»]",
  49.         "[«VĂ©delmező»]",
  50.         "[«Burned Out Tag»]"
  51.      
  52.     }
  53.      
  54.     new const szamok[MAXRANKS-1] =
  55.     {
  56.             50,
  57.             100,
  58.             150,
  59.             200,
  60.             250,
  61.             300,
  62.             350,
  63.             400,
  64.             450,
  65.             500,
  66.             550,
  67.             600,
  68.             650,
  69.             700,
  70.             750,
  71.             800,
  72.             850,
  73.             900
  74.     }
  75.      
  76.     public plugin_init()
  77.     {
  78.             register_plugin(PLUGIN, VERSION, AUTHOR)
  79.             register_clcmd("say /rang", "hud")
  80.             register_clcmd("say rang", "hud")
  81.             register_clcmd( "say /rangok", "cmdRangs" );
  82.             register_clcmd( "say /hud", "cmdHud" );
  83.             register_clcmd ("say", "hook_say")
  84.             register_clcmd ("say_team", "hook_teamsay")
  85.      
  86.             register_cvar("sv_rankrendszer","1") // A plugin be- illetve kikapcsolása
  87.             register_cvar("sv_rankrendszer_HUD","1") // A HUD-ra valĂł kijelzĂ©s be- illetve kikapcsolása
  88.             sethudtime()
  89.      
  90.             sayText = get_user_msgid ("SayText")
  91.             teamInfo = get_user_msgid ("TeamInfo")
  92.             maxPlayers = get_maxplayers()
  93.      
  94.             set_task(160.0, "korUzenet", 0, _, _, "b")
  95.            
  96.             ShowSyncHudMSG = CreateHudSyncObj()
  97.      
  98.             register_message (sayText, "avoid_duplicated")
  99.     }
  100.      
  101.     public cmdRangs( iPlayerId )
  102.     {
  103.             static iLen = 0, sMotd[ 2048 ], iMotdLen = charsmax( sMotd );
  104.      
  105.             iLen = formatex( sMotd, iMotdLen, "<meta charset=utf-8><style>table{color:#FFB000;} td,th{border:1px solid #666;text-align:center;}</style><body bgcolor=#000000><center><table width='400'><tr><th>Rang</th><th>Ă–lĂ©s</th><tr>" );
  106.             iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>0</td><tr>", RANKS[ 0 ] );
  107.      
  108.             for ( new i; i < MAXRANKS-1; ++i )
  109.                     iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>%d</td><tr>", RANKS[ i + 1 ], szamok[ i ] );
  110.      
  111.             show_motd( iPlayerId, sMotd, "Rangrendszer infĂł" );
  112.     }
  113.      
  114.     public cmdHud( iPlayerId )
  115.     {
  116.             ColorChat( iPlayerId, "^1A hud kijelzĹ‘ ^3%skapcsolva^1!", ( g_bHud[ iPlayerId ] ^= true ) ? "be" : "ki" );
  117.      
  118.             if ( !g_bHud[ iPlayerId ] ) remove_task( iPlayerId );
  119.             else { if ( !task_exists( iPlayerId ) ) set_task( HUD_INTERVAL, "setDisplay", iPlayerId ); }
  120.     }
  121.      
  122.     public sethudtime()
  123.     {
  124.             new refreshtime = register_cvar("sv_rankrendszer_HUDtime","0.9") // A HUD-ra valĂł kijelzĂ©s frissĂ­tĂ©si ideje másodpercben
  125.             if (refreshtime == 0.9)
  126.             {
  127.                     HUD_INTERVAL = 0.9
  128.             }
  129.             else if (refreshtime != 0.9)
  130.             {
  131.                     HUD_INTERVAL = get_pcvar_float(refreshtime)
  132.             }
  133.     }
  134.      
  135.     public avoid_duplicated (msgId, msgDest, receiver)
  136.     {
  137.             return PLUGIN_HANDLED
  138.     }
  139.      
  140.     public korUzenet()
  141.     {
  142.             ColorChat( 0, "^4[.:*DSF*:.]^3ĂŤrd be ^4/rang ^3vagy ^4rang ^3hogy megnĂ©zd hány Ă–lĂ©s kell a következĹ‘ ranghoz.")
  143.             return PLUGIN_HANDLED;
  144.     }
  145.      
  146.     public hud(id)
  147.     {
  148.             ColorChat( id, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d",RANKS[PlayerRank[id]], get_player_stats(id,0))
  149.      
  150.             if(PlayerRank[id] == MAXRANKS-1)
  151.             {
  152.                     ColorChat( id, "^4Mar elĂ©rted a legnagyobb ^4rangot.")
  153.             }
  154.             else
  155.             {
  156.                     ColorChat( id, "^4következĹ‘ rang: ^3%s ^1| ^4A következĹ‘ ranghoz kell mĂ©g: ^3%d",RANKS[PlayerRank[id]+1], szamok[PlayerRank[id]]-get_player_stats(id,0))
  157.             }
  158.     }
  159.      
  160.     public hook_say(id)
  161.     {
  162.             read_args (message, 191)
  163.             remove_quotes (message)
  164.      
  165.             if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
  166.             return PLUGIN_CONTINUE
  167.      
  168.             static name[32]
  169.             name = get_player_name(id)
  170.             new isAlive, alive[32]
  171.      
  172.             if (is_user_alive (id))
  173.             {
  174.                     isAlive = 1
  175.                     alive = ""
  176.             }
  177.             else
  178.             {
  179.                     isAlive = 0
  180.                     alive = "^1*Halott* "
  181.             }
  182.      
  183.             getTeam(id)
  184.             if(get_user_flags(id)&ADMIN_CVAR) // G jog
  185.             {
  186.                     formatex (strName, 191, "%s^4[«Tulajdonos»]^3%s^1» ^4%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  187.                     formatex (strText, 191, "^4%s", message)
  188.             }
  189.            
  190.             else if(get_user_flags(id)&ADMIN_CFG) // H jog
  191.             {
  192.                     formatex (strName, 191, "%s^4[«FĹ‘Admin»]^3%s^1» ^4%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  193.                     formatex (strText, 191, "^4%s", message)      
  194.                    
  195.             }
  196.      
  197.             else if(get_user_flags(id)&ADMIN_MAP) // F jog
  198.             {
  199.                     formatex (strName, 191, "%s^4[«Admin»]^3%s^1» ^3%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  200.                     formatex (strText, 191, "^4%s", message)
  201.             }
  202.      
  203.             else if(get_user_flags(id)&ADMIN_MENU) // U jog
  204.             {
  205.                     formatex (strName, 191, "%s^4[«Vip»]^3%s^1» ^3%s^1:^2", alive, RANKS[PlayerRank[id]], name)
  206.                     formatex (strText, 191, "^4%s", message)
  207.             }
  208.      
  209.             else if(get_user_flags(id)&ADMIN_USER) // Z jog (alapbĂłl minden player)
  210.             {
  211.                     formatex (strName, 191, "%s^4[%s] ^3%s:",alive, RANKS[PlayerRank[id]], name)
  212.                     formatex (strText, 191, "^1%s", message)
  213.             }
  214.      
  215.             formatex (message, 191, "%s ^1%s", strName, strText)
  216.             sendMessage (color, isAlive)
  217.      
  218.             return PLUGIN_HANDLED
  219.     }
  220.      
  221.     public hook_teamsay(id)
  222.     {
  223.             new playerTeam = get_user_team(id)
  224.             new playerTeamName[19]
  225.      
  226.             switch (playerTeam)
  227.             {
  228.                     case 1:
  229.                             copy (playerTeamName, 11, "Terrorista")
  230.      
  231.                     case 2:
  232.                             copy (playerTeamName, 18, "Anti-Terrorista")
  233.      
  234.                     default:
  235.                             copy (playerTeamName, 9, "NĂ©zĹ‘")
  236.             }
  237.      
  238.             read_args (message, 191)
  239.             remove_quotes (message)
  240.      
  241.             if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  242.             return PLUGIN_CONTINUE
  243.            
  244.             static name[32]
  245.             name = get_player_name(id)
  246.             new isAlive, alive[32]
  247.      
  248.             if (is_user_alive (id))
  249.             {
  250.                     isAlive = 1
  251.                     alive = "^1*Él*"
  252.             }
  253.             else
  254.             {
  255.                     isAlive = 0
  256.                     alive = "^1*Halott* "
  257.             }
  258.      
  259.             getTeam(id)
  260.             if(get_user_flags(id)&ADMIN_CVAR) // G jog
  261.             {
  262.                     formatex (strName, 191, "%s(%s)^4[«Tulajdonos»]^3%s^1» ^4%s^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  263.                     formatex (strText, 191, "^4%s", message)
  264.             }
  265.      
  266.             else if(get_user_flags(id)&ADMIN_CFG) // H jog
  267.             {
  268.                     formatex (strName, 191, "%s(%s)^4[«FĹ‘Admin»]^3%s^1» ^4%s^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  269.                     formatex (strText, 191, "^4%s", message)
  270.             }
  271.      
  272.             else if(get_user_flags(id)&ADMIN_MAP) // F jog
  273.             {
  274.                     formatex (strName, 191, "%s(%s)^4[«Admin»]^3%s^1» ^3%s^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  275.                     formatex (strText, 191, "^4%s", message)
  276.             }
  277.      
  278.             else if(get_user_flags(id)&ADMIN_MENU) // U jog
  279.             {
  280.                     formatex (strName, 191, "%s(%s)^4[«Vip»]^3%s^1» ^3%s:^1:^2",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  281.                     formatex (strText, 191, "^4%s", message)
  282.             }
  283.      
  284.             else if(get_user_flags(id)&ADMIN_USER) // Z jog (alapbĂłl minden player)
  285.             {
  286.                     formatex (strName, 191, "%s(%s)[%s] ^1%s:",alive ,playerTeamName, RANKS[PlayerRank[id]], name)
  287.                     formatex (strText, 191, "^1%s", message)
  288.             }
  289.      
  290.             formatex (message, 191, "%s ^1%s", strName, strText)
  291.             sendTeamMessage (color,isAlive, playerTeam)
  292.      
  293.             return PLUGIN_HANDLED
  294.     }
  295.      
  296.     public sendMessage (color[], alive)
  297.     {
  298.             new teamName[10]
  299.      
  300.             for (new player = 1; player < maxPlayers; player++)
  301.             {
  302.                     if (!is_user_connected(player))
  303.                             continue
  304.                     if((alive && is_user_alive(player)) || (!alive && !is_user_alive(player)) || (get_user_flags(player) && ADMIN_LISTEN))
  305.                     {
  306.                             get_user_team (player, teamName, 9)
  307.                             changeTeamInfo (player, color)
  308.                             writeMessage (player, message)
  309.                             changeTeamInfo (player, teamName)
  310.                     }
  311.             }
  312.     }
  313.      
  314.     public sendTeamMessage (color[], alive, playerTeam)
  315.     {
  316.             new teamName[10]
  317.      
  318.             for (new player = 1; player < maxPlayers; player++)
  319.             {
  320.                     if (!is_user_connected(player))
  321.                             continue
  322.      
  323.                     if (get_user_team(player) == playerTeam || get_user_flags(player) & ADMIN_LISTEN)
  324.                     {
  325.                             if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_user_flags(player) & ADMIN_LISTEN)
  326.                             {
  327.                                     get_user_team (player, teamName, 9)
  328.                                     changeTeamInfo (player, color)
  329.                                     writeMessage (player, message)
  330.                                     changeTeamInfo (player, teamName)
  331.                             }
  332.                     }
  333.             }
  334.     }
  335.      
  336.     public changeTeamInfo (player, team[])
  337.     {
  338.             message_begin (MSG_ONE, teamInfo, _, player)
  339.             write_byte (player)
  340.             write_string (team)
  341.             message_end()
  342.     }
  343.      
  344.     public writeMessage (player, message[])
  345.     {
  346.             message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
  347.             write_byte (player)
  348.             write_string (message)
  349.             message_end ()
  350.     }
  351.      
  352.     public client_putinserver(id)
  353.     {
  354.             if(get_cvar_num("sv_rankrendszer")==0)
  355.             {
  356.                     return
  357.             }
  358.             if (get_cvar_num("sv_rankrendszer")==1)
  359.             {
  360.                     g_bHud[ id ] = true;
  361.                     set_task(HUD_INTERVAL, "setDisplay", id)
  362.             }
  363.             else
  364.             {
  365.                     set_task(0.5, "remTask", id)
  366.             }
  367.     }
  368.      
  369.     public remTask(id)
  370.     {
  371.             remove_task(id, 0)
  372.     }
  373.      
  374.     public getTeam(id)
  375.     {
  376.             get_user_team (id, color, 9)
  377.     }
  378.      
  379.     public setDisplay(id)
  380.     {
  381.             if(!is_user_connected(id))
  382.                     return
  383.      
  384.             new kills = get_player_stats(id,0)
  385.      
  386.             if(kills < 50)
  387.             {
  388.                     PlayerRank[id] = 0
  389.             }
  390.             else if(kills >= 50 && kills < 100)
  391.             {
  392.                     PlayerRank[id] = 1
  393.             }
  394.             else if(kills >= 100 && kills < 150)
  395.             {
  396.                     PlayerRank[id] = 2
  397.             }
  398.             else if(kills >= 150 && kills < 200)
  399.             {
  400.                     PlayerRank[id] = 3
  401.             }
  402.             else if(kills >= 200 && kills < 250)
  403.             {
  404.                     PlayerRank[id] = 4
  405.             }
  406.             else if(kills >= 250 && kills < 300)
  407.             {
  408.                     PlayerRank[id] = 5
  409.             }
  410.             else if(kills >= 300 && kills < 350)
  411.             {
  412.                     PlayerRank[id] = 6
  413.             }
  414.             else if(kills >= 350 && kills < 400)
  415.             {
  416.                     PlayerRank[id] = 7
  417.             }
  418.             else if(kills >= 400 && kills < 450)
  419.             {
  420.                     PlayerRank[id] = 8
  421.             }
  422.             else if(kills >= 450 && kills < 500)
  423.             {
  424.                     PlayerRank[id] = 9
  425.             }
  426.             else if(kills >= 500 && kills < 550)
  427.             {
  428.                     PlayerRank[id] = 10
  429.             }
  430.             else if(kills >= 550 && kills < 600)
  431.             {
  432.                     PlayerRank[id] = 11
  433.             }
  434.             else if(kills >= 600 && kills < 650)
  435.             {
  436.                     PlayerRank[id] = 12
  437.             }
  438.             else if(kills >= 650 && kills < 700)
  439.             {
  440.                     PlayerRank[id] = 13
  441.             }
  442.             else if(kills >= 700 && kills < 750)
  443.             {
  444.                     PlayerRank[id] = 14
  445.             }
  446.             else if(kills >= 750 && kills < 800)
  447.             {
  448.                     PlayerRank[id] = 15
  449.             }
  450.             else if(kills >= 800 && kills < 850)
  451.             {
  452.                     PlayerRank[id] = 16
  453.             }
  454.             else if(kills >= 850 && kills < 900)
  455.             {
  456.                     PlayerRank[id] = 17
  457.             }
  458.             else if(kills >= 900)
  459.             {
  460.                     PlayerRank[id] = 18
  461.             }
  462.      
  463.             set_hudmessage(142, 239, 39, 0.01, 0.20, 0, 6.0, 1.0, 0.0, 0.0, -1)
  464.             ShowSyncHudMsg(id, ShowSyncHudMSG, "", kills, RANKS[PlayerRank[id]])
  465.            
  466.             set_task(HUD_INTERVAL, "setDisplay", id)
  467.     }
  468.      
  469.     stock ColorChat(const id, const input[], any:...)
  470.     {
  471.             new count = 1, players[32];
  472.             static msg[191];
  473.             vformat(msg, 190, input, 3);
  474.      
  475.             replace_all(msg, 190, "!g", "^4"); // Green Color
  476.             replace_all(msg, 190, "!y", "^1"); // Default Color
  477.             replace_all(msg, 190, "!t", "^3"); // Team Color
  478.      
  479.             if (id) players[0] = id; else get_players(players, count, "ch");
  480.             {
  481.                     for (new i = 0; i < count; i++)
  482.                     {
  483.                             if (is_user_connected(players[i]))
  484.                             {
  485.                                     message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
  486.                                     write_byte(players[i]);
  487.                                     write_string(msg);
  488.                                     message_end();
  489.                             }
  490.                     }
  491.             }
  492.     }
  493.      
  494.     stock get_player_stats(id, type)
  495.     {
  496.         new stats[8]
  497.         new bodyhits[8]
  498.         get_user_stats(id, stats, bodyhits);
  499.      
  500.         return stats[type];
  501.     }
  502.      
  503.     stock get_player_name(id)
  504.     {
  505.         static szName[32]
  506.         get_user_name(id,szName,31)
  507.         return szName
  508.     }
  509.      
  510.     /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  511.     *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par }
  512.     */


Csatolmányok:
rang.sma [16.66 KiB]
Letöltve 34 alkalommal.

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


Ki van itt

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