hlmod.hu
https://hlmod.hu/

Ezt a Rangrendszert szeretném szép színesre!
https://hlmod.hu/viewtopic.php?f=24&t=29734
Oldal: 1 / 1

Szerző:  krisz52 [ 2019.01.30. 13:33 ]
Hozzászólás témája:  Ezt a Rangrendszert szeretném szép színesre!

Sziasztok kedves tagok, Ezt a Rangrendszert szeretném szép színesre!

Köszönök mindent előre is :)






  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"
  11.  
  12.         #define ACCESS_LEVEL ADMIN_CHAT
  13.         #define ADMIN_LISTEN ADMIN_CHAT
  14.  
  15.         #define RANK_HONVED 0
  16.         #define RANK_ORVEZETO 1
  17.         #define RANK_TIZEDES 2
  18.         #define RANK_SZAKASZV 3
  19.         #define RANK_ORMESTER 4
  20.         #define RANK_TORMESTER 5
  21.         #define RANK_FTORMESTER 6
  22.         #define RANK_ZASZLOS 7
  23.         #define RANK_TZASZLOS 8
  24.         #define RANK_FTZASZLOS 9
  25.         #define RANK_FZASZLOS 10
  26.         #define RANK_HADNAGY 11
  27.         #define RANK_FOHADNAGY 12
  28.         #define RANK_SZAZADOS 13
  29.         #define RANK_ORNAGY 14
  30.         #define RANK_ALEZREDES 15
  31.         #define RANK_EZREDES 16
  32.         #define RANK_DANDARTABORNOK 17
  33.         #define RANK_VEZERORNAGY 18
  34.         #define RANK_ALTABORNAGY 19
  35.         #define RANK_VEZEREZREDES 20
  36.  
  37.         #define MAXRANKS 20
  38.  
  39.         new message[192]
  40.  
  41.         new strName[191]
  42.         new strText[191]
  43.         new sayText
  44.         new teamInfo
  45.         new maxPlayers
  46.         new PlayerRank[33]
  47.         new Float:HUD_INTERVAL
  48.  
  49.         new static color[10]
  50.  
  51.         new const RANKS[MAXRANKS][] =
  52.         {
  53.             "Szopofantom",
  54.             "Bazarimajom",
  55.             "Szopotthuszar",
  56.             "Csovesbanat",
  57.             "Hajlektalan",
  58.             "Golyoszopo",
  59.             "Ozdi sinter",
  60.             "Holo kepu",
  61.             "Roka kepu",
  62.             "Kecskeszopo",
  63.             "Tud valamit",
  64.             "Profi",
  65.             "Seged Programos",
  66.             "Semmi eselyed",
  67.             "Legenda",
  68.             "Csalo vagyok",
  69.             "Szerver alazoja",
  70.             "Ninja tanitvanya",
  71.             "Az arena kiralya",
  72.           "ISTEN"
  73.         }
  74.  
  75.         #define size 20
  76.  
  77.         new const szamok[size] =
  78.         {
  79.             50,
  80.             100,
  81.             200,
  82.             300,
  83.             450,
  84.             650,
  85.             800,
  86.             1000,
  87.             1200,
  88.             1400,
  89.             1700,
  90.             2000,
  91.             2500,
  92.             3000,
  93.     3400,
  94.             3600,
  95.             4500,
  96.             5500,
  97.             20000,
  98.          20100
  99.         }
  100.  
  101.         public plugin_init()
  102.         {
  103.             register_plugin(PLUGIN, VERSION, AUTHOR)
  104.             register_clcmd("say /rang", "hud")
  105.             register_clcmd("say rang", "hud")
  106.             register_clcmd ("say", "hook_say")
  107.             register_clcmd ("say_team", "hook_teamsay")
  108.  
  109.             register_cvar("sv_rankrendszer","1") // A plugin be- illetve kikapcsolása
  110.             register_cvar("sv_rankrendszer_HUD","1") // A HUD-ra való kijelzés be- illetve kikapcsolása
  111.             sethudtime()
  112.  
  113.             sayText = get_user_msgid ("SayText")
  114.             teamInfo = get_user_msgid ("TeamInfo")
  115.             maxPlayers = get_maxplayers()
  116.  
  117.             set_task(160.0, "korUzenet", 0, _, _, "b")
  118.  
  119.             register_message (sayText, "avoid_duplicated")
  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.             return PLUGIN_CONTINUE
  135.         }
  136.  
  137.         public avoid_duplicated (msgId, msgDest, receiver)
  138.         {
  139.             return PLUGIN_HANDLED
  140.         }
  141.  
  142.         public korUzenet()
  143.         {
  144.             ColorChat( 0, "^3Ird be ^4/rang ^3vagy ^4rang ^3hogy megnezd hany oles kell a kovetkezo ranghoz.")
  145.             return PLUGIN_HANDLED;
  146.         }
  147.  
  148.         public hud(id)
  149.         {
  150.             new stats[8]
  151.         new bodyhits[8]
  152.             get_user_stats(id, stats, bodyhits)
  153.  
  154.             ColorChat( id, "^4Rangod: ^3%s ^1| ^4Oleseid: ^3%d",RANKS[PlayerRank[id]], stats[0])
  155.  
  156.             if(PlayerRank[id] == MAXRANKS-1)
  157.             {
  158.                 //client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Öléseid: ^3%d ^n^4A következő szinthez kell még: ^3%d",RANKS[PlayerRank[id]], stats[0],szamok[PlayerRank[id]]-stats[0])
  159.                 ColorChat( id, "^4Mar elerted a legnagyobb ^4rangot.")
  160.             }
  161.             else
  162.             {
  163.                 //client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Öléseid: ^3%d ^n^4Már elérted a legnagyobb rangot.",RANKS[PlayerRank[id]], stats[0])
  164.                 ColorChat( id, "^4Kovetkezo rang: ^3%s ^1| ^4A kovetkezo szinthez kell meg: ^3%d",RANKS[PlayerRank[id]+1], szamok[PlayerRank[id]]-stats[0])
  165.             }
  166.         }
  167.  
  168.         public hook_say(id)
  169.         {
  170.             read_args (message, 191)
  171.             remove_quotes (message)
  172.  
  173.             if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
  174.             return PLUGIN_CONTINUE
  175.  
  176.             new name[32]
  177.             get_user_name (id, name, 31)
  178.  
  179.             new isAlive, alive[32]
  180.  
  181.             if (is_user_alive (id))
  182.             {
  183.                 isAlive = 1
  184.                 alive = "^1 "
  185.             }
  186.             else
  187.             {
  188.                 isAlive = 0
  189.                 alive = "^1*HALOTT* "
  190.             }
  191.  
  192.             //static color[10]
  193.  
  194.             if(get_user_flags(id)&ADMIN_CVAR)
  195.             {
  196.                 //get_user_team (id, color, 9)
  197.                 getTeam(id)
  198.                 format (strName, 191, "%s^4[TULAJ][%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
  199.                 format (strText, 191, "^4%s", message)
  200.             }  
  201.  
  202.             else if(get_user_flags(id)&ADMIN_MAP)
  203.             {
  204.                 getTeam(id)
  205.                 format (strName, 191, "%s^4[ADMIN][%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
  206.                 format (strText, 191, "^4%s", message)
  207.             }    
  208.  
  209.             else if(get_user_flags(id)&ADMIN_MENU)
  210.             {
  211.                 getTeam(id)
  212.                 format (strName, 191, "%s^4[VIP][%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
  213.                 format (strText, 191, "^4%s", message)
  214.             }
  215.  
  216.             else if(get_user_flags(id)&ADMIN_USER)
  217.             {
  218.                 getTeam(id)
  219.                 format (strName, 191, "%s^4[%s] ^3%s:",alive, RANKS[PlayerRank[id]], name)
  220.                 format (strText, 191, "^1%s", message)
  221.             }
  222.  
  223.             format (message, 191, "%s ^1%s", strName, strText)
  224.             sendMessage (color, isAlive)
  225.  
  226.             return PLUGIN_CONTINUE
  227.         }
  228.  
  229.         public hook_teamsay(id)
  230.         {
  231.             new playerTeam = get_user_team(id)
  232.             new playerTeamName[19]
  233.  
  234.             switch (playerTeam)
  235.             {
  236.                 case 1:
  237.                 copy (playerTeamName, 11, "Terrorista")
  238.  
  239.                 case 2:
  240.                 copy (playerTeamName, 18, "Anti-Terrorista")
  241.  
  242.                 default:
  243.                 copy (playerTeamName, 9, "Néző")
  244.             }
  245.  
  246.             read_args (message, 191)
  247.             remove_quotes (message)
  248.  
  249.             if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  250.             return PLUGIN_CONTINUE
  251.  
  252.             new isAlive, alive[32]
  253.  
  254.             if (is_user_alive (id))
  255.             {
  256.                 isAlive = 1
  257.                 alive = "^1 "
  258.             }
  259.             else
  260.             {
  261.                 isAlive = 0
  262.                 alive = "^1*HALOTT* "
  263.             }
  264.  
  265.             new name[32]
  266.             get_user_name (id, name, 31)
  267.  
  268.             //static color[10]
  269.  
  270.             if(get_user_flags(id)&ADMIN_CVAR)
  271.             {
  272.                 //get_user_team (id, color, 9)
  273.                 getTeam(id)
  274.                 format (strName, 191, "%s(%s)^4[TULAJ][%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  275.                 format (strText, 191, "^4%s", message)
  276.             }  
  277.  
  278.             else if(get_user_flags(id)&ADMIN_MAP)
  279.             {
  280.                 getTeam(id)
  281.                 format (strName, 191, "%s(%s)^4[ADMIN][%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  282.                 format (strText, 191, "^4%s", message)
  283.             }    
  284.  
  285.             else if(get_user_flags(id)&ADMIN_MENU)
  286.             {
  287.                 getTeam(id)
  288.                 format (strName, 191, "%s(%s)^4[VIP][%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
  289.                 format (strText, 191, "^4%s", message)
  290.             }
  291.  
  292.             else if(get_user_flags(id)&ADMIN_USER)
  293.             {
  294.                 getTeam(id)
  295.                 format (strName, 191, "%s(%s)^4[%s] ^3%s:",alive ,playerTeamName, RANKS[PlayerRank[id]], name)
  296.                 format (strText, 191, "^1%s", message)
  297.             }
  298.  
  299.             format (message, 191, "%s ^1%s", strName, strText)
  300.             sendTeamMessage (color,isAlive, playerTeam)
  301.  
  302.             return PLUGIN_CONTINUE 
  303.         }
  304.  
  305.         public sendMessage (color[], alive)
  306.         {
  307.             new teamName[10]
  308.  
  309.             for (new player = 1; player < maxPlayers; player++)
  310.             {
  311.             if (!is_user_connected(player))
  312.                 continue
  313.             if((alive && is_user_alive(player)) || (!alive && !is_user_alive(player)) || (get_user_flags(player) && ADMIN_LISTEN))
  314.                 {
  315.                     get_user_team (player, teamName, 9)
  316.                     changeTeamInfo (player, color)
  317.                     writeMessage (player, message)
  318.                     changeTeamInfo (player, teamName)
  319.                 }
  320.             }
  321.         }
  322.  
  323.         public sendTeamMessage (color[], alive, playerTeam)
  324.         {
  325.             new teamName[10]
  326.  
  327.             for (new player = 1; player < maxPlayers; player++)
  328.             {
  329.             if (!is_user_connected(player))
  330.                 continue
  331.  
  332.             if (get_user_team(player) == playerTeam || get_user_flags(player) & ADMIN_LISTEN)
  333.                 {
  334.                     if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_user_flags(player) & ADMIN_LISTEN)
  335.                     {
  336.                         get_user_team (player, teamName, 9)
  337.                         changeTeamInfo (player, color)
  338.                         writeMessage (player, message)
  339.                         changeTeamInfo (player, teamName)
  340.                     }
  341.                 }
  342.             }
  343.         }
  344.  
  345.         public changeTeamInfo (player, team[])
  346.         {
  347.             message_begin (MSG_ONE, teamInfo, _, player)   
  348.             write_byte (player)
  349.             write_string (team)
  350.             message_end()  
  351.         }
  352.  
  353.         public writeMessage (player, message[])
  354.         {
  355.             message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
  356.             write_byte (player)
  357.             write_string (message)
  358.             message_end ()
  359.         }
  360.  
  361.         stock bool:is_user_steam(id)
  362.         {
  363.             static dp_pointer;
  364.  
  365.             if (dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
  366.             {
  367.                 server_cmd("dp_clientinfo %d", id);
  368.                 server_exec();
  369.                 return (get_pcvar_num(dp_pointer) == 2) ? true : false;
  370.             }
  371.  
  372.             return false;
  373.         }
  374.  
  375.         public client_putinserver(id)
  376.         {
  377.             if(get_cvar_num("sv_rankrendszer")==0)
  378.             {
  379.                 return PLUGIN_HANDLED
  380.             }
  381.             else if (get_cvar_num("sv_rankrendszer")==1 && get_cvar_num("sv_rankrendszer_HUD")==1)
  382.             {
  383.                 set_task(HUD_INTERVAL, "setDisplay", id)
  384.             }
  385.             else
  386.             {
  387.                 set_task(0.5, "remTask", id)
  388.             }
  389.  
  390.             return PLUGIN_CONTINUE
  391.         }
  392.  
  393.         public remTask(id)
  394.         {
  395.             remove_task(id, 0)
  396.         }
  397.  
  398.         public getTeam(id)
  399.         {
  400.             get_user_team (id, color, 9)
  401.         }
  402.  
  403.         public setDisplay(id)
  404.         {
  405.             if(!is_user_connected(id))
  406.                 return PLUGIN_CONTINUE
  407.  
  408.         new stats[8]
  409.         new bodyhits[8]
  410.             get_user_stats(id, stats, bodyhits)
  411.  
  412.             if(stats[0] < 50)
  413.             {
  414.                 PlayerRank[id] = RANK_HONVED
  415.             }
  416.             else if(stats[0] >= 50 && stats[0] < 100)
  417.             {
  418.                 PlayerRank[id] = RANK_ORVEZETO
  419.             }
  420.             else if(stats[0] >= 100 && stats[0] < 200)
  421.             {
  422.                 PlayerRank[id] = RANK_TIZEDES
  423.             }
  424.             else if(stats[0] >= 200 && stats[0] < 300)
  425.             {
  426.                 PlayerRank[id] = RANK_SZAKASZV
  427.             }
  428.             else if(stats[0] >= 300 && stats[0] < 450)
  429.             {
  430.                 PlayerRank[id] = RANK_ORMESTER
  431.             }
  432.             else if(stats[0] >= 450 && stats[0] < 650)
  433.             {
  434.                 PlayerRank[id] = RANK_TORMESTER
  435.             }
  436.             else if(stats[0] >= 650 && stats[0] < 800)
  437.             {
  438.                 PlayerRank[id] = RANK_FTORMESTER
  439.             }
  440.             else if(stats[0] >= 800 && stats[0] < 1000)
  441.             {
  442.                 PlayerRank[id] = RANK_ZASZLOS
  443.             }
  444.             else if(stats[0] >= 1000 && stats[0] < 1200)
  445.             {
  446.                 PlayerRank[id] = RANK_TZASZLOS
  447.             }
  448.             else if(stats[0] >= 1200 && stats[0] < 1400)
  449.             {
  450.                 PlayerRank[id] = RANK_FZASZLOS
  451.             }
  452.             else if(stats[0] >= 1400 && stats[0] < 1700)
  453.             {
  454.                 PlayerRank[id] = RANK_HADNAGY
  455.             }
  456.             else if(stats[0] >= 1700 && stats[0] < 2000)
  457.             {
  458.                 PlayerRank[id] = RANK_FOHADNAGY
  459.             }
  460.             else if(stats[0] >= 2000 && stats[0] < 2500)
  461.             {
  462.                 PlayerRank[id] = RANK_SZAZADOS
  463.             }
  464.             else if(stats[0] >= 2500 && stats[0] < 3000)
  465.             {
  466.                 PlayerRank[id] = RANK_ORNAGY
  467.             }
  468.             else if(stats[0] >= 3000 && stats[0] < 3600)
  469.             {
  470.                 PlayerRank[id] = RANK_ALEZREDES
  471.             }
  472.             else if(stats[0] >= 3600 && stats[0] < 4500)
  473.             {
  474.                 PlayerRank[id] = RANK_EZREDES
  475.             }
  476.             else if(stats[0] >= 4500 && stats[0] < 5500)
  477.             {
  478.                 PlayerRank[id] = RANK_DANDARTABORNOK
  479.             }
  480.             else if(stats[0] >= 5500 && stats[0] < 20000)
  481.             {
  482.                 PlayerRank[id] = RANK_VEZERORNAGY
  483.             }
  484.             else if(stats[0] >= 20000 && stats[0] < 20100)
  485.             {
  486.                 PlayerRank[id] = RANK_ALTABORNAGY
  487.           }
  488.           else if(stats[0] >= 20100 && stats[0] < 20200)
  489.           {
  490.                 PlayerRank[id] = RANK_VEZEREZREDES
  491.             }
  492.  
  493.             set_hudmessage(2151, 1233, 645, 0.01, 0.20, 0, 6.0, 1.0, 0.0, 0.0, -1)
  494.             show_hudmessage(id, "^nOleseid: %i ^nRangod: %s", stats[0], RANKS[PlayerRank[id]])
  495.             //show_hudmessage(id, "%s ^nÖléseid: %i ^nRangod: %s", name, stats[0], RANKS[PlayerRank[id]])
  496.  
  497.             set_task(HUD_INTERVAL, "setDisplay", id)
  498.  
  499.             return PLUGIN_CONTINUE
  500.         }
  501.  
  502.         stock ColorChat(const id, const input[], any:...)
  503.         {
  504.             new count = 1, players[32];
  505.             static msg[191];
  506.             vformat(msg, 190, input, 3);
  507.  
  508.             replace_all(msg, 190, "!g", "^4"); // Green Color
  509.             replace_all(msg, 190, "!y", "^1"); // Default Color
  510.             replace_all(msg, 190, "!t", "^3"); // Team Color
  511.  
  512.             if (id) players[0] = id; else get_players(players, count, "ch");
  513.             {
  514.                 for (new i = 0; i < count; i++)
  515.                 {
  516.                     if (is_user_connected(players[i]))
  517.                     {
  518.                         message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
  519.                         write_byte(players[i]);
  520.                         write_string(msg);
  521.                         message_end();
  522.                     }
  523.                 }
  524.             }
  525.         }


Csatolmányok:
Magyarázat: Ez lenne az, kár hogy nem villog össze vissza minden féle színen!
kép.png
kép.png [ 1.69 MiB | Megtekintve 2440 alkalommal ]

Szerző:  DeteCT0R [ 2019.01.30. 13:41 ]
Hozzászólás témája:  Re: Ezt a Rangrendszert szeretném szép színesre!

Szia kedves Tag!

Tobb mint 100 oldal van szinezessel kapcsolatosan. Kerlek hasznald a Keresot

Koszonom hogy elolvastad.

Szinesen irom mert latom szereted.
( Ez tovabbra is offtopic fusd at szabalyzatot. )

Meg a masik hogy a szavaztatast nem ilyenre szoktak hasznalni.

Leszek a konfigosod ha fizecc erte
FIZECC

Szerző:  ultraibolya [ 2019.01.30. 13:45 ]
Hozzászólás témája:  Re: Ezt a Rangrendszert szeretném szép színesre!

Kedves krisz

Még eyg zsabajszegess es repulzs Mert ruhellek
Mar utanad takaritan.

koszi

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/