Van 1 problémám hogy nem fejlődnek tovább az emberek.
Amikor elérjük a bizonyos killt hogy továbbfejlődjünk Silver II-be nem adja meg a.
Killek száma: -(minusz)-ba keződik és megy a végtelenbe.
Valahogy így néz ki chatbe: Rang: [Silver I] | Ölések: 55| Kell még: -5 (EZ EGY PÉLDA VOLT, VALAHOGY ÍGY NÉZ KI)
Valaki megcsinálná nekem?, hálám üldözni fog.
Lefordítja rendesen.
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <nvault>
#include <colorchat>
#define PLUGIN ""
#define VERSION "1.0"
#define AUTHOR ""
new message[192]
new nev[32]
new Temp[192]
static color[10]
new g_vault
new points_kill, points_hs;
new olesek[33]
new szint[33]
new tulaj[32] = "abcdefghijklmnopqrstu"
new foadmin[32] = "bcdefijmnu"
new admin[32] = "bcdefijmou"
new vip[32] = "bijt"
#define IsPlayer(%1)
#define ASD 17
//Ha az ASD értéke 17 akkor a szamoknal 9 szám a rangoknál 18 szöveg
new const szamok[ASD] = {
100,
200,
300,
500,
1000, // Silver vége
1500,
2500,
3000,
3500, // Gold vége
4000,
4500,
5000,
5600, // Master vége
6400,
7500, // Legendary vége
8500, // Supreme
10000 // Global
}
new const rangok[ASD+1][] = {
"[Silver I]",
"[Silver II]",
"[Silver III]",
"[Silver IV]",
"[Silver Elite]",
"[Silver Elite Master]",
"[Gold Nova I]]",
"[Gold Nova II]]",
"[Gold Nova III]",
"[Gold Nova Master]",
"[Master Guardian I]",
"[Master Guardian II]",
"[Master Guardian Elite]",
"[Distinguished Master Guardian]",
"[Legendary Eagle]",
"[Legendary Eagle Master]",
"[Supreme Master First Class]",
"[The Global Elite]"
}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_clcmd("say /rang", "hud");
register_clcmd("say", "sayhook");
register_clcmd("say_team", "tshook");
register_event("DeathMsg", "halal", "a");
points_kill = register_cvar("dr_rank_kill", "0");
points_hs = register_cvar("dr_rank_hs","2");
g_vault = nvault_open("Rang");
}
public hud(id)
{
if(szint[id] != ASD+1)
{
ColorChat(id, RED, "Rang:^4%s ^1| ^3Ölések:^4%d ^1| ^3Kell még:^4%d",rangok[szint[id]], olesek[id],szamok[szint[id]]-olesek[id] )
}
else {
ColorChat(id, GREEN, "Elerted a ^3Maximalis ^4Szintet.Gratulalunk.")
}
}
public sayhook(id)
{
read_args (message, 191)
remove_quotes (message)
if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
{
return PLUGIN_CONTINUE
}
get_user_name(id, nev, 31)
if(is_user_alive(id)) {
get_user_team(id, color, 9)
if(get_user_flags(id) == read_flags(tulaj))
formatex(Temp, 191, "^x04[Tulajdonos]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(foadmin))
formatex(Temp, 191, "^x04[Főadmin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(admin))
formatex(Temp, 191, "^x04[Admin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(vip))
formatex(Temp, 191, "^x04[V.I.P]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else formatex(Temp, 191, "^x04%s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
}
else {
get_user_team(id, color, 9)
if(get_user_flags(id) == read_flags(tulaj))
formatex(Temp, 191, "^x04[Tulajdonos]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(foadmin))
formatex(Temp, 191, "^x04[Főadmin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(admin))
formatex(Temp, 191, "^x04[Admin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(vip))
formatex(Temp, 191, "^x04[V.I.P]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else formatex(Temp, 191, "^x04%s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
}
sendmessage(color)
return PLUGIN_HANDLED
}
public tshook(id)
{
read_args (message, 191)
remove_quotes (message)
if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
{
return PLUGIN_CONTINUE
}
get_user_name(id, nev, 31)
new playerTeam = get_user_team(id)
new playerTeamName[19]
switch (playerTeam)
{
case 1: {
copy (playerTeamName, 11, "*Terrorista*")
}
case 2: {
copy (playerTeamName, 18, "*Anti-Terrorista*")
}
default:
copy (playerTeamName, 9, "*Néző*")
}
if(is_user_alive(id))
{
get_user_team(id, color, 9)
if(get_user_flags(id) == read_flags(tulaj))
formatex(Temp, 191, "^x04[Tulajdonos]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(foadmin))
formatex(Temp, 191, "^x04[Főadmin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(admin))
formatex(Temp, 191, "^x04[Admin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(vip))
formatex(Temp, 191, "^x04[V.I.P]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else formatex(Temp, 191, "^x04%s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
}
else {
get_user_team(id, color, 9)
if(get_user_flags(id) == read_flags(tulaj))
formatex(Temp, 191, "^x04[Tulajdonos]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(foadmin))
formatex(Temp, 191, "^x04[Főadmin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(admin))
formatex(Temp, 191, "^x04[Admin]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else if(get_user_flags(id) == read_flags(vip))
formatex(Temp, 191, "^x04[V.I.P]%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
else formatex(Temp, 191, "^x04%s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
}
sendtmessage(color, playerTeam)
return PLUGIN_HANDLED
}
public sendmessage(color[])
{
new teamName[10]
for(new player = 1; player < get_maxplayers(); player++)
{
get_user_team (player, teamName, 9)
teamf (player, color)
elkuldes(player, Temp)
teamf(player, teamName)
}
}
public sendtmessage(color[], playerTeam)
{
new teamName[10]
for (new player = 1; player < get_maxplayers(); player++)
{
if(get_user_team(player) == playerTeam)
{
get_user_team (player, teamName, 9)
elkuldes(player, Temp)
teamf (player, teamName)
teamf (player, color)
}
}
}
public teamf(player, team[])
{
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player)
write_byte(player)
write_string(team)
message_end()
}
public elkuldes(player, Temp[])
{
message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player)
write_byte( player )
write_string( Temp )
message_end()
}
public client_connect(id)
{
LoadData(id)
}
public client_disconnect(id)
{
SaveData(id)
}
public SaveData(id)
{
new name[32]
get_user_name(id, name, 31)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s", name)
format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
nvault_set(g_vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public LoadData(id)
{
new name[32]
get_user_name(id, name, 31)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s", name)
format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
nvault_get(g_vault,vaultkey,vaultdata,255)
replace_all(vaultdata, 255, "#", " ")
new lekeres_1[32],lekeres_2[32]
parse(vaultdata, lekeres_1, 31, lekeres_2, 31)
olesek[id] = str_to_num(lekeres_1)
szint[id] = str_to_num(lekeres_2)
return PLUGIN_CONTINUE
}
public halal(id)
{
new killer = read_data(1);
new victim = read_data(2);
new gpoints_kill = get_pcvar_num(points_kill);
new gpoints_hs = get_pcvar_num(points_hs);
if(killer && is_user_connected(killer) )
{
if( victim != killer )
{
if( cs_get_user_team(victim) != cs_get_user_team(killer) )
{
if( is_user_alive(killer) )
{
if(!read_data(1))
{
olesek[killer] += gpoints_kill
}
else if(read_data(2))
{
olesek[killer] += (gpoints_kill + gpoints_hs);
}
SaveData(killer);
}
}
}
}
}