Merge branch 'china/dev' into 0功能/灵脉秘境

dev_chengFeng
ZhangBiao 2021-11-18 19:07:50 +08:00
commit 6454e84172
12 changed files with 184 additions and 44 deletions

View File

@ -79894,7 +79894,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -86.19996, y: 259}
m_AnchoredPosition: {x: -86.19996, y: 265.7803}
m_SizeDelta: {x: 44, y: 30}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7683721027093544007
@ -157759,7 +157759,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0}
m_AnchorMax: {x: 0.5, y: 0}
m_AnchoredPosition: {x: -20, y: 206}
m_AnchoredPosition: {x: -20, y: 161}
m_SizeDelta: {x: 1100, y: 202.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &4929751347603845043
@ -178724,7 +178724,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 11.0000725, y: 266.6198}
m_AnchoredPosition: {x: 11.0000725, y: 273.40012}
m_SizeDelta: {x: 116, y: 17}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6792614551820874869
@ -236798,7 +236798,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 10.980068, y: 248.21973}
m_AnchoredPosition: {x: 10.980068, y: 255}
m_SizeDelta: {x: 115.64, y: 12}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7147047745219255636

View File

@ -1032,6 +1032,7 @@ ItemType = {
heroDogFood =25,--英雄狗粮
linglongbaojingkaimen = 26,
likeabilityItem = 27,
ZuoQiChip = 28, -- 坐骑碎片
}
JumpType = {
Lottery = 1, --招募

View File

@ -133,7 +133,8 @@ function BagResolveAnCompoundPanel:BindEvent()
end
end)
Util.AddClick(this.btnCompound, function()
if itemData.itemConfig.ItemType==ItemType.HeroDebris then--碎片
if itemData.itemConfig.ItemType==ItemType.HeroDebris
or itemData.itemConfig.ItemType==ItemType.ZuoQiChip then--碎片
if compoundNum>0 then
local item={}
item.itemId=itemData.id
@ -292,7 +293,8 @@ function this.OnShowLayout3Data()
this.chipFrame:SetActive(false)
this.propertyIma:SetActive(false)
local gameSetting = ConfigManager.GetConfigData(ConfigName.GameSetting, 1)
if itemData.itemConfig.ItemType==ItemType.HeroDebris then--碎片
if itemData.itemConfig.ItemType==ItemType.HeroDebris
or itemData.itemConfig.ItemType==ItemType.ZuoQiChip then--碎片
this.chipFrame:SetActive(true)
this.chipFrame:GetComponent("Image").sprite = this.spLoader:LoadSprite(GetHeroChipQuantityImageByquality(itemData.itemConfig.Quantity))
if itemData.itemConfig.PropertyName and itemData.itemConfig.PropertyName > 0 then
@ -305,12 +307,13 @@ function this.OnShowLayout3Data()
this.nameText.text=Language[10192]
this.btnCompoundText.text=Language[10193]
local maxCompoundValue = math.floor(itemData.num/itemData.itemConfig.UsePerCount)
compoundMaxNum=maxCompoundValue > gameSetting.HeroCompoundLimit and gameSetting.HeroCompoundLimit or maxCompoundValue
endHeroNum=gameSetting.HeroNumlimit-LengthOfTable(HeroManager.GetAllHeroDatas())
compoundMaxNum=compoundMaxNum >endHeroNum and endHeroNum or compoundMaxNum
if compoundMaxNum > compoundMaxNum then
compoundMaxNum = compoundMaxNum
--
if itemData.itemConfig.ItemType==ItemType.HeroDebris then -- 神将碎片
compoundMaxNum = math.min(maxCompoundValue, gameSetting.HeroCompoundLimit, gameSetting.HeroNumlimit-LengthOfTable(HeroManager.GetAllHeroDatas()))
elseif itemData.itemConfig.ItemType==ItemType.ZuoQiChip then -- 坐骑碎片
compoundMaxNum = math.min(maxCompoundValue, gameSetting.HeroCompoundLimit)
end
elseif itemData.itemConfig.ItemType==ItemType.Box then--宝箱
this.nameText.text=Language[10194]
this.btnCompoundText.text=Language[10195]
@ -448,7 +451,8 @@ function this.ShowCompoundNumData(value)
compoundNum=value
this.Slider:GetComponent("Slider").value=value
this.numText1.text = value
if itemData.itemConfig.ItemType==ItemType.HeroDebris then--碎片
if itemData.itemConfig.ItemType==ItemType.HeroDebris
or itemData.itemConfig.ItemType==ItemType.ZuoQiChip then--碎片
this.numText.text= Language[10198]..value*itemData.itemConfig.UsePerCount..Language[10199]..value..Language[10200].. string.gsub(GetLanguageStrById(itemData.itemConfig.Name),Language[10201],"")
elseif itemData.itemConfig.ItemType==ItemType.Box then--宝箱
this.numText.text= Language[10202]..value..Language[10200]..GetLanguageStrById(itemData.itemConfig.Name)..""

View File

@ -644,8 +644,8 @@ function this.GetMonsterPros(id, lv, star)
table.insert(allProVal, 22, proList[HeroProType.FoReduce] or 0) -- 抗佛
table.insert(allProVal, 23, proList[HeroProType.YaoReduce] or 0) -- 抗妖
table.insert(allProVal, 24, proList[HeroProType.DaoReduce] or 0) -- 抗道
table.insert(allProVal, 25, proList[HeroProType.InitRage] or 0) -- 初始怒气
table.insert(allProVal, 26, proList[HeroProType.AntiCritDamageFactor] or 0) -- 爆伤减免
table.insert(allProVal, 25, proList[HeroProType.AntiCritDamageFactor] or 0) -- 爆伤减免
table.insert(allProVal, 26, proList[HeroProType.InitRage] or 0) -- 初始怒气
local pros = table.concat(allProVal, "#")
return pros
end

View File

@ -9635,7 +9635,97 @@ local passivityList = {
end
BattleLogic.Event:AddEvent(BattleEventName.RecordRageChange, onRageChange,nil,nil,role)
end,
--暴击时[a]%概率使爆伤改变[b][c]%
--a[float],b[int],c[float]
[389]=function(role,args,id,judge)
local pro=args[1]
local ct = args[2]
local v1 = args[3]
local addCritDamageFa=function(func)
BattleUtil.RandomAction(pro,function()
if func then
func(v1,ct)
end
end)
end
role.Event:AddEvent(BattleEventName.PassiveAddCritDamageFactor,addCritDamageFa,nil,nil,role)
end,
--释放技能时[a]%概率 改变[b]无视目标的[c]buff免疫
--a[float],b[int],c[int]
[390]=function(role,args,id,judge)
local pro=args[1]
local ct = args[2]
local v1 = args[3]
local addCritDamageFa=function(func,buff)
if buff and buff.type~=v1 then
return
end
if func then
func(pro,ct)
end
end
local OnSkillCast = function(skill)
if skill and not skill.isTriggerJudge and judge==1 then
return
end
if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then
role.Event:AddEvent(BattleEventName.PassiveChangeIgnoreImmuneValue,addCritDamageFa,nil,nil,role)
end
end
local OnSkillCastEnd = function(skill)
if skill and not skill.isTriggerJudge and judge==1 then
return
end
if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then
role.Event:RemoveEvent(BattleEventName.PassiveChangeIgnoreImmuneValue,addCritDamageFa,nil,nil,role)
end
end
role.Event:AddEvent(BattleEventName.SkillCast, OnSkillCast,nil,nil,role)
role.Event:AddEvent(BattleEventName.SkillCastEnd, OnSkillCastEnd,nil,nil,role)
end,
--释放技能时[a]%概率 清除目标一个减异效果
--a[float]
[391]=function(role,args,id,judge)
local pro=args[1]
local onRoleTreat=function(targetRole, treat, baseTreat,skill)
if not skill then
return
end
BattleUtil.RandomAction(pro, function()
local list=BattleLogic.BuffMgr:GetAllBuffByFunc(function(buff) return buff.caster.camp~=targetRole.camp and buff.target==targetRole end)
local len=BattleUtil.LengthOfTable(list)
if list and len>0 then
local index=Random.RangeInt(1,len)
BattleLogic.BuffMgr:ClearBuff(targetRole, function (buff)
return buff==list[index]
end)
end
end)
end
local OnSkillCast = function(skill)
if skill and not skill.isTriggerJudge and judge==1 then
return
end
if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then
role.Event:AddEvent(BattleEventName.RoleTreat,onRoleTreat,nil,nil,role)
end
end
local OnSkillCastEnd = function(skill)
if skill and not skill.isTriggerJudge and judge==1 then
return
end
if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then
role.Event:RemoveEvent(BattleEventName.RoleTreat,onRoleTreat,nil,nil,role)
end
end
role.Event:AddEvent(BattleEventName.SkillCast, OnSkillCast,nil,nil,role)
role.Event:AddEvent(BattleEventName.SkillCastEnd, OnSkillCastEnd,nil,nil,role)
end,
}
return passivityList

View File

@ -184,6 +184,7 @@ BattleEventName = {
RoleAddCtrlBuff = indexAdd(),--角色添加控制类buff
CastRageBrfore = indexAdd(),--扣除怒气之前
PassiveAddCritDamageFactor = indexAdd(), --被动增加爆伤系数
PassiveChangeIgnoreImmuneValue = indexAdd(),--被动修改无视
}
BattleMaxFrame = 1000000
@ -215,8 +216,8 @@ RoleDataName = {
FoReduce = indexAdd(), --佛系伤害减免
YaoReduce = indexAdd(), --妖系伤害减免
DaoReduce = indexAdd(), --道系伤害减免
InitRage = indexAdd(), --初始怒气值
CritDamageReduce = indexAdd(), --暴击伤害减免
InitRage = indexAdd(), --初始怒气值
}
-- 战斗表属性id对应战斗中属性数据

View File

@ -979,12 +979,22 @@ function BattleUtil.CalDamage(skill, atkRole, defRole, damageType, baseFactor, i
defRole.Event:DispatchEvent(BattleEventName.CritDamageReduceFactor, onCritDamageReduceFactor, atkRole, defRole)
BattleLogic.Event:DispatchEvent(BattleEventName.CritDamageReduceFactor, onCritDamageReduceFactor, atkRole, defRole)
critDamageReduceFactor = max(BattleUtil.CountChangeList(critDamageReduceFactor, cl), 0)
-- 计算额外暴击伤害
critDamageFactor = 1.3 + atkRole:GetRoleData(RoleDataName.CritDamageBonus) - defRole:GetRoleData(RoleDataName.CritDamageReduce) - critDamageReduceFactor
local critDamageAddFactor=0
--加入被动效果 触发暴击被动
local critFunc = function(critEx) critDamageFactor = critEx end
atkRole.Event:DispatchEvent(BattleEventName.PassiveCriting, critFunc,skill)
local cl2 = {}
local onCritDamageAddFactor = function(v, ct)
if v then
table.insert(cl2, {v, ct})
end
end
atkRole.Event:DispatchEvent(BattleEventName.PassiveAddCritDamageFactor, onCritDamageAddFactor, atkRole, defRole)
critDamageAddFactor = max(BattleUtil.CountChangeList(critDamageAddFactor, cl2), 0)
-- 计算额外暴击伤害
critDamageFactor = 1.3 + atkRole:GetRoleData(RoleDataName.CritDamageBonus) - defRole:GetRoleData(RoleDataName.CritDamageReduce)+critDamageAddFactor - critDamageReduceFactor
--加入被动效果 触发暴击被动 废弃不用
-- local critFunc = function(critEx) critDamageFactor = critEx end
-- atkRole.Event:DispatchEvent(BattleEventName.PassiveCriting, critFunc,skill)
end
-- 计算克制伤害系数
@ -1066,8 +1076,8 @@ function BattleUtil.FinalTreat(castRole, targetRole, value, baseFactor,skill)
targetRole.data:AddValue(RoleDataName.Hp, treat)
end
castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat)
targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat)
castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat,skill)
targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat,skill)
--添加发送到battleLogic的治疗消息用于计算总的战斗伤害值
BattleLogic.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat)
-- 战斗记录用
@ -1131,8 +1141,8 @@ function BattleUtil.ApplyTreat(castRole, targetRole, value, baseFactor,critDamag
if treat > 0 then
targetRole.data:AddValue(RoleDataName.Hp, treat)
end
castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat)
targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat)
castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat,skill)
targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat,skill)
--添加发送到battleLogic的治疗消息用于计算总的战斗伤害值
BattleLogic.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat)
-- 战斗记录用

