hlmod.hu

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



Jelenlévő felhasználók

Jelenleg 230 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 230 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  [ 15 hozzászólás ]  Oldal 1 2 Következő
Szerző Üzenet
 Hozzászólás témája: Rang rendszer
HozzászólásElküldve: 2012.04.23. 18:07 
Offline
Őskövület
Avatar

Csatlakozott: 2012.02.07. 23:34
Hozzászólások: 2192
Megköszönt másnak: 27 alkalommal
Megköszönték neki: 55 alkalommal
Hogyan lehetne megoldani ,hogy ha egy játékos megöl mondjuk 10 embert akkor Kezdő lesz a rangja ha pedig 20 -at akkor Haladó ha pedig 30 -at akkor profi......
Ezt ,hogyan lehetne plugin formájában megoldani?

Ha valaki tud segíteni akkor Thanx xd

_________________
[sma]CMD:fear(playerid, params[]){ new str[5]; if(!sscanf(params, "s[5]", str)){ if(egyezik(str, "find")) Msg(playerid, "A-a!");}  return 1;}[/sma]


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 18:28 
Offline
Signore Senior
Avatar

Csatlakozott: 2011.09.09. 17:39
Hozzászólások: 4020
Megköszönt másnak: 12 alkalommal
Megköszönték neki: 139 alkalommal
Nvaultal. Fogod magad, lehookolod death eventet. Minden egyes alkalommal ha nem öngyilkosság és nem tk volt, hozzáadsz egyet az öléseihez. Csatlakozásnál betöltöd nvaultból, lecsatlakozásnál lemented nvaultba. Példaként veheted az XP- mód tutoriált, abban van nvault. Utána chatet lehookolos és a rangja szerint kiírod.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 18:56 
Offline
Őskövület
Avatar

Csatlakozott: 2012.02.07. 23:34
Hozzászólások: 2192
Megköszönt másnak: 27 alkalommal
Megköszönték neki: 55 alkalommal
Hát megpróbáltam valamit xd De nem hiszem ,hogy működik. Kijavítanád nekem? :D
Kód:
#include <amxmodx> 
#include <amxmisc>
#include <nvault>

new PlayerXP[33],PlayerLevel[33]
new XP_Kill,XP_Knife,XP_Hs,SaveXP
new g_vault

new const LEVELS[7] = {
0,
10,
30,
50,
70,
160,
500
}

public plugin_init()
{
    register_plugin("Pontok xd", "1.0", "Te")
 
    register_event("DeathMsg", "eDeath", "a")

    SaveXP = register_cvar("SaveXP","1") 

    XP_Kill=register_cvar("XP_per_kill", "20")

    XP_Hs=register_cvar("XP_hs_bonus","20")

    XP_Knife=register_cvar("XP_knife_bonus","20")

    g_vault = nvault_open("pontok")
    register_clcmd("say /pontjaim", "ShowHud")
    register_clcmd("say_team /pontjaim", "ShowHud")
}

public eDeath( )
{

    new attacker = read_data( 1 )

    new iVictim = read_data( 2 )

    new headshot = read_data( 3 )

    new clip, ammo, weapon = get_user_weapon(attacker,clip,ammo); 

    PlayerXP[attacker] += get_pcvar_num(XP_Kill)

   
    if(headshot)
        PlayerXP[attacker] += get_pcvar_num(XP_Hs)

    if(weapon == CSW_KNIFE)
        PlayerXP[attacker] += get_pcvar_num(XP_Knife)

 
     while(PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]])
    { 
        client_print(attacker, print_chat, "[Rang rendszer] Grat! Te egy szintet leptel! Uj rangod: %i", PlayerLevel[attacker],CLASSES[PlayerClass[attacker]])
     
        PlayerLevel[attacker] += 1 
    }

    ShowHud(attacker)
 
}

public ShowHud(id)
{
    set_hudmessage(255, 0, 0, 0.75, 0.01, 0, 6.0, 15.0)
    show_hudmessage(id, "Rangod: %i :)",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]])
}

public client_connect(id)
{
    if(get_pcvar_num(SaveXP) == 1)
    {
        LoadData(id)
    }
}

public client_disconnect(id)
{
     if(get_pcvar_num(SaveXP) == 1)
     {
          SaveData(id)
     }
}

