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
    Ako spraviť Otisa
    Wizz
    [13.03.2004 : 19:02:49] 98 TutoriŠl
    »ŪtanŪ : 3555
    PriemernŠ znŠmka : 1.5
    Ak ste hraly Opposing force, iste si pam√§t√°te na tak√©ho mil√©ho, tučn√©ho policajta. Vydieť ste ho mohly aj v Blue Shift, ako sa na strelnici napch√°va kol√°čom . Je to v podstate norm√°lny policajt ako star√Ĺ Barney. TakŇĺe pokial by ste ho chcely mať v hre, stačilo by mu len zmeniť MDL s√ļbor. Ale pokiaľ chcete pouŇĺ√≠vať oboch, mus√≠te si ho doprogramovať.



    Teraz niečo ku OOP, alebo Objektovo Orientovan√©mu Programovaniu. Tieto z√°klady by V√°m maly pom√īcť pri začiatkoch programovania v HL, ale nielen tam. Pri OOP pouŇĺ√≠vame v√Ĺrazi ako : trieda, objekt (v niektorej literat√ļre "instancia"), dedičnosť, ... Ale o čo vlastne ide ?

    TRIEDA, je to vlastne typ, ktor√Ĺ obsahuje defin√≠cie premenn√Ĺch a funkc√≠, ktor√© s t√Ĺmito premenn√Ĺmi pracuj√ļ. KaŇĺd√° trieda potom m√īŇĺe rieŇ°iť nejak√ļ √ļlohu (napr. v HL je trieda "TalkMonster" ktor√° sa star√° o chod hovoriacich monstier ako vedec a barney).

    Od kaŇĺdej triedy potom m√īŇĺeme vytvoriť OBJEKT. Objekt pouŇĺ√≠va vŇ°etky premenn√© a funkcie triedy, ku ktor√©j patr√≠. KaŇĺd√° trieda m√īŇĺe mať X r√īznych objektov (X je cel√© kladn√© č√≠slo).

    A dedičnosť. Pomocou dedičnosti m√īŇĺeme vytvoriť nov√ļ triedu, ktor√° zded√≠ vŇ°etky premenn√© a funkcie po uŇĺ existuj√ļcej triede (tzv. rodičovsk√° trieda) + m√īŇĺme pridať ďaľŇ°ie. Takto vytvoren√° trieda sa naz√Ĺva aj "potomok". Mal√Ĺ pr√≠klad. HL m√° nadefinovan√ļ triedu TalkMonster, ktor√° obsahuje z√°kladne hodnoty a funkcie pre hovoriace monstra v hre, ale neobsahuje priamo konkr√©tne data o s√ļboroch s modelom, zvukmi, anim√°ciami. Preto je vytvoren√° trieda Barney, ktor√° bude potomkom triedy TalkMonster a bude definovať n√°zov modelu ktor√Ĺ sa m√° pouŇĺiť, zvuky ktor√© m√° rozpr√°vať atď. Pritom z√°kladn√© data bude čerpať z triedy TalkMonster.

    Od te√≥rie teraz radŇ°ej pr√©jdeme ku samotn√©j tvorbe. Začnite s t√Ĺm, Ňĺe skop√≠rujte s√ļbory "otis.mdl", "otis01.mdl", otis02.mdl" a "otis03.mdl" do adres√°ra "valve/models/" . Model Otisa m√īŇĺete z√≠skať napr. z Opposing Force alebo Blue Shift.

    Spustite VC++, otvorte HL SDK a chodte do s√ļboru barney.cpp. K√ļsok pod začiatkom s√ļboru n√°jdete text :
    class CBarney : public CTalkMonster

    Toto je z√°pis dedičnosti (je zvyk d√°vať na začiatok n√°zvu triedy nejak√© p√≠smeno, v tomto pr√≠pade je to C). Za defin√≠ciou dedičnosti sa nach√°dza v zloŇĺen√Ĺch z√°tvork√°ch { } defin√≠cia premenn√Ĺch a funkc√≠, ktor√© patria do tejto triedy. Pod ňou je eŇ°te z√°pis funkcie LINK_ENTITY_TO_CLASS, ktor√° určuje ak√° entita patr√≠ ku tejto triede.
    Pod ňu uŇĺ prid√°me vlastn√Ĺ kod :

    class COtis : public CBarney
    {
    void Spawn( void );
    void Precache( void );
    void Killed( entvars_t *pevAttacker, int iGib );
    int body;
    };

    LINK_ENTITY_TO_CLASS( monster_otis, COtis );


    Vytvorily sme si triedu COtis, ktor√° je potomkom triedy CBarney, teda sme zdedily aj jej vŇ°etky funkcie. Ale nie vŇ°etky potrebujeme v p√īvodnej podobe, preto si niekto√© mus√≠me definovať sami (Spawn, Precache, Killed a premenn√ļ body). Posledn√Ĺ riadok určuje, Ňĺe trieda COtis patr√≠ ku entite monster_otis (t√ļ si nakoniec prid√°me do fgd s√ļboru).
    Teraz nap√≠Ň°eme samotn√© funkcie, takŇĺe :

    void COtis :: Spawn()
    {
    Precache( );

    SET_MODEL(ENT(pev), "models/otis.mdl");
    UTIL_SetSize(pev, VEC_HUMAN_HULL_MIN, VEC_HUMAN_HULL_MAX);

    pev->solid = SOLID_SLIDEBOX;
    pev->movetype = MOVETYPE_STEP;
    m_bloodColor = BLOOD_COLOR_RED;
    pev->health = gSkillData.barneyHealth;
    pev->view_ofs = Vector ( 0, 0, 50 );
    m_flFieldOfView = VIEW_FIELD_WIDE;
    m_MonsterState = MONSTERSTATE_NONE;

    pev->body = 0; // pri nacitani nebude mat v ruke zbran
    m_fGunDrawn = FALSE;

    m_afCapability = bits_CAP_HEAR | bits_CAP_TURN_HEAD | bits_CAP_DOORS_GROUP;

    MonsterInit();
    SetUse( FollowerUse );
    }


    void COtis :: Precache()
    {
    PRECACHE_MODEL("models/otis.mdl");

    PRECACHE_SOUND("barney/ba_attack1.wav" );
    PRECACHE_SOUND("barney/ba_attack2.wav" );

    PRECACHE_SOUND("barney/ba_pain1.wav");
    PRECACHE_SOUND("barney/ba_pain2.wav");
    PRECACHE_SOUND("barney/ba_pain3.wav");

    PRECACHE_SOUND("barney/ba_die1.wav");
    PRECACHE_SOUND("barney/ba_die2.wav");
    PRECACHE_SOUND("barney/ba_die3.wav");

    TalkInit();
    CTalkMonster::Precache();
    }

    void COtis::Killed( entvars_t *pevAttacker, int iGib )
    {
    // zmena, inak by mal v ruke kolac
    pev->body = 0;

    Vector vecGunPos;
    Vector vecGunAngles;

    GetAttachment( 0, vecGunPos, vecGunAngles );
    CBaseEntity *pGun = DropItem( "weapon_9mmhandgun", vecGunPos, vecGunAngles );

    SetUse( NULL );
    CTalkMonster::Killed( pevAttacker, iGib );
    }


    Zaujimavosťou m√īŇĺe byť, Ňĺe pokiaľ by sme nezmenilny funkciu Killed, mal by Otis po zabit√≠ v ruke kolač
    skompilujte to, a vytvorenou kniŇĺnicou nahraďte p√īvodn√ļ hl.dll (t√ļ si m√īŇĺete aj zalohovať).
    To je z programov√©j str√°nky vŇ°etko.
    Teraz otvorte s√ļbor halflife.fgd, ktor√Ĺ pouŇĺ√≠va V√°Ň° editor na nač√≠tanie ent√≠t. N√°jdite riadok :

    @PointClass base(Monster,TalkMonster) size(-16 -16 0, 16 16 72) = monster_barney : "Barney" []

    a pridajte pod neho :

    @PointClass base(Monster,TalkMonster) size(-16 -16 0, 16 16 72) = monster_otis : "Otis" []

    Teraz uŇĺ m√īŇĺete spustiť editor a do mapy vloŇĺiť entitu monster_otis. Keď mapu skompilujete, mal by sa tam objaviť Otis, ktor√Ĺ sa bude chovať ako policajt ...

    To je zatiaľ vŇ°etko, obdobn√Ĺm sp√īsobom sa d√°j√ļ spraviť aj in√© "pr√≠Ň°ery" ktor√© zdedia funkcie po rodičovsk√©j triede, ale bud√ļ určite spestren√≠m VaŇ°eho MODu.

    SŕBORY KU »LŃNKU :

    BODOVANIE »LŃNKU
    Boduje sa ako v ökole (1- vżbornż, 5-zlż)
           

    PriemernŠ znŠmka : 1.5
    Hlasovalo : 8

    KOMENTŃRE KU »LŃNKU
    PoŤet komentŠrov ku ŤlŠnku : 3

    1. hAssassin
    [07.12.2004-13:44] 570
    Zdravim,
    kone√®n√¨ sem sehnal C++ a zkouŇ°el sem si p√łidat Otisa.
    P√łes po√®√°te√®n√Ĺ nezdary se mi to povedlo!!!
    Ale d√¨lal chyby: 1) neum√¨l b√¨hat - kdyŇĺ sem mu √łekl, aby sel za mnou a pak mu utekl, sekl se a n√¨jak se "vrt√¨l"
    2) neum√łel - kdyŇĺ sem se ho pokusl za√≠t, m√≠sto animace p√°du se zase vrt√¨l a pak z n√¨ho vypadla pistole. KdyŇĺ sem do n√¨j st√ł√≠lel d√°l, tak z n√¨ho pistole padala furt. Nakonec se seknul a dalo se zkrze n√¨j proj√≠t.

    Musim p√łiznat, Ňĺe programovat umim akor√°t v Pascalu a JavaScriptu. V C++ sem d√¨lal √ļpln√¨ poprv√Ĺ, ale p√łesto bych se cht√¨l zeptat, jestli by mi nemohl poradit...

    P√łedem d√≠ky

    2. goblin Redaktor
    [16.12.2006-18:31] 2251
    ja som pochopil tu dedicnost lenze to nestaci ked chcem iba urobit vedca s iba inou texturou ale aby boli aj jeden aj druhy v hre tak ani to neviem

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

    3. Vaber Redaktor
    [17.12.2006-20:02] 2253
    Tak snad vytvoris novou tridu kterou odvodis od tridy normalniho vedce a pretizis fci Spawn().. Ja sem do HL1 vzivote nekodil (jen HL2), ale melo by pro snadnou zmenu modelu stacit hodit do novy fce spawn tohle:

    BaseClass::Spawn();
    SET_MODEL(ENT(pev), "models/novy_vedec_model.mdl");

    ale nevim jak to reaguje na vic zmen modelu, mozna budes muset celou tu spawn fci opsat a nepouzit figl s BaseClass..

    C++ coder

    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.Atomov√° bomba ako v crossfire (30169x)
    2.HL2: První kroky (29377x)
    3.Counter-Strike entity (21565x)
    4.Half-Life: Padlé Mìsto demo - Recenze (19622x)
    5.Pozadie pomocou text√ļry sky (17874x)
    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.61 sekķnd.