View File

@ -346,17 +346,27 @@ function RoleLogic:AddBuff(buff)
"missF", missF)
-- 如果概率为0 或者没有miss
if missF == 0 or not BattleUtil.RandomAction(missF, function() BattleLogic.BuffMgr:PutBuff(buff) end) then
for i=1, self.buffFilter.size do
if self.buffFilter.buffer[i](buff,self) then
BattleLogManager.Log(
"Buff Filter",
"camp", buff.caster.camp,
"position", buff.caster.position,
"id", buff.id,
"type", buff.type)
BattleLogic.BuffMgr:PutBuff(buff)
BattleLogic.Event:DispatchEvent(BattleEventName.RoleAddBuffFail,buff,self)
return
--概率忽略免疫
local ignoreProb=0
local changeIgnore=function(v1,ct)
ignoreProb=BattleUtil.CountValue(ignoreProb,v1,ct)
end
buff.caster.Event:DispatchEvent(BattleEventName.PassiveChangeIgnoreImmuneValue,changeIgnore,buff)
local isIgnor=BattleUtil.RandomAction(ignoreProb,function()end)
if not isIgnor then
for i=1, self.buffFilter.size do
if self.buffFilter.buffer[i](buff,self) then
BattleLogManager.Log(
"Buff Filter",
"camp", buff.caster.camp,
"position", buff.caster.position,
"id", buff.id,
"type", buff.type)
BattleLogic.BuffMgr:PutBuff(buff)
BattleLogic.Event:DispatchEvent(BattleEventName.RoleAddBuffFail,buff,self)
return
end
end
end
BattleLogic.BuffMgr:AddBuff(self, buff)

