D:/Zythum/DinoKod/Mod_Aeternis_Client/A_WinChangeTeam.cpp

00001 //---------------------------------------------------------------------------------------------
00002 //      This file is a part of "DinoKod".
00003 //      Copyright © 2003 Dino Productions. All Rights Reserved.
00004 //      
00005 //      File                    : A_WinChangeTeam.cpp
00006 //      Author                  : Sebastien LEIX        sebastien.leix@wanadoo.fr
00007 //      Date                    : 11/06/2003
00008 //      Modification    :
00009 //
00010 //---------------------------------------------------------------------------------------------
00011 #include "Common/Time.h"
00012 #include "Render/Render.h"
00013 #include "Render/Font.h"
00014 #include "Mod/Mod.h"
00015 
00016 #include "Mod_Aeternis_Client/A_Interface.h"
00017 #include "Mod_Aeternis_Client/A_ClientGameManager.h"
00018 
00019 #include "Mod_Aeternis_Client/A_WinChangeTeam.h"
00020 
00021 #define BUTTONTEAM1             "GUI/TeamFed"
00022 #define BUTTONTEAM1HL   "GUI/TeamFed_HL"
00023 #define BUTTONTEAM1C    "GUI/TeamFed_C"
00024 #define BUTTONTEAM2             "GUI/TeamResis"
00025 #define BUTTONTEAM2HL   "GUI/TeamResis_HL"
00026 #define BUTTONTEAM2C    "GUI/TeamResis_C"
00027 #define BUTTONTEAM3             "GUI/TeamSpectator"
00028 #define BUTTONTEAM3HL   "GUI/TeamSpectator_HL"
00029 #define BUTTONTEAM3C    "GUI/TeamSpectator_C"
00030 
00031 //------------------------------------------------------------------------------------------
00032 //------------------------------------------------------------------------------------------
00033 //------------------------------------------------------------------------------------------
00034 KAWinChangeTeam::KAWinChangeTeam( KWin* pFather, KFPt& Pos, KFPt& Size, KInterface* pInterface )
00035 : KWin( pFather, Pos, Size, pInterface )
00036 {
00037         m_hBackGround = KSHADER_NO;
00038 
00039         KFPt    ButtonSize = KFPt( 0.15f, 0.04f );
00040         
00041         // Button Team1
00042         m_pButtonTeam1 = new KButton( this, KFPt( 0.32f, 0.445f ) - ButtonSize / 2, ButtonSize, m_pInterface );
00043         // Button Team2
00044         m_pButtonTeam2 = new KButton( this, KFPt( 0.32f, 0.5f ) - ButtonSize / 2, ButtonSize, m_pInterface );
00045         // Button Team3
00046         m_pButtonTeam3 = new KButton( this, KFPt( 0.32f, 0.555f ) - ButtonSize / 2, ButtonSize, m_pInterface );
00047 }
00048 
00049 //------------------------------------------------------------------------------------------
00050 KAWinChangeTeam::~KAWinChangeTeam()
00051 {
00052 }
00053 
00054 //------------------------------------------------------------------------------------------
00055 void KAWinChangeTeam::Display()
00056 {
00057         u8              FadeAlpha = (u8)(255.0f * GetFade());
00058 
00059         m_pInterface->ShowMouse();
00060 
00061         u8              FadeBack = (u8)(240.0f * GetFade());
00062         DrawQuad( 0.2f, 0.35f, 0.6f, 0.3f, m_hBackGround, KRGBA( 255, 255, 255, FadeBack ) );
00063 }
00064 
00065 //------------------------------------------------------------------------------------------
00066 void KAWinChangeTeam::Manage()
00067 {
00068         // Team1
00069         if( m_pButtonTeam1->IsClicked() )
00070         {
00071                 ((KAClientGameManager*)g_pClientGameManager)->ChangeTeam( KMAT_BLUE );
00072                 m_pButtonTeam1->Reset();
00073                 Hide();
00074         }
00075 
00076         // Team2
00077         if( m_pButtonTeam2->IsClicked() )
00078         {
00079                 ((KAClientGameManager*)g_pClientGameManager)->ChangeTeam( KMAT_RED );
00080                 m_pButtonTeam2->Reset();
00081                 Hide();
00082         }
00083 
00084         // Team3
00085         if( m_pButtonTeam3->IsClicked() )
00086         {
00087                 ((KAClientGameManager*)g_pClientGameManager)->ChangeTeam( KMAT_SPECTATOR );
00088                 m_pButtonTeam3->Reset();
00089                 Hide();
00090         }
00091 }
00092 
00093 //------------------------------------------------------------------------------------------
00094 void KAWinChangeTeam::Load()
00095 {
00096         KWin::Load();
00097 
00098         KASSERT( m_hBackGround == KSHADER_NO );
00099         m_hBackGround = m_pRender->GetpShaderBank()->LoadShader( "GUI/WinTeam" );
00100         m_pButtonTeam1->SetShaders( BUTTONTEAM1, BUTTONTEAM1HL, BUTTONTEAM1C );
00101         m_pButtonTeam2->SetShaders( BUTTONTEAM2, BUTTONTEAM2HL, BUTTONTEAM2C );
00102         m_pButtonTeam3->SetShaders( BUTTONTEAM3, BUTTONTEAM3HL, BUTTONTEAM3C );
00103 }
00104 
00105 //------------------------------------------------------------------------------------------
00106 void KAWinChangeTeam::Unload()
00107 {
00108         KWin::Unload();
00109 
00110         if( m_hBackGround != KSHADER_NO )
00111                 m_pRender->GetpShaderBank()->UnloadShader( m_hBackGround );
00112 }
00113 

Generated on Sun Mar 25 20:02:14 2007 for Zythum Project by  doxygen 1.5.1-p1