return { time = 20, name = "构建者护盾", init_effect = "", picture = "", desc = "构建者护盾", stack = 1, id = 8677, icon = 18100, last_effect = "", effect_list = { { id = 1, type = "BattleBuffShieldWall", trigger = { "onStack", "onUpdate" }, arg_list = { effect = "shield02", count = 15, do_when_hit = "intercept", bulletType = 1, cld_list = { { box = { 4, 6, 9 }, offset = { 1.02, 0, 1.22 } } }, centerPosFun = function (slot0) slot1 = slot0 * 3 return Vector3(math.sin(slot1) * 4, -0.5, math.cos(slot1) * 4 + 5) end, rotationFun = function (slot0) return Vector3(0, slot0 * ys.Battle.BattleConfig.SHIELD_ROTATE_CONST + 90, 0) end } }, { id = 2, type = "BattleBuffShieldWall", trigger = { "onStack", "onUpdate" }, arg_list = { effect = "shield02", count = 15, do_when_hit = "intercept", bulletType = 1, cld_list = { { box = { 4, 6, 9 }, offset = { 1.02, 0, 1.22 } } }, centerPosFun = function (slot0) slot1 = slot0 * 3 + ys.Battle.BattleConfig.SHIELD_CENTER_CONST return Vector3(math.sin(slot1) * 4, -0.5, math.cos(slot1) * 4 + 5) end, rotationFun = function (slot0) return Vector3(0, slot0 * ys.Battle.BattleConfig.SHIELD_ROTATE_CONST - 90, 0) end } }, { id = 3, type = "BattleBuffShieldWall", trigger = { "onStack", "onUpdate" }, arg_list = { effect = "shield02", count = 15, do_when_hit = "intercept", bulletType = 1, cld_list = { { box = { 4, 6, 9 }, offset = { 1.02, 0, 1.22 } } }, centerPosFun = function (slot0) slot1 = slot0 * 3 return Vector3(math.cos(slot1) * 6, -0.5, math.sin(slot1) * 6 + 5) end, rotationFun = function (slot0) return Vector3(0, -slot0 * ys.Battle.BattleConfig.SHIELD_ROTATE_CONST + 180, 0) end } }, { id = 4, type = "BattleBuffShieldWall", trigger = { "onStack", "onUpdate" }, arg_list = { effect = "shield02", count = 15, do_when_hit = "intercept", bulletType = 1, cld_list = { { box = { 4, 6, 9 }, offset = { 1.02, 0, 1.22 } } }, centerPosFun = function (slot0) slot1 = slot0 * 3 + ys.Battle.BattleConfig.SHIELD_CENTER_CONST return Vector3(math.cos(slot1) * 6, -0.5, math.sin(slot1) * 6 + 5) end, rotationFun = function (slot0) return Vector3(0, -slot0 * ys.Battle.BattleConfig.SHIELD_ROTATE_CONST + 0, 0) end } } } }