master_otnew
PC-202302260912\Administrator 2023-11-16 10:57:31 +08:00
parent 99c7bdf11c
commit 2fe831ea4d
13 changed files with 148 additions and 96 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -3146,8 +3146,8 @@ local effectList = {
local dt = args[2]
caster.Event:DispatchEvent(BattleEventName.RoleViewBullet, skill, target)
local skillNumberTime=skill.skillnumberTime or nil
if skillNumberTime and skillNumberTime[1][1]~=0 then
local skillNumberTime=skill.skillnumberTime or nil
if skillNumberTime and skillNumberTime[1] and (type(skillNumberTime[1][1]) ~= "userdata" and skillNumberTime[1][1]~=0) then
for i = 1, #skillNumberTime do
local index=i
BattleLogic.WaitForTrigger(skillNumberTime[index][2]/1000, function ()
@ -3230,7 +3230,7 @@ local effectList = {
caster.Event:DispatchEvent(BattleEventName.RoleViewBullet, skill, target)
local skillNumberTime=skill.skillnumberTime or nil
if skillNumberTime and skillNumberTime[1][1]~=0 then
if skillNumberTime and (tonumber(skillNumberTime)~=nil and skillNumberTime[1] and skillNumberTime[1][1]~=0) then
for i = 1, #skillNumberTime do
local index=i
BattleLogic.WaitForTrigger(skillNumberTime[index][2]/1000, function ()

View File

@ -8697,8 +8697,8 @@ local passivityList = {
BattleLogic.Event:AddEvent(BattleEventName.BattleRoundStart,onRoundStart,nil,nil,role)
end,
--[a]数回合,自身释放技能,己方全体神将 [b]属性[c]改变[d]%,持续[e]回合(e0为永久)
--a[int 1:奇数 0偶数 ] b[int 属性id], c[int 改变类型], d[float],e[int]
--[a]数回合,自身释放技能,己方全体神将 [b]属性[c]改变[d]%,持续[e]回合(e0为永久) [f]属性[g]改变[h]%,持续[i]回合(f,g,h,i不配就不会增加)
--a[int 1:奇数 0偶数 ] b[int 属性id], c[int 改变类型], d[float],e[int], f[int 属性id], g[int 改变类型], h[float],i[int]
[355]=function(role,args,id,judge)
local type = args[1]
local pro = args[2]
@ -8706,6 +8706,11 @@ local passivityList = {
local v1 = args[4]
local round = args[5]
local pro2 = args[6]
local ct2 = args[7]
local v2 = args[8]
local round2 = args[9]
local isTrigger=false
local onSkillCast = function(skill)
if not skill then
@ -8727,6 +8732,9 @@ local passivityList = {
local list = RoleManager.Query(function(v) return role.camp == v.camp end)
for _, r in pairs(list) do
r:AddBuff(Buff.Create(role, BuffName.PropertyChange, round, BattlePropList[pro],v1, ct))
if pro2 and ct2 and v2 and round2 then
r:AddBuff(Buff.Create(role, BuffName.PropertyChange, round2, BattlePropList[pro2],v2, ct2))
end
end
isTrigger=true
end

View File

@ -1879,4 +1879,15 @@ function BattleUtil.CompareValue(v1, v2, comType)
return v1 <= v2
end
return true
end
function BattleUtil.IsUserDataNull( userData)
if (userData == nil) then -- 如果 userdata 是 nil则为空
return true
else
local metatable = getmetatable(userData)
return metatable == "null_userdata_metatable" -- 否则检查元表
end
end

View File

@ -105,10 +105,16 @@ function Skill:Cast(func)
-- if self.id==1282 then
-- time=1
-- end
BattleLogic.WaitForTrigger(duration + time+((tonumber(self.skillnumberTime)==nil or self.skillnumberTime[1][1]==0) and 0 or self.skillnumberTime[#self.skillnumberTime][2])/1000, function()
-- LogError("Pasue"..os.date())
local addTime=0
if self.skillnumberTime and self.skillnumberTime[1] then
addTime=((type(self.skillnumberTime[1][1]) == "userdata" or self.skillnumberTime[1][1]==0) and 0 or self.skillnumberTime[#self.skillnumberTime][2])/1000
end
BattleLogic.WaitForTrigger(duration + time+addTime, function()
self.owner.Event:DispatchEvent(BattleEventName.SkillCastEnd, self)
BattleLogic.Event:DispatchEvent(BattleEventName.SkillCastEnd, self)
-- LogError("End"..os.date())
-- LogError("duration"..duration)
-- 只对效果1的目标发送事件效果1是技能的直接伤害目标
self.effectCaster:ForeachTargets(function(role)
role.Event:DispatchEvent(BattleEventName.BeSkillCastEnd, self)
@ -152,6 +158,9 @@ end
-- 判断是否命中
function Skill:CheckTargetIsHit(role)
if role==nil then
return false
end
return self.effectCaster:CheckTargetIsHit(role)
end

View File

@ -42,7 +42,7 @@ function WeaponSkill:Init(owner, group, index, skillData,playerSkillIndex)
self.attackCount = effectData[4] -- 伤害持续时间内伤害次数
-- 初始化
local effects = {}
for i=5, #effectData do
for i=7, #effectData do
table.insert(effects, effectData[i])
end
self.effectCaster = EffectCaster:New()

View File

@ -1,4 +1,24 @@
v1.0.141
v1.0.151
1.同步战斗提jiao
v1.0.150
1.同步战斗提jiao
v1.0.149
1.同步战斗提jiao
v1.0.148
1.同步战斗提jiao
v1.0.147
1.同步战斗提jiao
v1.0.146
1.同步战斗提jiao
v1.0.145
1.同步战斗提jiao
v1.0.144
1.同步战斗提jiao
v1.0.143
1.同步战斗提jiao
v1.0.142
1.同步战斗提jiao
v1.0.141
1.同步战斗提jiao
v1.0.140
1.同步战斗提jiao

View File

@ -1325,7 +1325,7 @@ public class RedisUtil {
String rkey = getKey(type, key);
for (int i = 0; i < MAX_TRY_TIMES; i++) {
try {
return redisTemplate.opsForHash().increment(rkey,mapKey,incrementValue);
return redisTemplate.opsForHash().increment(rkey,mapKey,incrementValue);
} catch (Exception e) {
TimeUtils.sleep(FAILED_SLEEP);
}

View File

@ -73,7 +73,7 @@ public class GetWorldArenaInfoRequestHandler extends BaseHandler<WorldProto.GetW
AbstractRank rank = RankContext.getRankEnum(RankEnum.CROSS_SERVICE_ARENA.getType());
Set<ZSetOperations.TypedTuple<String>> rankByKey = rank.getRankByKey(String.valueOf(crossGroup), 0, 20);
//处理第一次在休战期开启
if(rankByKey.size()<1){
if(rankByKey.isEmpty()){
builder.setStage(ArenaLogic.NORMAL_STATE);
}else{
builder.setStage(ArenaLogic.getState());