--[[
功能:在对话框输入"#召唤 角色名"召唤小伙伴到身边帮助战斗
]]
--注册事件
Delegate.RegDelTalkEvent("summonTalkEvent");
--初始化
Delegate.RegInit("summonObj_Init");
local _toPlayer
local _player
--主函数
function summonTalkEvent(player, msg, color, range, size)
local toSumUser
local toSumCdKey
local username=Char.GetData(player,%对象_名字%);
if (check_msg(msg, "#召唤")) then
-- 非战斗状态下
if (Char.GetData(player, %对象_战斗状态%) ~= 0) then
NLG.SystemMessage(player, "请在非战斗状态下执行该操作!!")
return;
end
--是否存在物品拓展预留
--地图屏蔽拓展预留
--查询召唤对象信息
local sql1
local resset
toSummonUser = string.sub(msg, 7);
sql1="select CdKey from tbl_character c where c.Name='"..toSummonUser.."'"
resset = SQL.Run(sql1)
if(type(resset)=="table") then--如果返回结果是table类型的值
toSumCdKey=resset["0_0"]
_toPlayer=NLG.FindUser(toSumCdKey)
else
NLG.SystemMessage(player, "用户不存在或不在线!!")
return
end
--判断对象是否战斗中
if (Char.GetData(_toPlayer, %对象_战斗状态%) ~= 0) then
NLG.SystemMessage(player, "对方正在战斗中,不能召唤!!")
return;
end
--判断对象是否在队伍中
if (Char.GetData(_toPlayer, %对象_组队模式%) ~= 0) then
NLG.SystemMessage(player, "对方正在其他队伍中,不能召唤!!")
return;
end
--判断对象等级拓展预留
--向召唤对象弹出确认框
_player=player
local Msg = NLG.c("\\n!!!"..username.."正在对你使用大召唤术!!!\\n!!!是否接受!!!")
NLG.ShowWindowTalked( _toPlayer, summonNPC , %窗口_选择框%, %按钮_是否%, 10086, Msg);
end
end
Summon.rar
(1.46 KB, 下载次数: 0)
|