00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include "Common/Time.h"
00012 #include "Common/LocalizedString.h"
00013 #include "Render/Render.h"
00014 #include "Render/Font.h"
00015
00016 #include "Mod_Aeternis_Client/A_Interface.h"
00017
00018 #include "Mod_Aeternis_Client/A_WinTitle.h"
00019
00020 #define GUIDIR( __gui ) KStr( "GUI/%s/%s", GETLANGUAGEPREFIX(), __gui )
00021
00022
00023
00024
00025 KAWinTitle::KAWinTitle( KWin* pFather, KFPt& Pos, KFPt& Size, KInterface* pInterface )
00026 : KWin( pFather, Pos, Size, pInterface )
00027 {
00028 m_hAeternis = KSHADER_NO;
00029 m_hZythum = KSHADER_NO;
00030 }
00031
00032
00033 KAWinTitle::~KAWinTitle()
00034 {
00035 }
00036
00037
00038 void KAWinTitle::Display()
00039 {
00040 u8 FadeAlpha = (u8)(255.0f * GetFade());
00041
00042 m_pInterface->HideMouse();
00043
00044 switch( m_Title )
00045 {
00046 case KAET_ZYTHUM:
00047 DrawQuad( 0.0f, 0.0f, 1.0f, 1.0f, m_hZythum, KRGBA( 255, 255, 255, FadeAlpha ) );
00048 break;
00049 case KAET_AETERNIS:
00050 DrawQuad( 0.0f, 0.0f, 1.0f, 1.0f, m_hAeternis, KRGBA( 255, 255, 255, FadeAlpha ) );
00051 break;
00052 }
00053 }
00054
00055
00056 void KAWinTitle::Manage()
00057 {
00058 KTIME Time = g_Time.GetTime() - m_StartTime;
00059
00060 if( Time > 8000 )
00061 {
00062 ((KAInterface*)m_pInterface)->SetWin( KAIW_START );
00063 }
00064 else if( Time > 3000 )
00065 {
00066 m_Title = KAET_ZYTHUM;
00067 }
00068 }
00069
00070
00071 void KAWinTitle::OnShow()
00072 {
00073 KWin::OnShow();
00074
00075 m_StartTime = g_Time.GetTime();
00076 m_Title = KAET_AETERNIS;
00077 }
00078
00079
00080 void KAWinTitle::Load()
00081 {
00082 KWin::Load();
00083
00084 m_hAeternis = m_pRender->GetpShaderBank()->LoadShader( "GUI/Title" );
00085 m_hZythum = m_pRender->GetpShaderBank()->LoadShader( "ZythumLogo" );
00086 }
00087
00088
00089 void KAWinTitle::Unload()
00090 {
00091 KWin::Unload();
00092
00093 m_pRender->GetpShaderBank()->UnloadShader( m_hAeternis );
00094 m_pRender->GetpShaderBank()->UnloadShader( m_hZythum );
00095 }