📄 hotspot.cpp
字号:
// HotSpot.cpp: implementation of the CHotSpot class.
//
//////////////////////////////////////////////////////////////////////
#include "HotSpot.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CHotSpot::CHotSpot()
{
//Alpha Start
m_RectHotSpot[HS_ALPHA_START].left = 45;
m_RectHotSpot[HS_ALPHA_START].top = 13;
m_RectHotSpot[HS_ALPHA_START].right = 145;
m_RectHotSpot[HS_ALPHA_START].bottom = 16;
//Alpha End
m_RectHotSpot[HS_ALPHA_END].left = 45;
m_RectHotSpot[HS_ALPHA_END].top = 19;
m_RectHotSpot[HS_ALPHA_END].right = 145;
m_RectHotSpot[HS_ALPHA_END].bottom = 22;
//Red start
m_RectHotSpot[HS_RED_START].left = 45;
m_RectHotSpot[HS_RED_START].top = 30;
m_RectHotSpot[HS_RED_START].right = 145;
m_RectHotSpot[HS_RED_START].bottom = 35;
//Red end
m_RectHotSpot[HS_RED_END].left = 45;
m_RectHotSpot[HS_RED_END].top = 36;
m_RectHotSpot[HS_RED_END].right = 145;
m_RectHotSpot[HS_RED_END].bottom = 40;
//Grn Start
m_RectHotSpot[HS_GREEN_START].left = 45;
m_RectHotSpot[HS_GREEN_START].top = 48;
m_RectHotSpot[HS_GREEN_START].right = 145;
m_RectHotSpot[HS_GREEN_START].bottom = 51;
//Grn End
m_RectHotSpot[HS_GREEN_END].left = 45;
m_RectHotSpot[HS_GREEN_END].top = 54;
m_RectHotSpot[HS_GREEN_END].right = 145;
m_RectHotSpot[HS_GREEN_END].bottom = 58;
//Blu Start
m_RectHotSpot[HS_BLUE_START].left = 45;
m_RectHotSpot[HS_BLUE_START].top = 65;
m_RectHotSpot[HS_BLUE_START].right = 145;
m_RectHotSpot[HS_BLUE_START].bottom = 70;
//Blu End
m_RectHotSpot[HS_BLUE_END].left = 45;
m_RectHotSpot[HS_BLUE_END].top = 72;
m_RectHotSpot[HS_BLUE_END].right = 145;
m_RectHotSpot[HS_BLUE_END].bottom = 77;
//Spread
m_RectHotSpot[HS_THETA].left = 45;
m_RectHotSpot[HS_THETA].top = 190;
m_RectHotSpot[HS_THETA].right = 145;
m_RectHotSpot[HS_THETA].bottom = 196;
//Size start
m_RectHotSpot[HS_SIZE_START].left = 45;
m_RectHotSpot[HS_SIZE_START].top = 83;
m_RectHotSpot[HS_SIZE_START].right = 145;
m_RectHotSpot[HS_SIZE_START].bottom = 88;
//Size End
m_RectHotSpot[HS_SIZE_END].left = 45;
m_RectHotSpot[HS_SIZE_END].top = 91;
m_RectHotSpot[HS_SIZE_END].right = 145;
m_RectHotSpot[HS_SIZE_END].bottom = 95;
//Boing Slider
m_RectHotSpot[HS_BOING].left = 45;
m_RectHotSpot[HS_BOING].top = 205;
m_RectHotSpot[HS_BOING].right = 145;
m_RectHotSpot[HS_BOING].bottom = 210;
//Speed
m_RectHotSpot[HS_SPEED].left = 45;
m_RectHotSpot[HS_SPEED].top = 133;
m_RectHotSpot[HS_SPEED].right = 145;
m_RectHotSpot[HS_SPEED].bottom = 139;
//Life
m_RectHotSpot[HS_LIFE].left = 45;
m_RectHotSpot[HS_LIFE].top = 103;
m_RectHotSpot[HS_LIFE].right = 145;
m_RectHotSpot[HS_LIFE].bottom = 109;
//Emission
m_RectHotSpot[HS_EMMISION].left = 45;
m_RectHotSpot[HS_EMMISION].top = 118;
m_RectHotSpot[HS_EMMISION].right = 145;
m_RectHotSpot[HS_EMMISION].bottom = 124;
//Grav Start.x
m_RectHotSpot[HS_GRAV_START_X].left = 45;
m_RectHotSpot[HS_GRAV_START_X].top = 145;
m_RectHotSpot[HS_GRAV_START_X].right = 145;
m_RectHotSpot[HS_GRAV_START_X].bottom = 149;
//Grav End.x
m_RectHotSpot[HS_GRAV_END_X].left = 45;
m_RectHotSpot[HS_GRAV_END_X].top = 151;
m_RectHotSpot[HS_GRAV_END_X].right = 145;
m_RectHotSpot[HS_GRAV_END_X].bottom = 156;
//Grav Start.y
m_RectHotSpot[HS_GRAV_START_Y].left = 45;
m_RectHotSpot[HS_GRAV_START_Y].top = 158;
m_RectHotSpot[HS_GRAV_START_Y].right = 145;
m_RectHotSpot[HS_GRAV_START_Y].bottom = 163;
//Grav End.y
m_RectHotSpot[HS_GRAV_END_Y].left = 45;
m_RectHotSpot[HS_GRAV_END_Y].top = 165;
m_RectHotSpot[HS_GRAV_END_Y].right = 145;
m_RectHotSpot[HS_GRAV_END_Y].bottom = 170;
//Grav Start.z
m_RectHotSpot[HS_GRAV_START_Z].left = 45;
m_RectHotSpot[HS_GRAV_START_Z].top = 172;
m_RectHotSpot[HS_GRAV_START_Z].right = 145;
m_RectHotSpot[HS_GRAV_START_Z].bottom = 177;
//Grav End.z
m_RectHotSpot[HS_GRAV_END_Z].left = 45;
m_RectHotSpot[HS_GRAV_END_Z].top = 179;
m_RectHotSpot[HS_GRAV_END_Z].right = 145;
m_RectHotSpot[HS_GRAV_END_Z].bottom = 184;
//VAR alpha
m_RectHotSpot[HS_VAR_ALPHA].left = 45;
m_RectHotSpot[HS_VAR_ALPHA].top = 346;
m_RectHotSpot[HS_VAR_ALPHA].right = 145;
m_RectHotSpot[HS_VAR_ALPHA].bottom = 352;
//VAR color
m_RectHotSpot[HS_VAR_COLOR].left = 45;
m_RectHotSpot[HS_VAR_COLOR].top = 361;
m_RectHotSpot[HS_VAR_COLOR].right = 145;
m_RectHotSpot[HS_VAR_COLOR].bottom = 367;
//VAR size
m_RectHotSpot[HS_VAR_SIZE].left = 45;
m_RectHotSpot[HS_VAR_SIZE].top = 375;
m_RectHotSpot[HS_VAR_SIZE].right = 145;
m_RectHotSpot[HS_VAR_SIZE].bottom = 381;
//VAR life
m_RectHotSpot[HS_VAR_LIFE].left = 45;
m_RectHotSpot[HS_VAR_LIFE].top = 389;
m_RectHotSpot[HS_VAR_LIFE].right = 145;
m_RectHotSpot[HS_VAR_LIFE].bottom = 396;
//VAR speed
m_RectHotSpot[HS_VAR_SPEED].left = 45;
m_RectHotSpot[HS_VAR_SPEED].top = 405;
m_RectHotSpot[HS_VAR_SPEED].right = 145;
m_RectHotSpot[HS_VAR_SPEED].bottom = 411;
//Burst enable
m_RectHotSpot[HS_BURST].left = 68;
m_RectHotSpot[HS_BURST].top = 222;
m_RectHotSpot[HS_BURST].right = 74;
m_RectHotSpot[HS_BURST].bottom = 229;
//Floor enable
m_RectHotSpot[HS_FLOOR].left = 138;
m_RectHotSpot[HS_FLOOR].top = 246;
m_RectHotSpot[HS_FLOOR].right = 148;
m_RectHotSpot[HS_FLOOR].bottom = 256;
// Texture Cycling on the bitmap itself
m_RectHotSpot[HS_TEXTURE].left = 11;
m_RectHotSpot[HS_TEXTURE].top = 527;
m_RectHotSpot[HS_TEXTURE].right = 44;
m_RectHotSpot[HS_TEXTURE].bottom = 560;
// Moving
m_RectHotSpot[HS_MOVING].left = 139;
m_RectHotSpot[HS_MOVING].top = 235;
m_RectHotSpot[HS_MOVING].right = 146;
m_RectHotSpot[HS_MOVING].bottom = 243;
//Camera Follow Check
m_RectHotSpot[HS_CAMERA].left = 137;
m_RectHotSpot[HS_CAMERA].top = 222;
m_RectHotSpot[HS_CAMERA].right = 147;
m_RectHotSpot[HS_CAMERA].bottom = 229;
//Hide KeyPad b9
m_RectHotSpot[HS_HIDE_KEYPAD].left = 66;
m_RectHotSpot[HS_HIDE_KEYPAD].top = 292;
m_RectHotSpot[HS_HIDE_KEYPAD].right = 75;
m_RectHotSpot[HS_HIDE_KEYPAD].bottom = 301;
//Exit b10
m_RectHotSpot[HS_EXIT].left = 138;
m_RectHotSpot[HS_EXIT].top = 292;
m_RectHotSpot[HS_EXIT].right = 148;
m_RectHotSpot[HS_EXIT].bottom = 301;
//TODO NOT USED YET
m_RectHotSpot[34].left = 45;
m_RectHotSpot[34].top = 434;
m_RectHotSpot[34].right = 145;
m_RectHotSpot[34].bottom = 441;
//Cycle through Presets
m_RectHotSpot[HS_PRESETS].left = 55;
m_RectHotSpot[HS_PRESETS].top = 527;
m_RectHotSpot[HS_PRESETS].right = 90;
m_RectHotSpot[HS_PRESETS].bottom = 560;
//On the Keypad
m_RectHotSpot[HS_ON_PAD].left = 0;
m_RectHotSpot[HS_ON_PAD].top = 0;
m_RectHotSpot[HS_ON_PAD].right = 799;
m_RectHotSpot[HS_ON_PAD].bottom = 599;
}
CHotSpot::~CHotSpot()
{
}
//check to see if the mouse is sitting on a hot spot and return which one
int CHotSpot::OnHotSpot(POINT m_pt)
{
//win32 function PtInRect determines if point is within
//specified rectangle (hotspot)
if ( PtInRect ( &(m_RectHotSpot[HS_THETA]), m_pt ) )
return(HS_THETA);
if ( PtInRect ( &(m_RectHotSpot[HS_BOING]), m_pt ) )
return(HS_BOING);
if ( PtInRect ( &(m_RectHotSpot[HS_GRAV_START_X]), m_pt ) )
return(HS_GRAV_START_X);
if ( PtInRect ( &(m_RectHotSpot[HS_GRAV_END_X]), m_pt ) )
return(HS_GRAV_END_X);
if ( PtInRect ( &(m_RectHotSpot[HS_GRAV_START_Y]), m_pt ) )
return(HS_GRAV_START_Y);
if ( PtInRect ( &(m_RectHotSpot[HS_GRAV_END_Y]), m_pt ) )
return(HS_GRAV_END_Y);
if ( PtInRect ( &(m_RectHotSpot[HS_GRAV_START_Z]), m_pt ) )
return(HS_GRAV_START_Z);
if ( PtInRect ( &(m_RectHotSpot[HS_GRAV_END_Z]), m_pt ) )
return(HS_GRAV_END_Z);
if ( PtInRect ( &(m_RectHotSpot[HS_ALPHA_START]), m_pt ) )
return(HS_ALPHA_START);
if ( PtInRect ( &(m_RectHotSpot[HS_ALPHA_END]), m_pt ) )
return(HS_ALPHA_END);
if ( PtInRect ( &(m_RectHotSpot[HS_RED_START]), m_pt ) )
return(HS_RED_START);
if ( PtInRect ( &(m_RectHotSpot[HS_RED_END]), m_pt ) )
return(HS_RED_END);
if ( PtInRect ( &(m_RectHotSpot[HS_GREEN_START]), m_pt ) )
return(HS_GREEN_START);
if ( PtInRect ( &(m_RectHotSpot[HS_GREEN_END]), m_pt ) )
return(HS_GREEN_END);
if ( PtInRect ( &(m_RectHotSpot[HS_BLUE_START]), m_pt ) )
return(HS_BLUE_START);
if ( PtInRect ( &(m_RectHotSpot[HS_BLUE_END]), m_pt ) )
return(HS_BLUE_END);
if ( PtInRect ( &(m_RectHotSpot[HS_SIZE_START]), m_pt ) )
return(HS_SIZE_START);
if ( PtInRect ( &(m_RectHotSpot[HS_SIZE_END]), m_pt ) )
return(HS_SIZE_END);
if ( PtInRect ( &(m_RectHotSpot[HS_EMMISION]), m_pt ) )
return(HS_EMMISION);
if ( PtInRect ( &(m_RectHotSpot[HS_SPEED]), m_pt ) )
return(HS_SPEED);
if ( PtInRect ( &(m_RectHotSpot[HS_LIFE]), m_pt ) )
return(HS_LIFE);
if ( PtInRect ( &(m_RectHotSpot[HS_VAR_ALPHA]), m_pt ) )
return(HS_VAR_ALPHA);
if ( PtInRect ( &(m_RectHotSpot[HS_VAR_COLOR]), m_pt ) )
return(HS_VAR_COLOR);
if ( PtInRect ( &(m_RectHotSpot[HS_VAR_SIZE]), m_pt ) )
return(HS_VAR_SIZE);
if ( PtInRect ( &(m_RectHotSpot[HS_VAR_LIFE]), m_pt ) )
return(HS_VAR_LIFE);
if ( PtInRect ( &(m_RectHotSpot[HS_VAR_SPEED]), m_pt ) )
return(HS_VAR_SPEED);
if ( PtInRect ( &(m_RectHotSpot[HS_FLOOR]), m_pt ) )
return(HS_FLOOR);
if ( PtInRect ( &(m_RectHotSpot[HS_MOVING]), m_pt ) )
return(HS_MOVING);
//interface specific hotspot
/*
if ( PtInRect ( &(m_RectHotSpot[HS_EXIT]), m_pt ) )
return(HS_EXIT);
if ( PtInRect ( &(m_RectHotSpot[HS_BURST]), m_pt ) )
return(HS_BURST);
if ( PtInRect ( &(m_RectHotSpot[HS_ON_PAD]), m_pt ) )
return(HS_ON_PAD);
if ( PtInRect ( &(m_RectHotSpot[HS_TEXTURE]), m_pt ) )
return(HS_TEXTURE);
if ( PtInRect ( &(m_RectHotSpot[HS_CAMERA]), m_pt ) )
return(HS_CAMERA);
if ( PtInRect ( &(m_RectHotSpot[HS_HIDE_KEYPAD]), m_pt ) )
return(HS_HIDE_KEYPAD);
if ( PtInRect ( &(m_RectHotSpot[HS_EXIT]), m_pt ) )
return(HS_EXIT);
if ( PtInRect ( &(m_RectHotSpot[HS_PRESETS]), m_pt ) )
return(HS_PRESETS);
*/
else return(HS_NOT_ON_SPOT);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -