GIPGHDNY

导航

TeleportStone.lua --传送宝石

  1 --[[作者信息:
  2     超级炉石  (Teleport stone)
  3     作者QQ:247321453
  4     作者Email:247321453@qq.com
  5     修改日期:2014-3-12
  6     功能:除了传送,还有召唤NPC,其他更多功能
  7 ]]--
  8 
  9 print(">>Script: Teleport stone.")
 10 --54844
 11 --菜单所有者 --默认炉石
 12 local itemEntry    =6948
 13 --阵营
 14 local TEAM_ALLIANCE=0
 15 local TEAM_HORDE=1
 16 --菜单号
 17 local MMENU=1
 18 local TPMENU=2
 19 local GMMENU=3
 20 local ENCMENU=4
 21 --菜单类型
 22 local FUNC=1
 23 local MENU=2
 24 local TP=3
 25 local ENC=4
 26 
 27 --GOSSIP_ICON 菜单图标
 28 local GOSSIP_ICON_CHAT            = 0                    -- 对话
 29 local GOSSIP_ICON_VENDOR          = 1                    -- 货物
 30 local GOSSIP_ICON_TAXI            = 2                    -- 传送
 31 local GOSSIP_ICON_TRAINER         = 3                    -- 训练(书)
 32 local GOSSIP_ICON_INTERACT_1      = 4                    -- 复活
 33 local GOSSIP_ICON_INTERACT_2      = 5                    -- 设为我的家
 34 local GOSSIP_ICON_MONEY_BAG         = 6                    -- 钱袋
 35 local GOSSIP_ICON_TALK            = 7                    -- 申请 说话+黑色点
 36 local GOSSIP_ICON_TABARD          = 8                    -- 工会(战袍)
 37 local GOSSIP_ICON_BATTLE          = 9                    -- 加入战场 双剑交叉
 38 local GOSSIP_ICON_DOT             = 10                   -- 加入战场
 39 
 40 --装备位置
 41 local EQUIPMENT_SLOT_HEAD         = 0--头部
 42 local EQUIPMENT_SLOT_NECK         = 1--颈部
 43 local EQUIPMENT_SLOT_SHOULDERS    = 2--肩部
 44 local EQUIPMENT_SLOT_BODY         = 3--身体
 45 local EQUIPMENT_SLOT_CHEST        = 4--胸甲
 46 local EQUIPMENT_SLOT_WAIST        = 5--腰部
 47 local EQUIPMENT_SLOT_LEGS         = 6--腿部
 48 local EQUIPMENT_SLOT_FEET         = 7--脚部
 49 local EQUIPMENT_SLOT_WRISTS       = 8--手腕
 50 local EQUIPMENT_SLOT_HANDS        = 9--手套
 51 local EQUIPMENT_SLOT_FINGER1      = 10--手指1
 52 local EQUIPMENT_SLOT_FINGER2      = 11--手指2
 53 local EQUIPMENT_SLOT_TRINKET1     = 12--饰品1
 54 local EQUIPMENT_SLOT_TRINKET2     = 13--饰品2
 55 local EQUIPMENT_SLOT_BACK         = 14--背部
 56 local EQUIPMENT_SLOT_MAINHAND     = 15--主手
 57 local EQUIPMENT_SLOT_OFFHAND      = 16--副手
 58 local EQUIPMENT_SLOT_RANGED       = 17--远程
 59 local EQUIPMENT_SLOT_TABARD       = 18--徽章
 60 
 61 local Instances={--副本表
 62         {249,0},{249,1},{269,1},{309,0},
 63         {409,0},{469,0},
 64         {509,0},{531,0},{532,0},{533,0},{533,1},
 65         {534,0},{540,1},{542,1},{543,1},{544,0},{545,1},{546,1},{547,1},{548,0},
 66         {550,0},{552,1},{553,1},{554,1},{555,1},{556,1},{557,1},{558,1},
 67         {560,1},{564,0},{565,0},{568,0},
 68         {574,1},{575,1},{576,1},{578,1},
 69         {580,0},{585,1},{595,1},{598,1},{599,1},
 70         {600,1},{601,1},{602,1},{603,0},{603,1},{604,1},{608,1},
 71         {615,0},{615,1},{616,0},{616,1},{619,1},{624,0},{624,1},
 72         {631,0},{631,1},{631,2},{631,3},{632,1},
 73         {649,0},{649,1},{649,2},{649,3},--十字军的试炼
 74         {650,1},{658,1},{668,1},
 75         {724,0},{724,1},{724,2},{724,3},
 76 }
 77 --随身NPC
 78 local ST={
 79     TIME=45,--45秒
 80     NPCID1=190098,
 81     NPCID2=190099,
 82     --[guid]=lasttime,
 83 }
 84 
 85 function ST.SummonNPC(player, entry)
 86     local guid=player:GetGUIDLow()
 87     local lastTime,nowTime=(ST[guid] or 0),os.time()
 88 
 89     if(player:IsInCombat())then
 90         player:SendAreaTriggerMessage("不能在战斗中召唤。")
 91     else
 92         if(nowTime>lastTime)then
 93             local map=player:GetMap()
 94             if(map)then
 95                 player:SendAreaTriggerMessage(map:GetName())
 96                 local x,y,z=player:GetX()+1,player:GetY(),player:GetZ()
 97                 local nz=map:GetHeight(x,y)
 98                 if(nz>z and nz<(z+5))then
 99                     z=nz
100                 end
101                 local NPC=player:SpawnCreature(entry,x,y,z,0, 3,ST.TIME*1000)
102                 if(NPC)then
103                     player:SendAreaTriggerMessage("召唤随身商人成功。")
104                     NPC:SetFacingToObject(player)
105                     NPC:SendUnitSay(string.format("%s,你好,需要点什么?",player:GetName()),0)
106                     lastTime=os.time()+ST.TIME
107                 else
108                     player:SendAreaTriggerMessage("召唤随身商人失败。")
109                 end
110             end
111         else
112             player:SendAreaTriggerMessage("召唤NPC不能太频繁。")
113         end
114     end
115     ST[guid]=lastTime
116 end
117 
118 function ST.SummonGNPC(player)--召唤商人
119     ST.SummonNPC(player, ST.NPCID2)
120 end
121 
122 function ST.SummonENPC(player)--召唤附魔
123     ST.SummonNPC(player, ST.NPCID1)
124 end
125 
126 local function ResetPlayer(player, flag, text)
127     player:SetAtLoginFlag(flag)
128     player:SendAreaTriggerMessage("你需要重新登录角色,才能修改"..text.."")
129     player:SendAreaTriggerMessage("正在返回选择角色菜单")
130     player:LogoutPlayer(true)
131 end
132 
133 local Stone={
134     GetTimeASString=function(player)
135         local inGameTime=player:GetTotalPlayedTime()
136         local days=math.modf(inGameTime/(24*3600))
137         local hours=math.modf((inGameTime-(days*24*3600))/3600)
138         local mins=math.modf((inGameTime-(days*24*3600+hours*3600))/60)
139         return days..""..hours..""..mins..""
140     end,
141     GoHome=function(player)--回到家
142         player:CastSpell(player,8690,true)    
143         player:ResetSpellCooldown(8690, true)    
144         player:SendBroadcastMessage("已经回到家")
145     end,
146 
147     SetHome=function(player)--设置当前位置为家
148         local x,y,z,mapId,areaId=player:GetX(),player:GetY(),player:GetZ(),player:GetMapId(),player:GetAreaId() 
149         player:SetBindPoint(x,y,z,mapId,areaId)
150         player:SendBroadcastMessage("已经设置当前位置为家")
151     end,
152 
153     OpenBank=function(player)--打开银行
154         player:SendShowBank(player)
155         player:SendBroadcastMessage("已经打开银行")
156     end,
157 
158     WeakOut=function(player)--移除复活虚弱
159         if(player:HasAura(15007))then
160             player:RemoveAura(15007)    --移除复活虚弱
161             player:SetHealth(player:GetMaxHealth())
162             --self:RemoveAllAuras()    --移除所有状态
163             player:SendBroadcastMessage("你的身上的复活虚弱状态已经被移除。")
164         else
165             player:SendBroadcastMessage("你的身上没有复活虚弱状态。")
166         end
167     end,
168 
169     OutCombat=function(player)--脱离战斗
170         if(player:IsInCombat())then
171             player:ClearInCombat()
172             player:SendAreaTriggerMessage("你已经脱离战斗")
173             player:SendBroadcastMessage("你已经脱离战斗。")
174         else
175             player:SendAreaTriggerMessage("你并没有在战斗。")
176             player:SendBroadcastMessage("你并没有在战斗。")
177         end
178     end,
179 
180     WSkillsToMax=function(player)--技能熟练度
181         player:AdvanceSkillsToMax()
182         player:SendBroadcastMessage("当前技能熟练度已经达到最大值")
183     end,
184     MaxHealth=function(player)    --回复生命
185         player:SetHealth(player:GetMaxHealth())
186         player:SendBroadcastMessage("生命值已经回满。")
187     end,
188     ResetTalents = function(player)--重置天赋
189         player:ResetTalents(true)--免费
190         player:SendBroadcastMessage("已经重置天赋")
191     end,
192 
193     ResetPetTalents=function(player)--重置宠物天赋
194         player:ResetPetTalents()
195         player:SendBroadcastMessage("已经重置宠物天赋")
196     end,
197 
198     ResetAllCD=function(player)--刷新冷却
199         player:ResetAllCooldowns()
200         player:SendBroadcastMessage("已经重置物品和技能冷却")
201     end,
202 
203     RepairAll=function(player)--修理装备
204         player:DurabilityRepairAll(true,1,false)
205         player:SendBroadcastMessage("修理完所有装备。")
206     end,
207 
208     SaveToDB=function(player)--保存数据
209         player:SaveToDB()
210         player:SendAreaTriggerMessage("保存数据完成")
211     end,
212 
213     Logout=function(player)--返回选择角色
214         player:SendAreaTriggerMessage("正在返回选择角色菜单")
215         player:LogoutPlayer(true)
216     end,
217 
218     LogoutNosave=function(player)--不保存数据,返回选择角色
219         player:SendAreaTriggerMessage("正在返回选择角色菜单")
220         player:LogoutPlayer(false)
221     end,
222     UnBind=function(player)    --副本解绑
223         local nowmap=player:GetMapId()
224         for k, v in pairs(Instances) do 
225             local mapid=v[1]
226             if(mapid~=nowmap)then
227                 player:UnbindInstance(v[1],v[2])
228             else
229                 player:SendBroadcastMessage("你所在的当前副本无法解除绑定。")
230             end
231         end
232         player:SendAreaTriggerMessage("已经解除所有副本的绑定")
233         player:SendBroadcastMessage("已经解除所有副本的绑定。")
234     end,    
235     --[[登录标志
236     AT_LOGIN_RENAME            = 0x01,
237     AT_LOGIN_RESET_SPELLS      = 0x02,
238     AT_LOGIN_RESET_TALENTS     = 0x04,
239     AT_LOGIN_CUSTOMIZE         = 0x08,
240     AT_LOGIN_RESET_PET_TALENTS = 0x10,
241     AT_LOGIN_FIRST             = 0x20,
242     AT_LOGIN_CHANGE_FACTION    = 0x40,
243     AT_LOGIN_CHANGE_RACE       = 0x80
244     ]]--
245     ResetName=function(player,code)--修改名字
246         local target=player:GetSelection()
247         if(target and (target:GetTypeId()==player:GetTypeId()))then
248             ResetPlayer(target, 0x1, "名字")
249         else
250             player:SendAreaTriggerMessage("请选中一个玩家。")
251         end
252     end,
253     ResetFace=function(player)
254         ResetPlayer(player, 0x8, "外貌")
255     end,
256     ResetRace=function(player)
257         ResetPlayer(player, 0x80, "种族")
258     end,
259     ResetFaction=function(player)
260         ResetPlayer(player, 0x40, "阵营")
261     end,
262     ResetSpell=function(player)
263         ResetPlayer(player, 0x2, "所有法术")
264     end,
265 }
266 
267 local Menu={
268     [MMENU]={--主菜单
269         {FUNC, "传送回家",         Stone.GoHome,    GOSSIP_ICON_CHAT,        false,"是否传送回|cFFF0F000家|r ?"},
270         {FUNC, "记录位置",         Stone.SetHome,    GOSSIP_ICON_INTERACT_1, false,"是否设置当前位置为|cFFF0F000家|r ?"},
271         {FUNC, "在线银行",         Stone.OpenBank,    GOSSIP_ICON_MONEY_BAG},
272         {MENU, "地图传送",         TPMENU,            GOSSIP_ICON_BATTLE},
273         {MENU, "其他功能",        MMENU+0x10,        GOSSIP_ICON_INTERACT_1},
274         {MENU, "双重附魔",        ENCMENU,        GOSSIP_ICON_TABARD},
275         {FUNC, "解除副本绑定",     Stone.UnBind,    GOSSIP_ICON_INTERACT_1, false,"是否解除所有副本绑定 ?"},
276         {FUNC, "召唤随身商人",     ST.SummonGNPC,    GOSSIP_ICON_MONEY_BAG},
277         --{FUNC, "附魔大师NPC",    ST.SummonENPC,    GOSSIP_ICON_TABARD},
278         {MENU, "职业技能训练师",MMENU+0x20,        GOSSIP_ICON_BATTLE},
279         {MENU, "专业技能训练师",MMENU+0x30,        GOSSIP_ICON_BATTLE},
280         {FUNC, "强制脱离战斗",     Stone.OutCombat,GOSSIP_ICON_CHAT},
281     },
282     [MMENU+0x10]={--其他功能
283         {FUNC, "解除虚弱",         Stone.WeakOut,        GOSSIP_ICON_INTERACT_1, false,"是否解除虚弱,并回复生命 ?"},
284         {FUNC, "重置天赋"    ,    Stone.ResetTalents,    GOSSIP_ICON_TRAINER,    false,"确认重置天赋 ?"},
285         {FUNC, "武器熟练度满值",Stone.WSkillsToMax,    GOSSIP_ICON_TRAINER,    false,"确认把武器熟练度加满 ?"},
286         {FUNC, "修理所有装备",    Stone.RepairAll,    GOSSIP_ICON_VENDOR,        false,"需要花费金币修理装备 ?"},
287         {FUNC, "修改名字",        Stone.ResetName,    GOSSIP_ICON_CHAT,        false,"是否更改名字?\n|cFFFFFF00需要重新登录才能修改。|r"},
288         {FUNC, "修改外貌",        Stone.ResetFace,    GOSSIP_ICON_CHAT,        false,"是否更改外貌?\n|cFFFFFF00需要重新登录才能修改。|r"},
289         {FUNC, "修改种族",        Stone.ResetRace,    GOSSIP_ICON_CHAT,        false,"是否更改种族?\n|cFFFFFF00需要重新登录才能修改。|r"},
290         {FUNC, "修改阵营",        Stone.ResetFaction,    GOSSIP_ICON_CHAT,        false,"是否更改阵营?\n|cFFFFFF00需要重新登录才能修改。|r"},
291         {FUNC, "遗忘所有法术",    Stone.ResetSpell,    GOSSIP_ICON_CHAT,        false,"是否遗忘所有法术?\n|cFFFFFF00需要重新登录才能生效。|r"},
292     },
293     [GMMENU]={--GM菜单
294         {FUNC, "重置所有冷却",    Stone.ResetAllCD,        GOSSIP_ICON_INTERACT_1,    false,"确认重置所有冷却 ?"},
295         {FUNC, "保存角色",         Stone.SaveToDB,            GOSSIP_ICON_INTERACT_1},
296         {FUNC, "返回选择角色",     Stone.Logout,            GOSSIP_ICON_INTERACT_1,    false,"返回选择角色界面 ?"},
297         {FUNC, "|cFF800000不保存角色|r",Stone.LogoutNosave,GOSSIP_ICON_INTERACT_1,false,"|cFFFF0000不保存角色,并返回选择角色界面 ?|r"},
298     },
299     [TPMENU]={--传送菜单
300         {MENU, "主要城市",            TPMENU+0x10,GOSSIP_ICON_BATTLE},
301         {MENU, "东部王国",            TPMENU+0x20,GOSSIP_ICON_BATTLE},
302         {MENU, "卡利姆多",            TPMENU+0x30,GOSSIP_ICON_BATTLE},
303         {MENU, "外域",                TPMENU+0x40,GOSSIP_ICON_BATTLE},
304         {MENU, "诺森德",                TPMENU+0x50,GOSSIP_ICON_BATTLE},
305         {MENU, "经典旧世界地下城",    TPMENU+0x60,GOSSIP_ICON_BATTLE},
306         {MENU, "燃烧的远征地下城",    TPMENU+0x70,GOSSIP_ICON_BATTLE},
307         {MENU, "巫妖王之怒地下城",    TPMENU+0x80,GOSSIP_ICON_BATTLE},
308         {MENU, "团队地下城",            TPMENU+0x90,GOSSIP_ICON_BATTLE},
309         {MENU, "风景传送",            TPMENU+0xa0,GOSSIP_ICON_BATTLE},
310         {MENU, "其他传送",            TPMENU+0xb0,GOSSIP_ICON_BATTLE},
311         {MENU, "野外BOSS传送",        TPMENU+0xc0,GOSSIP_ICON_BATTLE},
312     },
313     [TPMENU+0x10]={--主要城市
314         {TP, "暴风城", 0, -8842.09, 626.358, 94.0867, 3.61363,TEAM_ALLIANCE},
315         {TP, "达纳苏斯", 1, 9869.91, 2493.58, 1315.88, 2.78897,TEAM_ALLIANCE},
316         {TP, "铁炉堡", 0, -4900.47, -962.585, 501.455, 5.40538,TEAM_ALLIANCE},
317         {TP, "埃索达", 530, -3864.92, -11643.7, -137.644, 5.50862,TEAM_ALLIANCE},
318         {TP, "奥格瑞玛", 1, 1601.08, -4378.69, 9.9846, 2.14362,TEAM_HORDE},
319         {TP, "雷霆崖",  1, -1274.45, 71.8601, 128.159, 2.80623,TEAM_HORDE},
320         {TP, "幽暗城", 0, 1633.75, 240.167, -43.1034, 6.26128,TEAM_HORDE},
321         {TP, "银月城", 530, 9738.28, -7454.19, 13.5605, 0.043914,TEAM_HORDE},
322         {TP, "[诺森德]达拉然", 571, 5809.55, 503.975, 657.526, 2.38338},
323         {TP, "[外域]沙塔斯", 530, -1887.62, 5359.09, -12.4279, 4.40435}, 
324         {TP, "[中立]藏宝海湾",0, -14281.9, 552.564, 8.90422, 0.860144},
325         {TP, "[中立]棘齿城",    1,    -955.21875,-3678.92,8.29946,    0},
326         {TP, "[中立]加基森",    1,    -7122.79834,-3704.82,14.0526,    0},
327     },
328     [TPMENU+0x20]={--东部王国
329         {TP, "艾尔文森林", 0,  -9449.06, 64.8392, 56.3581, 3.0704},
330         {TP, "永歌森林", 530,  9024.37, -6682.55, 16.8973, 3.1413},
331         {TP, "丹莫罗", 0,  -5603.76, -482.704, 396.98, 5.2349},
332         {TP, "提瑞斯法林地", 0,  2274.95, 323.918, 34.1137, 4.2436},
333         {TP, "幽魂之地", 530,  7595.73, -6819.6, 84.3718, 2.5656},
334         {TP, "洛克莫丹", 0,  -5405.85, -2894.15, 341.972, 5.4823},
335         {TP, "银松森林", 0,  505.126, 1504.63, 124.808, 1.7798},
336         {TP, "西部荒野", 0,  -10684.9, 1033.63, 32.5389, 6.0738},
337         {TP, "赤脊山", 0,  -9447.8, -2270.85, 71.8224, 0.28385},
338         {TP, "暮色森林", 0,  -10531.7, -1281.91, 38.8647, 1.5695},
339         {TP, "希尔斯布莱德丘陵", 0,  -385.805, -787.954, 54.6655, 1.0392},
340         {TP, "湿地", 0,  -3517.75, -913.401, 8.86625, 2.6070},
341         {TP, "奥特兰克山脉",0,  275.049, -652.044, 130.296, 0.50203},
342         {MENU, "下一页", TPMENU+0x120,GOSSIP_ICON_CHAT},
343     },
344     [TPMENU+0x120]={--东部王国    2
345         {TP, "阿拉希高地", 0,  -1581.45, -2704.06, 35.4168, 0.490373}, 
346         {TP, "荆棘谷",  0,  -11921.7, -59.544, 39.7262, 3.7357},
347         {TP, "荒芜之地", 0,  -6782.56, -3128.14, 240.48, 5.6591},
348         {TP, "悲伤沼泽", 0,  -10368.6, -2731.3, 21.6537, 5.2923},
349         {TP, "辛特兰", 0,  112.406, -3929.74, 136.358, 0.981903}, 
350         {TP, "灼热峡谷",  0,  -6686.33, -1198.55, 240.027, 0.91688},
351         {TP, "诅咒之地", 0,  -11184.7, -3019.31, 7.29238, 3.20542}, 
352         {TP, "燃烧平原",  0,  -7979.78, -2105.72, 127.919, 5.10148},
353         {TP, "西瘟疫之地", 0,    1743.69, -1723.86, 59.6648, 5.23722}, 
354         {TP, "东瘟疫之地", 0,  2280.64, -5275.05, 82.0166, 4.747},
355         {TP, "奎尔丹纳斯岛", 530,  12806.5, -6911.11, 41.1156, 2.2293},
356     },
357     [TPMENU+0x30]={--卡利姆多
358         {TP, "秘蓝岛", 530, -4192.62, -12576.7, 36.7598, 1.62813},
359         {TP, "秘血岛", 530, -2721.67, -12208.90, 9.08,     0},
360         {TP, "达希尔", 1, 9889.03, 915.869, 1307.43, 1.9336},
361         {TP, "杜隆塔尔", 1, 228.978, -4741.87, 10.1027, 0.416883},
362         {TP, "莫高雷", 1, -2473.87, -501.225, -9.42465, 0.6525},
363         {TP, "秘血岛", 530, -2095.7, -11841.1, 51.1557, 6.19288},
364         {TP, "黑海岸", 1, 6463.25, 683.986, 8.92792, 4.33534},
365         {TP, "贫瘠之地", 1, -575.772, -2652.45, 95.6384, 0.006469},
366         {TP, "石爪山脉", 1, 1574.89, 1031.57, 137.442, 3.8013},
367         {TP, "灰谷森林", 1, 1919.77, -2169.68, 94.6729, 6.14177},
368         {TP, "千针石林", 1, -5375.53, -2509.2, -40.432, 2.41885},
369         {TP, "凄凉之地", 1, -656.056, 1510.12, 88.3746, 3.29553},
370         {TP, "尘泥沼泽", 1, -3350.12, -3064.85, 33.0364, 5.12666},
371         {TP, "菲拉斯", 1, -4808.31, 1040.51, 103.769, 2.90655},
372         {TP, "塔纳利斯沙漠", 1, -6940.91, -3725.7, 48.9381, 3.11174},
373         {TP, "艾萨拉", 1, 3117.12, -4387.97, 91.9059, 5.49897},
374         {TP, "费伍德森林", 1, 3898.8, -1283.33, 220.519, 6.24307},
375         {TP, "安戈洛环形山", 1, -6291.55, -1158.62, -258.138, 0.457099},
376         {TP, "希利苏斯", 1, -6815.25, 730.015, 40.9483, 2.39066},
377         {TP, "冬泉谷", 1, 6658.57, -4553.48, 718.019, 5.18088},
378     },
379     [TPMENU+0x40]={--外域
380         {TP, "地狱火半岛", 530, -207.335, 2035.92, 96.464, 1.59676},
381         {TP, "地狱火半岛-荣耀堡",530,-683.05,2657.57,91.04,    0,TEAM_ALLIANCE},
382         {TP, "地狱火半岛-萨尔玛",530,139.96,2671.51,85.509,    0,TEAM_HORDE},
383         {TP, "赞加沼泽", 530, -220.297, 5378.58, 23.3223, 1.61718},
384         {TP, "泰罗卡森林", 530, -2266.23, 4244.73, 1.47728, 3.68426},
385         {TP, "纳格兰", 530, -1610.85, 7733.62, -17.2773, 1.33522}, 
386         {TP, "刀锋山", 530, 2029.75, 6232.07, 133.495, 1.30395},
387         {TP, "虚空风暴", 530, 3271.2, 3811.61, 143.153, 3.44101},
388         {TP, "影月谷", 530, -3681.01, 2350.76, 76.587, 4.25995},
389     },
390     [TPMENU+0x50]={--诺森德
391         {TP, "北风苔原", 571, 2954.24, 5379.13, 60.4538, 2.55544},
392         {TP, "凛风峡湾", 571, 682.848, -3978.3, 230.161, 1.54207},
393         {TP, "龙骨荒野", 571, 2678.17, 891.826, 4.37494, 0.101121},
394         {TP, "灰熊丘陵", 571, 4017.35, -3403.85, 290, 5.35431},
395         {TP, "祖达克", 571, 5560.23, -3211.66, 371.709, 5.55055},
396         {TP, "索拉查盆地", 571, 5614.67, 5818.86, -69.722, 3.60807},
397         {TP, "水晶之歌森林", 571, 5411.17, -966.37, 167.082, 1.57167},
398         {TP, "风暴峭壁", 571, 6120.46, -1013.89, 408.39, 5.12322},
399         {TP, "冰冠冰川", 571, 8323.28, 2763.5, 655.093, 2.87223},
400         {TP, "冬拥湖", 571, 4522.23, 2828.01, 389.975, 0.215009},
401     },
402     [TPMENU+0x60]={--经典旧世界地下城
403         {TP, "诺莫瑞根",0, -5163.54, 925.423, 257.181, 1.57423},
404         {TP, "死亡矿井", 0, -11209.6, 1666.54, 24.6974, 1.42053},
405         {TP, "暴风城监狱", 0, -8799.15, 832.718, 97.6348, 6.04085,TEAM_ALLIANCE},
406         {TP, "怒焰裂谷",  1, 1811.78, -4410.5, -18.4704, 5.20165,TEAM_HORDE},
407         {TP, "剃刀高地",  1, -4657.3, -2519.35, 81.0529, 4.54808}, 
408         {TP, "剃刀沼泽", 1, -4470.28, -1677.77, 81.3925, 1.16302}, 
409         {TP, "血色修道院", 0, 2873.15, -764.523, 160.332, 5.10447},
410         {TP, "影牙城堡", 0, -234.675, 1561.63, 76.8921, 1.24031},
411         {TP, "哀嚎洞穴", 1, -731.607, -2218.39, 17.0281, 2.78486},
412         {TP, "黑暗深渊", 1, 4249.99, 740.102, -25.671, 1.34062},
413         {TP, "黑石深渊", 0, -7179.34, -921.212, 165.821, 5.09599}, 
414         {TP, "黑石塔", 0, -7527.05, -1226.77, 285.732, 5.29626},
415         {TP, "厄运之槌", 1, -3520.14, 1119.38, 161.025, 4.70454},
416         {TP, "玛拉顿", 1, -1421.42, 2907.83, 137.415, 1.70718},
417         {TP, "通灵学院", 0, 1269.64, -2556.21, 93.6088, 0.620623}, 
418         {TP, "斯坦索姆", 0, 3352.92, -3379.03, 144.782, 6.25978}, 
419         {TP, "沉没的神庙", 0, -10177.9, -3994.9, -111.239, 6.01885},
420         {TP, "奥达曼",0, -6071.37, -2955.16, 209.782, 0.015708},
421         {TP, "祖尔法拉克", 1, -6801.19, -2893.02, 9.00388, 0.158639},
422     },
423     [TPMENU+0x70]={--燃烧的远征地下城
424         {TP, "奥金顿", 530, -3324.49, 4943.45, -101.239, 4.63901},
425         {TP, "时光之穴", 1, -8369.65, -4253.11, -204.272, -2.70526},
426         {TP, "盘牙水库", 530, 738.865, 6865.77, -69.4659, 6.27655},
427         {TP, "地狱火堡垒", 530, -347.29, 3089.82, 21.394, 5.68114},
428         {TP, "魔导师平台", 530, 12884.6, -7317.69, 65.5023, 4.799}, 
429         {TP, "风暴要塞", 530, 3100.48, 1536.49, 190.3, 4.62226},
430     },    
431     [TPMENU+0x80]={--巫妖王之怒地下城
432         {TP, "艾卓-尼鲁布", 571, 3707.86, 2150.23, 36.76, 3.22},
433         {TP, "斯坦索姆的抉择", 1, -8756.39, -4440.68, -199.489, 4.66289},
434         {TP, "冠军的试炼", 571, 8590.95, 791.792, 558.235, 3.13127},
435         {TP, "达克萨隆堡垒", 571, 4765.59, -2038.24, 229.363, 0.887627},
436         {TP, "古达克", 571, 6722.44, -4640.67, 450.632, 3.91123},
437         {TP, "冰冠城塞", 571, 5643.16, 2028.81, 798.274, 4.60242},
438         {TP, "魔枢", 571, 3782.89, 6965.23, 105.088, 6.14194},
439         {TP, "紫罗兰监狱", 571, 5693.08, 502.588, 652.672, 4.0229},
440         {TP, "闪电大厅", 571, 9136.52, -1311.81, 1066.29, 5.19113}, 
441         {TP, "石头大厅", 571, 8922.12, -1009.16, 1039.56, 1.57044},
442         {TP, "乌特加德城堡",571, 1203.41, -4868.59, 41.2486, 0.283237},
443         {TP, "乌特加德之巅", 571, 1267.24, -4857.3, 215.764, 3.22768},
444     },
445     [TPMENU+0x90]={--团队地下城
446         {TP, "黑暗神庙", 530, -3649.92, 317.469, 35.2827, 2.94285},
447         {TP, "黑翼之巢", 229, 152.451, -474.881, 116.84, 0.001073},
448         {TP, "海加尔山之巅", 1, -8177.89, -4181.23, -167.552, 0.913338}, 
449         {TP, "毒蛇神殿", 530, 797.855, 6865.77, -65.4165, 0.005938},
450         {TP, "十字军的试炼", 571, 8515.61, 714.153, 558.248, 1.57753},
451         {TP, "格鲁尔的巢穴", 530, 3530.06, 5104.08, 3.50861, 5.51117},
452         {TP, "玛瑟里顿的巢穴", 530, -336.411, 3130.46, -102.928, 5.20322}, 
453         {TP, "冰冠城塞",571, 5855.22, 2102.03, 635.991, 3.57899},
454         {TP, "卡拉赞", 0, -11118.9, -2010.33, 47.0819, 0.649895},
455         {TP, "熔火之心", 230, 1126.64, -459.94, -102.535, 3.46095}, 
456         {TP, "纳克萨玛斯", 571, 3668.72, -1262.46, 243.622, 4.785}, 
457         {TP, "奥妮克希亚的巢穴", 1, -4708.27, -3727.64, 54.5589, 3.72786}, 
458         {TP, "安其拉废墟", 1, -8409.82, 1499.06, 27.7179, 2.51868},
459         {MENU, "下一页", TPMENU+0x190,GOSSIP_ICON_BATTLE},
460     },
461     [TPMENU+0x190]={--团队地下城2    
462         {TP, "太阳井高地", 530, 12574.1, -6774.81, 15.0904, 3.13788}, 
463         {TP, "风暴要塞",  530, 3088.49, 1381.57, 184.863, 4.61973},
464         {TP, "安其拉神殿", 1, -8240.09, 1991.32, 129.072, 0.941603},
465         {TP, "永恒之眼", 571, 3784.17, 7028.84, 161.258, 5.79993}, 
466         {TP, "黑曜石圣殿", 571, 3472.43, 264.923, -120.146, 3.27923},
467         {TP, "奥杜尔",571, 9222.88, -1113.59, 1216.12, 6.27549},
468         {TP, "阿尔卡冯的宝库", 571, 5453.72, 2840.79, 421.28, 0},
469         {TP, "祖尔格拉布", 0, -11916.7, -1215.72, 92.289, 4.72454},
470         {TP, "祖阿曼",530, 6851.78, -7972.57, 179.242, 4.64691},
471     },
472 
473     [TPMENU+0xa0]={--风景传送
474         {TP, "GM之岛",            1, 16222.1,        16252.1,    12.5872,    0},
475         {TP, "时光之穴",        1,-8173.93018,    -4737.46387,33.77735,    0},
476         {TP, "双塔山",            1,-3331.35327,    2225.72827,    30.9877,    0},
477         {TP, "梦境之树",        1,-2914.7561,    1902.19934,    34.74103,    0},
478         {TP, "恐怖之岛",        1, 4603.94678,    -3879.25097,944.18347,    0},
479         {TP, "天涯海滩",        1,-9851.61719,    -3608.47412,8.93973,    0},
480         {TP, "安戈洛环形山",    1,-8562.09668,    -2106.05664,8.85254,    0},
481         {TP, "石堡瀑布",        0,-9481.49316,    -3326.91528,8.86435,    0},
482         {TP, "暴雪建设公司路障",1, 5478.06006,    -3730.8501,    1593.44,    0},
483     },
484 
485     [TPMENU+0xb0]={--其他传送 
486         {TP, "古拉巴什竞技场", 0, -13181.8, 339.356, 42.9805, 1.18013},
487         --Alliance
488         {TP, "奥特兰战场",0,    5.599396,-308.73822,132.26651,        0,TEAM_ALLIANCE},
489         {TP, "阿拉希战场",0,    -1229.860352,-2545.07959,21.180079,    0,TEAM_ALLIANCE},
490         --Horde
491         {TP, "阿拉希战场",0,    -847.953491,-3519.764893,72.607727,    0,TEAM_HORDE},
492         {TP, "奥特兰战场",0,    396.471863,-1006.229126,111.719086,    0,TEAM_HORDE},
493         {TP, "战歌峡谷",  1,    1036.794800,-2106.138672,122.94553,    0,TEAM_HORDE},
494     },
495     [TPMENU+0xc0]={--野外BOSS传送
496         {TP, "暮色森林",    0,-10526.16895,-434.996796,50.8948,    0},
497         {TP, "辛特兰",    0,759.605713,-3893.341309,116.4753,    0},
498         {TP, "灰谷",        1,3120.289307,-3439.444336,139.5663,0},
499         {TP, "艾萨拉",    1,2622.219971,-5977.930176,100.5629,0},
500         {TP, "菲拉斯",    1,-2741.290039,2009.481323,31.8773,    0},
501         {TP, "诅咒之地",    0,-12234,-2474,-3,                    0},
502         {TP, "水晶谷",    1,-6292.463379,1578.029053,0.1553,    0},
503     },
504     [MMENU+0x20]={--联盟职业技能训练师
505         --Alliance
506         {TP, "战士训练师",     0,-8682.700195, 322.091125, 109.437958,    0,TEAM_ALLIANCE},
507         {TP, "圣骑士训练师",     0,-8573.793945, 877.343018, 106.519310,    0,TEAM_ALLIANCE},
508         {TP, "死亡骑士训练师",     0,2365.21, -5658.35, 426.06,        0,TEAM_ALLIANCE},
509         {TP, "萨满训练师",     0,-9032.573242, 545.842590, 72.160950,    0,TEAM_ALLIANCE},
510         {TP, "猎人训练师",     0,-8422.097656, 550.078674, 95.448730,    0,TEAM_ALLIANCE},
511         {TP, "德鲁伊训练师",    1, 7870.23, -2586.97, 486.95,            0,TEAM_ALLIANCE},
512         {TP, "盗贼训练师",     0,-8751.876953, 381.321930, 101.056236,    0,TEAM_ALLIANCE},
513         {TP, "法师训练师",    0,-9009.386719, 875.746765, 29.621387,    0,TEAM_ALLIANCE},
514         {TP, "术士训练师",     0,-8972.834961, 1027.723511, 101.40416,    0,TEAM_ALLIANCE},
515         {TP, "牧师训练师",     0,-8517.649414, 858.083801, 109.81385,     0,TEAM_ALLIANCE},
516         --Horde
517         {TP, "战士训练师",    1, 1971.24, -4805.08, 56.99,    0,TEAM_HORDE},
518         {TP, "圣骑士训练师",1, 1936.14, -4138.31, 41.03,0,TEAM_HORDE},
519         {TP, "死亡骑士训练师",0, 2365.21, -5658.35, 426.06,    0,TEAM_HORDE},
520         {TP, "萨满训练师",    1, 1928.482, -4228.17, 42.3219,    0,TEAM_HORDE},
521         {TP, "猎人训练师",    1, 2135.33, -4610.78, 54.3865,    0,TEAM_HORDE},
522         {TP, "德鲁伊训练师",    1, 7870.23, -2586.97, 486.95,0,TEAM_HORDE},
523         {TP, "盗贼训练师",    1, 1776.47, -4285.65, 7.44,        0,TEAM_HORDE},
524         {TP, "法师训练师",    1, 1468.58, -4221.86, 59.22,    0,TEAM_HORDE},
525         {TP, "术士训练师",    1, 1838.19, -4355.78, -14.71,    0,TEAM_HORDE},
526         {TP, "牧师训练师",    1, 1454.71, -4179.42, 61.56,     0,TEAM_HORDE},
527     },
528     [MMENU+0x30]={--专业技能训练师
529         --Alliance
530         {TP, "武器训练师",     0,-8793.120117, 613.002991, 96.856400,    0,TEAM_ALLIANCE},
531         {TP, "骑术训练师",     0,-9443.556641, -1388.178345, 46.9881,    0,TEAM_ALLIANCE},
532         {TP, "飞行训练师",     530,-676.925598, 2730.669434, 93.9085,    0,TEAM_ALLIANCE},
533         --Horde
534         {TP, "武器训练师",    1, 2093.829346, -4821.349609, 24.382,    0,TEAM_HORDE},
535         {TP, "骑术训练师",    530, 9268.768555, -7508.026367, 38.09,    0,TEAM_HORDE},
536         {TP, "飞行训练师",     530,48.719337, 2741.370850, 85.255180,    0,TEAM_HORDE},
537     },    
538     [ENCMENU]={-- Enchanter 附魔
539         {MENU, "头盔",     ENCMENU+0x20,GOSSIP_ICON_TABARD},
540         {MENU, "肩甲",     ENCMENU+0x30,GOSSIP_ICON_TABARD},
541         {MENU, "胸甲",     ENCMENU+0x40,GOSSIP_ICON_TABARD},
542         {MENU, "衬衣",     ENCMENU+0x10,GOSSIP_ICON_TABARD},
543         {MENU, "腰带",     ENCMENU+0xf0,GOSSIP_ICON_TABARD},
544         {MENU, "裤子",     ENCMENU+0x50,GOSSIP_ICON_TABARD},
545         {MENU, "鞋子",    ENCMENU+0x60,GOSSIP_ICON_TABARD},
546         {MENU, "护腕",     ENCMENU+0x70,GOSSIP_ICON_TABARD},
547         {MENU, "手套",     ENCMENU+0x80,GOSSIP_ICON_TABARD},
548         {MENU, "披风",      ENCMENU+0x90,GOSSIP_ICON_TABARD},
549         {MENU, "主手武器", ENCMENU+0xa0,GOSSIP_ICON_TABARD},
550         {MENU, "副手武器", ENCMENU+0xb0,GOSSIP_ICON_TABARD},
551         {MENU, "双手武器", ENCMENU+0xc0,GOSSIP_ICON_TABARD},
552         {MENU, "盾牌",      ENCMENU+0xd0,GOSSIP_ICON_TABARD},
553         {MENU, "弓弩",      ENCMENU+0xe0,GOSSIP_ICON_TABARD},
554     },
555     [ENCMENU+0x10] = { -- 衬衣
556         {ENC, "清除胸甲附魔",-1,EQUIPMENT_SLOT_BODY},
557         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_BODY},
558         {ENC, "增加生命", 3297, EQUIPMENT_SLOT_BODY},
559         {ENC, "法力回复", 2381, EQUIPMENT_SLOT_BODY},
560         {ENC, "韧性等级", 3245, EQUIPMENT_SLOT_BODY},
561         {ENC, "防御等级", 1953, EQUIPMENT_SLOT_BODY},
562         {ENC, "增加敏捷", 1099, EQUIPMENT_SLOT_BODY},
563         {ENC, "攻击强度", 3845, EQUIPMENT_SLOT_BODY},
564     },
565     [ENCMENU+0x20] = { -- 头部
566         {ENC, "清除头盔附魔",-1,EQUIPMENT_SLOT_HEAD},
567         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_HEAD},
568         {ENC, "法术强度,爆击等级[80]", 3820, EQUIPMENT_SLOT_HEAD},
569         {ENC, "法术强度,法力回复[80]", 3819, EQUIPMENT_SLOT_HEAD},
570         {ENC, "增加耐力,防御等级[80]", 3818, EQUIPMENT_SLOT_HEAD},
571         {ENC, "攻击强度,爆击等级[80]", 3817, EQUIPMENT_SLOT_HEAD},
572         {ENC, "增加耐力,韧性等级[80]", 3842, EQUIPMENT_SLOT_HEAD},
573         {ENC, "攻击强度,韧性等级[80]", 3795, EQUIPMENT_SLOT_HEAD},
574         {ENC, "法术强度,韧性等级[80]", 3797, EQUIPMENT_SLOT_HEAD},
575     },
576     [ENCMENU+0x30] = { -- 肩部
577         {ENC, "清除肩甲附魔",-1,EQUIPMENT_SLOT_SHOULDERS},
578         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_SHOULDERS},
579         {ENC, "攻击强度,韧性等级[80]", 3793, EQUIPMENT_SLOT_SHOULDERS},
580         {ENC, "攻击强度", 3845, EQUIPMENT_SLOT_SHOULDERS},
581         {ENC, "法术强度,韧性等级[80]", 3794, EQUIPMENT_SLOT_SHOULDERS},
582         {ENC, "增加耐力,韧性等级[80]", 3852, EQUIPMENT_SLOT_SHOULDERS},
583         {ENC, "攻击强度,爆击等级[80]", 3808, EQUIPMENT_SLOT_SHOULDERS},
584         {ENC, "法术强度,法力回复[80]", 3809, EQUIPMENT_SLOT_SHOULDERS},
585         {ENC, "闪避等级,防御等级[80]", 3811, EQUIPMENT_SLOT_SHOULDERS},
586         {ENC, "法术强度,爆击等级[80]", 3810, EQUIPMENT_SLOT_SHOULDERS},
587     },
588     [ENCMENU+0x40] = { -- 胸甲
589         {ENC, "清除胸甲附魔",-1,EQUIPMENT_SLOT_CHEST},
590         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_CHEST},
591         {ENC, "增加生命", 3297, EQUIPMENT_SLOT_CHEST},
592         {ENC, "法力回复", 2381, EQUIPMENT_SLOT_CHEST},
593         {ENC, "韧性等级", 3245, EQUIPMENT_SLOT_CHEST},
594         {ENC, "防御等级", 1953, EQUIPMENT_SLOT_CHEST},
595     },
596     [ENCMENU+0xf0] = { -- 腰部
597         {ENC, "清除腰带附魔",-1,EQUIPMENT_SLOT_WAIST},
598         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_WAIST},
599         {ENC, "增加生命", 3297, EQUIPMENT_SLOT_WAIST},
600         {ENC, "法力回复", 2381, EQUIPMENT_SLOT_WAIST},
601         {ENC, "韧性等级", 3245, EQUIPMENT_SLOT_WAIST},
602         {ENC, "防御等级", 1953, EQUIPMENT_SLOT_WAIST},
603     },
604     [ENCMENU+0x50] = { -- 腿部
605         {ENC, "清除裤子附魔",-1,EQUIPMENT_SLOT_LEGS},
606         {ENC, "增加精神,法术强度[70]", 3719, EQUIPMENT_SLOT_LEGS},
607         {ENC, "增加耐力,法术强度[70]", 3721, EQUIPMENT_SLOT_LEGS},
608         {ENC, "增加耐力,韧性等级[80]", 3853, EQUIPMENT_SLOT_LEGS},
609         {ENC, "增加耐力,敏捷[80]", 3822, EQUIPMENT_SLOT_LEGS},
610         {ENC, "攻击强度,爆击等级[80]", 3823, EQUIPMENT_SLOT_LEGS},
611         {ENC, "法术强度", 2332, EQUIPMENT_SLOT_LEGS},
612         {ENC, "攻击强度", 3845, EQUIPMENT_SLOT_LEGS},
613         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_LEGS},
614     },     
615     [ENCMENU+0x60] = { -- 脚部
616         {ENC, "清除靴子附魔",-1,EQUIPMENT_SLOT_FEET},
617         --{ENC, "攻击强度", 1597, EQUIPMENT_SLOT_FEET},
618         {ENC, "攻击强度", 3845, EQUIPMENT_SLOT_FEET},
619         {ENC, "增加耐力,移动速度", 3232, EQUIPMENT_SLOT_FEET},
620         {ENC, "增加敏捷", 983, EQUIPMENT_SLOT_FEET},
621         {ENC, "增加精神", 1147, EQUIPMENT_SLOT_FEET},
622         {ENC, "增加生命,生命回复", 3244, EQUIPMENT_SLOT_FEET},
623         {ENC, "命中等级,爆击等级", 3826, EQUIPMENT_SLOT_FEET},
624         {ENC, "增加耐力", 1075, EQUIPMENT_SLOT_FEET},
625     },
626     [ENCMENU+0x70] = { -- 护腕
627         {ENC, "清除护腕附魔",-1,EQUIPMENT_SLOT_WRISTS},
628         {ENC, "增加耐力", 3850, EQUIPMENT_SLOT_WRISTS},
629         {ENC, "法术强度", 2332, EQUIPMENT_SLOT_WRISTS},
630         {ENC, "攻击强度", 3845, EQUIPMENT_SLOT_WRISTS},
631         {ENC, "增加精神", 1147, EQUIPMENT_SLOT_WRISTS},
632         {ENC, "精准等级", 3231, EQUIPMENT_SLOT_WRISTS},
633         --{ENC, "增加全属性1", 2661, EQUIPMENT_SLOT_WRISTS},
634         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_WRISTS},
635         {ENC, "增加智力", 1119, EQUIPMENT_SLOT_WRISTS},
636     },
637     [ENCMENU+0x80] = { -- 手套
638         {ENC, "清除手套附魔",-1,EQUIPMENT_SLOT_HANDS},
639         {ENC, "爆击等级", 3249, EQUIPMENT_SLOT_HANDS},
640         {ENC, "增加威胁,招架等级", 3253, EQUIPMENT_SLOT_HANDS},
641         --{ENC, "攻击强度", 1603, EQUIPMENT_SLOT_HANDS},
642         {ENC, "攻击强度", 3845, EQUIPMENT_SLOT_HANDS},
643         {ENC, "增加敏捷", 3222, EQUIPMENT_SLOT_HANDS},
644         {ENC, "命中等级", 3234, EQUIPMENT_SLOT_HANDS},
645         {ENC, "精准等级", 3231, EQUIPMENT_SLOT_HANDS},
646         {ENC, "法术强度", 3246, EQUIPMENT_SLOT_HANDS},
647     },
648     [ENCMENU+0x90] = { -- 背部
649         {ENC, "清除披风附魔",-1,EQUIPMENT_SLOT_BACK},
650         {ENC, "强化潜行,增加敏捷", 3256, EQUIPMENT_SLOT_BACK},
651         {ENC, "增加精神,减少威胁", 3296, EQUIPMENT_SLOT_BACK},
652         {ENC, "防御等级", 1951, EQUIPMENT_SLOT_BACK},
653         {ENC, "急速等级", 3831, EQUIPMENT_SLOT_BACK},
654         {ENC, "增加护甲", 3294, EQUIPMENT_SLOT_BACK},
655         {ENC, "增加敏捷", 1099, EQUIPMENT_SLOT_BACK},
656         {ENC, "奥术抗性", 1262, EQUIPMENT_SLOT_BACK},
657         {ENC, "攻击强度", 3845, EQUIPMENT_SLOT_BACK},
658         {ENC, "增加全属性", 3832, EQUIPMENT_SLOT_BACK},
659     },
660     [ENCMENU+0xa0] = {-- 主手
661         {ENC, "清除主手武器附魔",-1,EQUIPMENT_SLOT_MAINHAND},
662         {ENC, "增加耐力",  3851, EQUIPMENT_SLOT_MAINHAND},
663         {ENC, "命中等级,爆击等级", 3788, EQUIPMENT_SLOT_MAINHAND},
664         {ENC, "狂暴",  3789, EQUIPMENT_SLOT_MAINHAND},
665         {ENC, "黑魔法",  3790, EQUIPMENT_SLOT_MAINHAND},
666         --{ENC, "法术强度",  3834, EQUIPMENT_SLOT_MAINHAND},
667         --{ENC, "攻击强度",  3833, EQUIPMENT_SLOT_MAINHAND},
668         {ENC, "破冰武器",  3239, EQUIPMENT_SLOT_MAINHAND},
669         {ENC, "生命护卫",  3241, EQUIPMENT_SLOT_MAINHAND},
670         {ENC, "吸血[75]",  3870, EQUIPMENT_SLOT_MAINHAND},
671         {ENC, "利刃防护[75]",  3869, EQUIPMENT_SLOT_MAINHAND},
672         {ENC, "增加敏捷", 1103, EQUIPMENT_SLOT_MAINHAND},
673         {ENC, "增加精神",  3844, EQUIPMENT_SLOT_MAINHAND},
674         {ENC, "斩杀",  3225, EQUIPMENT_SLOT_MAINHAND},
675         {ENC, "猫鼬",  2673, EQUIPMENT_SLOT_MAINHAND},
676         {ENC, "攻击强度", 3827, EQUIPMENT_SLOT_MAINHAND},
677         {ENC, "法术强度", 3854, EQUIPMENT_SLOT_MAINHAND},
678     },
679     [ENCMENU+0xb0]={-- 副手
680         {ENC, "清除副手武器附魔",-1,EQUIPMENT_SLOT_OFFHAND},
681         {ENC, "增加耐力",  3851, EQUIPMENT_SLOT_OFFHAND},
682         {ENC, "命中等级,爆击等级", 3788, EQUIPMENT_SLOT_OFFHAND},
683         {ENC, "狂暴",  3789, EQUIPMENT_SLOT_OFFHAND},
684         {ENC, "黑魔法", 3790, EQUIPMENT_SLOT_OFFHAND},
685         --{ENC, "法术强度", 3834, EQUIPMENT_SLOT_OFFHAND},
686         --{ENC, "攻击强度",  3833, EQUIPMENT_SLOT_OFFHAND},
687         {ENC, "破冰武器",  3239, EQUIPMENT_SLOT_OFFHAND},
688         {ENC, "生命护卫",  3241, EQUIPMENT_SLOT_OFFHAND},
689         {ENC, "吸血[75]",  3870, EQUIPMENT_SLOT_OFFHAND},
690         {ENC, "利刃防护[75]",  3869, EQUIPMENT_SLOT_OFFHAND},
691         {ENC, "增加敏捷",  1103, EQUIPMENT_SLOT_OFFHAND},
692         {ENC, "增加精神",  3844, EQUIPMENT_SLOT_OFFHAND},
693         {ENC, "斩杀",  3225, EQUIPMENT_SLOT_OFFHAND},
694         {ENC, "猫鼬", 2673, EQUIPMENT_SLOT_OFFHAND},
695         {ENC, "攻击强度", 3827, EQUIPMENT_SLOT_OFFHAND},
696         {ENC, "法术强度", 3854, EQUIPMENT_SLOT_OFFHAND},
697     },
698     [ENCMENU+0xe0]={-- 远程
699         {ENC, "清除远程武器附魔",-1,EQUIPMENT_SLOT_RANGED},
700         {ENC, "增加耐力",  3851, EQUIPMENT_SLOT_RANGED},
701         {ENC, "命中等级,爆击等级", 3788, EQUIPMENT_SLOT_RANGED},
702         --{ENC, "法术强度", 3834, EQUIPMENT_SLOT_RANGED},
703         --{ENC, "攻击强度",  3833, EQUIPMENT_SLOT_RANGED},
704         {ENC, "生命护卫",  3241, EQUIPMENT_SLOT_RANGED},
705         {ENC, "增加敏捷",  1103, EQUIPMENT_SLOT_RANGED},
706         {ENC, "增加精神",  3844, EQUIPMENT_SLOT_RANGED},
707         {ENC, "攻击强度", 3827, EQUIPMENT_SLOT_RANGED},
708         {ENC, "法术强度", 3854,EQUIPMENT_SLOT_RANGED},
709     },
710     [ENCMENU+0xc0]={-- 双手
711         {ENC, "清除双手武器附魔",-1,EQUIPMENT_SLOT_MAINHAND},
712         {ENC, "增加耐力",  3851, EQUIPMENT_SLOT_MAINHAND},
713         {ENC, "增加敏捷",  1103, EQUIPMENT_SLOT_MAINHAND},
714         {ENC, "增加精神",  3844, EQUIPMENT_SLOT_MAINHAND},
715         {ENC, "命中等级,爆击等级",  3788, EQUIPMENT_SLOT_MAINHAND},
716         {ENC, "狂暴",  3789, EQUIPMENT_SLOT_MAINHAND},
717         {ENC, "破冰武器",  3239, EQUIPMENT_SLOT_MAINHAND},
718         {ENC, "生命护卫", 3241, EQUIPMENT_SLOT_MAINHAND},
719         {ENC, "吸血[75]",  3870, EQUIPMENT_SLOT_MAINHAND},
720         {ENC, "利刃防护[75]",  3869, EQUIPMENT_SLOT_MAINHAND},
721         {ENC, "斩杀",  3225, EQUIPMENT_SLOT_MAINHAND},
722         {ENC, "猫鼬",  2673, EQUIPMENT_SLOT_MAINHAND},
723         {ENC, "攻击强度", 3827, EQUIPMENT_SLOT_MAINHAND},
724         {ENC, "亡灵伤害", 3247, EQUIPMENT_SLOT_MAINHAND},
725         {ENC, "巨人杀手", 3251, EQUIPMENT_SLOT_MAINHAND},
726         {ENC, "法术强度", 3854, EQUIPMENT_SLOT_MAINHAND},
727     },
728     [ENCMENU+0xd0]={-- 盾牌
729         {ENC, "清除盾牌附魔",-1,EQUIPMENT_SLOT_OFFHAND},
730         {ENC, "防御等级", 1952, EQUIPMENT_SLOT_OFFHAND},
731         {ENC, "增加智力", 1128, EQUIPMENT_SLOT_OFFHAND},
732         {ENC, "盾牌格挡", 2655, EQUIPMENT_SLOT_OFFHAND},
733         {ENC, "韧性等级", 3229, EQUIPMENT_SLOT_OFFHAND},
734         {ENC, "增加耐力", 1071, EQUIPMENT_SLOT_OFFHAND},
735         {ENC, "格挡值", 2653, EQUIPMENT_SLOT_OFFHAND},
736     },
737 }
738 
739 local function Enchanting(player, EncSpell, Eid, money) --附魔 (玩家,附魔效果,附魔位置)
740     local ID=Eid
741     local Nowitem = player:GetEquippedItemBySlot(ID)--得到相应位置物品
742     if (Nowitem and Eid )  then--存在物品
743         --local WType = Nowitem:GetSubClass()--物品类型
744         local WName = Nowitem:GetItemLink()--物品链接
745 
746         for solt=0,1 do
747             local espellid=Nowitem:GetEnchantmentId(solt)
748             if(espellid and espellid>0)then
749                 Nowitem:ClearEnchantment(solt)
750                 if(EncSpell<=0)then
751                     player:SendBroadcastMessage(WName.."已经清除附魔("..espellid..")")
752                 elseif(solt < 1 )then
753                     Nowitem:SetEnchantment(espellid, solt+1)
754                     break
755                 end
756             end
757         end
758         if(EncSpell>0)then
759             Nowitem:SetEnchantment(EncSpell, 0)
760             player:CastSpell(player, 36937)
761             player:SendBroadcastMessage(WName.."已经附魔。")
762             player:SetHealth(player:GetMaxHealth())--回复生命
763             return true
764         end
765     else
766         player:SendNotification("你身上没有装备相应的物品")
767     end
768     return false
769 end
770 
771 function Stone.AddGossip(player, item, id)
772     player:GossipClearMenu()--清除菜单
773     local Rows=Menu[id] or {}
774     local Pteam=player:GetTeam()
775     local teamStr,team="",player:GetTeam()
776     if(team==TEAM_ALLIANCE)then
777         teamStr    ="[|cFF0070d0联盟|r]"
778     elseif(team==TEAM_HORDE)then 
779         teamStr    ="[|cFFF000A0部落|r]"
780     end
781     for k, v in pairs(Rows) do 
782         local mtype,text,icon,intid=v[1],( v[2] or "???" ), (v[4] or GOSSIP_ICON_CHAT), (id*0x100+k)
783         if(mtype==MENU)then
784             player:GossipMenuAddItem(icon, text, 0, (v[3] or id )*0x100)
785         elseif(mtype==FUNC or mtype==ENC)then
786             local code,msg,money=v[5],(v[6]or ""), (v[7] or 0)
787             if(mtype==ENC)then
788                 icon=GOSSIP_ICON_TABARD
789             end
790             if((code==true or code ==false))then
791                 player:GossipMenuAddItem(icon, text, money, intid, code, msg, money)
792             else
793                 player:GossipMenuAddItem(icon, text, 0, intid)
794             end
795         elseif(mtype==TP)then
796             local mteam=v[8] or TEAM_NONE
797             if(mteam==Pteam)then
798                 player:GossipMenuAddItem(GOSSIP_ICON_TAXI, teamStr..text, 0, intid, false,"是否传送到 |cFFFFFF00"..text.."|r ?",0)
799             elseif(mteam ==TEAM_NONE)then
800                 player:GossipMenuAddItem(GOSSIP_ICON_TAXI, text, 0, intid, false,"是否传送到 |cFFFFFF00"..text.."|r ?",0)
801             end
802         else
803             player:GossipMenuAddItem(icon, text, 0, intid)
804         end
805     end
806     if(id > 0)then--添加返回上一页菜单
807         local length=string.len(string.format("%x",id))
808         if(length>1)then
809             local temp=bit_and(id,2^((length-1)*4)-1)
810             if(temp ~= MMENU)then
811                 player:GossipMenuAddItem(GOSSIP_ICON_CHAT,"上一页", 0,temp*0x100)
812             end
813         end
814     end
815     if(id ~= MMENU)then--添加返回主菜单
816         player:GossipMenuAddItem(GOSSIP_ICON_CHAT,"主菜单", 0, MMENU*0x100)
817     else
818         if(player:GetGMRank()>=3)then--是GM
819             player:GossipMenuAddItem(GOSSIP_ICON_CHAT,"GM功能", 0, GMMENU*0x100)
820         end
821         player:GossipMenuAddItem(GOSSIP_ICON_CHAT, "在线总时间:|cFF000080"..Stone.GetTimeASString(player).."|r", 0, MMENU*0x100)
822     end
823 
824     player:GossipSendMenu(1, item)--发送菜单
825 end
826 
827 function Stone.ShowGossip(event, player, item)
828     player:MoveTo(0,player:GetX(),player:GetY(),player:GetZ()+0.01)--移动就停止当前施法
829     Stone.AddGossip(player, item, MMENU)
830 end
831 
832 function Stone.SelectGossip(event, player, item, sender, intid, code, menu_id)
833     local menuid=math.modf(intid/0x100)    --菜单组
834     local rowid    =intid-menuid*0x100        --第几项
835     if(rowid== 0)then
836         Stone.AddGossip(player, item, menuid)
837     else
838         player:GossipComplete()    --关闭菜单
839         local v=Menu[menuid] and Menu[menuid][rowid]
840         if(v)then                        --如果找到菜单项
841             local mtype=v[1] or MENU
842             if(mtype==MENU)then
843                 Stone.AddGossip(player, item, (v[3] or MMENU))
844             elseif(mtype==FUNC)then                    --功能
845                 local f=v[3]
846                 if(f)then
847                     player:ModifyMoney(-sender)        --扣费
848                     f(player, code)
849                 end
850             elseif(mtype==ENC)then
851                 local spellId,equipId=v[3],v[4]
852                 Enchanting(player, spellId, equipId, 0)
853                 Stone.AddGossip(player, item, menuid)
854             elseif(mtype==TP)then                    --传送
855                 local map,mapid,x,y,z,o=v[2],v[3],v[4], v[5], v[6],v[7] or 0
856                 local pname=player:GetName()--得到玩家名
857                 if(player:Teleport(mapid,x,y,z,o,TELE_TO_GM_MODE))then--传送
858                     Nplayer=GetPlayerByName(pname)--根据玩家名得到玩家
859                     if(Nplayer)then
860                         Nplayer:SendBroadcastMessage("已经到达 "..map)
861                         Nplayer:ModifyMoney(-sender)--扣费
862                     end
863                 else
864                     print(">>Eluna Error: Teleport Stone : Teleport To "..mapid)
865                 end
866             end
867         end
868     end
869 end
870 
871 RegisterItemGossipEvent(itemEntry, 1, Stone.ShowGossip)
872 RegisterItemGossipEvent(itemEntry, 2, Stone.SelectGossip)
View Code

 适用2014-3-1的eluna的TC

posted on 2015-09-29 21:42  胡椒籽籽  阅读(3627)  评论(1编辑  收藏  举报