• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ GossipHello函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: GossipSelectOption

	void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char * EnteredCode)
	{
		if(!plr)
			return;

		Creature *windwatcher = (Creature*)(pObject);
		if (windwatcher == NULL)
			return;

		switch (IntId)
		{
			case 0:
				GossipHello(pObject, plr, true);
				break;

			case 1:
			{
			if(plr == NULL || plr->GetMapMgr() == NULL || plr->GetMapMgr()->GetInterface() == NULL)
				return;
				Creature *whirlwind = plr->GetMapMgr()->GetInterface()->GetCreatureNearestCoords(plr->GetPositionX(), plr->GetPositionY(), plr->GetPositionZ(), 6239);
				if(whirlwind != NULL)
				{
					if(!whirlwind->isAlive())
					{
						whirlwind->Delete();
					}
					else
						return;
				}

				whirlwind = EAS::SpawnCreature(plr, 6239, plr->GetPositionX()+7, plr->GetPositionY()+7, plr->GetPositionZ(), plr->GetOrientation(), 0);
				whirlwind->Despawn(5*60*1000, 0);
			}break;
		}
	}
开发者ID:wow4all,项目名称:wowtbc,代码行数:35,代码来源:Warrior.cpp


示例2: GossipSelectOption

	void GossipSelectOption(Object* pObject, Player* pPlayer, uint32 Id, uint32 IntId, const char * EnteredCode)
	{
		if(pPlayer == NULL || !pObject->IsCreature())
			return;

		switch(IntId)
		{
		case 0:
			{
				GossipHello(pObject, pPlayer, true);
			}break;
		case 1:
			{
				GameObject* Door = pObject->GetMapMgr()->GetInterface()->GetGameObjectForce(120, 1603, 44, 186728);
				if(Door)
				{	
					Door->SetUInt32Value(GAMEOBJECT_STATE, 0);
					Door->SaveState();
					dynamic_cast<TIMEDEVENT*>(TO_CREATURE(pObject)->GetScript())->StartEvent();
				}
			}break;
		}

		pPlayer->Gossip_Complete();
	}	
开发者ID:Tulba,项目名称:wowtbc,代码行数:25,代码来源:TimedEvent.cpp


示例3: GossipSelect

    bool GossipSelect(Player* pPlayer, Creature* pCreature, uint32 sender, uint32 action, std::string code)
    {
        CPlayer* pCPlayer = pPlayer->ToCPlayer();
        pCPlayer->PlayerTalkClass->CloseGossip();

        if (sender == 0)
        {
            if (action == 0)
                GossipHello(pPlayer, pCreature);
            else if (action == 1)
                TeleportPlayerToTeleName(pCPlayer, "tele_mall");
            else if (action == 2)
                TeleportPlayerToTeleName(pCPlayer, "tele_guru");
            else if (action == 3)
                pCPlayer->SendTalentWipeConfirm(pCreature->GetObjectGuid());
            else if (action == 4)
                pCPlayer->SendPetSkillWipeConfirm();
			else if (action == 5)
				TeleportPlayerToTeleName(pCPlayer, "tele_hearth");
        }


        if (!pPlayer->PlayerTalkClass->GetGossipMenu().Empty())
            pPlayer->PlayerTalkClass->SendGossipMenu("Your wish, my law!", pCreature->GetObjectGuid());
        return true;
    }
开发者ID:Lillecarl,项目名称:mangos-classic,代码行数:26,代码来源:npc_teleporter.cpp


示例4: GossipSelectOption

    void GossipSelectOption(Object* pObject, Player* Plr, uint32 Id, uint32 IntId, const char * Code)
    {
        GossipMenu * Menu;
        switch(IntId)
        {
        case 0:     // Return to start
            GossipHello(pObject, Plr, true);
            break;

        //////////////////////
        // Main menu handlers
        /////

        case 1:    // Arena Vendor
            Plr->Gossip_SendPOI(5757, 583, 7, 6, 0, "Arena Vendor");
            Plr->Gossip_Complete();
            break;

        case 2:    // Arena Battlemaster
            Plr->Gossip_SendPOI(5852, 609, 7, 6, 0, "Arena Battlemaster");
            Plr->Gossip_Complete();
            break;

        case 3:    // Black Market
            Plr->Gossip_SendPOI(5919, 569, 7, 6, 0, "Black Market");
            Plr->Gossip_Complete();
            break;

        case 4:    // Exit of Dalaran
            Plr->Gossip_SendPOI(5765, 753, 7, 6, 0, "Exit of dalaran");
            SendQuickMenu(14020);
            break;

        }
    }
