亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? gameobject.cpp

?? 一個類似坦克大戰(zhàn)的小小游戲
?? CPP
字號:
// Object.cpp: implementation of the CObject class.
//
//////////////////////////////////////////////////////////////////////


//#include "MapEdit.h"
#include "GameObject.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif



//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CGameObject::CGameObject()
{
	m_objType = OT_UnDefined;
	m_nHeight = 0;
	m_nWidth = 0;
	m_nX = 0;
	m_nY = 0;
	m_nTextureIndex = -1;
	m_nIndex = -1;
	m_bActive = false;
//	m_pTexture = NULL;	// DELETE by vigame, 2007-7-8
	m_nHp = 10000;	// To set to a biggish value, so we "can't" destory it.
}

CGameObject::~CGameObject()
{
	//	SAFE_DELETE(m_pTexture);	// DELETED by vigame, 2007-7-8, we release texture at ~CObjectTexture()	
	m_pTexture = NULL;
}

// Overload the operator //////////////////////////////////////////////

bool CGameObject::operator <(const CGameObject &otherObject) const
{
	return ((m_nY + m_nHeight) < (otherObject.m_nY + otherObject.m_nHeight));
}

bool CGameObject::operator >(const CGameObject &otherObject) const
{
	return ((m_nY + m_nHeight) > (otherObject.m_nY +otherObject.m_nHeight));
}

// Get Size ///////////////////////////////////////////////////////////

int CGameObject::GetHeight()
{
	return m_nHeight;
}

int CGameObject::GetWidth()
{
	return m_nWidth;
}

// Draw /////////////////////////////////////////////////////////////////////

void CGameObject::DrawSprite(LPD3DXSPRITE &pSprite, CONST RECT *pSrcRect, CONST D3DXVECTOR3 *pPosition)
{
	if (NULL != pSprite)
	{
		if (SUCCEEDED(pSprite->Begin(D3DXSPRITE_ALPHABLEND)))
		{
			pSprite->Draw(m_pTexture, pSrcRect, NULL, pPosition, 0xffffffff);
			pSprite->End();
		}
	}
}

void CGameObject::Draw(LPDIRECT3DTEXTURE9 &pTexture, LPDIRECT3DDEVICE9 &pDevice, int x, int y)
{
	Draw(m_pTexture, pDevice, x, y, m_nWidth, m_nHeight, D3DCOLOR_ARGB(255, 255, 255, 255));
}

void CGameObject::Draw(LPDIRECT3DDEVICE9 &pDevice)
{
	Draw(m_pTexture, pDevice, m_nX, m_nY, m_nWidth, m_nHeight, D3DCOLOR_ARGB(255, 255, 255, 255));
}

void CGameObject::Draw(LPDIRECT3DDEVICE9 &pDevice, int x, int y)
{
	Draw(m_pTexture, pDevice, x, y, m_nWidth, m_nHeight, D3DCOLOR_ARGB(255, 255, 255, 255));
}

void CGameObject::Draw(LPDIRECT3DTEXTURE9 &pTexture, LPDIRECT3DDEVICE9 &pDevice,	
					   int x, int y, int width, int height, DWORD diffuse)
{
	if ((NULL != pTexture) && (NULL != pDevice))
	{
		CUSTOMVERTEX vertex[4];
		memset(vertex, 0, sizeof(vertex));

		// Set picture position
		vertex[0].x = (float)x;
		vertex[0].y = (float)y;
		vertex[0].z = 0.5f;
		vertex[1].x = (float)(x + width);
		vertex[1].y = (float)y;
		vertex[1].z = 0.5f;
		vertex[2].x = (float)(x + width);
		vertex[2].y = (float)(y + height);
		vertex[2].z = 0.5f;
		vertex[3].x = (float)x;
		vertex[3].y = (float)(y + height);
		vertex[3].z = 0.5f;

		// Set rhw
		vertex[0].rhw = 0.5f;
		vertex[1].rhw = 0.5f;
		vertex[2].rhw = 0.5f;
		vertex[3].rhw = 0.5f;

		// Set diffuse;
		vertex[0].diffuse = diffuse;
		vertex[1].diffuse = diffuse;
		vertex[2].diffuse = diffuse;
		vertex[3].diffuse = diffuse;

		// Set UV position
		vertex[1].tu = 1.0f;
		vertex[2].tu = 1.0f;
		vertex[2].tv = 1.0f;
		vertex[3].tv = 1.0f;

		// Draw object
		pDevice->SetTexture(0 , pTexture);
		pDevice->SetFVF(D3DFVF_CUSTOMVERTEX);
		pDevice->DrawPrimitiveUP(D3DPT_TRIANGLEFAN, 2, (LPVOID)vertex , sizeof(CUSTOMVERTEX));
	}
}

