Towing Tentacle
Lvl: 1
Attack
Range: 99
Summons a single Tentacle on one random side of the deck, which will attract the adventurers on the field and the existing Corrupted Whirlpool towards itself. When Corrupted Whirlpool touches it, the tentacle will disappear.
Formula
function CommonFun.calcDamage_20(srcUser, targetUser, params, damageParam, logger)
local Str = srcUser:GetProperty("Str")
local Dex = srcUser:GetProperty("Dex")
local Luk = srcUser:GetProperty("Luk")
local Atk = srcUser:GetProperty("Atk")
local AtkPer = srcUser:GetProperty("AtkPer")
local DamIncrease = srcUser:GetProperty("DamIncrease")
local IgnoreDef = 0
local IgnoreDef1 = srcUser:GetProperty("IgnoreDef")
local IgnoreDef2 = srcUser:GetProperty("IgnoreEquipDef")
if targetUser.boss or targetUser.mini then
IgnoreDef = IgnoreDef1
else
IgnoreDef = IgnoreDef1 + IgnoreDef2
end
if 1 <= IgnoreDef then
IgnoreDef = 1
end
local Refine = srcUser:GetProperty("Refine")
local Def2 = targetUser:GetProperty("Def")
local DefPer2 = targetUser:GetProperty("DefPer")
local Vit2 = targetUser:GetProperty("Vit")
local VitPer2 = targetUser:GetProperty("VitPer")
local DamReduc2 = CommonFun.calcDamReDuc(srcUser, targetUser)
local RefineDamReduc = targetUser:GetProperty("RefineDamReduc")
local damChangePer = damageParam.damChangePer
local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
local bodyparam = CommonFun.CalcBodyParam(srcUser, targetUser, params, damageParam, logger)
local elementparam = CommonFun.CalcElementParam(srcUser, targetUser, params, damageParam, logger)
local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
local bodyparam2 = CommonFun.CalcBodyParam2(srcUser, targetUser, params, damageParam, logger)
local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
if skillID == 380_RUNE_KNIGHT:SONIC_CLAW or skillID == 383_RUNE_KNIGHT:SILVER_CHARGE or skillID == 384_RUNE_KNIGHT:TINDER_BREAKER then
AtkPer = 0
end
local BaseAtk = Str * 2 + math.floor(Str * Str / 100) + math.floor(Dex / 5) + math.floor(Luk / 5)
local AtkFinal = ((Atk - BaseAtk) * (1 + AtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * bodyparam * elementparam * elementparam2 + BaseAtk) * raceparam * bossparam * bossparam2
local DefReduc = CommonFun.CalcDef(srcUser, targetUser)
local ShortRangeDamReduc2 = targetUser:GetProperty("ShortRangeDamReduc")
local A = (AtkFinal * DefReduc * (1 - DamReduc2) + Refine) * damChangePer * (1 - RefineDamReduc) * (1 + DamIncrease - ShortRangeDamReduc2) - Vit2 * (1 + VitPer2)
if A <= 1 then
return 1
end
return A
end
Formula
{
"id": 23609001,
"Cost": 0,
"Desc": [
{
"id": 23609001,
"params": [
100
]
}
],
"Icon": "skill_1328001",
"Camps": "Enemy",
"Level": 1,
"Logic": "SkillSelfRange",
"Damage": [
{
"type": 20,
"damChangePer": 1,
"elementparam": 5
}
],
"DescId": "##1191173",
"NameZh": "##1191031",
"DamTime": {
"type": 1,
"value": 1
},
"Fire_EP": 3,
"AttackAct": [
"attack"
],
"Attack_EP": 0,
"SkillType": "Attack",
"Target_EP": 3,
"HitEffects": [
{
"type": 1,
"speed": 20,
"distance": 5,
"direction": "forward"
}
],
"Logic_Param": {
"range": 99,
"noSpeak": 1,
"range_num": 12
},
"Launch_Range": 99
}