|
|
Diskusn boardy |
|
|
|
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. |
|
|
|
|
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 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 |
|
|
|
Pridanie mp3 do spiritu NICKSss [02.03.2008 : 20:55:09] 408 Tutoril tan : 12740 Priemern znmka : 3.89 |
Na pridanie podpory mp3 sa používa FMOD.DLL. Dokáže prehra viacej hud. formátov, napr OGG. Tiež na internete sú návody na pridanie mp3 do HL1, ale po anglicky a nie do spiritu. Teraz už to bude do Spiritu aj po Slovensky :D... Ja som to testoval na SPIRIT 1.2, a FMOD je z verzie 1.4.
TENTO NAVOD JE -ASI- FUNKÈNÝ AJ NA OBYÈAJNOM HALF-LIFE ALE NETESTOVANÉ!
Takže stiahneme si FMOD.RAR, nachádza sa pod návodom. Rozbalíme ho do cl_dll v zdrojákoch.
Otvoríme cl_dll.dsw a pridáme súbory ktoré sme rozbalili (fmod.h,fmod_errors.h,mp3.h a mp3.cpp ) do projektu ale fmod.dll dame do zlozky modu.
EŠTE PRE VYSVETLENIE XXXXXX NEVYH¼ADÁVAJTE !
Teraz otvoríme cdll_int.cpp a hore pridáme:
#include "mp3.h"
Ïalej vyh¾adáme asi v riadku 40 CHud gHUD; a pod neho pridáme:
CMP3 gMP3;
Otvoríme hud.cpp hore pridáme
#include "mp3.h"
a asi v riadku 175 kde nájdeme __MsgFunc_XXXXXX pridáme medzi ne toto:
int __MsgFunc_PlayMP3(const char *pszName, int iSize, void *pbuf )
{
return gHUD.MsgFunc_PlayMP3( pszName, iSize, pbuf );
}
ïalej nájdeme void __Cmdfunc_XXXXX a medzi ne pridáme
void __CmdFunc_StopMP3( void )
{
gMP3.StopMP3();
}
Poïalšie vyh¾adáme HOOK_MESSAGE a pred TFFree CommandMenu pridáme:
//SPIRIT MP3
if(gMP3.Initialize()) //vyhlada a spusti fmod.dll plus kodeky
{
HOOK_MESSAGE( PlayMP3 ); //zacne prehravat danu mp3
HOOK_COMMAND( "stopaudio", StopMP3 ); //skonci prehr.mp3
}
Ïalej prejdeme na riadok 430 alebo vyh¾adáme CHud :: ~CHud() a za
delete [] m_rgszSpriteNames;
pridáme
gMP3.Shutdown();
Ïalej otvoríme hud.h a do riadku 682 alebo vyh¾adame int _cdecl MsgFunc_XXXXX pridáme:
int _cdecl MsgFunc_PlayMP3( const char *pszName, int iSize, void *pbuf ); //mp3
otvoríme hud_msg.cpp hore pridáme
#include "mp3.h"
Ïalej vyhåadáme int CHud :: MsgFunc_XXXXXXXX a pridáme sem medzi ne toto:
int CHud :: MsgFunc_PlayMP3( const char *pszName, int iSize, void *pbuf ) //AJH -Killar MP3
{
BEGIN_READ( pbuf, iSize );
gMP3.PlayMP3( READ_STRING() );
return 1;
}
Toto je pre cl_dll asi všetko...
Otvoríme hl.dsw a otvoríme player.cpp a nájdeme: int gmsgXXXXXXX a k tymto pridáme
int gmsgPlayMP3 = 0; //mp34yourMOD
a nájdeme gmsgXXXXXXX a k týmto pridáme:
gmsgPlayMP3 = REG_USER_MSG("PlayMP3", -1); //vždy meni príkaz na Playmp3
Teraz otvoríme client.cpp a dáme vyh¾adat clientcommand a pod
extern float g_flWeaponCheat; doplníme:
extern int gmsgPlayMP3;
a ku ostatným else if-om doplníme:
else if ( FStrEq(pcmd, "playaudio" ) ) //ked zadame do konzole playaudio zmeni sa na playmp3 a spusti dany zvuk
{
MESSAGE_BEGIN( MSG_ONE, gmsgPlayMP3, NULL, ENT(pev) );
WRITE_STRING( (char *)CMD_ARGV(1) );
MESSAGE_END();
}
a ako posledné otvoríme triggers.cpp a na spodok dáme:
// ambient_fmodstream NA PREHRAVANIE MP3 A OGG
#define SF_REMOVE_ON_FIRE 1
class CTargetFMODAudio : public CPointEntity
{
public:
void Spawn( void );
void Use( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value );
BOOL m_bPlaying;
virtual int Save( CSave &save );
virtual int Restore( CRestore &restore );
static TYPEDESCRIPTION m_SaveData[];
};
LINK_ENTITY_TO_CLASS( ambient_fmodstream, CTargetFMODAudio ); //do fgd pouzijeme toto
LINK_ENTITY_TO_CLASS( trigger_mp3audio, CTargetFMODAudio );
TYPEDESCRIPTION CTargetFMODAudio::m_SaveData[] =
{
DEFINE_FIELD( CTargetFMODAudio, m_bPlaying, FIELD_BOOLEAN ),
};
IMPLEMENT_SAVERESTORE( CTargetFMODAudio, CPointEntity );
void CTargetFMODAudio :: Spawn( void )
{
pev->solid = SOLID_NOT;
pev->movetype = MOVETYPE_NONE;
m_bPlaying = FALSE; // start out not playing
}
void CTargetFMODAudio::Use( CBaseEntity *pActivator, CBaseEntity *pCaller,
USE_TYPE useType, float value )
{
char command[64];
if (!pActivator->IsPlayer()) // activator should be a player
return;
if (!m_bPlaying) // if we're not playing, start playing!
m_bPlaying = TRUE;
else
{ // if we're already playing, stop the mp3
m_bPlaying = FALSE;
CLIENT_COMMAND(pActivator->edict(), "stopaudion");
return;
}
// issue the play/loop command
sprintf(command, "playaudio %s\n", STRING(pev->message));
CLIENT_COMMAND(pActivator->edict(), command);
// remove if set
if (FBitSet(pev->spawnflags, SF_REMOVE_ON_FIRE))
UTIL_Remove(this);
}
a do fgd súboru za ambient_generic pridáme :
@PointClass base(Targetname) = ambient_fmodstream: "FMOD Audio player (MP3/OGG/WMA)"
[
message(string) : "File Name (relative to spirit)"
spawnflags(flags) =
[
1: "Remove on fire" : 0
]
]
Tak toto je celé, takže keby nastali chyby napíšte... Keby ste menili playaudio na nieèo iné, tak treba zmenit playaudio aj v triggers.cpp
Kde nahra mp3:
VŠETKY ZVUKY NAHRAJTE DO SOUND\MP3
Spustenie cez konzolu príkazom PlayAudio MENO.mp3
alebo entitou kde nastavite meno na napr.PESNICKA1 a pesnicku na VALVE.mp3 a trigger_autom ju spustite/staci nastavit target na PESNICKA1.
SBORY KU LNKU : | |
BODOVANIE LNKU Boduje sa ako v kole (1- vborn, 5-zl)
Priemern znmka : 3.89 Hlasovalo : 9
|
KOMENTRE KU LNKU Poet komentrov ku lnku : 5
1. NICKSss [02.03.2008-21:14] 2957 | POZOR CHYBA PRI NAHRAVANI CLANKU!!!
mp3 nahravajte do : sound/mp3
lebo vam to NEPREHRAJE |
2. NICKSss [02.03.2008-21:34] 2958 | A ESTE JEDNA CHYBA spustanie mp3 cez konzolu je playaudio meno.mp3
|
3. NICKSss [02.03.2008-22:46] 2959 | Takze som poopravoval mensie chyby ktore vznikli pri
vkladani na net.. |
4. Deli [03.03.2008-07:23] 2960 | len jedna otazka .... nema nahodou spirit (neviemn od ktorej verzie) uz nakodovane pouzitie mp3 podobne ako je to v CS-ku ??? Vešel sem do domu, který nebyl domem. Otevøel sem dveøe, které nebyli dveømi. A co sem vidìl, vidìl sem.... |
5. NICKSss [03.03.2008-07:42] 2962 | Ma od verzie 1.4 uz maju vsetky mp3,ale dakto uz ma zbrane a
ine addony napr.otisa a take v 1.2 alebo obycajnom HL a nechce
teraz prechadzat na novu verziu bo to bude musiet zas vsetko
nacodit,tak tymto si jednoducho pridas mp3 aj do 1.2 aj do HL1 | Pre pridvanie komentrov muste by prihlsen Pokia ete nieste zaregistrovan, mete tak urobi TU
|
|
|
|
|