我准备把这个NPC 放在长安地图皇城前的位置

1.添加NPC位置在分别在 “客户端\script\数据中心\场景NPC.lua”和“服务器端\script\数据中心\场景NPC.lua

搜素 “elseif 地图ID == 1001 then” 然后在其下面按顺序添加以下代码(注:elseif 地图ID == 1001 then  —-长安地图)

假人[88] = {名称=”装备附加”,模型=”男人_书生”,X=235,Y=102,方向=1,事件ID=nil,执行事件=”不执行”,小地图名称颜色=0,商业分类1=0,商业分类2=0,商业分类3=0,商业分类4=0}

  1. 在 “服务端\Script\对话处理类\对话内容.lua” 搜素 “elseif ID == 1001 then” 然后在其下面按顺序添加以下代码(注:elseif ID == 1001 then —–长安地图下的NPC对话内容)

———————————————装备特技转换NPC ————————————–

elseif 编号==88 then  —-说明 88为 场景NPC.lua中的代码

wb[1] = “我是你的专属狗管家,请选择需要转换的装备特技,转换后需要:(卸下装备,即可看到新装备属性):”

xx={“附加特技”,”我只是路过”,}

return{“男人_书生”,”装备附加”,wb[取随机数(1,#wb)],xx}  –男人_书生 为外观模型  装备附加 为NPC名字  要一一对应

end

—————————————————————————————————

  1. 在 “服务端\Script\对话处理类\对话处理.lua” 搜素 “elseif 地图编号==1001 then” 然后在其下面按顺序添加以下代码(注:elseif 地图编号==1001 then–长安城地图下的NPC对话内容)

———————————————–装备特技转换NPC ————————————

if 名称==”装备附加” then

if 事件==”附加特技” then

 

对话=”我是你的专属狗管家,请选择需要转换的装备特技,转换后需要,(卸下装备后,即可看到新装备属性):如果不满意可以反复转换只到满意为止!”

xx={“武器”,”项链”,”腰带”,”鞋子”,”衣服”,”头盔”}

发送数据(玩家数据[数字id].连接id,1501,{名称=”装备附加”,模型=”男人_书生”,对话=对话,选项=xx})

 

 

elseif 事件==”武器”   then

local 点卡=f函数.读配置(程序目录..[[data\]]..玩家数据[数字id].账号..[[\账号信息.txt]],”账号配置”,”点卡”)+0

if 点卡 < 200 then

发送数据(玩家数据[数字id].连接id, 7, “#y/需要200点点卡,您的点卡不足”)

return 0

end

local 武器id = 玩家数据[数字id].角色.数据.装备[3]

local 通用特技 = {“气疗术”,”心疗术”,”命疗术”,”凝气诀”,”凝神诀”,”气归术”,”命归术”,”四海升平”,”回魂咒”,”起死回生”,”水清诀”,”冰清诀”,”玉清诀”,”晶清诀”,”弱点击破”,”冥王爆杀”,”放下屠刀”,”河东狮吼”,”碎甲术”,”破甲术”,”破血狂攻”}

 

–以上两句为 定义身上装备的ID 和 定义特技技能表

if 玩家数据[数字id].角色.数据.装备[3]==nil or 玩家数据[数字id].角色.数据.装备[3]==0 then

–以上代码为检测身上定义装备是否有 也就是是否穿戴装备

发送数据(玩家数据[数字id].连接id,1501,{名称=”装备附加”,模型=”男人_书生”,对话=”少侠是来寻我开心的么?请穿上武器再来试试!”})

return

else

玩家数据[数字id].道具.数据[武器id].特技 = 通用特技[取随机数(1,#通用特技)]

玩家数据[数字id].角色:扣除点卡(200,”附加特技”,数字id)

常规提示(数字id,”#Y/恭喜你的武器获得了特技[#R/”..玩家数据[数字id].道具.数据[武器id].特技..”#Y/]!”)

–这点需要注意。引用上面的定义。要括号括起来前后要加..xx..

常规提示(数字id,”#Y/特技随机转换成功!(卸下装备后即可看到新装备属性)!”)

end

elseif 事件==”头盔”   then  –头盔

local 点卡=f函数.读配置(程序目录..[[data\]]..玩家数据[数字id].账号..[[\账号信息.txt]],”账号配置”,”点卡”)+0

if 点卡 < 200 then

发送数据(玩家数据[数字id].连接id, 7, “#y/需要200点点卡,您的点卡不足”)

return 0

end

local 武器id = 玩家数据[数字id].角色.数据.装备[1]

local 通用特技 = {“气疗术”,”心疗术”,”命疗术”,”凝气诀”,”凝神诀”,”气归术”,”命归术”,”四海升平”,”回魂咒”,”起死回生”,”水清诀”,”冰清诀”,”玉清诀”,”晶清诀”,”弱点击破”,”冥王爆杀”,”放下屠刀”,”河东狮吼”,”碎甲术”,”破甲术”,”破血狂攻”}

 

if 玩家数据[数字id].角色.数据.装备[1]==nil or 玩家数据[数字id].角色.数据.装备[1]==0 then

发送数据(玩家数据[数字id].连接id,1501,{名称=”装备附加”,模型=”男人_书生”,对话=”少侠是来寻我开心的么?请穿上项链再来试试!”})

return

else

玩家数据[数字id].道具.数据[武器id].特技 = 通用特技[取随机数(1,#通用特技)]

玩家数据[数字id].角色:扣除点卡(200,”附加特技”,数字id)

常规提示(数字id,”#Y/恭喜你的头盔获得了特技[#R/”..玩家数据[数字id].道具.数据[武器id].特技..”#Y/]!”)

常规提示(数字id,”#Y/特技随机转换成功!(卸下装备后即可看到新装备属性)!”)

end

elseif 事件==”项链”   then

local 点卡=f函数.读配置(程序目录..[[data\]]..玩家数据[数字id].账号..[[\账号信息.txt]],”账号配置”,”点卡”)+0

if 点卡 < 200 then

发送数据(玩家数据[数字id].连接id, 7, “#y/需要200点点卡,您的点卡不足”)

return 0

end

local 武器id = 玩家数据[数字id].角色.数据.装备[2]

local 通用特技 = {“气疗术”,”心疗术”,”命疗术”,”凝气诀”,”凝神诀”,”气归术”,”命归术”,”四海升平”,”回魂咒”,”起死回生”,”水清诀”,”冰清诀”,”玉清诀”,”晶清诀”,”弱点击破”,”冥王爆杀”,”放下屠刀”,”河东狮吼”,”碎甲术”,”破甲术”,”破血狂攻”}

 

if 玩家数据[数字id].角色.数据.装备[2]==nil or 玩家数据[数字id].角色.数据.装备[2]==0 then

发送数据(玩家数据[数字id].连接id,1501,{名称=”装备附加”,模型=”男人_书生”,对话=”少侠是来寻我开心的么?请穿上腰带再来试试!”})

return

else

玩家数据[数字id].道具.数据[武器id].特技 = 通用特技[取随机数(1,#通用特技)]

玩家数据[数字id].角色:扣除点卡(200,”附加特技”,数字id)

常规提示(数字id,”#Y/恭喜你的项链获得了特技[#R/”..玩家数据[数字id].道具.数据[武器id].特技..”#Y/]!”)

常规提示(数字id,”#Y/特技随机转换成功!(卸下装备后即可看到新装备属性)!”)

end

elseif 事件==”衣服”    then  –衣服

local 点卡=f函数.读配置(程序目录..[[data\]]..玩家数据[数字id].账号..[[\账号信息.txt]],”账号配置”,”点卡”)+0

if 点卡 < 200 then

发送数据(玩家数据[数字id].连接id, 7, “#y/需要200点点卡,您的点卡不足”)

return 0

end

local 武器id = 玩家数据[数字id].角色.数据.装备[4]

local 通用特技 = {“气疗术”,”心疗术”,”命疗术”,”凝气诀”,”凝神诀”,”气归术”,”命归术”,”四海升平”,”回魂咒”,”起死回生”,”水清诀”,”冰清诀”,”玉清诀”,”晶清诀”,”弱点击破”,”冥王爆杀”,”放下屠刀”,”河东狮吼”,”碎甲术”,”破甲术”,”破血狂攻”}

 

if 玩家数据[数字id].角色.数据.装备[4]==nil or 玩家数据[数字id].角色.数据.装备[4]==0 then

发送数据(玩家数据[数字id].连接id,1501,{名称=”装备附加”,模型=”男人_书生”,对话=”少侠是来寻我开心的么?请穿上鞋子再来试试!”})

return

else

玩家数据[数字id].道具.数据[武器id].特技 = 通用特技[取随机数(1,#通用特技)]

玩家数据[数字id].角色:扣除点卡(200,”附加特技”,数字id)

常规提示(数字id,”#Y/恭喜你的衣服获得了特技[#R/”..玩家数据[数字id].道具.数据[武器id].特技..”#Y/]!”)

常规提示(数字id,”#Y/特技随机转换成功!(卸下装备后即可看到新装备属性)!”)

end

elseif 事件==”腰带”  then   –腰带

local 点卡=f函数.读配置(程序目录..[[data\]]..玩家数据[数字id].账号..[[\账号信息.txt]],”账号配置”,”点卡”)+0

if 点卡 < 200 then

发送数据(玩家数据[数字id].连接id, 7, “#y/需要200点点卡,您的点卡不足”)

return 0

end

local 武器id = 玩家数据[数字id].角色.数据.装备[5]

local 通用特技 = {“气疗术”,”心疗术”,”命疗术”,”凝气诀”,”凝神诀”,”气归术”,”命归术”,”四海升平”,”回魂咒”,”起死回生”,”水清诀”,”冰清诀”,”玉清诀”,”晶清诀”,”弱点击破”,”冥王爆杀”,”放下屠刀”,”河东狮吼”,”碎甲术”,”破甲术”,”破血狂攻”}

 

if 玩家数据[数字id].角色.数据.装备[5]==nil or 玩家数据[数字id].角色.数据.装备[5]==0 then

发送数据(玩家数据[数字id].连接id,1501,{名称=”装备附加”,模型=”男人_书生”,对话=”少侠是来寻我开心的么?请穿上衣服再来试试!”})

return

else

玩家数据[数字id].道具.数据[武器id].特技 = 通用特技[取随机数(1,#通用特技)]

玩家数据[数字id].角色:扣除点卡(200,”附加特技”,数字id)

常规提示(数字id,”#Y/恭喜你的腰带获得了特技[#R/”..玩家数据[数字id].道具.数据[武器id].特技..”#Y/]!”)

常规提示(数字id,”#Y/特技随机转换成功!(卸下装备后即可看到新装备属性)!”)

end

elseif 事件==”鞋子”  then  –鞋子

local 点卡=f函数.读配置(程序目录..[[data\]]..玩家数据[数字id].账号..[[\账号信息.txt]],”账号配置”,”点卡”)+0

if 点卡 < 200 then

发送数据(玩家数据[数字id].连接id, 7, “#y/需要200点点卡,您的点卡不足”)

return 0

end

local 武器id = 玩家数据[数字id].角色.数据.装备[6]

local 通用特技 = {“气疗术”,”心疗术”,”命疗术”,”凝气诀”,”凝神诀”,”气归术”,”命归术”,”四海升平”,”回魂咒”,”起死回生”,”水清诀”,”冰清诀”,”玉清诀”,”晶清诀”,”弱点击破”,”冥王爆杀”,”放下屠刀”,”河东狮吼”,”碎甲术”,”破甲术”,”破血狂攻”}

 

if 玩家数据[数字id].角色.数据.装备[6]==nil or 玩家数据[数字id].角色.数据.装备[6]==0 then

发送数据(玩家数据[数字id].连接id,1501,{名称=”装备附加”,模型=”男人_书生”,对话=”少侠是来寻我开心的么?请穿上头盔再来试试!”})

return

else

玩家数据[数字id].道具.数据[武器id].特技 = 通用特技[取随机数(1,#通用特技)]

玩家数据[数字id].角色:扣除点卡(200,”附加特技”,数字id)

常规提示(数字id,”#Y/恭喜你的鞋子获得了特技[#R/”..玩家数据[数字id].道具.数据[武器id].特技..”#Y/]!”)

常规提示(数字id,”#Y/特技随机转换成功!(卸下装备后即可看到新装备属性)!”)

end

 

— local 道具 = 物品类()

–if dz[13] ~= nil then

— local 通用特技 = {“气疗术”,”心疗术”,”命疗术”,”凝气诀”,”凝神诀”,”气归术”,”命归术”,”四海升平”,”回魂咒”,”起死回生”,”水清诀”,”冰清诀”,”玉清诀”,”晶清诀”,”弱点击破”,”冥王爆杀”,”放下屠刀”,”河东狮吼”,”碎甲术”,”破甲术”,”破血狂攻”}

–道具.特技 = “气疗术”

–elseif 事件==”枪矛” or 事件==”斧钺” or 事件==”剑” or 事件==”双短剑” or 事件==”飘带” or 事件==”爪刺” or 事件==”扇” or 事件==”魔棒” or 事件==”锤” or 事件==”鞭” or 事件==”环圈” or 事件==”刀” or 事件==”法杖” or 事件==”弓弩” or 事件==”宝珠” or 事件==”巨剑” or 事件==”伞” or 事件==”灯笼” then

–玩家数据[数字id].给予数据={类型=1,id=0,事件=附加特效}

— 发送数据(id,3507,{道具=玩家数据[数字id].道具:索要道具1(数字id),名称=”袁守城”,类型=”NPC”,等级=”无”})

–玩家数据[数字id].给予数据.特技=”心疗术”

—  道具.特技 = 通用特技[取随机数(1,#通用特技)]

–发送数据(id,3507,{道具=玩家数据[数字id].道具:索要道具1(数字id),名称=名称,类型=”NPC”,等级=”无”})

–玩家数据[数字id].道具.特技 = “气疗术”

–end

–发送数据(玩家数据[数字id].连接id,3513,玩家数据[数字id].道具:索要道具2(数字id))

–发送数据(玩家数据[数字id].连接id,3523,{道具=玩家数据[数字id].道具:索要仓库道具(数字id,1),总数=#玩家数据[数字id].角色.数据.道具仓库})

 

——————————

elseif  事件==”附加特技” then

常规提示(数字id,”#Y/该功能尚未开放!”)

return

— 发送数据(玩家数据[数字id].连接id,3512,玩家数据[数字id].召唤兽.数据)

— 发送数据(玩家数据[数字id].连接id,3526,玩家数据[数字id].角色.数据.召唤兽仓库[1])

end

end

————————————————————————————————————

 

NPC添加完成,启动游戏看看效果把

声明:本站资源仅供本地单机测试,不得传播或用于商业用途,否则一切后果自行承担!如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。