客户端之获取离我最近的目标函数
单机社区 9月前

//获取离我最近的目标
TActor* GameScene::GetRecentTarget(AttackTargetType type/* = attMon*/, bool noBOBO, bool noNPC, bool noStone)
{
	TActor* result = nullptr;
	TActor* cur = nullptr;
	int disMin = 99999999;
	int disX = 0;
	int disY = 0;
	//不找NPC 不找宝宝 不找卫士12 不找死亡目标 不找自己  //m_wAppearance71弓箭护卫
	for (int i = (int)m_ActorList.size() - 1; i >= 0; i--)
	{
		cur = m_ActorList[i];
		if (!isEnemy(cur, noBOBO, noNPC, noStone))
		{
			continue;
		}
		int btRace = cur->m_btRace;
		if (type == attMon)
		{
			if (btRace == RC_PLAYOBJECT || cur->m_nMaster != TInt64() || cur->IsNameWith("练功师"))
			{
				continue;
			}
		}
		if (type == attHum && btRace != RC_PLAYOBJECT)
		{
			continue;
		}
		disX = cur->m_nCurrX - g_MySelf->m_nCurrX;
		disY = cur->m_nCurrY - g_MySelf->m_nCurrY;
		if ((disX == 0) && (disY == 0))
		{
			continue;
		}
		int dis = GetDistance(cur->m_nCurrX, cur->m_nCurrY, g_MySelf->m_nCurrX, g_MySelf->m_nCurrY);
		if (dis < disMin)
		{
			//logIt("%d", dis);
			result = cur;
			disMin = dis;
		}
	}
	return result;
}
最新回复 (0)
返回
站点介绍
关闭

特别说明:

本站所有资源来自于网络收集,一般问题、请站内发帖咨询!!!资源求购、或技术性问题、可提交:在线工单、咨询。

站内项目:
1、资源分享等
2、软件分享等
3、教程分享等
4、源码分享等
5、如果你也是资源爱好者,可通过以下方式加入我们。
传奇单机资源社区交流

客服工作时间:8:00~22:00
站长推荐