开发者ID:AscNHalf,项目名称:AscNHalf,代码行数:35,代码来源:Underbelly_Guard.cpp


示例5: GossipSelectOption

	void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char * EnteredCode)
    {
		Creature *Lump = (Creature*)(pObject);
		if (Lump == NULL)
			return;

		switch (IntId)
		{
		case 0:
			GossipHello(pObject, plr, true);
			break;
		case 1:
			if(plr->GetQuestLogForEntry(9918))
			{
				QuestLogEntry *en = plr->GetQuestLogForEntry(9918);
				if(en && en->GetMobCount(0) < en->GetQuest()->required_mobcount[0])
				{
					uint32 newcount = en->GetMobCount(0) + 1;
					en->SetMobCount(0, newcount);
					en->SendUpdateAddKill(0);
					en->UpdatePlayerFields();
				}
			}
			break;
		}
	}
开发者ID:Chero,项目名称:abcwow,代码行数:26,代码来源:Nagrand.cpp


示例6: GossipSelectOption

    void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char* EnteredCode)
    {
        if (!plr)
            return;

        Creature* Prisoner12 = TO_CREATURE(pObject);
        if (Prisoner12 == nullptr)
            return;

        switch (IntId)
        {
        case 0:
            GossipHello(pObject, plr);
            break;

        case 1:
        {
            QuestLogEntry* en = plr->GetQuestLogForEntry(9164);
            if (en && en->GetMobCount(0) < en->GetQuest()->required_mobcount[0])
            {
                en->SetMobCount(0, en->GetMobCount(0) + 1);
                en->SendUpdateAddKill(0);
                en->UpdatePlayerFields();

                Prisoner12->Despawn(5000, 6 * 60 * 1000);
                Prisoner12->SetStandState(STANDSTATE_STAND);
                Prisoner12->SetEmoteState(7);
                return;
            }
            break;
        }
        }
    }
开发者ID:TheGhostGroup,项目名称:AscEmu,代码行数:33,代码来源:Quest_Ghostlands.cpp


示例7: GossipSelectOption

	void GossipSelectOption(Object * pObject, Player * plr, uint32 Id, uint32 IntId, const char * EnteredCode)
	{
		if(!plr)
			return;

		Creature * general = TO_CREATURE(pObject);
		if (general == NULL)
			return;

		switch (IntId)
		{
			case 0:
				GossipHello(pObject, plr, true);
				break;
 
			case 1:
			{
				Creature * spawncheckcr = plr->GetMapMgr()->GetInterface()->GetCreatureNearestCoords(plr->GetPositionX(), plr->GetPositionY(), plr->GetPositionZ(), 7750);

				if(!spawncheckcr)
				{
					Creature * general = sEAS.SpawnCreature(plr, 7750, -10619, -2997, 28.8, 4, 0);
					general->Despawn(3*60*1000, 0);
				}

				GameObject * spawncheckgobj = plr->GetMapMgr()->GetInterface()->GetGameObjectNearestCoords(plr->GetPositionX(), plr->GetPositionY(), plr->GetPositionZ(), 141980);

				if(!spawncheckgobj)
				{
					GameObject * generalsbox = sEAS.SpawnGameobject(plr, 141980, -10622, -2994, 28.6, 4, 4, 0, 0, 0, 0);
					sEAS.GameobjectDelete(generalsbox, 3*60*1000);
				}
			}
		}
	}
开发者ID:AscNHalf,项目名称:AscNHalf,代码行数:35,代码来源:BlastedLands.cpp


