Hlavná stránka    Vyh¾adávanie       Homepage    Registrácia   Prihlásenie
Rubriky
Tutoriály
Recenzie
Rôzne
Vyh¾adávanie
Odkazy
Èlenovia
Download
FÓRUM
IRC kanál
IRC web klient
GALÉRIA
Tutoriály na XSI
RSS
Registrácia
Diskusné boardy
  • The lambda
  • Mapping
  • Modeling
  • Coding
  • Half-Life

  • Najnovšie èlánky
    Automatická textová správa
    Vocko Tutoriál
    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 Tutoriál
    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 Tutoriál
    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 Tutoriál
    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 Tutoriál
    03.03.2008 : 18:55:16

    No,dnes si povieme ako prida� zoom na mp5-ku namiesto granátu.
    Pridanie mp3 do spiritu
    NICKSss Tutoriál
    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 Tutoriál
    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 Tutoriál
    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
    snipra
    Majacik
    [18.01.2004 : 13:55:04] 80 Tutoriál
    Èítaní : 4014
    Priemerná známka : 2.83





    Snipra









    Snipra



     



    Teraz si spravíme snipru. Podobne
    ako u AK47 si teraz skopírujeme p_awp.mdl, v_awp.mdl, w_awp.mdl,
    weapon_awp.txt ale ten uložíme ako weapon_magnum.txt a zvuk awp1.wav



     



     



    Otvoríme si hl.dsp a vytvoríme nový súbor do ktorý
    uložíme ako magnum.cpp a do neho vložíme nasledujúci text:



     



    #include "extdll.h"



    #include "util.h"



    #include "cbase.h"



    #include "monsters.h"



    #include "weapons.h"



    #include "nodes.h"



    #include "player.h"



    #include "soundent.h"



    #include "gamerules.h"



     



    enum MAGNUM_e



    {



    MAGNUM_IDLE1 = 0,



    MAGNUM_1,



    MAGNUM_FIRE1,



    MAGNUM_FIRE2,



    MAGNUM_RELOAD,



    MAGNUM_DRAW,



     



    };



     



     



    class CMAGNUM : public
    CBasePlayerWeapon



    {



    public:



    void Spawn( void );



    void Precache( void );



    int iItemSlot( void ) {
    return 3; }



    int GetItemInfo(ItemInfo
    *p);



    int AddToPlayer( CBasePlayer
    *pPlayer );



     



    void PrimaryAttack( void
    );



    void SecondaryAttack(
    void );



    void Holster( int
    skiplocal = 0 );



     



    int SecondaryAmmoIndex(
    void );



    BOOL Deploy( void );



    void Reload( void );



    void WeaponIdle( void );



    float m_flNextAnimTime;



    int m_iShell;



    int m_fInAttack;



    float m_flStartCharge;



    float
    m_flPlayAftershock;



    void StartFire( void );



    void Fire( Vector
    vecOrigSrc, Vector vecDirShooting, float flDamage );



    float GetFullChargeTime(
    void );



    int m_fInZoom;



    int m_iBalls;



    int m_iGlow;



    int m_iBeam;



    int m_iSoundState; //
    don't save this



    BOOL m_fPrimaryFire;



    float
    m_flNextAmmoBurn;// while charging, when to absorb another unit of player's
    ammo?



     



     



     



    private:



    BOOL m_iFiring;



    unsigned short
    m_usMAGNUM;



     



     



     



    };



    LINK_ENTITY_TO_CLASS( weapon_MAGNUM,
    CMAGNUM );



     



    int CMAGNUM::SecondaryAmmoIndex(
    void )



    {



    return
    m_iSecondaryAmmoType;



    }



     



    void CMAGNUM::Spawn( )



    {



    pev->classname =
    MAKE_STRING("weapon_MAGNUM"); // hack to allow for old names



    Precache( );



    SET_MODEL(ENT(pev),
    "models/w_awp.mdl");



    m_iId = WEAPON_MAGNUM;



     



    m_iDefaultAmmo =
    10;//MAGNUM_DEFAULT_GIVE



     



    FallInit();// get ready
    to fall down.



    }



     



     



    void CMAGNUM::Precache( void )



    {



    PRECACHE_MODEL("models/v_awp.mdl");



    PRECACHE_MODEL("models/w_awp.mdl");



    PRECACHE_MODEL("models/p_awp.mdl");



     



    // m_iShell =
    PRECACHE_MODEL ("models/shell.mdl");// brass shellTE_MODEL



     



    PRECACHE_SOUND("items/9mmclip1.wav");



     



    PRECACHE_SOUND("items/clipinsert1.wav");



    PRECACHE_SOUND("items/cliprelease1.wav");



     



    PRECACHE_SOUND
    ("weapons/awp1.wav");// H to the K



    PRECACHE_SOUND
    ("weapons/357_cock1.wav");



     



    }



     



    int CMAGNUM::GetItemInfo(ItemInfo
    *p)



    {



    p->pszName =
    STRING(pev->classname);



    p->pszAmmo1 =
    "338";



    p->iMaxAmmo1 = 60;



    p->pszAmmo2 = NULL;



    p->iMaxAmmo2 = -1;



    p->iMaxClip = 10;



    p->iSlot = 3;



    p->iPosition = 0;



    p->iFlags = 0;



    p->iId = m_iId =
    WEAPON_MAGNUM;



    p->iWeight = 25;



     



    return 1;



    }



     



    int CMAGNUM::AddToPlayer(
    CBasePlayer *pPlayer )



    {



    if (
    CBasePlayerWeapon::AddToPlayer( pPlayer ) )



    {



    MESSAGE_BEGIN(
    MSG_ONE, gmsgWeapPickup, NULL, pPlayer->pev );



    WRITE_BYTE(
    m_iId );



    MESSAGE_END();



    return TRUE;



    }



    return FALSE;



    }



     



    BOOL CMAGNUM::Deploy( )



    {



    m_fInReload = FALSE;//
    cancel any reload in progress.



     



    if ( m_fInZoom )



    {



    SecondaryAttack(
    );



    }



     



     



    return DefaultDeploy(
    "models/v_awp.mdl", "models/p_awp.mdl", MAGNUM_DRAW,
    "MAGNUM" );



    }



     



    void CMAGNUM::PrimaryAttack()



    {



    // don't fire underwater



    if
    (m_pPlayer->pev->waterlevel == 3)



    {



    PlayEmptySound(
    );



    m_flNextPrimaryAttack
    = gpGlobals->time + 0.08;



    return;



    }



     



     



    //Place holder to hold the number of
    rounds to fire this attack



    int iRoundsToFire;



    //If firing, fire one round else
    fire 3 rounds



    if (m_iFiring)



    iRoundsToFire =3;



    else



    iRoundsToFire =1;



    // return DefaultDeploy(
    "models/v_awp.mdl", "models/p_awp.mdl", MAGNUM_DRAW,
    "MAGNUM" );



     



    if (m_iClip <= 0)



    {



    PlayEmptySound();



    m_flNextPrimaryAttack
    = gpGlobals->time + 1.3;



    return;



    }



    // player
    "shoot" animation



    m_pPlayer->SetAnimation(
    PLAYER_ATTACK1 );



     



    EMIT_SOUND(ENT(m_pPlayer->pev),
    CHAN_WEAPON, "weapons/awp1.wav", 1.0, ATTN_NORM);



    SendWeaponAnim(
    MAGNUM_FIRE1 );



     



    m_pPlayer->m_iWeaponVolume
    = NORMAL_GUN_VOLUME;



    m_pPlayer->m_iWeaponFlash
    = NORMAL_GUN_FLASH;



     



    m_iClip--;



     



    Vector vecSrc =
    m_pPlayer->GetGunPosition();



    Vector vecAiming =
    m_pPlayer->GetAutoaimVector( AUTOAIM_5DEGREES );



    m_pPlayer->FireBullets
    (1, vecSrc, vecAiming, VECTOR_CONE_1DEGREES, 16000, BULLET_PLAYER_9MM, 0.5, 4);



     



    Vector vecShellVelocity =
    m_pPlayer->pev->velocity



     



    + gpGlobals->v_right *
    RANDOM_FLOAT(50,70)



     



    + gpGlobals->v_up *
    RANDOM_FLOAT(100,150)



     



    + gpGlobals->v_forward * 25;



     



    EjectBrass ( pev->origin +
    m_pPlayer->pev->view_ofs + gpGlobals->v_up * -12 +
    gpGlobals->v_forward * 15 + gpGlobals->v_right * 6 , vecShellVelocity,
    pev->angles.y, m_iShell, TE_BOUNCE_SHELL );



     



    //m_pPlayer->SetSuitUpdate("!HEV_AMO0",
    FALSE, 0);



    m_pPlayer->pev->punchangle.x
    -= 10;



     



     



    if (
    g_pGameRules->IsDeathmatch() )



    {



    // optimized
    multiplayer. Widened to make it easier to hit a moving player8192



    m_pPlayer->FireBullets(
    1, vecSrc, vecAiming, VECTOR_CONE_1DEGREES, 16000, BULLET_PLAYER_338, 3 );



    }



    else



    {



    // single
    player spread



    m_pPlayer->FireBullets(
    1, vecSrc, vecAiming, VECTOR_CONE_1DEGREES, 16000, BULLET_PLAYER_338, 3 );



    }



     



    if (!m_iClip &&
    m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0)



    // HEV suit
    - indicate out of ammo condition



    m_pPlayer->SetSuitUpdate("!HEV_AMO0",
    FALSE, 0);



     



    m_flNextPrimaryAttack =
    m_flNextPrimaryAttack + 1.3;



    if
    (m_flNextPrimaryAttack < gpGlobals->time)



    m_flNextPrimaryAttack
    = gpGlobals->time + 1.3;



     



    m_flTimeWeaponIdle =
    gpGlobals->time + RANDOM_FLOAT ( 1, 1 );



    }



     



     



     



    void CMAGNUM::SecondaryAttack( void
    )



    {



    if (m_fInZoom == 0)



    {



    m_pPlayer->pev->fov
    = m_pPlayer->m_iFOV = 20;



    m_fInZoom =
    1;



    }



    else if (m_fInZoom == 1)



    {



    m_pPlayer->pev->fov
    = m_pPlayer->m_iFOV = 0;



    m_fInZoom =
    0;



    }



     



    m_flNextSecondaryAttack
    = gpGlobals->time + 0.8;



     



    }



     



    void CMAGNUM::Reload( void )



    {



    if ( m_fInZoom )



    {



    SecondaryAttack();



    }



    DefaultReload( 10,
    MAGNUM_RELOAD, 3.0 );



    }



     



     



     



    void CMAGNUM::WeaponIdle( void )



    {



     



    ResetEmptySound( );



     



    m_pPlayer->GetAutoaimVector(
    AUTOAIM_5DEGREES );



     



    if (m_flTimeWeaponIdle
    > gpGlobals->time)



    return;



     



    int iAnim;



    switch ( RANDOM_LONG( 0,
    1 ) )



    {



    case 0:



    iAnim =
    MAGNUM_IDLE1;



    break;





    default:



    case 1:



    iAnim =
    MAGNUM_IDLE1;



    break;



    }



     



    SendWeaponAnim( iAnim );



     



    m_flTimeWeaponIdle =
    gpGlobals->time + RANDOM_FLOAT ( 10, 15 );// how long till we do this again.



    }



     



    void CMAGNUM::Holster( int skiplocal
    )



    {



    m_fInReload = FALSE;//
    cancel any reload in progress.



     



    if ( m_fInZoom )



    {



    SecondaryAttack(
    );



    }



     



    m_pPlayer->m_flNextAttack
    = UTIL_WeaponTimeBase() + 0.5;



    /* if (m_iClip)



    SendWeaponAnim(
    MAGNUM_HOLSTER );//CROSSBOW_HOLSTER1



    else



    SendWeaponAnim(
    MAGNUM_HOLSTER );//CROSSBOW_HOLSTER2*/



    }



     



    a otvoríme weapons.cpp a nájdeme:



     



    #if !defined( OEM_BUILD )
    && !defined( HLDEMO_BUILD )



    // rpg



    UTIL_PrecacheOtherWeapon(
    "weapon_rpg" );



    UTIL_PrecacheOther(
    "ammo_rpgclip" );



    #endif



     



    a pod neho vložíme:



     



    #if !defined( OEM_BUILD ) &&
    !defined( HLDEMO_BUILD )



    // magnum



    UTIL_PrecacheOtherWeapon(
    "weapon_MAGNUM" );



    UTIL_PrecacheOther(
    "ammo_338" );



    #endif



     



    teraz otvoríme weapons.h a nájdeme:



     



    #define WEAPON_AK47 16



     



    a pod neho vložíme:



     



    #define WEAPON_MAGNUM 17



     



    eÅ¡te na koniec si dáme naÅ¡u zbraň na impulse tak ako ak47
    v player.cpp kde nájdeme:



     



    case 108:// show shortest paths
    for entire level to nearest node



    {



    GiveNamedItem(
    "weapon_AK47" );



     



    A pod neho vložíme:



     



    GiveNamedItem(
    "weapon_MAGNUM" );



     



    No malo by to byť vÅ¡etko.








    BODOVANIE ÈLÁNKU
    Boduje sa ako v škole (1- výborný, 5-zlý)
           

    Priemerná známka : 2.83
    Hlasovalo : 6

    KOMENTÁRE KU ÈLÁNKU
    Poèet komentárov ku èlánku : 20

    1. ^NK&MH^Jurom@ster ABCD
    [28.06.2004-00:38] 285
    sorry ale nejako mi to nejde... par veci mi tu hlasi - dost

    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(271) : error C2001: newline in constant
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(271) : error C2015: too many characters in constant
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(271) : error C2143: syntax error : missing ';' before 'constant'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(271) : error C2501: 'don' : missing storage-class or type specifiers
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(271) : error C2059: syntax error : 'constant'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(276) : error C2238: unexpected token(s) preceding ';'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(283) : error C2143: syntax error : missing ';' before '?'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(283) : error C2501: 'ammo' : missing storage-class or type specifiers
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(283) : error C2059: syntax error : '?'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(303) : error C2334: unexpected token(s) preceding ':'; skipping apparent function body
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(678) : error C2059: syntax error : 'return'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(678) : error C2238: unexpected token(s) preceding ';'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(693) : error C2653: 'CMAGNUM' : is not a class or namespace name
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(693) : error C2146: syntax error : missing ';' before identifier 'Deploy'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(693) : error C2377: 'BOOL' : redefinition; typedef cannot be overloaded with any other symbol
    D:\other tools and cools\VC98\INCLUDE\windef.h(142) : see declaration of 'BOOL'
    D:\dm\Nuke-life source\dlls\mp5scoped.cpp(693) : fatal error C1004: unexpected end of file found

    nazval som to inac, ale vplyv by to mat nemalo, skusal som
    to aj povodne robit ale to iste...


    2. Majacik Redaktor
    [28.06.2004-07:22] 286
    hmmmm posli mi tvoje sdk toto sa mi nezda

    3. ^NK&MH^Jurom@ster ABCD
    [28.06.2004-13:28] 289
    Ti vravim ze toto tu som skopiroval a nede proste 15
    errorov same ; chybaju abo su naviac a taky hlasi...
    skus si toto skopirovat do magnum.cpp ten prvy
    text a uvidime... toto co patri do magnum.cpp...
    toto hlasi error...

    4. Majacik Redaktor
    [28.06.2004-20:49] 291
    ????????????????????????????????????

    5. Frco Redaktor
    [29.06.2004-19:37] 292
    konecne neaky dobry TUT na snipru...
    nieze by som to nevedel...

    I Take The Plane!

    6. Jackar Admin
    [29.06.2004-22:01] 293
    Btw, ma napadlo, vedel by si spravit brokovnicu ako bola v TS, teda ze pumpovacia, ze raz vystreli, raz nabije, xapes ?

    A tiez aby sa zbran dala dat do ramena. Lebo to bude asi najviac pouzivany druhy mod zbrani v nasom mode

    7. Majacik Redaktor
    [30.06.2004-22:00] 294
    jasne ked budu animacky

    8. Wizz Admin
    [02.07.2004-11:42] 295
    a co takto spravit taky pekny pohlad ces kolimator ako v Delta force : black hawk down ?

    9. Majacik Redaktor
    [02.07.2004-16:30] 296
    daj si scope s nulovim pribliyenim a sprit v podobe kolimatora, wizz, no problem

    10. Jackar Admin
    [02.07.2004-20:02] 297
    animacky budu, pozicame od TS

    11. Majacik Redaktor
    [03.07.2004-09:17] 298
    jak je libo - the thief

    12. Majacik Redaktor
    [03.07.2004-09:18] 299
    inac ja sa zastavam toho nazoru a aj kopec znamich ludi ze naco robit nieco co uz je a je to efektivne ci kvalitne lebo obje asi nieje

    13. Jackar Admin
    [03.07.2004-12:49] 300
    JJ, ionac drzte palce, zajtra idem kontaktovat xlapikof od TS, ci mozme pouzit ich modely, samozrejme ze im dame creditz cez celu obrazovku

    14. Frco Redaktor
    [03.07.2004-23:35] 301
    dnes, pripadne zajtra idem otestovat THIS...

    I Take The Plane!

    15. Frco Redaktor
    [06.07.2004-21:41] 302
    jj TS ma good modely

    I Take The Plane!

    16. goblin Redaktor
    [04.05.2006-08:06] 1949
    aj ja som skusal robit snipru podla toho tutu a tiez mi vyhodilo tie errory co v prvom prispevku

    All I want , all I need is to see my enemy bleed!

    17. Ki@n[ID]
    [09.05.2007-21:26] 2556
    Mì to sice chyby nehlásí, ale když ji ve høe seberu a pøepnu si na jinou zbraò a pak si ji chci zase vybrat a dát si jí do ruky tak v HUDu neni. Nevíte nìkdo èim to?

    Makám na modu Snow facility - kouknìte na www.s-f.webgarden.cz

    18. M4tess0
    [12.07.2008-11:46] 3011
    Hazí mi to error proze sou ty scripty rozhazeny, nerekl by mi nekdo kde stahnout cs 1.6 source codes?

    19. M4tess0
    [12.07.2008-11:52] 3012
    Hazí mi to error proze sou ty scripty rozhazeny, nerekl by mi nekdo kde stahnout cs 1.6 source codes?

    20. Wizz Admin
    [02.08.2008-10:31] 3013
    na CS source codes nedostanes, jedine ze by si ich ukradol valve

    Pre pridávanie komentárov musíte by� prihlásený
    Pokia¾ ešte nieste zaregistrovaný, môžete tak urobi� TU

    Vyh¾adávanie

    Rozšírené vyh¾adávanie

    AREA 42
    Hláška
    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

    Staršie hlášky >> Komentáre >>

    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
    Staršie ankety >>

    Najèítanejšie
    1.HL2: První kroky (35288x)
    2.Atomová bomba ako v crossfire (32368x)
    3.Counter-Strike entity (26882x)
    4.Half-Life: Padlé Mìsto demo - Recenze (22568x)
    5.Pozadie pomocou textúry sky (20213x)
    On-Line
    Tieto stránky si práve èí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 záujme ochrany duševného zdravia redaktorov tu už viac ICQ panel nenájdete :P

    Výsledky vašeho snaženia sa môžete nájs� na lamz.thelambda.sk ...

    Všetky texty publikované na týchto stránkach sú majetkom thelambda.sk alebo ich autorov.
    (C) 2003-2006 thelambda.sk VSETKY PRAVA VYHRADENE
    www.TheLambda.SK Enter RS
    Stránka bola naèítaná za 0.13 sekúnd.