您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ AIInterface类代码示例

51自学网 2021-06-03 12:03:39
  C++
这篇教程C++ AIInterface类代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中AIInterface的典型用法代码示例。如果您正苦于以下问题:C++ AIInterface类的具体用法?C++ AIInterface怎么用?C++ AIInterface使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。

在下文中一共展示了AIInterface类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: SystemMessage

bool ChatHandler::HandleWPStandStateCommand(const char* args, WorldSession *m_session){    uint64 guid = m_session->GetPlayer()->GetSelection();    if (guid == 0)    {        SystemMessage(m_session, "No selection.");        return true;    }    if(GET_TYPE_FROM_GUID(guid) != HIGHGUID_TYPE_WAYPOINT)    {        SystemMessage(m_session, "You should select a Waypoint.");        return true;    }    Player* pPlayer = m_session->GetPlayer();    AIInterface* ai = pPlayer->waypointunit;    if(!ai || !ai->GetUnit())    {        SystemMessage(m_session, "Invalid Creature, please select another one.");        return true;    }    uint32 StandState = 0;    std::stringstream ss;    uint32 wpid = GUID_LOPART(guid);    if(wpid)    {        WayPoint* wp = ai->getWayPoint(wpid);        if(wp)        {            char* pBackwards = strtok((char*)args, " ");            uint32 Backwards = (pBackwards)? atoi(pBackwards) : 0;            char* pStandState = strtok(NULL, " ");            StandState = (pStandState)? atoi(pStandState) : 0;            StandState = StandState > 8 ? 0 : StandState;            if(Backwards)            {                if(wp->backwardInfo == NULL)                    wp->backwardInfo = new ConditionalData();                wp->backwardInfo->StandState = StandState;                ss << "Backward StandState for Waypoint " << wpid << " is now " << StandState;            }            else            {                if(wp->forwardInfo == NULL)                    wp->forwardInfo = new ConditionalData();                wp->forwardInfo->StandState = StandState;                ss << "Forward StandState for Waypoint " << wpid << " is now " << StandState;            }            //save wp            ai->saveWayPoints();        }        SystemMessage(m_session,  ss.str().c_str());    }    else        SystemMessage(m_session, "Invalid Waypoint.");    return true;}
开发者ID:Sandshroud,项目名称:Sandshroud-Prodigy,代码行数:60,


示例2: SystemMessage

bool ChatHandler::HandleWPShowCommand(const char* args, WorldSession *m_session){	uint64 guid = m_session->GetPlayer()->GetSelection();	if (guid == 0)	{		SystemMessage(m_session, "No selection.");		return true;	}	Creature* pCreature = m_session->GetPlayer()->GetMapMgr()->GetCreature(GET_LOWGUID_PART(guid));	if(!pCreature)	{		SystemMessage(m_session, "You should select a Creature.");		return true;	}	if( pCreature->m_spawn == NULL )	{		SystemMessage(m_session, "You cannot add waypoints to a creature that is not saved.");		return true;	}	char* pBackwards = strtok((char*)args, " ");	bool Backwards = (pBackwards)? ((atoi(pBackwards)>0)?true:false) : false;	AIInterface* ai = pCreature->GetAIInterface();	Player* pPlayer = m_session->GetPlayer();	if(pPlayer->waypointunit != ai)	{		if(ai->m_WayPointsShowing == true) 		{			SystemMessage(m_session, "Some one else is also Viewing this Creatures WayPoints.");			SystemMessage(m_session, "Viewing WayPoints at the same time as some one else can cause undesireble results.");			return true;		}		if(pPlayer->waypointunit != NULL)		{			pPlayer->waypointunit->hideWayPoints(pPlayer);		}		pPlayer->waypointunit = ai;		ai->showWayPoints(pPlayer,Backwards);		ai->m_WayPointsShowBackwards = Backwards;	}	else	{		if(ai->m_WayPointsShowing == true) 		{			SystemMessage(m_session, "Waypoints Already Showing.");		}		else			ai->showWayPoints(m_session->GetPlayer(),Backwards);	}	SystemMessage(m_session, "Showing waypoints for creature %u", pCreature->GetSQL_id());	return true;}
开发者ID:Ballwinkle,项目名称:Ascent_NG,代码行数:59,


示例3: SystemMessage

bool ChatHandler::HandleWPInfoCommand(const char* args, WorldSession *m_session){	uint64 guid = m_session->GetPlayer()->GetSelection();	if (guid == 0)	{		SystemMessage(m_session, "No selection.");		return true;	}	if(GET_TYPE_FROM_GUID(guid) != HIGHGUID_TYPE_WAYPOINT)	{		SystemMessage(m_session, "You should select a Waypoint.");		return true;	}	Player* pPlayer = m_session->GetPlayer();	AIInterface* ai = pPlayer->waypointunit;	if(!ai || !ai->GetUnit())	{		SystemMessage(m_session, "Invalid Creature, please select another one.");		return true;	}	std::stringstream ss;	uint32 wpid = GUID_LOPART(guid);	if((wpid > 0) && (wpid <= ai->GetWayPointsCount()))	{		WayPoint* wp = ai->getWayPoint(wpid);		if(wp)		{			ss << "Waypoint Number " << wp->id << ":/n";			ss << "WaitTime: " << wp->waittime << "/n";			ss << "Flags: " << wp->flags;			if(wp->flags == 768)				ss << " (Fly)/n";			else if(wp->flags == 256)				ss << " (Run)/n";			else				ss << " (Walk)/n";			ss << "Backwards/n";			ss << "   emoteid: " << wp->backwardemoteid << "/n";			ss << "   oneshot: " << ((wp->backwardemoteoneshot == 1)? "Yes" : "No") << "/n";			ss << "   skinid: " << wp->backwardskinid << "/n";			ss << "Forwards/n";			ss << "   emoteid: " << wp->forwardemoteid << "/n";			ss << "   oneshot: " << ((wp->forwardemoteoneshot == 1)? "Yes" : "No") << "/n";			ss << "   skinid: " << wp->forwardskinid << "/n";			SendMultilineMessage(m_session, ss.str().c_str());		}	}	else	{	   SystemMessage(m_session,  "Invalid Waypoint.");		return true;	}	return true;}
开发者ID:AwkwardDev,项目名称:ascent_classic,代码行数:57,


示例4: SystemMessage

bool ChatHandler::HandleWPFlagsCommand(const char* args, WorldSession* m_session){	uint64 guid = m_session->GetPlayer()->GetSelection();	if(guid == 0)	{		SystemMessage(m_session, "No selection.");		return true;	}	if(GET_TYPE_FROM_GUID(guid) != HIGHGUID_TYPE_WAYPOINT)	{		SystemMessage(m_session, "You should select a Waypoint.");		return true;	}	Player* pPlayer = m_session->GetPlayer();	AIInterface* ai = pPlayer->waypointunit;	if(!ai || !ai->GetUnit())	{		SystemMessage(m_session, "Invalid Creature, please select another one.");		return true;	}	std::stringstream ss;	uint32 wpid = Arcemu::Util::GUID_LOPART(guid);	if(wpid)	{		WayPoint* wp = ai->getWayPoint(wpid);		if(wp == NULL)		{			SystemMessage(m_session, "Invalid Waypoint.");			return true;		}		uint32 flags = wp->flags;		char* pNewFlags = strtok((char*)args, " ");		uint32 NewFlags = (pNewFlags) ? atoi(pNewFlags) : 0;		wp->flags = NewFlags;		//save wp		ai->saveWayPoints();		ss << "Waypoint " << wpid << " flags changed from " << flags << " to " << NewFlags;		SystemMessage(m_session, ss.str().c_str());	}	else	{		SystemMessage(m_session, "Invalid Waypoint.");		return true;	}	return true;}
开发者ID:Thomas195,项目名称:arcemu,代码行数:53,



注:本文中的AIInterface类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ AInventory类代码示例
C++ AIFilePicker类代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。