- 精华
- 阅读权限
- 130
- 好友
- 相册
- 分享
- 听众
- 收听
- 注册时间
- 2020-6-26
- 在线时间
- 小时
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2020-10-12 12:52:24
|
显示全部楼层
关于助战在战斗中随角色获得经验的源码:
把下面这段代码加在任务处理类和战斗处理类相应的地方,共同的特点:就是加在战斗结束后或者任务完成后角色所得经验的那段代码前后都行。但是,各个位置代码情况不一样,要根据情况进行相应的修改调整,不然会出错或者不起作用。例如:
for n=1,#id组 do
local id=id组[n]
if 玩家数据[id].队伍~=0 then
for j=1,#玩家数据[id].助战.数据 do--玩家数据[id].角色.数据.助战
助战获得经验 = 玩家数据[id].助战.数据[j].等级*玩家数据[id].助战.数据[j].等级*15
if 玩家数据[id].助战.数据[j].参战 == true then
玩家数据[id].助战.数据[j].当前经验 = 玩家数据[id].助战.数据[j].当前经验 + 助战获得经验
发送数据(玩家数据[id].连接id,27,{文本="#W/你的助战#R/"..玩家数据[id].助战.数据[j].名称.."#W/获得了#R/"..助战获得经验.."#W/经验",频道="xt"})
while(玩家数据[id].助战.数据[j].当前经验>=玩家数据[id].助战.数据[j].最大经验) do
if 玩家数据[id].助战.数据[j].等级>=玩家数据[id].角色.数据.等级 then
break
end
玩家数据[id].助战:升级(j)
发送数据(玩家数据[id].连接id,27,{文本="#W/你的助战#R/"..玩家数据[id].助战.数据[j].名称.."#W/等级提升到了#R/"..玩家数据[id].助战.数据[j].等级.."#W/级",频道="xt"})
end
end
end
end
上面的代码中的 local id=id组[n]先给ID传递值,所以,代码一定要加在这句的后面。其它地方没有先给ID传递值的单元,就把代码加在 经验=的下面。要加的地方很多,凡是需要让助战得经验的任务,战斗,包括刷野,捉鬼等,都需要一一加进去。要加的代码就是:
if 玩家数据[id].队伍~=0 then
for j=1,#玩家数据[id].助战.数据 do--玩家数据[id].角色.数据.助战
助战获得经验 = 经验
if 玩家数据[id].助战.数据[j].参战 == true then
玩家数据[id].助战.数据[j].当前经验 = 玩家数据[id].助战.数据[j].当前经验 + 助战获得经验
发送数据(玩家数据[id].连接id,27,{文本="#W/你的助战#R/"..玩家数据[id].助战.数据[j].名称.."#W/获得了#R/"..助战获得经验.."#W/经验",频道="xt"})
while(玩家数据[id].助战.数据[j].当前经验>=玩家数据[id].助战.数据[j].最大经验) do
if 玩家数据[id].助战.数据[j].等级>=玩家数据[id].角色.数据.等级 then
break
end
玩家数据[id].助战:升级(j)
发送数据(玩家数据[id].连接id,27,{文本="#W/你的助战#R/"..玩家数据[id].助战.数据[j].名称.."#W/等级提升到了#R/"..玩家数据[id].助战.数据[j].等级.."#W/级",频道="xt"})
end
end
end
end
要加多少经验,根据角色所得的经验参照设置。
|
|