吾爱尚玩资源基地

标题: wow私服7290最稳定的传送宝石精简公开+WLK传送地点 [打印本页]

作者: admin    时间: 2016-4-19 22:59
标题: wow私服7290最稳定的传送宝石精简公开+WLK传送地点
#include "precompiled.h"#include "sc_gossip.h"
#include "Player.h"
#include "GossipDef.h"
#include "../../../../shared/Database/DatabaseEnv.h"
#include "Opcodes.h"



bool GossipHello_npc_teleport(Player *player, Creature *_Creature)
{
        player->ADD_GOSSIP_ITEM( 1, " |cff8000FF【世界竞技中心】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 12);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【世界主城传送】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 1);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【燃烧远征传送】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 2);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【巫妖王传送点】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 10);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【初级副本传送】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 3);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【中级副本传送】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 4);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【团队副本传送】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 5);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【外域五人副本】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 6);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【外域团队副本】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 7);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【北极副本传送】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 11);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【世界战场传送】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 8);
        player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF【附加特殊功能】|CFF009933 ",            1, GOSSIP_ACTION_INFO_DEF + 9);
        player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
        return true;
}

void SendDefaultMenu_npc_teleport(Player *player, Creature *_Creature, uint32 action)
{
        switch(action) {
                // 世界竞技中心
        case GOSSIP_ACTION_INFO_DEF + 12 :
                player->TeleportTo(0,-13204,276,30,3.5);
                break;
                // 世界主城
        case GOSSIP_ACTION_INFO_DEF + 1 :
                if(player->getRace() == 1 || player->getRace() == 3 || player->getRace() == 4 || player->getRace() == 7||player->getRace() ==11)
                {
                        player->ADD_GOSSIP_ITEM( 2, " |cff8000FF攻打 奥格瑞玛|CFF009933 ", 2, GOSSIP_ACTION_INFO_DEF + 5);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF联盟 暴风城|CFF009933 ",   2, GOSSIP_ACTION_INFO_DEF + 1);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF联盟 铁炉堡|CFF009933 ",   2, GOSSIP_ACTION_INFO_DEF + 2);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF联盟 达纳苏斯|CFF009933 ", 2, GOSSIP_ACTION_INFO_DEF + 3);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF联盟 艾克索达|CFF009933 ", 2, GOSSIP_ACTION_INFO_DEF + 4);
                } else {             // 部落
                        player->ADD_GOSSIP_ITEM( 2, " |cff8000FF攻打 暴风城|CFF009933 ",   2, GOSSIP_ACTION_INFO_DEF + 1);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF部落 奥格瑞玛|CFF009933 ", 2, GOSSIP_ACTION_INFO_DEF + 5);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF部落 雷霆崖|CFF009933 ",   2, GOSSIP_ACTION_INFO_DEF + 6);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF部落 幽暗城|CFF009933 ",   2, GOSSIP_ACTION_INFO_DEF + 7);
                        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF部落 银月城|CFF009933 ",   2, GOSSIP_ACTION_INFO_DEF + 8);
                }
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF中立 棘齿城|CFF009933 ",       2, GOSSIP_ACTION_INFO_DEF + 9);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF中立 藏宝海湾|CFF009933 ",     2, GOSSIP_ACTION_INFO_DEF + 10);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF中立 冬泉谷|CFF009933 ",       2, GOSSIP_ACTION_INFO_DEF + 11);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF中立 加基森|CFF009933 ",       2, GOSSIP_ACTION_INFO_DEF + 12);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ",    2, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 外域主城
        case GOSSIP_ACTION_INFO_DEF + 2 :

                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF黑暗之门|CFF009933 ",            3, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF沙塔斯城|CFF009933 ",            3, GOSSIP_ACTION_INFO_DEF + 6);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF永歌森林|CFF009933 ",            3, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF海加尔峰|CFF009933 ",            3, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF青草平原|CFF009933 ",            3, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF翠叶森林|CFF009933 ",            3, GOSSIP_ACTION_INFO_DEF + 5);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF哈兰|CFF009933 ",                3, GOSSIP_ACTION_INFO_DEF + 7);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF风暴尖塔|CFF009933 ",            3, GOSSIP_ACTION_INFO_DEF + 8);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ",        3, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 初级副本
        case GOSSIP_ACTION_INFO_DEF + 3 :
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[14]怒焰裂谷|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[19]死亡矿井|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[22]哀嚎洞穴|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[24]影牙城堡|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[26]黑暗深渊|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 5);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[27]暴风城监狱|CFF009933 ",   4, GOSSIP_ACTION_INFO_DEF + 6);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[31]剃刀沼泽|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 7);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[33]诺莫瑞根|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 8);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[40]血色修道院|CFF009933 ",   4, GOSSIP_ACTION_INFO_DEF + 9);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[42]剃刀高地|CFF009933 ",     4, GOSSIP_ACTION_INFO_DEF + 10);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[45]奥达曼|CFF009933 ",       4, GOSSIP_ACTION_INFO_DEF + 11);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ",    4, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 中级副本
        case GOSSIP_ACTION_INFO_DEF + 4 :
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[46]祖尔法拉克|CFF009933 ",       5, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[49]马拉顿|CFF009933 ",           5, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[53]失落的神庙|CFF009933 ",       5, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[57]黑石深渊|CFF009933 ",         5, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[60]通灵学院|CFF009933 ",         5, GOSSIP_ACTION_INFO_DEF + 5);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[60]厄运[北区]|CFF009933 ",     5, GOSSIP_ACTION_INFO_DEF + 6);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[60]厄运[东区]|CFF009933 ",     5, GOSSIP_ACTION_INFO_DEF + 7);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[60]厄运[西区]|CFF009933 ",     5, GOSSIP_ACTION_INFO_DEF + 8);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[60]斯坦索姆|CFF009933 ",         5, GOSSIP_ACTION_INFO_DEF + 9);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[60]黑石塔下|CFF009933 ",           5, GOSSIP_ACTION_INFO_DEF + 10);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ",        5, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 高级副本
        case GOSSIP_ACTION_INFO_DEF + 5 :
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]溶火之心|CFF009933 ",         6, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]黑石塔|CFF009933 ",           6, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]祖尔格拉布|CFF009933 ",       6, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]黑翼之巢|CFF009933 ",         6, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]安其拉神庙|CFF009933 ",       6, GOSSIP_ACTION_INFO_DEF + 5);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]安其拉废墟|CFF009933 ",       6, GOSSIP_ACTION_INFO_DEF + 6);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]奥妮克希亚的巢穴|CFF009933 ", 6, GOSSIP_ACTION_INFO_DEF + 7);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]纳克萨玛斯|CFF009933 ",       6, GOSSIP_ACTION_INFO_DEF + 8);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]冰龙巢穴|CFF009933 ",         6, GOSSIP_ACTION_INFO_DEF + 9);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]祖阿曼|CFF009933 ",           6, GOSSIP_ACTION_INFO_DEF + 10);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ",        6, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 外域副本A
        case GOSSIP_ACTION_INFO_DEF + 6 :
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]暴风城超级监狱|CFF009933 ", 7, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]卡拉赞|CFF009933 ",         7, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]遗忘之井|CFF009933 ",        7, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]鬼魂之地|CFF009933 ",       7, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]地狱火城墙|CFF009933 ",     7, GOSSIP_ACTION_INFO_DEF + 5);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]风暴要塞|CFF009933 ",       7, GOSSIP_ACTION_INFO_DEF + 6);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]暗影迷宫|CFF009933 ",         7, GOSSIP_ACTION_INFO_DEF + 7);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]黑暗神殿|CFF009933 ",       7, GOSSIP_ACTION_INFO_DEF + 8);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]赞格沼泽|CFF009933 ",       7, GOSSIP_ACTION_INFO_DEF + 9);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]黑色沼泽|CFF009933 ",       7, GOSSIP_ACTION_INFO_DEF + 10);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF[团]毒蛇神殿|CFF009933 ",       7, GOSSIP_ACTION_INFO_DEF + 11);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单 ",        7, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 外域副本B
        case GOSSIP_ACTION_INFO_DEF + 7 :
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF破碎大厅|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF鲜血熔炉|CFF009933 ",         8, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF生态船|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF禁魔监狱|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF能源舰|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 5);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF凤凰大厅|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 6);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF奴隶围栏|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 7);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF蒸汽地窟|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 8);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF幽暗沼泽|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 9);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF格鲁尔的巢穴|CFF009933 ",   8, GOSSIP_ACTION_INFO_DEF + 10);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF玛瑟里顿的巢穴|CFF009933 ", 8, GOSSIP_ACTION_INFO_DEF + 11);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF太阳之井高地|CFF009933 ",   8, GOSSIP_ACTION_INFO_DEF + 12);
                player->ADD_GOSSIP_ITEM( 0, " |CFF0000FF魔导师平台|CFF009933 ",       8, GOSSIP_ACTION_INFO_DEF + 13);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ",        8, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 四大战场
        case GOSSIP_ACTION_INFO_DEF + 8 :
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF奥特兰战场|CFF009933 ",     9, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF战歌峡谷|CFF009933 ",       9, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF阿拉希战场|CFF009933 ",     9, GOSSIP_ACTION_INFO_DEF + 4);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ", 9, GOSSIP_ACTION_INFO_DEF + 99);

                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
                // 附加功能
        case GOSSIP_ACTION_INFO_DEF + 9 :
                player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF版本说明|CFF009933 ",       10, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF个人银行|CFF009933 ",       10, GOSSIP_ACTION_INFO_DEF + 2);
                player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF装备修复|CFF009933 ",       10, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF开飞行点|CFF009933 ",       10, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 1, " |CFF0000FF地图全开|CFF009933 ",       10, GOSSIP_ACTION_INFO_DEF + 5);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ", 10, GOSSIP_ACTION_INFO_DEF + 99);
                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
        case GOSSIP_ACTION_INFO_DEF + 10 :
        player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF黑暗堡[DK出生地]|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 8);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF肖拉查盆地|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 3);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF北风苔原|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 4);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF龙骨荒野|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 5);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF祖尔德拉克|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 6);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF暴风之颠|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 7);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF寒冰皇冠|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF尖啸海岸|CFF009933 ",       11, GOSSIP_ACTION_INFO_DEF + 2);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ", 11, GOSSIP_ACTION_INFO_DEF + 99);
                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
        case GOSSIP_ACTION_INFO_DEF + 11 :
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF北极副本|CFF009933 ",       12, GOSSIP_ACTION_INFO_DEF + 1);
                player->ADD_GOSSIP_ITEM( 2, " |CFF0000FF蓝龙巢穴|CFF009933 ",       12, GOSSIP_ACTION_INFO_DEF + 2);

                player->ADD_GOSSIP_ITEM( 7, " |cff8000FF返回上一级菜单|CFF009933 ", 12, GOSSIP_ACTION_INFO_DEF + 99);
                player->SEND_GOSSIP_MENU(999999,_Creature->GetGUID());
                break;
        }
}

bool GossipSelect_npc_teleport(Player *player, Creature *_Creature, uint32 sender, uint32 action )
{
        switch(sender) {
                // 主选单
          case 1 :
                  SendDefaultMenu_npc_teleport(player, _Creature, action);
                  break;
                  // 各大主城
          case 2 :
                  switch(action) {
                          // 暴风城 统一格式说明:(MapID, X, Y, Z, 0);

          case GOSSIP_ACTION_INFO_DEF + 1 :
                  player->TeleportTo(0,-8829,626,96,4);
                  break;
                  // 铁炉堡
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(0,-4948,-921,504,5.3);

                  break;
                  // 达纳苏斯
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(1,9951,2319,1340,1.6);

                  break;
                  // 艾克索达
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(530, -3944, -11620, -136,5);

                  break;
                  // 奥格瑞玛
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(1,1541,-4435,13,3);

                  break;
                  // 雷霆崖
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(1,-1265,76,129,3);


                  break;
                  // 幽暗城
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(0,1607,239,-50,1);

                  break;
                  // 新月城
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(530, 9687, -7434, 17,1);

                  break;
                  // 棘齿城
          case GOSSIP_ACTION_INFO_DEF + 9 :

                  player->TeleportTo(1,-977,-3788,6,0);

                  break;
                  // 藏宝海湾
          case GOSSIP_ACTION_INFO_DEF + 10 :

                  player->TeleportTo(0,-14406,425,10,4);

                  break;
                  // 冬泉谷
          case GOSSIP_ACTION_INFO_DEF + 11 :

                  player->TeleportTo(1,6706,-4647,723,1);

                  break;
                  // 加基森
          case GOSSIP_ACTION_INFO_DEF + 12 :

                  player->TeleportTo(1,-7135,-3787,10,6);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 外域主城
          case 3 :

                  switch(action) {
                          // 黑暗之门 统一格式说明:(MapID, X, Y, Z, 0);
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(530,-246.600006,946.000000,84.400002,0);

                  break;
                  // 永歌森林
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(530,9336.900391,-7278.399902,13.600000,0);

                  break;
                  // 海加尔山
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(534,5070.084473,-1791.984497,1320.995483,0);

                  break;
                  // 青草平原
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(169,-2674.500000,-2275.800049,148.092743,0);

                  break;
                  // 翠叶森林
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(169,2737.508057,-3318.579590,101.882820,0);

                  break;
                  // 沙塔斯城
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(530,-1889,5433,-11,0);

                  break;
                  // 哈兰
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(530,-1567,7959,-21,0);

                  break;
                  // 风暴尖塔
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(530,4151,3041,339,0);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 初级副本
          case 4:

                  switch(action) {
                          // [14]怒焰裂谷 统一格式说明:(MapID, X, Y, Z, 0);
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(389,2.024650,-10.021000,-16.187500,0);

                  break;
                  // [19]死亡矿井
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(36,-16.4,-383.07,61.78,0);

                  break;
                  // [22]哀嚎洞穴
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(43,-161.841995,133.266998,-73.866203,0);

                  break;
                  // [24]影牙城堡
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(33,-228.19,2110.56,76.89,0);

                  break;
                  // [26]黑暗深渊
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(48,-150.367004,102.995003,-40.555801,0);

                  break;
                  // [27]暴风城监狱
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(34,48.29,0.45,-16.14,0);

                  break;
                  // [31]剃刀沼泽
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(47,1943,1544,82,0);

                  break;
                  // [33]诺莫瑞根
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(90,-332.562988,-3.445,-152.845993,0);

                  break;
                  // [40]血色修道院
          case GOSSIP_ACTION_INFO_DEF + 9 :

                  player->TeleportTo(189,855.903992,1321.939941,18.673000,0);

                  break;
                  // [42]剃刀高地
          case GOSSIP_ACTION_INFO_DEF + 10 :

                  player->TeleportTo(129,2593.209961,1109.459961,51.093300,0);

                  break;
                  // [45]奥达曼
          case GOSSIP_ACTION_INFO_DEF + 11 :

                  player->TeleportTo(70,-227.529007,45.009800,-46.019600,0);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 中级副本
          case 5:

                  switch(action) {
                          // [46]祖尔法拉克 统一格式说明:(MapID, X, Y, Z, 0);
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(209,1213,841,8.9,0);

                  break;
                  // [49]玛拉顿
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(349,1012.700012,-459.317993,-43.547100,0);

                  break;
                  // [53]失落的神庙
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(109,-313.369995,99.955399,-131.848999,0);

                  break;
                  // [57]黑石深渊
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(230,456.928986,34.927700,-69.388100,0);

                  break;
                  // [60]通灵学院
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(289,199,126,135,0);

                  break;
                  // [60]厄运之槌 (北区)
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(429,255.164001,-17.024200,-2.560600,0);

                  break;
                  // [60]厄运之槌 (东区)
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(429,46.24,-155.53,-2.71349,0);

                  break;
                  // [60]厄运之槌 (西区)
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(429,32.722599,159.417007,-3.470170,0);

                  break;
                  // [60]斯坦索姆
          case GOSSIP_ACTION_INFO_DEF + 9 :

                  player->TeleportTo(329,3392,-3379,143,0);

                  break;
                  // [60]黑石塔下
          case GOSSIP_ACTION_INFO_DEF + 10 :

                  player->TeleportTo(229,78.19,-227.63,49.72,0);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 团队副本
          case 6:
                  switch(action) {
                          // [团]溶火之心 统一格式说明:(MapID, X, Y, Z, 0);
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(409,1089.601685,-470.190247,-106.413055,0);

                  break;
                  // [团]黑石塔上
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(229,78.339836,-227.793518,49.7103,0);

                  break;
                  // [团]祖尔格拉布
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(309,-11916,-1251.469971,92.32,0);

                  break;
                  // [团]黑翼之巢
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(469,-7674.470215,-1108.380005,396.649994,0);

                  break;
                  // [团]安其拉神庙
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(531,-8212.002930,2034.474854,129.141342,0);

                  break;
                  // [团]安其拉废墟
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(509,-8443.475586,1518.648560,31.906958,0);

                  break;
                  // [团]奥妮克希亚的巢穴
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(249,30.010290,-58.840508,-5.325367,0);

                  break;
                  // [团]纳克萨玛斯
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(533,3005.87,-3435.01,293.882,0);

                  break;
                  // [团]冰龙巢穴
          case GOSSIP_ACTION_INFO_DEF + 9 :

                  player->TeleportTo(568,122,1769,45,0,0);


                  break;
                  //祖阿曼
          case GOSSIP_ACTION_INFO_DEF + 10 :

                  player->TeleportTo(568,122,1769,45,0,0);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 外域副本A
          case 7 :

                  switch(action) {
                          // 暴风城超级监狱 统一格式说明:(MapID, X, Y, Z, 0);
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(0,-8644.160156,595.669983,95.699997,0);

                  break;
                  // 卡拉赞
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(532, -11107.950195, -2002.060059, 49.889999, 0);

                  break;
                  // 遗忘之井
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(0, -11068.07313, -1811.069946, 52.820000, 0);

                  break;
                  // 鬼魂之地
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(530, 6851.197266, -7993.672852, 192.292496, 0);

                  break;
                  // 地狱火堡垒
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(543, -1355.817261, 1646.834595, 68.447365, 0);

                  break;
                  // 风暴要塞
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(530, 3087.556885, 1387.229980, 185.037415,0);

                  break;
                  // 奥金顿
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(555, 2.164014, 0.402381, -1.127880, 0);

                  break;
                  // 黑暗神庙
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(530, -3562.800049, 247.600006, 42.896927, 0);

                  break;
                  // 赞格沼泽
          case GOSSIP_ACTION_INFO_DEF + 9 :

                  player->TeleportTo(530, 919.007629, 6854.861816, -66.432899, 0);

                  break;
                  // 黑色沼泽
          case GOSSIP_ACTION_INFO_DEF + 10 :

                  player->TeleportTo(269, -2095.298584, 7125.536133, 34.588596, 0);

                  break;
                  // 盘牙洞穴
          case GOSSIP_ACTION_INFO_DEF + 11 :

                  player->TeleportTo(548, 29.142296, -57.074600, -71.733269, 0);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;

                  // 外域副本B
          case 8 :

                  switch(action) {
                          // 破碎大厅 统一格式说明:(MapID, X, Y, Z, 0);
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(540, -41.000000, -22.000000, -14.000000, 0);

                  break;
                  // 血熔炉
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(542, -3.000000, 11.000000, -45.000000, 0);

                  break;
                  // 波塔尼卡
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(553, 40.000000, -28.600000, -1.100000,0);

                  break;
                  // 亚克崔兹
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(552, -1.200000, 0.000000, -0.200000, 0);

                  break;
                  // 麦克那尔
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(554, -28.900000, 0.700000, -1.800000, 0);

                  break;
                  // 凤凰大厅
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(550, -6.800000, -0.900000, -2.400000, 0);

                  break;
                  // 奴隶监狱
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(547, 123.146225, -122.687210, -0.446336, 0);

                  break;
                  // 蒸汽洞窟
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(545, -7.500000, 5.900000, -4.300000, 0);

                  break;
                  // 毒牙沼泽
          case GOSSIP_ACTION_INFO_DEF + 9 :

                  player->TeleportTo(546, 14.913731, -19.914341, -2.755679, 0);

                  break;
                  // 格鲁尔的巢穴
          case GOSSIP_ACTION_INFO_DEF + 10 :

                  player->TeleportTo(530, 3543.437012, 5079.009766, 0.952552, 0);

                  break;
                  // 玛瑟里顿的巢穴
          case GOSSIP_ACTION_INFO_DEF + 11 :

                  player->TeleportTo(544, 188.414261, 29.327892, 67.934464, 0);

                  break;
                  // 太阳之井高地
          case GOSSIP_ACTION_INFO_DEF + 12 :

                  player->TeleportTo(530, 12564.911133, -6775.376465, 15.091839, 3.091994);

                  break;
                  // 魔导师平台
          case GOSSIP_ACTION_INFO_DEF + 13 :

                  player->TeleportTo(530, 12887.391602, -7327.203613, 65.490295, 4.389481);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 四大战场
          case 9 :

                  switch(action) {
                  // 奥特兰战场(部落)
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(30,390.553680,-283.560547,-42.987301,3.135666);

                  break;
                  // 战歌峡谷(部落)
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(489,1123.168823,1462.474976,315.564148,3.464511);

                  break;
                  // 阿拉希战场(部落)
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(529,855.156128,828.636108,-57.707348,2.812707);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 附加功能
          case 10 :
                  switch(action) {
                          // 版本说明
          case GOSSIP_ACTION_INFO_DEF + 1 :
                              player->GetSession()->SendAreaTriggerMessage("解除限制QQ:xxxxxxx");
                                  player->GetSession()->SendAreaTriggerMessage("服务器版本:巫妖王之怒单机体验版");

                        player->CLOSE_GOSSIP_MENU();
            break;
                  // 个人银行
          case GOSSIP_ACTION_INFO_DEF + 2 :
                  player->GetSession()->SendShowBank(player->GetGUID());
                  player->CLOSE_GOSSIP_MENU();
                  break;
                  // 装备修复
          case GOSSIP_ACTION_INFO_DEF + 3 :
                  player->DurabilityRepairAll(true,0,0);
                  player->GetSession()->SendAreaTriggerMessage("你的全部装备修理完毕");
                  player->CLOSE_GOSSIP_MENU();
                  break;
                  //开飞行点
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  for (uint8 i=0; i<8; i++)
                  { player->SetTaxiCheater(true); }
                  player->GetSession()->SendAreaTriggerMessage("你的飞行点已全部打开");
                  player->CLOSE_GOSSIP_MENU();

                  break;
                  //开地图
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  for (uint8 i=0; i<64; i++)
                          player->SetFlag(PLAYER_EXPLORED_ZONES_1+i,0xFFFFFFFF);
                  player->GetSession()->SendAreaTriggerMessage("你的地图已全开");
                  player->CLOSE_GOSSIP_MENU();
                  break;

                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;

                  }
                  break;
          case 11 :

                  switch(action) {
                  // 肖拉查盆地
          case GOSSIP_ACTION_INFO_DEF + 3 :

                  player->TeleportTo(571,5562,5738,-64,1);

                  break;
                  // 北风苔原
          case GOSSIP_ACTION_INFO_DEF + 4 :

                  player->TeleportTo(571,3272,5279,42,2);

                  break;
                  // 龙骨荒野
          case GOSSIP_ACTION_INFO_DEF + 5 :

                  player->TeleportTo(571,3541,275,55,5);

                  break;
                  // 祖尔德拉克
          case GOSSIP_ACTION_INFO_DEF + 6 :

                  player->TeleportTo(571,5444,-1213,257,1);

                  break;
                  // 暴风之颠
          case GOSSIP_ACTION_INFO_DEF + 7 :

                  player->TeleportTo(571,7881,-1700,1287,0);

                  break;
                  // 寒冰皇冠
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(571,5916,2130,650,0.5);

                  break;
                  // 尖啸海岸
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(571,1038,-4921,19,0);

                  break;
                  // 尖啸海岸
          case GOSSIP_ACTION_INFO_DEF + 8 :

                  player->TeleportTo(609,2370,-5654,446,0.6);

                  break;
                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 附加功能

                  case 12 :

                  switch(action) {
                          // 北极副本 统一格式说明:(MapID, X, Y, Z, 0);
          case GOSSIP_ACTION_INFO_DEF + 1 :

                  player->TeleportTo(574,108,-40,120,1);

                  break;
                  // 蓝龙巢穴
          case GOSSIP_ACTION_INFO_DEF + 2 :

                  player->TeleportTo(576,174,-4,-16,1);

                  break;

                  // 返回
          case GOSSIP_ACTION_INFO_DEF + 99 :
                  GossipHello_npc_teleport(player,_Creature);
                  break;
                  }
                  break;
                  // 附加功能
        }
        return true;
}

/*******************************************************
* 传送员结束
*******************************************************/

/*******************************************************
* AddSC
*******************************************************/

void AddSC_npc_teleport()
{
        Script *newscript;

        newscript = new Script;
        newscript->Name="npc_teleport";
        newscript->pGossipHello          = &GossipHello_npc_teleport;
        newscript->pGossipSelect         = &GossipSelect_npc_teleport;
        //newscript->GetAI = GetAI_npc_teleport;
        newscript->RegisterSelf();


作者: 爱上你的人    时间: 2016-11-25 04:35
小白一个 顶一下,吾爱尚玩免费服务端下载!




欢迎光临 吾爱尚玩资源基地 (http://bbs.523play.com/) Powered by Discuz! X3.4