// Hit test ////////////////////////////////////////////////////////////

BOOL CGameObject::HitTest(CGameObject &inObject)
{
	RECT rect1, rect2, destRect;
	if (OT_Bonus != m_objType)
	{
		rect1.left = m_nX + m_nWidth / 4;
		rect1.right = m_nX + (m_nWidth / 4) *3 ;
		rect1.top = m_nY + (m_nHeight / 4) * 3;
		rect1.bottom = m_nY + m_nHeight;
	}
	else
	{
		rect1.left = m_nX;
		rect1.right = m_nX + m_nWidth;
		rect1.top = m_nY;
		rect1.bottom = m_nY + m_nHeight;
	}
	
	rect2.left = inObject.m_nX;
	rect2.right = inObject.m_nX + inObject.m_nWidth;
	rect2.top = inObject.m_nY;
	rect2.bottom = inObject.m_nY + inObject.m_nHeight;

	// If the object is fense, we should reduce the size in Collision Detection
	// If the object is computer ship, we should change its size a little
	if (OT_Boat_Computer == inObject.m_objType)
	{
		rect2.top = rect2.top + inObject.m_nHeight / 4;
	}
	else if (OT_Island == inObject.m_objType)
	{
		rect2.top = rect2.top + inObject.m_nHeight / 2;
		rect2.left += 30;
		rect2.right -= 30;
	}
	else if (OT_Reef == inObject.m_objType)
	{
		rect2.top += 10;
		rect2.left += 6;
		rect2.right -= 6;
	}
	else
	{
		rect2.top = rect2.top + (inObject.m_nHeight / 4) * 3;
		rect2.left += 6;
		rect2.right -= 6;
	}

	return ::IntersectRect(&destRect, &rect1, &rect2);
}