示例8: GossipSelectOption

    void GossipSelectOption(Object* pObject, Player * plr, uint32 Id, uint32 IntId, const char * Code)
    {
		if(pObject->GetTypeId()!=TYPEID_UNIT)
			return;
		
		GossipMenu * Menu;
        switch(IntId)
        {
		case 0:
			GossipHello(pObject, plr, true);
			break;

        case 1:
			{
				objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 1, plr); // Text of status [The Alchemy lab is not quite yet ready, $N. Mar'nah says she is (percentual) percent done with its assembly.$Bhowever.$B$BIf you wold like to help her with that, you will find her inside the inn at the Sun's Reach Harbor.]
				Menu->AddItem( 0, GOSSIP_EXARCH_NASUUN_3, 0);
				Menu->SendTo(plr);
            }break;
		case 2:
			{
				objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 12305, plr);
				Menu->AddItem( 0, GOSSIP_EXARCH_NASUUN_3, 0);
				Menu->SendTo(plr);
            }break;
		}
    }
开发者ID:wow4all,项目名称:wowtbc,代码行数:26,代码来源:Gossip_Shattrath.cpp


示例9: GossipSelectOption

	void GossipSelectOption(ObjectPointer pObject, PlayerPointer plr, uint32 Id, uint32 IntId, const char * EnteredCode)
	{
		if(!plr)
			return;

		CreaturePointer spirit = TO_CREATURE(pObject);
		if (spirit == NULL)
			return;

		switch (IntId)
		{
			case 0:
				GossipHello(pObject, plr, true);
				break;

			case 1:
				{
					QuestLogEntry *en = plr->GetQuestLogForEntry(3520);
					if(en && en->GetMobCount(0) < en->GetQuest()->required_mobcount[0])
					{
						en->SetMobCount(0, en->GetMobCount(0) + 1);
						en->SendUpdateAddKill(0);
						en->UpdatePlayerFields();
					}
					if(!spirit)
						return;

					spirit->Despawn(1, 0);
					return;

				}
		}
	}
开发者ID:Vanj-crew,项目名称:HearthStone-Emu,代码行数:33,代码来源:Tanaris.cpp


示例10: GossipSelectOption

	void GossipSelectOption(Object* pObject, Player* Plr, uint32 Id, uint32 IntId, const char* Code)
	{

		switch(IntId)
		{
			case 0:  
			GossipHello(pObject, Plr);
			return;
				break;
			case 1:
			Plr->CastSpell(Plr, 67834, true);
				break;
			case 2:
			Plr->CastSpell(Plr, 67838, true);
				break;
			case 3:
			Plr->CastSpell(Plr, 67835, true);
				break;
			case 4:
			Plr->CastSpell(Plr, 67836, true);
				break;
			case 5:
			Plr->CastSpell(Plr, 67837, true);
				break;
			case 6:
			Plr->CastSpell(Plr, 68081, true);
				break;
		}
		Plr->Gossip_Complete();
	}
开发者ID:Asandru,项目名称:Script-Land,代码行数:30,代码来源:RandomScripts.cpp


示例11: GossipSelectOption

	void GossipSelectOption(Object* pObject, Player* pPlayer, uint32 Id, uint32 IntId, const char * EnteredCode)
    	{
		if(!pPlayer)
			return;

		Creature *Prisoner1 = (Creature*)(pObject);
		if (Prisoner1 == NULL)
			return;

		switch (IntId)
		{
			case 0:
				GossipHello(pObject, pPlayer, true);
				break;
 
			case 1:
			{
			QuestLogEntry *en = pPlayer->GetQuestLogForEntry(10368);
			if(en && en->GetMobCount(0) < en->GetQuest()->required_mobcount[0])
			{
				en->SetMobCount(0, en->GetMobCount(0) + 1);
				en->SendUpdateAddKill(0);
				en->UpdatePlayerFields();

				if(!Prisoner1)
					return;

				Prisoner1->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "You've freed me! The winds speak to my people one again and grant us their strength. I thank you, stranger.");
				Prisoner1->Despawn(5000, 6*60*1000);
				Prisoner1->SetStandState(STANDSTATE_STAND);
				return;
			}break;
			}
		}
	}
开发者ID:AegisEmu,项目名称:AegisEmu,代码行数:35,代码来源:Hellfire_Peninsula.cpp


