Hlavn strnka    Vyhadvanie       Homepage    Registrcia   Prihlsenie
Rubriky
Tutorily
Recenzie
Rzne
Vyhadvanie
Odkazy
lenovia
Download
FRUM
IRC kanl
IRC web klient
GALRIA
Tutorily na XSI
RSS
Registrcia
Diskusn boardy
  • The lambda
  • Mapping
  • Modeling
  • Coding
  • Half-Life

  • Najnovie lnky
    Automatická textová správa
    Vocko Tutoril
    07.06.2009 : 11:02:12
    V tomto tutoriále si spravíme automatickú textovú správu, ktorá sa prehraje vždy s nejakým zvukom.
    Kompilovanie SDK aj na VC++ .Net 2003
    Vocko Tutoril
    10.05.2009 : 10:46:16
    Kto by si chcel pod¾a tutoriálov tu na lambde nieèo prida do kódu, stretne sa s problémom, neskompiluje to.
    Env_mirror alebo zrkadlenie modelov
    Vocko Tutoril
    24.04.2009 : 18:49:30
    Tutoriál na zrkadlenie tu už je, ale èo ak chceme odráža i modely? Na tom nám poslúži entita env_mirror, ktorá sa nachádza iba v Spirite 1.4 alebo novšej verzii.
    HL2 : Obloukový prùchod
    R4z0r Tutoril
    01.05.2008 : 05:48:46
    Dnes si ukážeme zpùsob, jak vytvoøit elegantní obloukový prùchod, bez nutnosti používat øezání geometrie brushem...
    Pridanie zoomu do mp5
    NICKSss Tutoril
    03.03.2008 : 18:55:16

    No,dnes si povieme ako prida zoom na mp5-ku namiesto granátu.
    Pridanie mp3 do spiritu
    NICKSss Tutoril
    02.03.2008 : 20:55:09

    Návod na pridanie mp3 do Half-Life 1 alebo Spirt 1.2,otestované na verzii 1.2.

    Asi už mate zbrane add-ons vo Spirite 1.2 a nechcete prejst na ver.1.4 lebo všetko stratite

    pre Mp3... Na internete som našiel návody pre HL1 a po anglicky ktoré po skompilovani

    fungovali asi takto : Aplikácia HL.EXE Neodpovedá...
    *locus
    Deli Tutoril
    22.02.2008 : 20:13:47
    Pre niektorých mapperov neznámy pojem, ale pre niektorých ve¾mi úèinná pomôcka.
    Vïaka tomuto príspevku sa vám posnažím priblíži tajomstvá jednej z najväèších zbraní spiritu.
    Spirit of Half-Life - Predstavenie
    Wizz Tutoril
    27.10.2007 : 08:52:04
    Predtým než sa pustíte do èítania, chcel by som Vás upozorni že èlánok už nemusí by 100% aktualny. Èlánok som totiž napísal ešte za svojich mladých èias - 13. júna 2004, èo je viac ako tri roky. Zverejni som sa ho rozhodol po nátlaku a výhražkach ostatných redaktorov
    HL2 coding: Samopaly do HL2MP
    Vaber
    [19.04.2006 : 15:11:25] 332 Tutoril
    tan : 4484
    Priemern znmka : 1.6
    Nejlepši je vycházet z kódu pùvodního SMG1, to kromì granátometu nemá žádné dalši pøídavné funkce. Vìtšina tøíd samopalù je odvozena od tøídy CHL2MPMachineGun, která velice usnadní celou tvorbu. V ukázkovém tutorialu bude naše zbraò pojmenována jako WeaponSamopal (pøi zmìnì tohoto názvu je tøeba zmìnit všchny výskyty - CWeaponSamopal, C_WeaponSamopal, DT_WeaponSamopal apod.)

    Zaènìme tedy se tvorbou. V projektu 'hl' (server.dll) vytvoøte soubor weapon_samopal.cpp a ten následnì také vložte do client. Nyní budeme potøebovat includovat hlavièkové soubory:



    #include "cbase.h"
    #include "npcevent.h"
    #include "in_buttons.h"

    #ifdef CLIENT_DLL
    #include "c_hl2mp_player.h"
    #else
    #include "grenade_ar2.h"
    #include "hl2mp_player.h"
    #include "basegrenade_shared.h"
    #include "AI_BaseNPC.h"
    #endif

    #include "weapon_hl2mpbase.h"
    #include "weapon_hl2mpbase_machinegun.h"

    #ifdef CLIENT_DLL
    #define CWeaponSamopal C_WeaponSamopal // V client.dll má tøída název zaèínajcí na C_
    #endif

    #include "tier0/memdbgon.h"



    Nyní deklarace tøídy CWeaponSamopal, ta obsahuje pár vložených funkcí, které vracejí hodnoty rychlosti støelby, min. a max. burst (nejsem si jist, k èemu tyto dvì hodnoty slouží ?) a rozptyl:



    class CWeaponSamopal : public CHL2MPMachineGun
    {
    public:
    DECLARE_CLASS( CWeaponSamopal , CHL2MPMachineGun );

    CWeaponSamopal();

    DECLARE_NETWORKCLASS();
    DECLARE_PREDICTABLE();


    void Precache( void);
    void AddViewKick( void);

    int GetMinBurst() { return 2; }
    int GetMaxBurst() { return 5; }

    virtual void Equip( CBaseCombatCharacter *pOwner );
    bool Reload( void);

    float GetFireRate( void ) { return 0.095f; } // Rychlost støelby, za kolik vteøin je možný další výstøel
    Activity GetPrimaryAttackActivity( void );

    virtual const Vector& GetBulletSpread( void )
    {
    static const Vector cone = VECTOR_CONE_3DEGREES; // Rozptyl
    return cone;
    }

    const WeaponProficiencyInfo_t *GetProficiencyValues();

    #ifndef CLIENT_DLL
    DECLARE_ACTTABLE();
    #endif

    protected:
    Vector m_vecTossVelocity;
    private:
    CWeaponSamopal( const CWeaponSamopal & );
    };



    Následujcí kód obsahuje vnitøní definici entity + acttable pro naší zbraò (pøi úpravách názvù dávejte pozor, a v tomto zmatku pojmenujete všechno správnì):



    IMPLEMENT_NETWORKCLASS_ALIASED( WeaponSamopal, DT_WeaponSamopal )

    BEGIN_NETWORK_TABLE( CWeaponSamopal, DT_WeaponSamopal )
    END_NETWORK_TABLE()

    BEGIN_PREDICTION_DATA( CWeaponSamopal )
    END_PREDICTION_DATA()

    LINK_ENTITY_TO_CLASS( weapon_samopal, CWeaponSamopal );
    PRECACHE_WEAPON_REGISTER(weapon_samopal);

    #ifndef CLIENT_DLL
    acttable_t CWeaponSamopal::m_acttable[] =
    {
    { ACT_HL2MP_IDLE, ACT_HL2MP_IDLE_SMG1, false},
    { ACT_HL2MP_RUN, ACT_HL2MP_RUN_SMG1, false},
    { ACT_HL2MP_IDLE_CROUCH, ACT_HL2MP_IDLE_CROUCH_SMG1, false},
    { ACT_HL2MP_WALK_CROUCH, ACT_HL2MP_WALK_CROUCH_SMG1, false},
    { ACT_HL2MP_GESTURE_RANGE_ATTACK, ACT_HL2MP_GESTURE_RANGE_ATTACK_SMG1, false},
    { ACT_HL2MP_GESTURE_RELOAD, ACT_HL2MP_GESTURE_RELOAD_SMG1, false},
    { ACT_HL2MP_JUMP, ACT_HL2MP_JUMP_SMG1, false},
    { ACT_RANGE_ATTACK1, ACT_RANGE_ATTACK_SMG1, false },
    };

    IMPLEMENT_ACTTABLE(CWeaponSamopal);
    #endif



    Tìla zbytku funkcí jsou zde (popisy jsou v komentáøích):



    CWeaponSamopal::CWeaponSamopal( )
    {
    m_fMinRange1 = 0;
    m_fMaxRange1 = 1400; // Max. dostøel
    }

    void CWeaponSamopal::Precache( void ) // precache funkce
    {
    BaseClass::Precache();
    }

    void CWeaponSamopal::Equip( CBaseCombatCharacter *pOwner ) // funkce volaná pøi zvednutí zbranì
    {
    m_fMaxRange1 = 1400; // Max. dostøel
    BaseClass::Equip( pOwner );
    }

    Activity CWeaponSamopal::GetPrimaryAttackActivity( void )
    {
    if ( m_nShotsFired < 2 )
    return ACT_VM_PRIMARYATTACK;

    if ( m_nShotsFired < 3 )
    return ACT_VM_RECOIL1;

    if ( m_nShotsFired < 4 )
    return ACT_VM_RECOIL2;

    return ACT_VM_RECOIL3;
    }

    bool CWeaponSamopal::Reload( void ) // Nabití zbranì
    {
    bool fRet;
    float fCacheTime = m_flNextSecondaryAttack;

    fRet = DefaultReload( GetMaxClip1(), GetMaxClip2(), ACT_VM_RELOAD );
    if ( fRet )
    {
    m_flNextSecondaryAttack = GetOwner()->m_flNextAttack = fCacheTime
    WeaponSound( RELOAD );
    }

    return fRet;
    }

    void CWeaponSamopal::AddViewKick( void ) // trhnutí obrazem
    {
    // tyto hodnoty jdou upravit pro zmìnu velikosti efektu
    #define EASY_DAMPEN 2.0f
    #define MAX_VERTICAL_KICK 4.0f //Degrees
    #define SLIDE_LIMIT 2.0f //Seconds

    //Get the view kick
    CBasePlayer *pPlayer = ToBasePlayer( GetOwner() );

    if ( pPlayer == NULL )
    return;

    DoMachineGunKick( pPlayer, EASY_DAMPEN, MAX_VERTICAL_KICK, m_fFireDuration, SLIDE_LIMIT );
    }

    const WeaponProficiencyInfo_t *CWeaponSamopal::GetProficiencyValues()
    {
    static WeaponProficiencyInfo_t proficiencyTable[] =
    {
    { 0.1, 0.75 },
    { 5.00, 0.75 },
    { 10.0/3.0, 0.75 },
    { 5.0/3.0, 0.75 },
    { 1.00, 1.0 },
    };

    COMPILE_TIME_ASSERT( ARRAYSIZE(proficiencyTable) == WEAPON_PROFICIENCY_PERFECT + 1);

    return proficiencyTable;
    }



    Nyní je kód zbranì hotov, ještì budete potøebovat vytvoøit script file se správným názvem (tvorba tìchto souborù bude možná souèástí jednoho z dalších tutoriálù). Doufám, že jsem na nìco nezapomìl...

    BODOVANIE LNKU
    Boduje sa ako v kole (1- vborn, 5-zl)
           

    Priemern znmka : 1.6
    Hlasovalo : 5

    KOMENTRE KU LNKU
    Poet komentrov ku lnku : 1

    1. Vaber Redaktor
    [19.04.2006-15:12] 1926
    Tak, a muj druhej tutorial je hotov

    C++ coder

    Pre pridvanie komentrov muste by prihlsen
    Pokia ete nieste zaregistrovan, mete tak urobi TU

    Vyhadvanie

    Rozren vyhadvanie

    AREA 42
    Hlka
    Aj moj komp uz ma alergii na slovo Acer, vzdy kdyz to nekdo napise , tak mi pohasne obraz, DVD Rom se vysune tak rychlo ze tocici se DVD leta po pokoji jak urvana cirkularka a naskoci hlaska neco o prehrati systemu...

    J.D.Skalpel @ ICQ with Jackar

    Starie hlky >> Komentre >>

    Anketa
    Bavi vas aj moding inych hernych zanrov ako FPS ?

    1.Ano, strategie [29%]

    2.Ano, RPG [22%]

    3.Ano, sportove hry [27%]

    4.Nie, ine ako FPS neriesim [23%]

    Spolu hlasovalo : 4040
    Starie ankety >>

    Najtanejie
    1.Atomová bomba ako v crossfire (30211x)
    2.HL2: První kroky (29436x)
    3.Counter-Strike entity (21608x)
    4.Half-Life: Padlé Mìsto demo - Recenze (19681x)
    5.Pozadie pomocou textúry sky (17918x)
    On-Line
    Tieto strnky si prve ta 1 lovek.
    Sponzor webu
    Spriatelen weby
    Ikona na náš web
    Preklady hier, mapy do Half-life a CS, chat a mnoho ïalšieho
    Filmový svet pod lupou
    ceskemody.cz
    HL Zone
    Vše o HL2
    Scifi-guide.net
    Mappersky portal zaoberajuci sa hramy ako CoD1, MoH:AA ci SourceSDK HL2 ale aj mnohymi dalsimi ...
    Nosferatu - novy Slovensky mod o upiroch
    Terrorist attack mod do HL
    PSP novinky, forum, download
    AirSoft Team AlfaCommandos Bratislava
    ICQ - Lamerz bar
    V zujme ochrany duevnho zdravia redaktorov tu u viac ICQ panel nenjdete :P

    Vsledky vaeho snaenia sa mete njs na lamz.thelambda.sk ...

    Vetky texty publikovan na tchto strnkach s majetkom thelambda.sk alebo ich autorov.
    (C) 2003-2006 thelambda.sk VSETKY PRAVA VYHRADENE
    www.TheLambda.SK Enter RS
    Strnka bola natan za 0.47 seknd.