View File

@ -289,7 +289,8 @@ function EnemyView:DoScale(scale, dur, func)
if self.dsTween2 then
self.dsTween2:Kill()
end
local liveScale = self.role.position <= 3 and 0.6 or 0.5
--local liveScale = self.role.position <= 3 and 0.6 or 0.5
local liveScale=0.6
self.dsTween2 = self.RoleLiveGO.transform.parent:DOScale(Vector3.one * liveScale * scale, dur)
end

View File

@ -101,7 +101,7 @@ function PlayerView:onCreate(go, role, position, root)
--self.RootPanel.PlayerPanel, "live_"..position
self.RoleLiveGO.transform:SetParent(Util.GetTransform(self.RootPanel.PlayerPanel, "live_"..position))
self.RoleLiveGO:GetComponent("RectTransform").anchoredPosition = Vector2.New(self.outOffset[1], self.outOffset[2])-- * 0.5
self.RoleLiveGO.transform.localScale = Vector3.one * self.enemy_liveScale
self.RoleLiveGO.transform.localScale = Vector3.one * self.play_liveScale
self.RoleLiveGO:SetActive(true)
@ -121,7 +121,7 @@ function PlayerView:onCreate(go, role, position, root)
-- casting技能立绘
self.RoleLiveGO2 = poolManager:LoadLive(self.livePath, go.transform.parent, Vector3.one, Vector3.zero)
self.RoleLiveGO2.transform:SetParent(self.RootPanel.mySkillCastRoot.transform)
self.RoleLiveGO2.transform.localScale = Vector3.one * self.enemy_liveScale -- * 0.75--* 1.5
self.RoleLiveGO2.transform.localScale = Vector3.one * self.play_liveScale -- * 0.75--* 1.5
self.RoleLiveGO2.transform.anchoredPosition = Vector2.New(self.outOffset[1], self.outOffset[2] - 300)
self.RoleLiveGO2:SetActive(false)
self.RoleLiveGOGraphic2 = self.RoleLiveGO2:GetComponent("SkeletonGraphic")
@ -151,7 +151,7 @@ function PlayerView:onCreate(go, role, position, root)
self.rageText.text = ""
self.lvHpObj=Util.GetGameObject(go, "lvObj")
if position<=3 then
self.lvHpObj:GetComponent("RectTransform").anchoredPosition=Vector3.New(0,450,0)
self.lvHpObj:GetComponent("RectTransform").anchoredPosition=Vector3.New(0,485,0)
else
self.lvHpObj:GetComponent("RectTransform").anchoredPosition=Vector3.New(0,0,0)
end
@ -313,7 +313,8 @@ function PlayerView:DoScale(scale, dur, func)
if self.dsTween2 then
self.dsTween2:Kill()
end
local liveScale = self.role.position <= 3 and 0.6 or 0.5
--local liveScale = self.role.position <= 3 and 0.6 or 0.5
local liveScale = 0.6
self.dsTween2 = self.RoleLiveGO.transform.parent:DOScale(Vector3.one * liveScale * scale, dur)
end

View File

@ -2213,10 +2213,10 @@ function this.CalculateWarAllProVal(heroDid)
table.insert(allProVal, 23, allEquipAddProVal[HeroProType.YaoReduce])
-- 道系伤害减免
table.insert(allProVal, 24, allEquipAddProVal[HeroProType.DaoReduce])
-- 怒气
table.insert(allProVal, 25, allEquipAddProVal[HeroProType.InitRage])
-- 爆伤减免
table.insert(allProVal, 26, allEquipAddProVal[HeroProType.AntiCritDamageFactor])
table.insert(allProVal, 25, allEquipAddProVal[HeroProType.AntiCritDamageFactor])
-- 怒气
table.insert(allProVal, 26, allEquipAddProVal[HeroProType.InitRage])
return allProVal
end

View File

@ -150,6 +150,25 @@ function RewardItemSingleShowPopup:BindEvent()
self:ClosePanel()
end)
end,Language[10731],Language[10732],Language[11511],false,"")
elseif itemConfigData.ItemType == ItemType.ZuoQiChip then
local sum = BagManager.GetItemCountById(itemSid) / BagManager.bagDatas[itemSid].itemConfig.UsePerCount
sum = math.floor(sum)
if sum >= 2 then
local _itemData = BagManager.bagDatas[itemSid]
UIManager.OpenPanel(UIName.BagResolveAnCompoundPanel, 3, _itemData, function()
func()
end)
elseif sum >= 1 then
local _itemData = BagManager.bagDatas[itemSid]
local item={}
item.itemId= _itemData.id
item.itemNum= sum * _itemData.itemConfig.UsePerCount
NetManager.HeroComposeRequest(item,function (drop)
this.SendBackCompoundReCallBack(drop)
end)
else
PopupTipPanel.ShowTip(Language[11509])
end
else
local _itemData = BagManager.bagDatas[itemSid]
UIManager.OpenPanel(UIName.BagResolveAnCompoundPanel, 3, _itemData, function()
@ -312,7 +331,10 @@ function RewardItemSingleShowPopup:OnShow()
elseif isBagPanel and itemConfigData.IfResolve == 1 and func then--是否可分解
this.btnSure:SetActive(true)
this.btnSureText.text = Language[10197]
elseif isBagPanel and itemConfigData.ItemType == 2 and func then--是否是碎片可合成
elseif isBagPanel and func --是否是碎片可合成
and (itemConfigData.ItemType == ItemType.HeroDebris
or itemConfigData.ItemType == ItemType.ZuoQiChip)
then
this.btnSureText.text = Language[10193]
this.btnSure:SetActive(true)
elseif isBagPanel and itemConfigData.ItemType == 10 and func then--是否宝箱可使用