示例12: GossipSelectOption

	void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char * EnteredCode)
	{
		if(!plr)
			return;

		Creature *Prisoner32 = (Creature*)(pObject);
		if (Prisoner32 == NULL)
			return;

		switch (IntId)
		{
			case 0:
				GossipHello(pObject, plr, true);
				break;
 
			case 1:
			{
			QuestLogEntry *en = plr->GetQuestLogForEntry(9164);
			if(en && en->GetMobCount(2) < en->GetQuest()->required_mobcount[2])
			{
				en->SetMobCount(2, en->GetMobCount(2) + 1);
				en->SendUpdateAddKill(2);
				en->UpdatePlayerFields();

				if(!Prisoner32)
					return;

				Prisoner32->Despawn(5000, 6*60*1000);
				Prisoner32->SetStandState(STANDSTATE_STAND);
				Prisoner32->SetUInt32Value(UNIT_NPC_EMOTESTATE, 7);
				return;
			}break;
			}
		}
	}
开发者ID:wow4all,项目名称:wowtbc,代码行数:35,代码来源:Ghostlands.cpp


示例13: GossipSelectOption

		void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char* EnteredCode)
		{
			if(!plr)
				return;

			Creature* highchief = TO_CREATURE(pObject);
			if(highchief == NULL)
				return;

			switch(IntId)
			{
				case 0:
					GossipHello(pObject, plr);
					break;

				case 1:
					{
						QuestLogEntry* en = plr->GetQuestLogForEntry(9663);
						if(en && en->GetMobCount(0) < en->GetQuest()->required_mobcount[0])
						{
							en->SetMobCount(0, en->GetMobCount(0) + 1);
							en->SendUpdateAddKill(0);
							en->UpdatePlayerFields();
							return;
						}
						break;
					}
			}
		}
开发者ID:Refuge89,项目名称:Edge-of-Chaos,代码行数:29,代码来源:Quest_BloodmystIsle.cpp


示例14: GossipSelectOption

	void GossipSelectOption(ObjectPointer pObject, PlayerPointer plr, uint32 Id, uint32 IntId, const char * EnteredCode)
	{
		if(!plr)
			return;

		CreaturePointer doctor = TO_CREATURE(pObject);
		if (doctor == NULL)
			return;

		switch (IntId)
		{
			case 0:
				GossipHello(pObject, plr, true);
				break;

			case 1:
			{
				plr->GetItemInterface()->RemoveItemAmt(2799, 1);
				doctor->CastSpell(doctor, dbcSpell.LookupEntry(12380), true);
				if( !plr || !plr->GetMapMgr() || !plr->GetMapMgr()->GetInterface() )
					return;
				CreaturePointer firstenemy = sEAS.SpawnCreature(plr, 1511, -13770.5, -6.79, 42.8, 5.7 , 0);
				firstenemy->GetAIInterface()->MoveTo(-13727.8, -26.2, 46.15, 4.07);
				firstenemy->Despawn(10*60*1000, 0);
			}break;
		}
	}
开发者ID:Vanj-crew,项目名称:HearthStone-Emu,代码行数:27,代码来源:StranglethornVale.cpp


示例15: GossipSelectOption

	void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char * EnteredCode)
	{
		if(!plr)
			return;

		Creature* doctor = TO_CREATURE(pObject);
		if (doctor == NULL)
			return;

		switch (IntId)
		{
			case 0:
				GossipHello(pObject, plr, true);
				break;

			case 1:
			{
				plr->GetItemInterface()->RemoveItemAmt(2799, 1);
				QuestLogEntry *qle = plr->GetQuestLogForEntry(10201);
				if(qle && qle->GetMobCount(0) < qle->GetQuest()->required_mobcount[0])
				{
					qle->SetMobCount(0, qle->GetMobCount(0)+1);
					qle->SendUpdateAddKill(0);
					qle->UpdatePlayerFields();
				}
			}break;
		}
	}
开发者ID:vata,项目名称:wowice,代码行数:28,代码来源:Quest_Terrokar_Forest.cpp


