mirror of
https://github.com/wiidev/usbloadergx.git
synced 2024-12-23 10:21:55 +01:00
9e79c9d99b
* code cleanup
79 lines
2.2 KiB
C++
79 lines
2.2 KiB
C++
#include "gui_diskcover.h"
|
|
|
|
|
|
GuiDiskCover::GuiDiskCover()
|
|
{
|
|
deg_beta = 0.0;
|
|
eff_step = 0;
|
|
// spin_angle = 0;
|
|
spin_speedup = 1.0;
|
|
spin_up = false;
|
|
}
|
|
GuiDiskCover::GuiDiskCover( GuiImageData *Disk ) : GuiImage( Disk )
|
|
{
|
|
deg_beta = 0.0;
|
|
eff_step = 0;
|
|
// spin_angle = 0;
|
|
spin_speedup = 1.0;
|
|
spin_up = false;
|
|
}
|
|
GuiDiskCover::~GuiDiskCover()
|
|
{
|
|
}
|
|
|
|
void GuiDiskCover::SetBeta( f32 beta )
|
|
{
|
|
deg_beta = beta;
|
|
}
|
|
void GuiDiskCover::SetBetaRotateEffect( f32 beta, u16 step )
|
|
{
|
|
eff_beta = beta / ( f32 )step;
|
|
eff_step = step;
|
|
}
|
|
bool GuiDiskCover::GetBetaRotateEffect()
|
|
{
|
|
return eff_step != 0;
|
|
}
|
|
|
|
void GuiDiskCover::SetSpin( bool Up )
|
|
{
|
|
spin_up = Up;
|
|
}
|
|
|
|
void Menu_DrawDiskCover( f32 xpos, f32 ypos, f32 zpos, u16 width, u16 height, u16 distance, u8 data[],
|
|
f32 deg_alpha, f32 deg_beta, f32 scaleX, f32 scaleY, u8 alpha, bool shadow );
|
|
void Menu_DrawDiskCoverShadow( f32 xpos, f32 ypos, f32 zpos, u16 width, u16 height, u16 distance, u8 data[],
|
|
f32 deg_alpha, f32 deg_beta, f32 scaleX, f32 scaleY, u8 alpha, bool shadow );
|
|
|
|
void GuiDiskCover::Draw()
|
|
{
|
|
LOCK( this );
|
|
if ( !image || !this->IsVisible() )
|
|
return;
|
|
float currScale = this->GetScale();
|
|
// Menu_DrawDiskCoverShadow(this->GetLeft(), this->GetTop(), 190, width, height, 40, image, imageangle, deg_beta, widescreen ? currScale*0.8 : currScale, currScale, this->GetAlpha(), true);
|
|
Menu_DrawDiskCover( this->GetLeft(), this->GetTop(), 50, width, height, 55, image, imageangle, deg_beta, widescreen ? currScale*0.8 : currScale, currScale, 64, true );
|
|
Menu_DrawDiskCover( this->GetLeft(), this->GetTop(), 50, width, height, 55, image, imageangle, deg_beta, widescreen ? currScale*0.8 : currScale, currScale, this->GetAlpha(), false );
|
|
|
|
if ( eff_step )
|
|
{
|
|
deg_beta += eff_beta;
|
|
eff_step--;
|
|
}
|
|
GuiImage::imageangle += spin_speedup;
|
|
while ( GuiImage::imageangle >= 360.0 ) GuiImage::imageangle -= 360.0;
|
|
|
|
if ( spin_up )
|
|
{
|
|
if ( spin_speedup < 11 ) // speed up
|
|
spin_speedup += 0.20;
|
|
}
|
|
else
|
|
{
|
|
if ( spin_speedup > 1 )
|
|
spin_speedup -= 0.05; //slow down
|
|
}
|
|
|
|
this->UpdateEffects();
|
|
}
|