hlmod.hu

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



Jelenlévő felhasználók

Jelenleg 513 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 513 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  [ 40 hozzászólás ]  Oldal Előző 1 2 3 4 Következő
Szerző Üzenet
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.23. 20:36 
Offline
Félisten

Csatlakozott: 2012.01.07. 21:10
Hozzászólások: 850
Megköszönt másnak: 9 alkalommal
Megköszönték neki: 154 alkalommal
inc:
Kód:
  1. #include <hamsandwich>

  2. #include <fun>

init:
Kód:
  1. RegisterHam(Ham_Spawn, "player", "ujraeledes", 1);

ujraéledés:
Kód:
  1.  

  2. public ujraeledes(id)

  3. {

  4.     if(!is_user_alive(id) || !is_user_connected(id))//Ha jól emlékszem akkor kiki írt valamit hogy az user_alive vizsgálja, hogy csatlakozva van-e.. szóval érzem, hogy ebbe bele lesz kötve.

  5.         return PLUGIN_CONTINUE;

  6.     if(PlayerLevel[id] == 6)//ha azt akarod hogy 6os felett lehessen akkor >= operátor kell.

  7.     {

  8.         new elet = get_user_health(id);

  9.         set_user_health(id, elet+1);//itt átírhatod amire akarod, vagy akár cvarral is állíthatod

  10.     }

  11.     return PLUGIN_CONTINUE;

  12. }

  13.  

_________________
Megköszönni nem szégyen!
Csak kattints a Kép jelre. --->


A hozzászólást 1 alkalommal szerkesztették, utoljára HunGamer 2012.04.24. 18:04-kor.

Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.23. 20:55 
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
lehet úgy is, hogy szintenként automatán növelje, és akkor nem kell if

Kód:
set_user_health(id, elet+PlayerLevel[id]*20); //Ekkor az élet+(szintje*20) életet kap(6os szintnél 100HP-val: 100+6*20 = 220

_________________
http://www.ebateam.eu/


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.24. 07:19 
Offline
Developer
Avatar

Csatlakozott: 2011.06.01. 21:11
Hozzászólások: 7962
Megköszönt másnak: 295 alkalommal
Megköszönték neki: 535 alkalommal
is_user_alive ellenőrzi a csatlakozást is tehát felesleges lefutás van benne!


Iron 100+6*20 mikortól 220? 100*20=2000 + 6 = 2006

_________________
http://www.easyrankup.eu


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.24. 08:25 
Offline
Imperátor
Avatar

Csatlakozott: 2009.04.21. 09:33
Hozzászólások: 3991
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 135 alkalommal
Azóta, amióta bevezették a matematikai műveletek precedenciáját....
100+6*20 = 100+120 = 220
kiki írta:
is_user_alive ellenőrzi a csatlakozást is tehát felesleges lefutás van benne!


Iron 100+6*20 mikortól 220? 100*20=2000 + 6 = 2006

_________________
Kód:
I'm back

Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.24. 12:24 
Offline
Developer
Avatar

Csatlakozott: 2011.06.01. 21:11
Hozzászólások: 7962
Megköszönt másnak: 295 alkalommal
Megköszönték neki: 535 alkalommal
Ja hogy ittis előbb a szorzást végzi? Jó tudni

_________________
http://www.easyrankup.eu


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.24. 16:46 
Offline
Nagyúr
Avatar

Csatlakozott: 2011.09.07. 18:41
Hozzászólások: 642
Megköszönt másnak: 15 alkalommal
Megköszönték neki: 6 alkalommal
Hát az alap nem? :D

_________________
Kép
Kép
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.24. 17:24 
Offline
Nagyúr
Avatar

Csatlakozott: 2011.09.07. 18:41
Hozzászólások: 642
Megköszönt másnak: 15 alkalommal
Megköszönték neki: 6 alkalommal
Kérem szépen valaki javítsa nekem!
Kód:
     
     
    #include <amxmodx>
    #include <amxmisc>
    #include <hamsandwich>
    #include <nvault>
     
    #define MAXCLASSES 5 
     
     
    new PlayerXP[33],PlayerLevel[33],PlayerClass[33]
    new XP_Kill,XP_Knife,XP_Hs,SaveXP
    new g_vault
     
    new const CLASSES[MAXCLASSES][] = {
        "Nincs",
        "Snipper",
        "Heavy",
        "Grunt",
        "Elite"
    }
     
     
    new const LEVELS[30] = {
    0,
    100,
    200,
    400,
    800,
    1600,
    3200,
    3500,
    3650,
    4230,
    5200,
    5750,
    6500,
    6850,
    7120,
    7450,
    7890,
    8500,
    9100,
    9850,
    10000,
    11100,
    11190,
    11760,
    12000,
    13500,
    14300,
    15000,
    16666,
    17656,
    19560
    }
     
    public plugin_init()
    {
        register_plugin("Animal-Mod", "1.0", "Te")
     
        register_event("DeathMsg", "eDeath", "a")
   
   RegisterHam(Ham_Spawn, "player", "ujraeledes", 1);
     
        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("animalmod")
     
        register_clcmd("say /faj", "ChangeClass")
        register_clcmd("say_team /faj", "ChangeClass")
     
        register_clcmd("say /xp", "ShowHud")
        register_clcmd("say_team /xp", "ShowHud")
    }
     
    public eDeath()
    {
     
        new attacker = read_data( 1 )
     
        new iVictim = read_data( 2 )
     
        new headshot = read_data( 3 )
     
         if(PlayerClass[attacker] == 0)
             return PLUGIN_CONTINUE
     
        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, "[Animal Mod] Grat! Te egy %i szintu %s vagy!", PlayerLevel[attacker],CLASSES[PlayerClass[attacker]])  //Ha igen, akkor kiírunk neki egy gratuláló üzenetet.
         
            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, "Szinted: %i^nXP-d: %i^nFajod: %s",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]])
    }
     
     
     
    public ChangeClass(id)
    {
        new menu = menu_create("Faj Menu" , "Class_Handle");
        menu_additem(menu ,"Snipper", "1" , 0);
        menu_additem(menu ,"Heavy", "2" , 0);
        menu_additem(menu ,"Grunt", "3" , 0);
        menu_additem(menu ,"Elite", "4" , 0);
        menu_setprop(menu , MPROP_EXIT , MEXIT_ALL);
        menu_display(id , menu , 0);
        return PLUGIN_CONTINUE;
    }
     
    public Class_Handle(id , menu , item)
    {
        if(item == MENU_EXIT)
        {
            menu_destroy(menu);
        }
        new szCommand[6] , szName[64]; new access , callback;
        menu_item_getinfo(menu , item , access , szCommand , 5 , szName , 63 , callback);
        new i = str_to_num(szCommand)
        if(PlayerClass[id] != i)
        {
            PlayerClass[id] = i;  client_print(id,print_chat,"A te uj fajod: %s",CLASSES[i])
        }
        else
        {
            client_print(id,print_chat,"Eddig is egy %s voltal",CLASSES[i])
        }
        menu_destroy(menu);
        return PLUGIN_CONTINUE
    }
     
public ujraeledes(id)
{
   
  set_user_health(id, elet+PlayerLevel[id]*20);
 
    return PLUGIN_CONTINUE;
}
     
    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,"%s#%s#ANIMALMOD", name, PlayerClass[id])
       
        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,"%s#%s#ANIMALMOD", name, PlayerClass[id])
        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
    } 
     
     


Hibák:
Kód:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

files/7401244/7401244.sma(56) : error 018: initialization data exceeds declared size
files/7401244/7401244.sma(92) : warning 217: loose indentation
files/7401244/7401244.sma(95) : warning 217: loose indentation
files/7401244/7401244.sma(107) : warning 217: loose indentation
files/7401244/7401244.sma(114) : warning 217: loose indentation
files/7401244/7401244.sma(116) : warning 204: symbol is assigned a value that is never used: "iVictim"
files/7401244/7401244.sma(116) : warning 209: function "eDeath" should return a value
files/7401244/7401244.sma(164) : error 017: undefined symbol "set_user_health"
files/7401244/7401244.sma(164) : warning 215: expression has no effect
files/7401244/7401244.sma(164) : error 001: expected token: ";", but found ")"
files/7401244/7401244.sma(164) : error 029: invalid expression, assumed zero
files/7401244/7401244.sma(164) : fatal error 107: too many error messages on one line

Compilation aborted.
5 Errors.

_________________
Kép
Kép
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.24. 18:03 
Offline
Félisten

Csatlakozott: 2012.01.07. 21:10
Hozzászólások: 850
Megköszönt másnak: 9 alkalommal
Megköszönték neki: 154 alkalommal
1. a LEVELS tömbben 31 elem van.
2. sorry elfelejtettem a múltkor mondani hogy az élet átállításhoz fun.inc is kell

_________________
Megköszönni nem szégyen!
Csak kattints a Kép jelre. --->


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.28. 19:11 
Offline
Tud valamit
Avatar

Csatlakozott: 2012.04.27. 21:43
Hozzászólások: 106
Megköszönt másnak: 5 alkalommal
én el sem tudom kezdeni egyenlöre eszt xDD
eszt egy jegyzetömbe kell irni amit a végén .amxx vagy .sma fájlba kel menteni?

_________________
http://www.gametracker.com/server_info/ ... .41:27548/
[ablak]91.82.84.41:27548[/ablak]


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: XP-mód tutoriál
HozzászólásElküldve: 2012.04.28. 19:13 
Offline
Developer
Avatar

Csatlakozott: 2011.06.01. 21:11
Hozzászólások: 7962
Megköszönt másnak: 295 alkalommal
Megköszönték neki: 535 alkalommal
eszt -> ezt

Második kérdésedre a válasz: Nem

_________________
http://www.easyrankup.eu


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  [ 40 hozzászólás ]  Oldal Előző 1 2 3 4 Következő


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