⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hotspot.cpp

📁 粒子系统编辑器 包括了很多特效
💻 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 + -