
离线 TA的专栏
- 打卡等级:热心大叔
- 打卡总天数:180
- 打卡月天数:0
- 打卡总奖励:2821
- 最近打卡:2023-08-27 06:03:14
|
- --废话不多说,直接粘贴上来,除了部分人物模型支持幻化,其他不支持。点2次同样模型、或者换大地图、或者变食人魔后,再点掉魔法效果可取消更改模型
- --目前没找到变身为巨魔、兽人、亡灵、暗夜精灵、矮人、德莱尼后还能支持装备和幻化的模型,故去掉了,如有人找到了,记得回帖告诉我一声
- --有高手可以做的更完善的,也回帖告知下
- --[[信息:
- 变身法袍
- 修改日期:2022-7-2
- 功能:改变人物显示式样
- 原创: kissinger
- ]]--
- print(">>Script: Change View.")
- --菜单所有者 --默认用 奥术法袍 修改了名字和flags,改为可对话
- local itemFaPao =38310
- local BSPlayerID={}
- local BS={}
- BS.Disp={ -- 可以用的变身物品依次为: 生物模型, 魔法技能,施法光环(越后面优先级越高),如没有必须填0
- {" |cff0000ff .. 变为食人魔 .. |r", 17258, 30167, 0},
- {" |cff0000ff .. 变成泰兰德 .. |r", 7274, 0, 0}, --17873
- {" |cff0000ff .. 变成希尔瓦娜斯 .. |r", 28213, 0, 0}, --17873
- {" |cff0000ff .. 变成女检察官 .. |r", 2043, 0, 0},
- {" |cff0000ff .. 变成白狼人 .. |r", 729, 0, 0},
- {" |cff0000ff .. 变成红龙女王 .. |r", 30794, 0, 0},
- {" |cff0000ff .. 变成银月城守卫 .. |r", 15511, 0, 0},
- {" |cff0000ff .. 变成女妖 .. |r", 10925, 0, 0},
- {" |cff0000ff .. 变为人类(男) .. |r", 19723, 0, 0},
- {" |cff0000ff .. 变为人类(女) .. |r", 19724, 0, 0},
- {" |cff0000ff .. 变为牛头人(男) .. |r", 20585, 0, 0},
- {" |cff0000ff .. 变为牛头人(女) .. |r", 20584, 0, 0},
- {" |cff0000ff .. 变为侏儒(男) .. |r", 20580, 0, 0},
- {" |cff0000ff .. 变为侏儒(女) .. |r", 20581 , 0, 0},
- {" |cff0000ff .. 变为血精灵(男) .. |r", 20578, 0, 0}, --模型20578, 技能46355, 生物21881
- {" |cff0000ff .. 变为血精灵(女) .. |r", 20579, 0, 0}, --模型20579, 没有技能, 生物21882
- {" |cff0000ff .. 变为地精(男) .. |r", 20582, 0, 0},
- {" |cff0000ff .. 变为地精(女) .. |r", 20583 , 0, 0},
- {" |cff0000ff .. 变昴日星官 .. |r", 29379, 0, 0},
- {" |cff0000ff .. 变为亡灵马 .. |r", 10718, 0, 0},
- {" |cff0000ff .. 变成隐身人 .. |r", 20577 , 0, 0}, --只能看到武器和盾牌,以及技能
- }
- function BS.ShowMenu(_, p, item)
- if p:IsInCombat() or (not (p:GetItemByEntry(itemFaPao)):IsEquipped()) then
- return false
- end
- local guid=p:GetGUIDLow()
- -- p:SendBroadcastMessage(guid)
- if BSPlayerID[guid] == nil then BSPlayerID[guid]=p:GetDisplayId() end
- for i = 1, #BS.Disp do
- p:GossipMenuAddItem(5, BS.Disp[i][1], 0, i) --5为显示类型,显示一个齿轮
- end
- p:GossipSendMenu(1, item)
- return false
- end
- function BS.SelectMenu(_, p, _, _, Select_NO)
- if p:IsInCombat() or (not (p:GetItemByEntry(itemFaPao)):IsEquipped()) then --如果战斗或者没装备则用不了
- p:GossipComplete()
- return false
- end
- local guid=p:GetGUIDLow()
- local ModuleNO=BS.Disp[Select_NO][2]
- local SpellNO=BS.Disp[Select_NO][3]
- local AuraNO=BS.Disp[Select_NO][4]
- -- p:SendBroadcastMessage(string.format("%s原来模型为%s,新模型%s", BS.Disp[Select_NO][1], BSPlayerID[guid], BS.Disp[Select_NO][2] ) )
- if (AuraNO) ~= 0 then
- if p:HasAura(AuraNO) then
- p:RemoveAura(AuraNO, p) --如果有光环则取消.
- p:SendBroadcastMessage("取消光环模型效果")
- else
- p:AddAura(AuraNO, p) --如果没有就加上. Player:AddAura( 73826, Player )
- p:SendBroadcastMessage("更换光环模型效果")
- end
- p:GossipComplete()
- return false
- end
- if SpellNO ~= 0 then
- p:CastSpell(p, SpellNO, true)
- p:SendBroadcastMessage("更换技能模型效果")
- p:GossipComplete()
- return false
- end
- if p:GetDisplayId() ~= ModuleNO then --如果显示和模型不一致,就用模型的,否则恢复原来模型
- p:SetDisplayId(ModuleNO)
- p:SendBroadcastMessage("更换生物模型效果")
- else
- p:SetDisplayId(BSPlayerID[guid])
- p:SendBroadcastMessage("恢复生物默认模型")
- end
- p:GossipComplete()
- return false
- end
- RegisterItemGossipEvent(itemFaPao, 1, BS.ShowMenu)
- RegisterItemGossipEvent(itemFaPao, 2, BS.SelectMenu)
|
晓枫资讯-科技资讯社区-免责声明
免责声明:以上内容为本网站转自其它媒体,相关信息仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同其观点或证实其内容的真实性。
1、注册用户在本社区发表、转载的任何作品仅代表其个人观点,不代表本社区认同其观点。
2、管理员及版主有权在不事先通知或不经作者准许的情况下删除其在本社区所发表的文章。
3、本社区的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,举报反馈:  进行删除处理。
4、本社区一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、以上声明内容的最终解释权归《晓枫资讯-科技资讯社区》所有。
|