示例16: GossipSelectOption

        void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char* Code)
        {
            if(!pObject->IsCreature())
                return;
            Creature* pCreature = static_cast<Creature*>(pObject);

            GossipMenu* Menu;
            switch(IntId)
            {
                case 0: // Return to start
                    GossipHello(pCreature, plr);
                    break;

                case 1: //Horde
                    {
                        objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 4715, plr);
                        Menu->SendTo(plr);

                        QuestLogEntry* qle = plr->GetQuestLogForEntry(6002);
                        if(qle == NULL)
                            return;

                        if(qle->CanBeFinished())
                            return;

                        qle->Complete();
                        qle->SendQuestComplete();
                        qle->UpdatePlayerFields();

                        pCreature->Emote(EMOTE_ONESHOT_WAVE);
                        pCreature->Despawn(240000, 0);
                    }
                    break;

                case 2: //Ally
                    {
                        objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 4715, plr);
                        Menu->SendTo(plr);

                        QuestLogEntry* qle = plr->GetQuestLogForEntry(6001);
                        if(qle == NULL)
                            return;

                        if(qle->CanBeFinished())
                            return;

                        qle->Complete();
                        qle->SendQuestComplete();
                        qle->UpdatePlayerFields();

                        pCreature->Emote(EMOTE_ONESHOT_WAVE);
                        pCreature->Despawn(240000, 0);
                    }
                    break;

            }
        }
开发者ID:Nupper,项目名称:AscEmu,代码行数:57,代码来源:Quest_Druid.cpp


示例17: GossipSelectOption

    void GossipSelectOption(Object* pObject, Player * plr, uint32 Id, uint32 IntId, const char * Code)
    {
		Creature * pCreature = (pObject->GetTypeId()==TYPEID_UNIT)?((Creature*)pObject):NULL;
		if(pObject->GetTypeId()!=TYPEID_UNIT)
			return;
		
		GossipMenu * Menu;
        switch(IntId)
        {
		case 0: // Return to start
			GossipHello(pCreature, plr, true);
			break;

        case 1: //Horde
			{
				objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 4715, plr);
				Menu->SendTo(plr);

				QuestLogEntry *qle = plr->GetQuestLogForEntry(6002);
				if(qle == NULL)
				return;

				if(qle->GetMobCount(0) != 0)
				return;

				qle->SetMobCount(0, 1);
				qle->SendUpdateAddKill(0);
				qle->UpdatePlayerFields();

				pCreature->Emote(EMOTE_ONESHOT_WAVE);
				pCreature->Despawn(2000,0);
			}
			break;

		case 2: //Ally
			{
				objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 4715, plr);
				Menu->SendTo(plr);

				QuestLogEntry *qle = plr->GetQuestLogForEntry(6001);
				if(qle == NULL)
				return;

				if(qle->GetMobCount(0) != 0)
				return;

				qle->SetMobCount(0, 1);
				qle->SendUpdateAddKill(0);
				qle->UpdatePlayerFields();

				pCreature->Emote(EMOTE_ONESHOT_WAVE);
				pCreature->Despawn(2000,0);
			}
			break;

		}
	}
开发者ID:wow4all,项目名称:wowtbc,代码行数:57,代码来源:Druid.cpp


示例18: GossipSelectOption

		void GossipSelectOption(Object* pObject, Player* plr, uint32 Id, uint32 IntId, const char* Code)
		{
			if(!pObject->IsCreature())
				return;

			switch(IntId)
			{
				case 1:
					GossipHello(pObject, plr);
					break;
			}
		}
开发者ID:Antares84,项目名称:arcemu,代码行数:12,代码来源:Gossip_DarkmoonFaire.cpp


示例19: GossipSelectOption

    void GossipSelectOption(Object* pObject, Player * plr, uint32 Id, uint32 IntId, const char * Code)
    {
		if(pObject->GetTypeId()!=TYPEID_UNIT)
			return;
		
		switch(IntId)
        {
        case 1:
			GossipHello(pObject, plr, true);
        break;
		}
    }
开发者ID:wow4all,项目名称:wowtbc,代码行数:12,代码来源:Gossip_DarkmoonFaire.cpp


示例20: GossipSelectOption

 void GossipSelectOption(Object* pObject, Player* pPlayer, uint32 Id, uint32 IntId, const char* Code)
 {
     switch (IntId)
     {
         case 0:
             GossipHello(pObject, pPlayer);
             break;
         case 1:
             pPlayer->SafeTeleport(1, 0, 9951.52f, 2280.32f, 1341.39f, 0);
             break;
         case 2:
             pPlayer->SafeTeleport(1, 0, 4247.74f, 745.879f, -24.2967f, 4.36996f);
             break;
     }
 }
开发者ID:AriDEV,项目名称:AscEmu,代码行数:15,代码来源:Instance_BlackfathomDeeps.cpp



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ GotoDlgCtrl函数代码示例发布时间:2022-05-30
下一篇:
C++ GoodIter函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap