Files
Client/GameTools/Zallad3D SceneClass/TriggerEvent.h
LGram16 dd97ddec92 Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code:
- Client: Game client source (moved to Client/Client/)
- Server: Game server source
- GameTools: Development tools
- CryptoSource: Encryption utilities
- database: Database scripts
- Script: Game scripts
- rylCoder_16.02.2008_src: Legacy coder tools
- GMFont, Game: Additional resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 20:17:20 +09:00

120 lines
2.0 KiB
C++

#ifndef _TriggerEvent_H_
#define _TriggerEvent_H_
///////////////////////////////////////////////////////////////////////////
//
#define EVENT_NONE -1
#define EVENT_MUSICPLAY 0
#define EVENT_SHOWMESSAGE 1
#define EVENT_MUSICPLAYONCE 2
class ISoundObject;
class CEffScript;
struct IDirectSound8;
///////////////////////////////////////////////////////////////////////////
//
class ITriggerEvent
{
protected:
char * m_pszArg;
protected:
void SetArgument( const char * szArg );
public:
ITriggerEvent();
virtual ~ITriggerEvent();
virtual void Create( const char * szArg );
virtual void Destroy();
virtual void Begin() = 0;
virtual void End() = 0;
};
///////////////////////////////////////////////////////////////////////////
//
//루프로 플레이함.
class CEvent_MusicPlay : public ITriggerEvent
{
protected:
ISoundObject * m_pSoundBuffer;
public:
CEvent_MusicPlay();
virtual ~CEvent_MusicPlay();
void Create( const char * );
void Destroy();
virtual void Begin();
virtual void End();
};
///////////////////////////////////////////////////////////////////////////
//
class CEvent_MusicPlayOnce : public CEvent_MusicPlay
{
public:
CEvent_MusicPlayOnce();
void Begin();
void End();
};
///////////////////////////////////////////////////////////////////////////
//
class CEvent_ShowMessage : public ITriggerEvent
{
public:
typedef void (*FUNC_SHOWMSG)( const char * );
static FUNC_SHOWMSG ShowMessageFunction;
public:
void Begin();
void End();
};
///////////////////////////////////////////////////////////////////////////
//
class CEvent_ShowEffect : public ITriggerEvent
{
protected:
CEffScript * m_pEffectScript;
public:
CEvent_ShowEffect();
void Begin();
void End();
};
///////////////////////////////////////////////////////////////////////////
#endif
/* NeoRylClient와의 연결 코드
CGUIMessageBox g_GUIMsgBox;
void ShowMessageBoxFunc( const char * szMsgString )
{
g_GUIMsgBox->SetText( szMsgString );
g_GUIMsgBox->SetTime( 4000, 1000 );
g_GUIMsgBox->Show( true );
}
CEvent_ShowMessage::ShowMessageFunction = ShowMessageBoxFunc;
*/