public SaveData(id)
{
    new name[32]
    get_user_name(id, name, 31)
 
    new vaultkey[64],vaultdata[256] .
    format(vaultkey,63,"%sRANGOK", name)
    format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[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,"%sRANGOK", name)
    format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])
    nvault_get(g_vault,vaultkey,vaultdata,255)
    replace_all(vaultdata, 255, "#", " ")
    new playerxp[32], playerlevel[32]
    parse(vaultdata, playerxp, 31, playerlevel, 31)
    PlayerXP[id] = str_to_num(playerxp)
    PlayerLevel[id] = str_to_num(playerlevel)
    return PLUGIN_CONTINUE
}

_________________
[sma]CMD:fear(playerid, params[]){ new str[5]; if(!sscanf(params, "s[5]", str)){ if(egyezik(str, "find")) Msg(playerid, "A-a!");}  return 1;}[/sma]


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 19:04 
Offline
Tiszteletbeli

Csatlakozott: 2010.02.04. 19:12
Hozzászólások: 3528
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 180 alkalommal
mindjárt megírom, csak sz*rok

_________________
http://www.ebateam.eu/


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 19:06 
Offline
Developer
Avatar

Csatlakozott: 2011.06.01. 21:11
Hozzászólások: 7965
Megköszönt másnak: 295 alkalommal
Megköszönték neki: 537 alkalommal
Jézus istenem, ez micsoda?

_________________
http://www.easyrankup.eu


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 19:07 
Offline
Őskövület
Avatar

Csatlakozott: 2012.02.07. 23:34
Hozzászólások: 2192
Megköszönt másnak: 27 alkalommal
Megköszönték neki: 55 alkalommal
Szólítottál? xD
Egyébként nem tom xd
Unatkoztam aztán össze tákoltam az XP -s tutorial-ból ( kivettem a fajokat xd )
:lol:

_________________
[sma]CMD:fear(playerid, params[]){ new str[5]; if(!sscanf(params, "s[5]", str)){ if(egyezik(str, "find")) Msg(playerid, "A-a!");}  return 1;}[/sma]


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 19:25 
Offline
Tiszteletbeli

Csatlakozott: 2010.02.04. 19:12
Hozzászólások: 3528
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 180 alkalommal
pámpárám!

ez nem fogja menteni/se beolvasni az eddigi öléseket, tehát ha reconnectel újrakezdi a számolást
Kód:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

new message[192]
new 
alive[11]
new 
strName[191]
new 
strText[191]
new 
maxPlayers
new sayText
new teamInfo

new kills[32];

public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_clcmd("say""HookSayCommands")
    
register_clcmd("say_team""HookTeamSayCommands")
    
    
sayText get_user_msgid ("SayText")
    
teamInfo get_user_msgid ("TeamInfo")
    
maxPlayers get_maxplayers()
    
register_message (sayText"avoid_duplicated")
    
    
register_event"DeathMsg""hahahahalalhahaha""a" );
}

public 
avoid_duplicated (msgIdmsgDestreceiver)
{
    return 
PLUGIN_HANDLED
}

public 
client_connect(id)
    
kills[id] = 0;

public 
hahahahalalhahaha()
{
    new 
killer read_data);
    new 
victim read_data);
    
    if(
killer == victim)
    {
        return 
PLUGIN_HANDLED;
    }

    
kills[killer]++

    
    return 
PLUGIN_CONTINUE;
}

public 
HookSayCommands(id)
{
    
read_args(message191)
    
remove_quotes(message)
    if (
message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message""))
        return 
PLUGIN_CONTINUE

        
    
new name[32]
    
get_user_name (idname31)    
    
    new 
isAlive
    
    
if (is_user_alive (id))
        {
            
isAlive 1
            alive 
"^x01"
        
}
    else
        {
            
isAlive 0
            alive 
"^x01*HALOTT* "
        
}
    
    static 
color[10]
    
    new 
rang[32];
    if(
kills[id] < 10)
        
rang "Rangtalan"
    
else if(kills[id] >= 10 && kills[id] < 20)
        
rang "Kezdo"
    
else if(kills[id] >= 20 && kills[id] < 30)
        
rang "Halado"
    
else if(kills[id] >= 30)
        
rang "Profi"
    
    
//Rang+Name
    
get_user_team (idcolor9)
    
format (strName191"%s^x04[%s]^x03%s"aliverangname)
    
format (strText191"%s"message)
    
format (message191"%s^x01 :  %s"strNamestrText)
    
sendMessage (colorisAlive)
    
    return 
PLUGIN_CONTINUE
}

public 
HookTeamSayCommands(id)
{
    new 
playerTeam get_user_team(id)
    new 
playerTeamName[19]
    
    switch (
playerTeam)
        {
            case 
1:
                
copy (playerTeamName11"Terrorista")
                
            case 
2:
                
copy (playerTeamName18"Zsaru")
                
            default:
                
copy (playerTeamName9"Nezo")
        }
    
    
read_args(message191)
    
remove_quotes(message)
    if (
message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message""))
        return 
PLUGIN_CONTINUE

        
    
new name[32]
    
get_user_name (idname31)    
    
    new 
isAlive
    
    
if (is_user_alive (id))
        {
            
isAlive 1
            alive 
"^x01"
        
}
    else
        {
            
isAlive 0
            alive 
"^x01*HALOTT* "
        
}
    
    static 
color[10]
    
    new 
rang[32];
    if(
kills[id] < 10)
        
rang "Rangtalan"
    
else if(kills[id] >= 10 && kills[id] < 20)
        
rang "Kezdo"
    
else if(kills[id] >= 20 && kills[id] < 30)
        
rang "Halado"
    
else if(kills[id] >= 30)
        
rang "Profi"
    
    
//Rang+Name
    
get_user_team (idcolor9)
    
format (strName191"%s(%s) ^x04[%s]^x03%s"aliveplayerTeamNamerangname)
    
format (strText191"%s"message)
    
format (message191"%s^x01 :  %s"strNamestrText)
    
sendTeamMessage (colorisAliveplayerTeam)
    
    return 
PLUGIN_CONTINUE
}

public 
sendMessage (color[], alive)
{
    new 
teamName[10]
    
    for (new 
player 1player maxPlayersplayer++)
        {
            if (!
is_user_connected(player))
                continue

            if (
alive && is_user_alive(player) || !alive && !is_user_alive(player))
                {
                    
get_user_team (playerteamName9)    
                    
                    
changeTeamInfo (playercolor)        
                    
                    
writeMessage (playermessage)        
                    
                    
changeTeamInfo (playerteamName)    
                }
        }
}


public 
sendTeamMessage (color[], aliveplayerTeam)
{
    new 
teamName[10]
    
    for (new 
player 1player maxPlayersplayer++)
        {
            if (!
is_user_connected(player))
                continue

            if (
get_user_team(player) == playerTeam)
                {
                    if (
alive && is_user_alive(player) || !alive && !is_user_alive(player))
                        {
                            
get_user_team (playerteamName9)    
                            
                            
changeTeamInfo (playercolor)        
                            
                            
writeMessage (playermessage)        
                            
                            
changeTeamInfo (playerteamName)    
                        }
                }
        }
}


public 
changeTeamInfo (playerteam[])
{
    
message_begin (MSG_ONEteamInfo_player)    
    
write_byte (player)                
    
write_string (team)                
    
message_end()                    
}


public 
writeMessage (playermessage[])
{
    
message_begin (MSG_ONEsayText, {000}, player)    
    
write_byte (player)                    
    
write_string (message)                    
    
message_end ()                        
}
 

_________________
http://www.ebateam.eu/


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 19:28 
Offline
Őskövület
Avatar

Csatlakozott: 2012.02.07. 23:34
Hozzászólások: 2192
Megköszönt másnak: 27 alkalommal
Megköszönték neki: 55 alkalommal
Köszönöm IrON! :)
Csak még 1 dolgot és békén hagylak: Meg tudnád csinálni ,hogy mentse is? :D

_________________
[sma]CMD:fear(playerid, params[]){ new str[5]; if(!sscanf(params, "s[5]", str)){ if(egyezik(str, "find")) Msg(playerid, "A-a!");}  return 1;}[/sma]


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 19:35 
Offline
Tiszteletbeli

Csatlakozott: 2010.02.04. 19:12
Hozzászólások: 3528
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 180 alkalommal
fear_ezmegmi írta:
Köszönöm IrON! :)
Csak még 1 dolgot és békén hagylak: Meg tudnád csinálni ,hogy mentse is? :D

Meg.

_________________
http://www.ebateam.eu/


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Rang rendszer
HozzászólásElküldve: 2012.04.23. 19:36 
Offline
Őskövület
Avatar

Csatlakozott: 2012.02.07. 23:34
Hozzászólások: 2192
Megköszönt másnak: 27 alkalommal
Megköszönték neki: 55 alkalommal
Akkor megcsinálod nekem? :D
Ha nem vagy igen akkor csináld meg pls xd fontos lenne :P

_________________
[sma]CMD:fear(playerid, params[]){ new str[5]; if(!sscanf(params, "s[5]", str)){ if(egyezik(str, "find")) Msg(playerid, "A-a!");}  return 1;}[/sma]


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


Ki van itt

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