mirror of
https://github.com/baiqwerdvd/StarRailUID.git
synced 2025-05-05 19:23:45 +08:00
format
This commit is contained in:
parent
dd1c79cf10
commit
3b4e8f5bd2
@ -13,14 +13,22 @@ STAR_RAIL_SIGN_EXTRA_INFO_URL = f"{OLD_URL}/event/luna/extra_info"
|
|||||||
STAR_RAIL_SIGN_EXTRA_REWARD_URL = f"{OLD_URL}/event/luna/extra_reward"
|
STAR_RAIL_SIGN_EXTRA_REWARD_URL = f"{OLD_URL}/event/luna/extra_reward"
|
||||||
STAR_RAIL_SIGN_URL = f"{OLD_URL}/event/luna/sign"
|
STAR_RAIL_SIGN_URL = f"{OLD_URL}/event/luna/sign"
|
||||||
STAR_RAIL_SIGN_URL_OS = f"{OS_URL}/event/luna/os/sign"
|
STAR_RAIL_SIGN_URL_OS = f"{OS_URL}/event/luna/os/sign"
|
||||||
STAR_RAIL_MONTH_INFO_URL = f"{OLD_URL}/event/srledger/month_info" # 开拓阅历接口
|
STAR_RAIL_MONTH_INFO_URL = (
|
||||||
|
f"{OLD_URL}/event/srledger/month_info"
|
||||||
|
) # 开拓阅历接口
|
||||||
STAR_RAIL_MONTH_DETAIL_URL = (
|
STAR_RAIL_MONTH_DETAIL_URL = (
|
||||||
f"{OLD_URL}/event/srledger/month_detail" # 开拓阅历详情接口
|
f"{OLD_URL}/event/srledger/month_detail" # 开拓阅历详情接口
|
||||||
)
|
)
|
||||||
|
|
||||||
STAR_RAIL_NOTE_URL = f"{NEW_URL}/game_record/app/hkrpg/api/note" # 实时便签接口
|
STAR_RAIL_NOTE_URL = (
|
||||||
STAR_RAIL_NOTE_URL_OS = f"{OS_INFO_URL}/game_record/hkrpg/api/note" # OS实时便签接口
|
f"{NEW_URL}/game_record/app/hkrpg/api/note"
|
||||||
STAR_RAIL_INDEX_URL = f"{NEW_URL}/game_record/app/hkrpg/api/index" # 角色橱窗接口
|
) # 实时便签接口
|
||||||
|
STAR_RAIL_NOTE_URL_OS = (
|
||||||
|
f"{OS_INFO_URL}/game_record/hkrpg/api/note"
|
||||||
|
) # OS实时便签接口
|
||||||
|
STAR_RAIL_INDEX_URL = (
|
||||||
|
f"{NEW_URL}/game_record/app/hkrpg/api/index"
|
||||||
|
) # 角色橱窗接口
|
||||||
STAR_RAIL_INDEX_URL_OS = (
|
STAR_RAIL_INDEX_URL_OS = (
|
||||||
f"{OS_INFO_URL}/game_record/hkrpg/api/index" # OS角色橱窗接口
|
f"{OS_INFO_URL}/game_record/hkrpg/api/index" # OS角色橱窗接口
|
||||||
)
|
)
|
||||||
@ -41,7 +49,9 @@ STAR_RAIL_AVATAR_INFO_URL_OS = (
|
|||||||
CHALLENGE_INFO_URL = f"{NEW_URL}/game_record/app/hkrpg/api/challenge"
|
CHALLENGE_INFO_URL = f"{NEW_URL}/game_record/app/hkrpg/api/challenge"
|
||||||
CHALLENGE_INFO_URL_OS = f"{OS_INFO_URL}/game_record/hkrpg/api/challenge"
|
CHALLENGE_INFO_URL_OS = f"{OS_INFO_URL}/game_record/hkrpg/api/challenge"
|
||||||
|
|
||||||
ROGUE_INFO_URL = f"{NEW_URL}/game_record/app/hkrpg/api/rogue" # 角色模拟宇宙信息接口
|
ROGUE_INFO_URL = (
|
||||||
|
f"{NEW_URL}/game_record/app/hkrpg/api/rogue"
|
||||||
|
) # 角色模拟宇宙信息接口
|
||||||
ROGUE_LOCUST_INFO_URL = (
|
ROGUE_LOCUST_INFO_URL = (
|
||||||
f"{NEW_URL}/game_record/app/hkrpg/api/rogue_locust" # 角色寰宇蝗灾信息接口
|
f"{NEW_URL}/game_record/app/hkrpg/api/rogue_locust" # 角色寰宇蝗灾信息接口
|
||||||
)
|
)
|
||||||
|
@ -3,9 +3,9 @@ from typing import Dict, List
|
|||||||
|
|
||||||
from gsuid_core.logger import logger
|
from gsuid_core.logger import logger
|
||||||
|
|
||||||
from ..Role import calculate_damage
|
|
||||||
from ..Base.AvatarBase import BaseAvatar, BaseAvatarBuff
|
from ..Base.AvatarBase import BaseAvatar, BaseAvatarBuff
|
||||||
from ..Base.model import DamageInstanceSkill, DamageInstanceAvatar
|
from ..Base.model import DamageInstanceAvatar, DamageInstanceSkill
|
||||||
|
from ..Role import calculate_damage
|
||||||
|
|
||||||
|
|
||||||
class Seele(BaseAvatar):
|
class Seele(BaseAvatar):
|
||||||
@ -117,7 +117,9 @@ class Seele(BaseAvatar):
|
|||||||
self.avatar_level,
|
self.avatar_level,
|
||||||
)
|
)
|
||||||
damagelist4[2] += damage3
|
damagelist4[2] += damage3
|
||||||
skill_info_list.append({'name': '银狼降防终结技', 'damagelist': damagelist4})
|
skill_info_list.append(
|
||||||
|
{'name': '银狼降防终结技', 'damagelist': damagelist4}
|
||||||
|
)
|
||||||
|
|
||||||
logger.info(skill_info_list)
|
logger.info(skill_info_list)
|
||||||
return skill_info_list
|
return skill_info_list
|
||||||
@ -148,7 +150,9 @@ class JingYuan(BaseAvatar):
|
|||||||
|
|
||||||
def extra_ability(self):
|
def extra_ability(self):
|
||||||
logger.info('额外能力')
|
logger.info('额外能力')
|
||||||
logger.info('【神君】下回合的攻击段数大于等于6段, 则其下回合的暴击伤害提高25%。')
|
logger.info(
|
||||||
|
'【神君】下回合的攻击段数大于等于6段, 则其下回合的暴击伤害提高25%。'
|
||||||
|
)
|
||||||
self.extra_ability_attribute['CriticalDamageBase'] = 0.25
|
self.extra_ability_attribute['CriticalDamageBase'] = 0.25
|
||||||
logger.info('施放战技后, 暴击率提升10%')
|
logger.info('施放战技后, 暴击率提升10%')
|
||||||
self.extra_ability_attribute['CriticalChanceBase'] = 0.1
|
self.extra_ability_attribute['CriticalChanceBase'] = 0.1
|
||||||
@ -223,7 +227,9 @@ class JingYuan(BaseAvatar):
|
|||||||
self.avatar_level,
|
self.avatar_level,
|
||||||
)
|
)
|
||||||
damagelist4[2] += damage3
|
damagelist4[2] += damage3
|
||||||
skill_info_list.append({'name': '10层神君伤害', 'damagelist': damagelist4})
|
skill_info_list.append(
|
||||||
|
{'name': '10层神君伤害', 'damagelist': damagelist4}
|
||||||
|
)
|
||||||
|
|
||||||
logger.info(skill_info_list)
|
logger.info(skill_info_list)
|
||||||
return skill_info_list
|
return skill_info_list
|
||||||
@ -249,7 +255,9 @@ class Welt(BaseAvatar):
|
|||||||
|
|
||||||
def extra_ability(self):
|
def extra_ability(self):
|
||||||
logger.info('额外能力')
|
logger.info('额外能力')
|
||||||
logger.info('施放终结技时, 有100%基础概率使目标受到的伤害提高12%, 持续2回合。')
|
logger.info(
|
||||||
|
'施放终结技时, 有100%基础概率使目标受到的伤害提高12%, 持续2回合。'
|
||||||
|
)
|
||||||
self.extra_ability_attribute['DmgRatio'] = 0.12
|
self.extra_ability_attribute['DmgRatio'] = 0.12
|
||||||
logger.info('对被弱点击破的敌方目标造成的伤害提高20')
|
logger.info('对被弱点击破的敌方目标造成的伤害提高20')
|
||||||
self.extra_ability_attribute['AllDamageAddedRatio'] = 0.20
|
self.extra_ability_attribute['AllDamageAddedRatio'] = 0.20
|
||||||
@ -333,7 +341,9 @@ class Welt(BaseAvatar):
|
|||||||
damagelist4[1] = damagelist1[1] + damagelist4[1]
|
damagelist4[1] = damagelist1[1] + damagelist4[1]
|
||||||
damagelist4[2] = damagelist1[2] + damagelist4[2]
|
damagelist4[2] = damagelist1[2] + damagelist4[2]
|
||||||
damagelist4[2] += damage3
|
damagelist4[2] += damage3
|
||||||
skill_info_list.append({'name': '强化普攻', 'damagelist': damagelist4})
|
skill_info_list.append(
|
||||||
|
{'name': '强化普攻', 'damagelist': damagelist4}
|
||||||
|
)
|
||||||
|
|
||||||
skill_multiplier = (self.Skill_num('BPSkill', 'BPSkill') / 3) * 0.8
|
skill_multiplier = (self.Skill_num('BPSkill', 'BPSkill') / 3) * 0.8
|
||||||
damagelist5 = await calculate_damage(
|
damagelist5 = await calculate_damage(
|
||||||
@ -349,7 +359,9 @@ class Welt(BaseAvatar):
|
|||||||
damagelist5[1] = damagelist2[1] + damagelist5[1]
|
damagelist5[1] = damagelist2[1] + damagelist5[1]
|
||||||
damagelist5[2] = damagelist2[2] + damagelist5[2]
|
damagelist5[2] = damagelist2[2] + damagelist5[2]
|
||||||
damagelist5[2] += damage3
|
damagelist5[2] += damage3
|
||||||
skill_info_list.append({'name': '强化战技', 'damagelist': damagelist5})
|
skill_info_list.append(
|
||||||
|
{'name': '强化战技', 'damagelist': damagelist5}
|
||||||
|
)
|
||||||
|
|
||||||
logger.info(skill_info_list)
|
logger.info(skill_info_list)
|
||||||
return skill_info_list
|
return skill_info_list
|
||||||
@ -378,7 +390,9 @@ class Danhengil(BaseAvatar):
|
|||||||
|
|
||||||
def extra_ability(self):
|
def extra_ability(self):
|
||||||
logger.info('额外能力')
|
logger.info('额外能力')
|
||||||
logger.info('对拥有虚数属性弱点的敌方目标造成伤害时, 暴击伤害提高24%。')
|
logger.info(
|
||||||
|
'对拥有虚数属性弱点的敌方目标造成伤害时, 暴击伤害提高24%。'
|
||||||
|
)
|
||||||
self.extra_ability_attribute['CriticalDamageBase'] = 0.24
|
self.extra_ability_attribute['CriticalDamageBase'] = 0.24
|
||||||
|
|
||||||
async def getdamage(
|
async def getdamage(
|
||||||
@ -406,18 +420,18 @@ class Danhengil(BaseAvatar):
|
|||||||
damage_c = 0
|
damage_c = 0
|
||||||
damage_e = 0
|
damage_e = 0
|
||||||
damage_a = 0
|
damage_a = 0
|
||||||
|
add_attr_bonus: Dict[str, float] = {}
|
||||||
for i in range(1, 3):
|
for i in range(1, 3):
|
||||||
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
||||||
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
||||||
add_attr_bonus[
|
add_attr_bonus['AllDamageAddedRatio'] = (
|
||||||
'AllDamageAddedRatio'
|
damage_buff * injury_add
|
||||||
] = damage_buff * injury_add + add_attr_bonus.get(
|
+ add_attr_bonus.get('AllDamageAddedRatio', 0)
|
||||||
'AllDamageAddedRatio', 0
|
|
||||||
)
|
)
|
||||||
if self.avatar_rank >= 4:
|
if self.avatar_rank >= 4:
|
||||||
add_attr_bonus[
|
add_attr_bonus['CriticalDamageBase'] = (
|
||||||
'CriticalDamageBase'
|
critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
||||||
] = critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
)
|
||||||
damage1, damage2, damage3 = await calculate_damage(
|
damage1, damage2, damage3 = await calculate_damage(
|
||||||
base_attr,
|
base_attr,
|
||||||
add_attr_bonus,
|
add_attr_bonus,
|
||||||
@ -449,18 +463,18 @@ class Danhengil(BaseAvatar):
|
|||||||
damage_c = 0
|
damage_c = 0
|
||||||
damage_e = 0
|
damage_e = 0
|
||||||
damage_a = 0
|
damage_a = 0
|
||||||
|
add_attr_bonus: Dict[str, float] = {}
|
||||||
for i in range(1, 4):
|
for i in range(1, 4):
|
||||||
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
||||||
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
||||||
add_attr_bonus[
|
add_attr_bonus['AllDamageAddedRatio'] = (
|
||||||
'AllDamageAddedRatio'
|
damage_buff * injury_add
|
||||||
] = damage_buff * injury_add + add_attr_bonus.get(
|
+ add_attr_bonus.get('AllDamageAddedRatio', 0)
|
||||||
'AllDamageAddedRatio', 0
|
|
||||||
)
|
)
|
||||||
if self.avatar_rank >= 4:
|
if self.avatar_rank >= 4:
|
||||||
add_attr_bonus[
|
add_attr_bonus['CriticalDamageBase'] = (
|
||||||
'CriticalDamageBase'
|
critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
||||||
] = critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
)
|
||||||
damage1, damage2, damage3 = await calculate_damage(
|
damage1, damage2, damage3 = await calculate_damage(
|
||||||
base_attr,
|
base_attr,
|
||||||
add_attr_bonus,
|
add_attr_bonus,
|
||||||
@ -492,26 +506,23 @@ class Danhengil(BaseAvatar):
|
|||||||
damage_c = 0
|
damage_c = 0
|
||||||
damage_e = 0
|
damage_e = 0
|
||||||
damage_a = 0
|
damage_a = 0
|
||||||
|
add_attr_bonus: Dict[str, float] = {}
|
||||||
for i in range(1, 6):
|
for i in range(1, 6):
|
||||||
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
||||||
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
||||||
add_attr_bonus[
|
add_attr_bonus['AllDamageAddedRatio'] = (
|
||||||
'AllDamageAddedRatio'
|
damage_buff * injury_add
|
||||||
] = damage_buff * injury_add + add_attr_bonus.get(
|
+ add_attr_bonus.get('AllDamageAddedRatio', 0)
|
||||||
'AllDamageAddedRatio', 0
|
|
||||||
)
|
)
|
||||||
if self.avatar_rank >= 4:
|
if self.avatar_rank >= 4:
|
||||||
add_attr_bonus[
|
add_attr_bonus['CriticalDamageBase'] = (
|
||||||
'CriticalDamageBase'
|
critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
||||||
] = critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
)
|
||||||
else:
|
elif i >= 4:
|
||||||
if i >= 4:
|
critical_buff = (i - 3) * critical_damage_add
|
||||||
critical_buff = (i - 3) * critical_damage_add
|
add_attr_bonus['CriticalDamageBase'] = (
|
||||||
add_attr_bonus[
|
critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
||||||
'CriticalDamageBase'
|
)
|
||||||
] = critical_buff + add_attr_bonus.get(
|
|
||||||
'CriticalDamageBase', 0
|
|
||||||
)
|
|
||||||
damage1, damage2, damage3 = await calculate_damage(
|
damage1, damage2, damage3 = await calculate_damage(
|
||||||
base_attr,
|
base_attr,
|
||||||
add_attr_bonus,
|
add_attr_bonus,
|
||||||
@ -543,26 +554,23 @@ class Danhengil(BaseAvatar):
|
|||||||
damage_c = 0
|
damage_c = 0
|
||||||
damage_e = 0
|
damage_e = 0
|
||||||
damage_a = 0
|
damage_a = 0
|
||||||
|
add_attr_bonus: Dict[str, float] = {}
|
||||||
for i in range(1, 8):
|
for i in range(1, 8):
|
||||||
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
||||||
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
damage_buff = min(max_buff, start_buff + (i - 1) * add_buff)
|
||||||
add_attr_bonus[
|
add_attr_bonus['AllDamageAddedRatio'] = (
|
||||||
'AllDamageAddedRatio'
|
damage_buff * injury_add
|
||||||
] = damage_buff * injury_add + add_attr_bonus.get(
|
+ add_attr_bonus.get('AllDamageAddedRatio', 0)
|
||||||
'AllDamageAddedRatio', 0
|
|
||||||
)
|
)
|
||||||
if self.avatar_rank >= 4:
|
if self.avatar_rank >= 4:
|
||||||
add_attr_bonus[
|
add_attr_bonus['CriticalDamageBase'] = (
|
||||||
'CriticalDamageBase'
|
critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
||||||
] = critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
)
|
||||||
else:
|
elif i >= 4:
|
||||||
if i >= 4:
|
critical_buff = (i - 3) * critical_damage_add
|
||||||
critical_buff = (i - 3) * critical_damage_add
|
add_attr_bonus['CriticalDamageBase'] = (
|
||||||
add_attr_bonus[
|
critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
||||||
'CriticalDamageBase'
|
)
|
||||||
] = critical_buff + add_attr_bonus.get(
|
|
||||||
'CriticalDamageBase', 0
|
|
||||||
)
|
|
||||||
damage1, damage2, damage3 = await calculate_damage(
|
damage1, damage2, damage3 = await calculate_damage(
|
||||||
base_attr,
|
base_attr,
|
||||||
add_attr_bonus,
|
add_attr_bonus,
|
||||||
@ -594,18 +602,18 @@ class Danhengil(BaseAvatar):
|
|||||||
damage_c = 0
|
damage_c = 0
|
||||||
damage_e = 0
|
damage_e = 0
|
||||||
damage_a = 0
|
damage_a = 0
|
||||||
for i in range(1, 4):
|
add_attr_bonus: Dict[str, float] = {}
|
||||||
|
for _ in range(1, 4):
|
||||||
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
add_attr_bonus = copy.deepcopy(attribute_bonus)
|
||||||
damage_buff = min(max_buff, 10)
|
damage_buff = min(max_buff, 10)
|
||||||
add_attr_bonus[
|
add_attr_bonus['AllDamageAddedRatio'] = (
|
||||||
'AllDamageAddedRatio'
|
damage_buff * injury_add
|
||||||
] = damage_buff * injury_add + add_attr_bonus.get(
|
+ add_attr_bonus.get('AllDamageAddedRatio', 0)
|
||||||
'AllDamageAddedRatio', 0
|
|
||||||
)
|
)
|
||||||
critical_buff = 4 * critical_damage_add
|
critical_buff = 4 * critical_damage_add
|
||||||
add_attr_bonus[
|
add_attr_bonus['CriticalDamageBase'] = (
|
||||||
'CriticalDamageBase'
|
critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
||||||
] = critical_buff + add_attr_bonus.get('CriticalDamageBase', 0)
|
)
|
||||||
damage1, damage2, damage3 = await calculate_damage(
|
damage1, damage2, damage3 = await calculate_damage(
|
||||||
base_attr,
|
base_attr,
|
||||||
add_attr_bonus,
|
add_attr_bonus,
|
||||||
|
@ -320,7 +320,7 @@ def calculate_damage_tz(
|
|||||||
# logger.info(f'attack_tz: {attack_tz}')
|
# logger.info(f'attack_tz: {attack_tz}')
|
||||||
if element == 'Imaginary':
|
if element == 'Imaginary':
|
||||||
injury_add_tz = 0.12
|
injury_add_tz = 0.12
|
||||||
damage_tz = (
|
return (
|
||||||
attack_tz
|
attack_tz
|
||||||
* skill_multiplier
|
* skill_multiplier
|
||||||
* damage_ratio
|
* damage_ratio
|
||||||
@ -331,5 +331,3 @@ def calculate_damage_tz(
|
|||||||
* (critical_damage + 1.794)
|
* (critical_damage + 1.794)
|
||||||
* 10
|
* 10
|
||||||
)
|
)
|
||||||
damage_tz
|
|
||||||
return damage_tz
|
|
||||||
|
@ -269,16 +269,19 @@ class BeforeDawn(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
||||||
attribute_bonus['BPSkillDmgAdd'] = bp_skill_dmg_add + (
|
attribute_bonus['BPSkillDmgAdd'] = (
|
||||||
weapon_effect['23010']['Param']['e_dmg'][self.weapon_rank - 1]
|
bp_skill_dmg_add
|
||||||
|
+ (weapon_effect['23010']['Param']['e_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
||||||
attribute_bonus['UltraDmgAdd'] = ultra_dmg_add + (
|
attribute_bonus['UltraDmgAdd'] = (
|
||||||
weapon_effect['23010']['Param']['r_dmg'][self.weapon_rank - 1]
|
ultra_dmg_add
|
||||||
|
+ (weapon_effect['23010']['Param']['r_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
||||||
attribute_bonus['TalentDmgAdd'] = talent_dmg_add + (
|
attribute_bonus['TalentDmgAdd'] = (
|
||||||
weapon_effect['23010']['Param']['t_dmg'][self.weapon_rank - 1]
|
talent_dmg_add
|
||||||
|
+ (weapon_effect['23010']['Param']['t_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -492,10 +495,13 @@ class GeniusesRepose(BaseWeapon):
|
|||||||
):
|
):
|
||||||
if await self.check():
|
if await self.check():
|
||||||
critical_chance_base = attribute_bonus.get('CriticalDamageBase', 0)
|
critical_chance_base = attribute_bonus.get('CriticalDamageBase', 0)
|
||||||
attribute_bonus['CriticalDamageBase'] = critical_chance_base + (
|
attribute_bonus['CriticalDamageBase'] = (
|
||||||
weapon_effect['21020']['Param']['CriticalDamageBase'][
|
critical_chance_base
|
||||||
self.weapon_rank - 1
|
+ (
|
||||||
]
|
weapon_effect['21020']['Param']['CriticalDamageBase'][
|
||||||
|
self.weapon_rank - 1
|
||||||
|
]
|
||||||
|
)
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -518,8 +524,9 @@ class MaketheWorldClamor(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
||||||
attribute_bonus['UltraDmgAdd'] = ultra_dmg_add + (
|
attribute_bonus['UltraDmgAdd'] = (
|
||||||
weapon_effect['21013']['Param']['r_dmg'][self.weapon_rank - 1]
|
ultra_dmg_add
|
||||||
|
+ (weapon_effect['21013']['Param']['r_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -544,8 +551,13 @@ class TheBirthoftheSelf(BaseWeapon):
|
|||||||
):
|
):
|
||||||
if await self.check():
|
if await self.check():
|
||||||
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
||||||
attribute_bonus['TalentDmgAdd'] = talent_dmg_add + (
|
attribute_bonus['TalentDmgAdd'] = (
|
||||||
weapon_effect['21006']['Param']['t_dmg'][self.weapon_rank - 1]
|
talent_dmg_add
|
||||||
|
+ (
|
||||||
|
weapon_effect['21006']['Param']['t_dmg'][
|
||||||
|
self.weapon_rank - 1
|
||||||
|
]
|
||||||
|
)
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
@ -1473,12 +1485,14 @@ class CollapsingSky(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
normal_dmg_add = attribute_bonus.get('NormalDmgAdd', 0)
|
normal_dmg_add = attribute_bonus.get('NormalDmgAdd', 0)
|
||||||
attribute_bonus['NormalDmgAdd'] = normal_dmg_add + (
|
attribute_bonus['NormalDmgAdd'] = (
|
||||||
weapon_effect['20002']['Param']['a_dmg'][self.weapon_rank - 1]
|
normal_dmg_add
|
||||||
|
+ (weapon_effect['20002']['Param']['a_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
||||||
attribute_bonus['BPSkillDmgAdd'] = bp_skill_dmg_add + (
|
attribute_bonus['BPSkillDmgAdd'] = (
|
||||||
weapon_effect['20002']['Param']['e_dmg'][self.weapon_rank - 1]
|
bp_skill_dmg_add
|
||||||
|
+ (weapon_effect['20002']['Param']['e_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -1631,8 +1645,9 @@ class DataBank(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
||||||
attribute_bonus['UltraDmgAdd'] = ultra_dmg_add + (
|
attribute_bonus['UltraDmgAdd'] = (
|
||||||
weapon_effect['20006']['Param']['r_dmg'][self.weapon_rank - 1]
|
ultra_dmg_add
|
||||||
|
+ (weapon_effect['20006']['Param']['r_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -1670,12 +1685,13 @@ class Thisbodyisasword(BaseWeapon):
|
|||||||
resistance_penetration = attribute_bonus.get(
|
resistance_penetration = attribute_bonus.get(
|
||||||
'AllResistancePenetration', 0
|
'AllResistancePenetration', 0
|
||||||
)
|
)
|
||||||
attribute_bonus[
|
attribute_bonus['AllResistancePenetration'] = (
|
||||||
'AllResistancePenetration'
|
resistance_penetration
|
||||||
] = resistance_penetration + (
|
+ (
|
||||||
weapon_effect['23014']['Param']['ResistancePenetration'][
|
weapon_effect['23014']['Param']['ResistancePenetration'][
|
||||||
self.weapon_rank - 1
|
self.weapon_rank - 1
|
||||||
]
|
]
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
@ -59,7 +59,9 @@ class JingYuan(BaseAvatar):
|
|||||||
|
|
||||||
def extra_ability(self):
|
def extra_ability(self):
|
||||||
logger.info('额外能力')
|
logger.info('额外能力')
|
||||||
logger.info('【神君】下回合的攻击段数大于等于6段, 则其下回合的暴击伤害提高25%。')
|
logger.info(
|
||||||
|
'【神君】下回合的攻击段数大于等于6段, 则其下回合的暴击伤害提高25%。'
|
||||||
|
)
|
||||||
self.extra_ability_attribute['CriticalDamageBase'] = 0.25
|
self.extra_ability_attribute['CriticalDamageBase'] = 0.25
|
||||||
logger.info('施放战技后, 暴击率提升10%')
|
logger.info('施放战技后, 暴击率提升10%')
|
||||||
self.extra_ability_attribute['CriticalChanceBase'] = 0.1
|
self.extra_ability_attribute['CriticalChanceBase'] = 0.1
|
||||||
@ -121,7 +123,9 @@ class Danhengil(BaseAvatar):
|
|||||||
|
|
||||||
def extra_ability(self):
|
def extra_ability(self):
|
||||||
logger.info('额外能力')
|
logger.info('额外能力')
|
||||||
logger.info('对拥有虚数属性弱点的敌方目标造成伤害时, 暴击伤害提高24%。')
|
logger.info(
|
||||||
|
'对拥有虚数属性弱点的敌方目标造成伤害时, 暴击伤害提高24%。'
|
||||||
|
)
|
||||||
self.extra_ability_attribute['CriticalDamageBase'] = 0.24
|
self.extra_ability_attribute['CriticalDamageBase'] = 0.24
|
||||||
|
|
||||||
|
|
||||||
@ -336,7 +340,9 @@ class Welt(BaseAvatar):
|
|||||||
|
|
||||||
def extra_ability(self):
|
def extra_ability(self):
|
||||||
logger.info('额外能力')
|
logger.info('额外能力')
|
||||||
logger.info('施放终结技时, 有100%基础概率使目标受到的伤害提高12%, 持续2回合。')
|
logger.info(
|
||||||
|
'施放终结技时, 有100%基础概率使目标受到的伤害提高12%, 持续2回合。'
|
||||||
|
)
|
||||||
logger.info('对被弱点击破的敌方目标造成的伤害提高20')
|
logger.info('对被弱点击破的敌方目标造成的伤害提高20')
|
||||||
self.extra_ability_attribute['AllDamageAddedRatio'] = 0.32
|
self.extra_ability_attribute['AllDamageAddedRatio'] = 0.32
|
||||||
|
|
||||||
|
@ -240,7 +240,6 @@ class Relic110(BaseRelicSetSkill):
|
|||||||
):
|
):
|
||||||
if self.pieces4 and await self.check(base_attr, attribute_bonus):
|
if self.pieces4 and await self.check(base_attr, attribute_bonus):
|
||||||
logger.info('ModifyActionDelay')
|
logger.info('ModifyActionDelay')
|
||||||
pass
|
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
|
|
||||||
@ -263,7 +262,6 @@ class Relic111(BaseRelicSetSkill):
|
|||||||
):
|
):
|
||||||
if self.pieces4 and await self.check(base_attr, attribute_bonus):
|
if self.pieces4 and await self.check(base_attr, attribute_bonus):
|
||||||
logger.info('ModifySPNew')
|
logger.info('ModifySPNew')
|
||||||
pass
|
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
|
|
||||||
|
@ -261,7 +261,9 @@ class RoleInstance:
|
|||||||
# 检查是否有某一属性的抗性穿透
|
# 检查是否有某一属性的抗性穿透
|
||||||
attr_name = attr.split('ResistancePenetration')[0]
|
attr_name = attr.split('ResistancePenetration')[0]
|
||||||
if attr_name in (self.avatar.avatar_element, 'AllDamage'):
|
if attr_name in (self.avatar.avatar_element, 'AllDamage'):
|
||||||
logger.info(f'{attr_name}属性有{merged_attr[attr]}穿透加成')
|
logger.info(
|
||||||
|
f'{attr_name}属性有{merged_attr[attr]}穿透加成'
|
||||||
|
)
|
||||||
enemy_status_resistance += merged_attr[attr]
|
enemy_status_resistance += merged_attr[attr]
|
||||||
# 检查是否有某一技能属性的抗性穿透
|
# 检查是否有某一技能属性的抗性穿透
|
||||||
if attr_name.__contains__('_'):
|
if attr_name.__contains__('_'):
|
||||||
|
@ -269,16 +269,19 @@ class BeforeDawn(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
||||||
attribute_bonus['BPSkillDmgAdd'] = bp_skill_dmg_add + (
|
attribute_bonus['BPSkillDmgAdd'] = (
|
||||||
weapon_effect['23010']['Param']['e_dmg'][self.weapon_rank - 1]
|
bp_skill_dmg_add
|
||||||
|
+ (weapon_effect['23010']['Param']['e_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
||||||
attribute_bonus['UltraDmgAdd'] = ultra_dmg_add + (
|
attribute_bonus['UltraDmgAdd'] = (
|
||||||
weapon_effect['23010']['Param']['r_dmg'][self.weapon_rank - 1]
|
ultra_dmg_add
|
||||||
|
+ (weapon_effect['23010']['Param']['r_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
||||||
attribute_bonus['TalentDmgAdd'] = talent_dmg_add + (
|
attribute_bonus['TalentDmgAdd'] = (
|
||||||
weapon_effect['23010']['Param']['t_dmg'][self.weapon_rank - 1]
|
talent_dmg_add
|
||||||
|
+ (weapon_effect['23010']['Param']['t_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -492,10 +495,13 @@ class GeniusesRepose(BaseWeapon):
|
|||||||
):
|
):
|
||||||
if await self.check():
|
if await self.check():
|
||||||
critical_chance_base = attribute_bonus.get('CriticalDamageBase', 0)
|
critical_chance_base = attribute_bonus.get('CriticalDamageBase', 0)
|
||||||
attribute_bonus['CriticalDamageBase'] = critical_chance_base + (
|
attribute_bonus['CriticalDamageBase'] = (
|
||||||
weapon_effect['21020']['Param']['CriticalDamageBase'][
|
critical_chance_base
|
||||||
self.weapon_rank - 1
|
+ (
|
||||||
]
|
weapon_effect['21020']['Param']['CriticalDamageBase'][
|
||||||
|
self.weapon_rank - 1
|
||||||
|
]
|
||||||
|
)
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -518,8 +524,9 @@ class MaketheWorldClamor(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
||||||
attribute_bonus['UltraDmgAdd'] = ultra_dmg_add + (
|
attribute_bonus['UltraDmgAdd'] = (
|
||||||
weapon_effect['21013']['Param']['r_dmg'][self.weapon_rank - 1]
|
ultra_dmg_add
|
||||||
|
+ (weapon_effect['21013']['Param']['r_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -544,8 +551,13 @@ class TheBirthoftheSelf(BaseWeapon):
|
|||||||
):
|
):
|
||||||
if await self.check():
|
if await self.check():
|
||||||
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
talent_dmg_add = attribute_bonus.get('TalentDmgAdd', 0)
|
||||||
attribute_bonus['TalentDmgAdd'] = talent_dmg_add + (
|
attribute_bonus['TalentDmgAdd'] = (
|
||||||
weapon_effect['21006']['Param']['t_dmg'][self.weapon_rank - 1]
|
talent_dmg_add
|
||||||
|
+ (
|
||||||
|
weapon_effect['21006']['Param']['t_dmg'][
|
||||||
|
self.weapon_rank - 1
|
||||||
|
]
|
||||||
|
)
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
@ -1473,12 +1485,14 @@ class CollapsingSky(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
normal_dmg_add = attribute_bonus.get('NormalDmgAdd', 0)
|
normal_dmg_add = attribute_bonus.get('NormalDmgAdd', 0)
|
||||||
attribute_bonus['NormalDmgAdd'] = normal_dmg_add + (
|
attribute_bonus['NormalDmgAdd'] = (
|
||||||
weapon_effect['20002']['Param']['a_dmg'][self.weapon_rank - 1]
|
normal_dmg_add
|
||||||
|
+ (weapon_effect['20002']['Param']['a_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
bp_skill_dmg_add = attribute_bonus.get('BPSkillDmgAdd', 0)
|
||||||
attribute_bonus['BPSkillDmgAdd'] = bp_skill_dmg_add + (
|
attribute_bonus['BPSkillDmgAdd'] = (
|
||||||
weapon_effect['20002']['Param']['e_dmg'][self.weapon_rank - 1]
|
bp_skill_dmg_add
|
||||||
|
+ (weapon_effect['20002']['Param']['e_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -1631,8 +1645,9 @@ class DataBank(BaseWeapon):
|
|||||||
attribute_bonus: Dict[str, float],
|
attribute_bonus: Dict[str, float],
|
||||||
):
|
):
|
||||||
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
ultra_dmg_add = attribute_bonus.get('UltraDmgAdd', 0)
|
||||||
attribute_bonus['UltraDmgAdd'] = ultra_dmg_add + (
|
attribute_bonus['UltraDmgAdd'] = (
|
||||||
weapon_effect['20006']['Param']['r_dmg'][self.weapon_rank - 1]
|
ultra_dmg_add
|
||||||
|
+ (weapon_effect['20006']['Param']['r_dmg'][self.weapon_rank - 1])
|
||||||
)
|
)
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
|
||||||
@ -1670,12 +1685,13 @@ class Thisbodyisasword(BaseWeapon):
|
|||||||
resistance_penetration = attribute_bonus.get(
|
resistance_penetration = attribute_bonus.get(
|
||||||
'AllResistancePenetration', 0
|
'AllResistancePenetration', 0
|
||||||
)
|
)
|
||||||
attribute_bonus[
|
attribute_bonus['AllResistancePenetration'] = (
|
||||||
'AllResistancePenetration'
|
resistance_penetration
|
||||||
] = resistance_penetration + (
|
+ (
|
||||||
weapon_effect['23014']['Param']['ResistancePenetration'][
|
weapon_effect['23014']['Param']['ResistancePenetration'][
|
||||||
self.weapon_rank - 1
|
self.weapon_rank - 1
|
||||||
]
|
]
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
return attribute_bonus
|
return attribute_bonus
|
||||||
|
@ -130,7 +130,9 @@ async def get_char_args(
|
|||||||
if isinstance(char_data, str):
|
if isinstance(char_data, str):
|
||||||
return char_data
|
return char_data
|
||||||
else:
|
else:
|
||||||
for i, s in enumerate(['头部', '手部', '躯干', '腿部', '位面球', '连结绳']):
|
for i, s in enumerate(
|
||||||
|
['头部', '手部', '躯干', '腿部', '位面球', '连结绳']
|
||||||
|
):
|
||||||
if '赤沙' in part:
|
if '赤沙' in part:
|
||||||
continue
|
continue
|
||||||
if part[-1] in PieceName_ilst[i]:
|
if part[-1] in PieceName_ilst[i]:
|
||||||
|
@ -96,18 +96,18 @@ class Character:
|
|||||||
set_property = status_add.Property
|
set_property = status_add.Property
|
||||||
set_value = status_add.Value
|
set_value = status_add.Value
|
||||||
if set_property != '':
|
if set_property != '':
|
||||||
self.add_attr[
|
self.add_attr[set_property] = (
|
||||||
set_property
|
set_value + self.add_attr.get(set_property, 0)
|
||||||
] = set_value + self.add_attr.get(set_property, 0)
|
)
|
||||||
if count == 4:
|
if count == 4:
|
||||||
status_add = RelicSetSkill.RelicSet[str(set_id)]['4']
|
status_add = RelicSetSkill.RelicSet[str(set_id)]['4']
|
||||||
if status_add:
|
if status_add:
|
||||||
set_property = status_add.Property
|
set_property = status_add.Property
|
||||||
set_value = status_add.Value
|
set_value = status_add.Value
|
||||||
if set_property != '':
|
if set_property != '':
|
||||||
self.add_attr[
|
self.add_attr[set_property] = (
|
||||||
set_property
|
set_value + self.add_attr.get(set_property, 0)
|
||||||
] = set_value + self.add_attr.get(set_property, 0)
|
)
|
||||||
|
|
||||||
# logger.info(json.dumps(self.base_attributes))
|
# logger.info(json.dumps(self.base_attributes))
|
||||||
# logger.info(json.dumps(self.add_attr))
|
# logger.info(json.dumps(self.add_attr))
|
||||||
|
@ -54,7 +54,9 @@ async def draw_enka_card(uid: str, char_list: List, showfrom: int = 0):
|
|||||||
return await convert_img(Image.new('RGBA', (0, 1), (255, 255, 255)))
|
return await convert_img(Image.new('RGBA', (0, 1), (255, 255, 255)))
|
||||||
else:
|
else:
|
||||||
line1 = f'UID {uid} 刷新成功'
|
line1 = f'UID {uid} 刷新成功'
|
||||||
line2 = f'可以使用 sr查询{char_data_list[0]["avatarName"]} 查询详情角色面板'
|
line2 = (
|
||||||
|
f'可以使用 sr查询{char_data_list[0]["avatarName"]} 查询详情角色面板'
|
||||||
|
)
|
||||||
char_num = len(char_data_list)
|
char_num = len(char_data_list)
|
||||||
if char_num <= 4:
|
if char_num <= 4:
|
||||||
based_w, based_h = 1380, 926
|
based_w, based_h = 1380, 926
|
||||||
|
@ -8,7 +8,9 @@ from gsuid_core.utils.plugins_config.models import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
CONIFG_DEFAULT: Dict[str, GSC] = {
|
CONIFG_DEFAULT: Dict[str, GSC] = {
|
||||||
'SignTime': GsListStrConfig('每晚签到时间设置', '每晚米游社签到时间设置(时,分)', ['0', '38']),
|
'SignTime': GsListStrConfig(
|
||||||
|
'每晚签到时间设置', '每晚米游社签到时间设置(时,分)', ['0', '38']
|
||||||
|
),
|
||||||
'SignReportSimple': GsBoolConfig(
|
'SignReportSimple': GsBoolConfig(
|
||||||
'简洁签到报告',
|
'简洁签到报告',
|
||||||
'开启后可以大大减少每日签到报告字数',
|
'开启后可以大大减少每日签到报告字数',
|
||||||
|
@ -39,6 +39,8 @@ async def get_gachalog_by_link(bot: Bot, ev: Event):
|
|||||||
if ev.command.startswith('强制'):
|
if ev.command.startswith('强制'):
|
||||||
await bot.logger.info('[WARNING]本次为强制刷新')
|
await bot.logger.info('[WARNING]本次为强制刷新')
|
||||||
is_force = True
|
is_force = True
|
||||||
await bot.send(f'UID{uid}开始执行[刷新抽卡记录],需要一定时间...请勿重复触发!')
|
await bot.send(
|
||||||
|
f'UID{uid}开始执行[刷新抽卡记录],需要一定时间...请勿重复触发!'
|
||||||
|
)
|
||||||
im = await save_gachalogs(uid, gacha_url, None, is_force)
|
im = await save_gachalogs(uid, gacha_url, None, is_force)
|
||||||
return await bot.send(im)
|
return await bot.send(im)
|
||||||
|
@ -17,5 +17,7 @@ async def send_download_resource_msg(bot: Bot, ev: Event):
|
|||||||
|
|
||||||
|
|
||||||
async def startup():
|
async def startup():
|
||||||
logger.info('[sr资源文件下载] 正在检查与下载缺失的资源文件,可能需要较长时间,请稍等')
|
logger.info(
|
||||||
|
'[sr资源文件下载] 正在检查与下载缺失的资源文件,可能需要较长时间,请稍等'
|
||||||
|
)
|
||||||
logger.info(f'[sr资源文件下载] {await download_all_resource()}')
|
logger.info(f'[sr资源文件下载] {await download_all_resource()}')
|
||||||
|
@ -65,7 +65,9 @@ async def send_daily_sign():
|
|||||||
single['msg'], 'direct', qid, single['bot_id'], '', ''
|
single['msg'], 'direct', qid, single['bot_id'], '', ''
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.warning(f'[SR每日全部签到] QQ {qid} 私聊推送失败!错误信息:{e}')
|
logger.warning(
|
||||||
|
f'[SR每日全部签到] QQ {qid} 私聊推送失败!错误信息:{e}'
|
||||||
|
)
|
||||||
await asyncio.sleep(0.5)
|
await asyncio.sleep(0.5)
|
||||||
logger.info('[SR每日全部签到]私聊推送完成')
|
logger.info('[SR每日全部签到]私聊推送完成')
|
||||||
|
|
||||||
@ -74,7 +76,9 @@ async def send_daily_sign():
|
|||||||
# 根据succee数判断是否为简洁推送
|
# 根据succee数判断是否为简洁推送
|
||||||
if group_msg_list[gid]['success'] >= 0:
|
if group_msg_list[gid]['success'] >= 0:
|
||||||
report = (
|
report = (
|
||||||
'以下为签到失败报告:{}'.format(group_msg_list[gid]['push_message'])
|
'以下为签到失败报告:{}'.format(
|
||||||
|
group_msg_list[gid]['push_message']
|
||||||
|
)
|
||||||
if group_msg_list[gid]['push_message'] != ''
|
if group_msg_list[gid]['push_message'] != ''
|
||||||
else ''
|
else ''
|
||||||
)
|
)
|
||||||
|
@ -57,11 +57,15 @@ async def sign_in(sr_uid: str) -> str:
|
|||||||
Header['x-rpc-challenge'] = ch
|
Header['x-rpc-challenge'] = ch
|
||||||
Header['x-rpc-validate'] = vl
|
Header['x-rpc-validate'] = vl
|
||||||
Header['x-rpc-seccode'] = f'{vl}|jordan'
|
Header['x-rpc-seccode'] = f'{vl}|jordan'
|
||||||
logger.info(f'[SR签到] {sr_uid} 已获取验证码, 等待时间{delay}秒')
|
logger.info(
|
||||||
|
f'[SR签到] {sr_uid} 已获取验证码, 等待时间{delay}秒'
|
||||||
|
)
|
||||||
await asyncio.sleep(delay)
|
await asyncio.sleep(delay)
|
||||||
else:
|
else:
|
||||||
delay = 605 + random.randint(1, 120)
|
delay = 605 + random.randint(1, 120)
|
||||||
logger.info(f'[SR签到] {sr_uid} 未获取验证码,等待{delay}秒后重试...')
|
logger.info(
|
||||||
|
f'[SR签到] {sr_uid} 未获取验证码,等待{delay}秒后重试...'
|
||||||
|
)
|
||||||
await asyncio.sleep(delay)
|
await asyncio.sleep(delay)
|
||||||
continue
|
continue
|
||||||
logger.info('配置文件暂未开启[跳过无感验证],结束本次任务...')
|
logger.info('配置文件暂未开启[跳过无感验证],结束本次任务...')
|
||||||
@ -70,7 +74,9 @@ async def sign_in(sr_uid: str) -> str:
|
|||||||
if index == 0:
|
if index == 0:
|
||||||
logger.info(f'[SR签到] {sr_uid} 该用户无校验码!')
|
logger.info(f'[SR签到] {sr_uid} 该用户无校验码!')
|
||||||
else:
|
else:
|
||||||
logger.info(f'[SR签到] [无感验证] {sr_uid} 该用户重试 {index} 次验证成功!')
|
logger.info(
|
||||||
|
f'[SR签到] [无感验证] {sr_uid} 该用户重试 {index} 次验证成功!'
|
||||||
|
)
|
||||||
break
|
break
|
||||||
if (int(str(sr_uid)[0]) > 5) and (sign_data.code == 'ok'):
|
if (int(str(sr_uid)[0]) > 5) and (sign_data.code == 'ok'):
|
||||||
# 国际服签到无risk_code字段
|
# 国际服签到无risk_code字段
|
||||||
@ -103,7 +109,9 @@ async def sign_in(sr_uid: str) -> str:
|
|||||||
sign_missed -= 1
|
sign_missed -= 1
|
||||||
sign_missed = sign_info.sign_cnt_missed or sign_missed
|
sign_missed = sign_info.sign_cnt_missed or sign_missed
|
||||||
im = f'{mes_im}!\n{get_im}\n本月漏签次数:{sign_missed}'
|
im = f'{mes_im}!\n{get_im}\n本月漏签次数:{sign_missed}'
|
||||||
logger.info(f'[SR签到] {sr_uid} 签到完成, 结果: {mes_im}, 漏签次数: {sign_missed}')
|
logger.info(
|
||||||
|
f'[SR签到] {sr_uid} 签到完成, 结果: {mes_im}, 漏签次数: {sign_missed}'
|
||||||
|
)
|
||||||
return im
|
return im
|
||||||
|
|
||||||
|
|
||||||
@ -163,7 +171,9 @@ async def daily_sign():
|
|||||||
delay = 1
|
delay = 1
|
||||||
else:
|
else:
|
||||||
delay = 50 + random.randint(3, 45)
|
delay = 50 + random.randint(3, 45)
|
||||||
logger.info(f'[SR签到] 已签到{len(tasks)}个用户, 等待{delay}秒进行下一次签到')
|
logger.info(
|
||||||
|
f'[SR签到] 已签到{len(tasks)}个用户, 等待{delay}秒进行下一次签到'
|
||||||
|
)
|
||||||
tasks.clear()
|
tasks.clear()
|
||||||
already = 0
|
already = 0
|
||||||
await asyncio.sleep(delay)
|
await asyncio.sleep(delay)
|
||||||
|
@ -23,7 +23,6 @@ from ..utils.api import get_sqla
|
|||||||
|
|
||||||
|
|
||||||
async def get_user_card(bot_id: str, user_id: str):
|
async def get_user_card(bot_id: str, user_id: str):
|
||||||
pass
|
|
||||||
sqla = get_sqla(bot_id)
|
sqla = get_sqla(bot_id)
|
||||||
return await sqla.get_bind_uid_list(user_id)
|
return await sqla.get_bind_uid_list(user_id)
|
||||||
# w, h = 750, len(uid_list) * 750 + 470
|
# w, h = 750, len(uid_list) * 750 + 470
|
||||||
|
@ -81,7 +81,9 @@ async def download_all_file_from_cos():
|
|||||||
or not Path.stat(path).st_size
|
or not Path.stat(path).st_size
|
||||||
or not is_diff
|
or not is_diff
|
||||||
):
|
):
|
||||||
logger.info(f'[cos]开始下载[{resource_type}]_[{name}]...')
|
logger.info(
|
||||||
|
f'[cos]开始下载[{resource_type}]_[{name}]...'
|
||||||
|
)
|
||||||
temp_num += 1
|
temp_num += 1
|
||||||
if isinstance(url, int):
|
if isinstance(url, int):
|
||||||
logger.error(
|
logger.error(
|
||||||
@ -119,4 +121,6 @@ async def download_all_file_from_cos():
|
|||||||
await _download(TASKS)
|
await _download(TASKS)
|
||||||
await _download(TASKS)
|
await _download(TASKS)
|
||||||
if count := len(failed_list):
|
if count := len(failed_list):
|
||||||
logger.error(f'[cos]仍有{count}个文件未下载,请使用命令 `下载全部资源` 重新下载')
|
logger.error(
|
||||||
|
f'[cos]仍有{count}个文件未下载,请使用命令 `下载全部资源` 重新下载'
|
||||||
|
)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user