// Create texture //////////////////////////////////////////////////////
/* DELETED by vigame, 2007-7-8
BOOL CGameObject::CreateTexture(LPDIRECT3DDEVICE9 pDevice, LPCTSTR inFileName, DWORD inColorKey)
{
	if (OT_UnDefined == m_objType)
	{
		return FALSE;
	}

	// To figure out the frames we should create
	int nFrameCount = 0;
	switch (m_objType)
	{
	case OT_Boat_Player:
		{
			nFrameCount = 12;
			break;
		}
	default:
		{
			nFrameCount = 1;
			break;
		}
	}

	m_pTexture = new CObjectTexture [nFrameCount];

	// Create texture now
	int i;
	for (i = 0; i < nFrameCount; i++)
	{
		m_pTexture[i].Create(pDevice, inFileName, inColorKey);
	}

	// Get the size of texture
	m_nWidth = m_pTexture[0].GetWidth();
	m_nHeight = m_pTexture[0].GetHeight();

	return TRUE;
}

*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区精品字幕| 欧美日免费三级在线| 美国十次了思思久久精品导航| 亚洲自拍都市欧美小说| 国产精品第五页| 亚洲免费av观看| 日韩一区欧美二区| 男人的天堂亚洲一区| 国产在线观看免费一区| 丁香婷婷综合色啪| 色婷婷久久一区二区三区麻豆| 91麻豆国产精品久久| 欧美精品日韩综合在线| 欧美精品一区二区三区视频| 国产欧美一区二区在线| 久久女同互慰一区二区三区| 一区二区三区四区精品在线视频 | 精品视频一区二区不卡| 国产成人免费高清| 91国产精品成人| 国产偷国产偷精品高清尤物| 亚洲老司机在线| 国内精品写真在线观看| 在线影院国内精品| 国产亚洲1区2区3区| 一区二区在线免费| 国产成人精品1024| 精品国产成人在线影院 | 亚洲国产日产av| 免费成人在线网站| 欧美中文字幕一区| 国产精品女上位| 国产a视频精品免费观看| 色爱区综合激月婷婷| 精品乱人伦小说| 日本女人一区二区三区| 99久免费精品视频在线观看| 精品日韩在线一区| 麻豆精品视频在线观看免费 | 欧美久久一区二区| 亚洲影视在线播放| 欧美精品高清视频| 免费在线观看精品| 久久精品人人爽人人爽| 蜜臀av一级做a爰片久久| 在线视频综合导航| 亚洲一区二区三区国产| 精品视频一区二区三区免费| av在线一区二区三区| 精品久久久久久久久久久久久久久| 日韩一区精品字幕| 日韩一区二区在线观看视频 | 成人小视频在线观看| 久久久影视传媒| 成人一区二区视频| 亚洲图片欧美一区| 成年人国产精品| 亚洲午夜视频在线| 欧美一区二区三区精品| 从欧美一区二区三区| 日韩美女视频一区| 日韩一区二区三区在线| av电影天堂一区二区在线 | 色综合天天性综合| 美女久久久精品| 玉足女爽爽91| 国产精品情趣视频| 欧美精品亚洲一区二区在线播放| 精品一区二区三区的国产在线播放 | 在线观看不卡视频| 国产成人综合网| 久久超碰97人人做人人爱| 亚洲三级电影网站| 精品伊人久久久久7777人| 日韩色在线观看| 91免费看`日韩一区二区| 国产自产2019最新不卡| 午夜私人影院久久久久| 亚洲柠檬福利资源导航| 亚洲国产精品二十页| 日韩美女主播在线视频一区二区三区 | 一个色在线综合| 国产色爱av资源综合区| 欧美精品一区二| 欧美性生活影院| 理论电影国产精品| 久久99精品视频| 蜜臀va亚洲va欧美va天堂| 日韩av电影天堂| 麻豆精品在线播放| 成人性生交大片免费看中文网站| 国产精品综合在线视频| www.性欧美| 7777精品伊人久久久大香线蕉的| 欧美一级理论片| 欧美国产成人精品| 一区二区三区四区不卡视频| 一区二区三区免费观看| 日韩中文字幕亚洲一区二区va在线 | 国产风韵犹存在线视精品| 五月婷婷欧美视频| 丝袜亚洲另类欧美综合| 狠狠色丁香婷婷综合| 色噜噜偷拍精品综合在线| 欧美三区在线观看| 久久久久久久久99精品| 亚洲黄色免费电影| 国产69精品久久久久毛片| 欧美在线小视频| 欧美国产1区2区| 五月天激情小说综合| 成人性色生活片| 日韩一级二级三级| 亚洲免费av网站| 激情六月婷婷综合| 这里只有精品99re| 日韩美女啊v在线免费观看| 国产一区二区三区日韩| 欧美一区三区四区| 午夜精品久久久久久久99水蜜桃| 国产成人免费9x9x人网站视频| 7777精品伊人久久久大香线蕉经典版下载 | 中文子幕无线码一区tr| 精品一区二区三区久久久| 欧美日韩亚洲综合一区| 亚洲一区av在线| av影院午夜一区| 国产精品超碰97尤物18| 99精品视频免费在线观看| 日韩精品在线看片z| 麻豆免费精品视频| 精品99久久久久久| 国产suv精品一区二区6| 国产精品免费视频一区| 91丨porny丨首页| 一区二区三区资源| 在线成人av影院| 国内精品国产成人国产三级粉色 | 亚洲一区在线视频| 欧美亚洲高清一区| 日本不卡高清视频| 国产午夜精品美女毛片视频| 国产精品18久久久久久久久久久久 | 日韩手机在线导航| voyeur盗摄精品| 一区二区三区波多野结衣在线观看 | 日本韩国欧美一区| 婷婷中文字幕一区三区| 欧美肥胖老妇做爰| 亚洲免费观看高清在线观看| 成人av电影免费观看| 国产精品另类一区| 欧美三级蜜桃2在线观看| 日本不卡一区二区| 亚洲摸摸操操av| 26uuu精品一区二区三区四区在线| 风间由美一区二区三区在线观看| 亚洲日本电影在线| 欧美一级国产精品| 日本黄色一区二区| 91婷婷韩国欧美一区二区| 香蕉影视欧美成人| 中文字幕精品一区二区三区精品| 欧美亚洲国产一区二区三区 | 日韩色在线观看| 在线观看日韩精品| 在线亚洲精品福利网址导航| 国产成人精品免费视频网站| 韩国一区二区在线观看| 亚洲美女淫视频| 亚洲黄色免费电影| 亚洲日本乱码在线观看| 欧美极品aⅴ影院| 国产精品乱人伦| 欧美国产日韩一二三区| 国产日韩欧美精品在线| 久久青草欧美一区二区三区| 久久伊99综合婷婷久久伊| 26uuu精品一区二区在线观看| 欧美va在线播放| www激情久久| 中文字幕亚洲一区二区av在线 | 欧美专区亚洲专区| 欧美日韩一级片网站| 久久国内精品自在自线400部| 欧美激情综合在线| 日本一区二区三区视频视频| 久久久久一区二区三区四区| 国产午夜一区二区三区| 亚洲欧洲精品一区二区三区不卡| 亚洲欧美国产77777| 夜夜亚洲天天久久| 国产麻豆精品在线观看| 成人午夜激情在线| 51精品久久久久久久蜜臀| 久久色视频免费观看| 亚洲一区二区中文在线| 蜜桃91丨九色丨蝌蚪91桃色| 9i在线看片成人免费| 欧美一级日韩一级|