dev
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
from abc import ABC, abstractmethod
|
from abc import ABC, abstractmethod
|
||||||
from typing import Any, Literal, Mapping
|
from typing import Any, Literal, Mapping
|
||||||
|
|
||||||
|
|
||||||
class CharacterProperty(ABC):
|
class CharacterProperty(ABC):
|
||||||
"""
|
"""
|
||||||
抽象类,用于定义Character的接口和属性
|
抽象类,用于定义Character的接口和属性
|
||||||
@@ -152,7 +153,8 @@ class CharacterProperty(ABC):
|
|||||||
攻击强化P=0,
|
攻击强化P=0,
|
||||||
增益量=0,
|
增益量=0,
|
||||||
增益量P=0,
|
增益量P=0,
|
||||||
**kwargs: Mapping[Literal[
|
**kwargs: Mapping[
|
||||||
|
Literal[
|
||||||
'STR',
|
'STR',
|
||||||
'INT',
|
'INT',
|
||||||
'AtkP',
|
'AtkP',
|
||||||
@@ -187,7 +189,9 @@ class CharacterProperty(ABC):
|
|||||||
'Spirit',
|
'Spirit',
|
||||||
'Vitality',
|
'Vitality',
|
||||||
'EquEffectRatio',
|
'EquEffectRatio',
|
||||||
], Any],
|
],
|
||||||
|
Any,
|
||||||
|
],
|
||||||
) -> None:
|
) -> None:
|
||||||
"""设置角色属性"""
|
"""设置角色属性"""
|
||||||
pass
|
pass
|
||||||
@@ -198,7 +202,7 @@ class CharacterProperty(ABC):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
@abstractmethod
|
@abstractmethod
|
||||||
def AddSkillLv(self, min: int, max: int, lv: int, type=-1,exceptSkills:list[str]=[]) -> None:
|
def AddSkillLv(self, min: int, max: int, lv: int, type=-1, exceptSkills: list[str] = []) -> None:
|
||||||
"""增加技能等级"""
|
"""增加技能等级"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@@ -236,3 +240,8 @@ class CharacterProperty(ABC):
|
|||||||
def calc(self, setInfo: dict[str, dict]) -> dict:
|
def calc(self, setInfo: dict[str, dict]) -> dict:
|
||||||
"""计算角色属性"""
|
"""计算角色属性"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@abstractmethod
|
||||||
|
def GetReinforceSum(self) -> list[int]:
|
||||||
|
"""获取强化总和"""
|
||||||
|
pass
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ from typing import Any, Literal
|
|||||||
|
|
||||||
from core.abstract.character import CharacterProperty
|
from core.abstract.character import CharacterProperty
|
||||||
from core.basic.skill import Skill
|
from core.basic.skill import Skill
|
||||||
from core.basic.equipment import EquEffect
|
from core.basic.equipment import EquEffect, OathSuit, OathSuitSkill, Suit
|
||||||
from ..formula import 获取基础属性, 获取唤醒属性
|
from ..formula import 获取基础属性, 获取唤醒属性
|
||||||
from ..roleinfo import CharacterEquipInfo, get_key_by_value, CharacterOathInfo
|
from ..roleinfo import CharacterEquipInfo, get_key_by_value, CharacterOathInfo
|
||||||
from .jade import Jade
|
from .jade import Jade
|
||||||
@@ -22,6 +22,14 @@ class CharacterBase(CharacterProperty):
|
|||||||
"""装备打造信息"""
|
"""装备打造信息"""
|
||||||
charOathInfo: list['CharacterOathInfo']
|
charOathInfo: list['CharacterOathInfo']
|
||||||
"""誓约打造信息"""
|
"""誓约打造信息"""
|
||||||
|
charOathSkillId: int
|
||||||
|
"""誓约技能ID"""
|
||||||
|
suitInfo: list['Suit']
|
||||||
|
"""套装信息"""
|
||||||
|
oathSuitInfo: list['OathSuit']
|
||||||
|
"""誓约套装信息"""
|
||||||
|
oathSkillInfo: list['OathSuitSkill']
|
||||||
|
"""誓约技能信息"""
|
||||||
equ_effect: list['EquEffect'] = []
|
equ_effect: list['EquEffect'] = []
|
||||||
"""装备效果列表"""
|
"""装备效果列表"""
|
||||||
equ_options: dict[str, int] = {}
|
equ_options: dict[str, int] = {}
|
||||||
@@ -336,3 +344,28 @@ class CharacterBase(CharacterProperty):
|
|||||||
return weapon.itemDetailType, weapon.categorize
|
return weapon.itemDetailType, weapon.categorize
|
||||||
|
|
||||||
# endregion
|
# endregion
|
||||||
|
|
||||||
|
def GetReinforceSum(self) -> list[int]:
|
||||||
|
"""获取强化总和"""
|
||||||
|
reinforce_0 = 0
|
||||||
|
"""防具"""
|
||||||
|
reinforce_1 = 0
|
||||||
|
"""首饰"""
|
||||||
|
reinforce_2 = 0
|
||||||
|
"""特殊装备"""
|
||||||
|
reinforce_3 = 0
|
||||||
|
"""武器"""
|
||||||
|
for part in self.charEquipInfo.keys():
|
||||||
|
if self.charEquipInfo[part] is None:
|
||||||
|
continue
|
||||||
|
num = self.charEquipInfo[part].reinforce
|
||||||
|
# if part == '武器':
|
||||||
|
# reinforce_3 += num
|
||||||
|
if part in ['上衣', '头肩', '下装', '腰带', '鞋']:
|
||||||
|
reinforce_0 += num
|
||||||
|
if part in ['手镯', '项链', '戒指']:
|
||||||
|
reinforce_1 += num
|
||||||
|
if part in ['耳环', '辅助装备', '魔法石']:
|
||||||
|
reinforce_2 += num
|
||||||
|
reinforce = reinforce_0 + reinforce_1 + reinforce_2 + reinforce_3
|
||||||
|
return [reinforce, reinforce_0, reinforce_1, reinforce_2, reinforce_3]
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import sys
|
import sys
|
||||||
from uuid import uuid1
|
from uuid import uuid1
|
||||||
|
|
||||||
from core.basic.equipment import get_equipment
|
from core.basic.equipment import OathSuit, Suit, get_equipment
|
||||||
from ..formula import 增幅计算, 强化技攻, 武器强化计算, 精通计算, 耳环计算, 左右计算, 锻造计算
|
from ..formula import 增幅计算, 强化技攻, 武器强化计算, 精通计算, 耳环计算, 左右计算, 锻造计算
|
||||||
from ..roleinfo import CharacterEquipInfo, CharacterOathInfo, get_key_by_value
|
from ..roleinfo import CharacterEquipInfo, CharacterOathInfo, get_key_by_value
|
||||||
from .base import CharacterBase
|
from .base import CharacterBase
|
||||||
@@ -22,6 +22,7 @@ class CalcEquipMixin(CharacterBase):
|
|||||||
for key in info['oaths']:
|
for key in info['oaths']:
|
||||||
# 导入誓约打造信息、誓约信息
|
# 导入誓约打造信息、誓约信息
|
||||||
self.charOathInfo.append(CharacterOathInfo(info['oaths'][key], self.equVersion, key))
|
self.charOathInfo.append(CharacterOathInfo(info['oaths'][key], self.equVersion, key))
|
||||||
|
self.charOathSkillId = info.get('oathSkill', 1)
|
||||||
|
|
||||||
def calc_init(self, setInfo: dict[str, dict]):
|
def calc_init(self, setInfo: dict[str, dict]):
|
||||||
self.equ_options = setInfo.get('options', {})
|
self.equ_options = setInfo.get('options', {})
|
||||||
@@ -89,8 +90,8 @@ class CalcEquipMixin(CharacterBase):
|
|||||||
oathSuitInfo[max_point_oath_suit]['point'] -= min(2550 - suitInfo[max_point_suit]['point'], oathSuitInfo[max_point_oath_suit]['point'])
|
oathSuitInfo[max_point_oath_suit]['point'] -= min(2550 - suitInfo[max_point_suit]['point'], oathSuitInfo[max_point_oath_suit]['point'])
|
||||||
pass
|
pass
|
||||||
suits = zero_point_suits + ([max_point_suit] if max_point_suit is not None else [])
|
suits = zero_point_suits + ([max_point_suit] if max_point_suit is not None else [])
|
||||||
suitList = []
|
suitList: list[Suit] = []
|
||||||
oathSuitList = []
|
oathSuitList: list[OathSuit] = []
|
||||||
res = []
|
res = []
|
||||||
for suit in suits:
|
for suit in suits:
|
||||||
if suitInfo[suit]['point'] == 0:
|
if suitInfo[suit]['point'] == 0:
|
||||||
@@ -99,20 +100,20 @@ class CalcEquipMixin(CharacterBase):
|
|||||||
suitList += equs.get_suit_info(suit, suitInfo[suit]['point'], 0)
|
suitList += equs.get_suit_info(suit, suitInfo[suit]['point'], 0)
|
||||||
if len(suitList) == 0:
|
if len(suitList) == 0:
|
||||||
continue
|
continue
|
||||||
temp = suitList[-1]
|
self.suitInfo = suitList
|
||||||
res.append(
|
temp = suitList[-1]
|
||||||
{
|
res.append(
|
||||||
'id': temp.id,
|
{
|
||||||
'name': temp.name,
|
'id': temp.id,
|
||||||
'rarity': temp.rarity,
|
'name': temp.name,
|
||||||
'point': suitInfo[suit]['point'],
|
'rarity': temp.rarity,
|
||||||
'count': suitInfo[suit]['count'],
|
'point': suitInfo[suit]['point'],
|
||||||
'level': temp.level,
|
'count': suitInfo[suit]['count'],
|
||||||
'imageUrl': temp.imageUrl,
|
'level': temp.level,
|
||||||
'value': temp.value,
|
'imageUrl': temp.imageUrl,
|
||||||
}
|
'value': temp.value,
|
||||||
)
|
}
|
||||||
|
)
|
||||||
for suit in oathSuitInfo:
|
for suit in oathSuitInfo:
|
||||||
if oathSuitInfo[suit]['point'] == 0:
|
if oathSuitInfo[suit]['point'] == 0:
|
||||||
oathSuitList += equs.get_oath_suit_info(suit, 0, oathSuitInfo[suit]['count'])
|
oathSuitList += equs.get_oath_suit_info(suit, 0, oathSuitInfo[suit]['count'])
|
||||||
@@ -120,17 +121,47 @@ class CalcEquipMixin(CharacterBase):
|
|||||||
oathSuitList += equs.get_oath_suit_info(suit, oathSuitInfo[suit]['point'], 0)
|
oathSuitList += equs.get_oath_suit_info(suit, oathSuitInfo[suit]['point'], 0)
|
||||||
if len(oathSuitList) == 0:
|
if len(oathSuitList) == 0:
|
||||||
continue
|
continue
|
||||||
print(oathSuitList[0].__dict__)
|
for suit in suitList:
|
||||||
suits_effect = [i.id for i in suitList]
|
i = suit.id
|
||||||
for i in suits_effect:
|
|
||||||
func = equs.funs.execture(f'suit_{i}')
|
func = equs.funs.execture(f'suit_{i}')
|
||||||
suit = next((x for x in equs.suits if str(x.id) == str(i)), None)
|
suit = next((x for x in equs.suits if str(x.id) == str(i)), None)
|
||||||
if func is not None:
|
# 誓约和套装进行匹配
|
||||||
func(self)
|
# 如果存在誓约和套装是同一个套装
|
||||||
|
# 则直接不执行原套装效果,执行誓约套装增强的效果
|
||||||
|
oathEffect = next((x for x in oathSuitList if x.suitId == suit.suitId), None)
|
||||||
if suit is not None:
|
if suit is not None:
|
||||||
filtered_dict = {k: v for k, v in suit.__dict__.items() if k[0].isupper()}
|
filtered_dict = {k: v for k, v in suit.__dict__.items() if k[0].isupper()}
|
||||||
self.SetStatus(**filtered_dict)
|
self.SetStatus(**filtered_dict)
|
||||||
|
if func is not None and oathEffect is None:
|
||||||
|
print(f'套装 {suit.name} 生效')
|
||||||
|
func(self)
|
||||||
|
else:
|
||||||
|
# 当存在套装和誓约不匹配的时候,誓约技能只能是1号位
|
||||||
|
self.charOathSkillId = 1
|
||||||
|
oathSkillEffect = []
|
||||||
self.max_point = max([i['point'] for i in res], default=0)
|
self.max_point = max([i['point'] for i in res], default=0)
|
||||||
|
self.oathSuitInfo = []
|
||||||
|
self.oathSkillInfo = []
|
||||||
|
# 当套装点数达到太初时,誓约技能生效
|
||||||
|
if self.max_point >= 2550:
|
||||||
|
for oathSuit in oathSuitList:
|
||||||
|
skill = next((x for x in oathSuit.skills if x.skillId == self.charOathSkillId), None)
|
||||||
|
# 誓约套装效果生效
|
||||||
|
filtered_dict = {k: v for k, v in oathSuit.__dict__.items() if k[0].isupper()}
|
||||||
|
self.SetStatus(**filtered_dict)
|
||||||
|
if skill is not None:
|
||||||
|
oathSkillEffect.append(skill)
|
||||||
|
# 誓约技能效果生效
|
||||||
|
filtered_dict = {k: v for k, v in skill.__dict__.items() if k[0].isupper()}
|
||||||
|
self.SetStatus(**filtered_dict)
|
||||||
|
self.oathSkillInfo.append(skill)
|
||||||
|
self.oathSuitInfo.append(oathSuit)
|
||||||
|
|
||||||
|
for skill in oathSkillEffect:
|
||||||
|
func = equs.funs.execture(f'oath_skill_{skill.id}')
|
||||||
|
if func is not None:
|
||||||
|
print(f'誓约技能 {skill.name} 生效')
|
||||||
|
func(self)
|
||||||
if self.max_point >= 2550:
|
if self.max_point >= 2550:
|
||||||
skillAttack = (self.max_point - 2550) // 70 * 0.01
|
skillAttack = (self.max_point - 2550) // 70 * 0.01
|
||||||
buffer = (self.max_point - 2550) // 70 * 100
|
buffer = (self.max_point - 2550) // 70 * 100
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ from core.abstract.character import CharacterProperty
|
|||||||
from core.basic.property import CharacterInfo
|
from core.basic.property import CharacterInfo
|
||||||
from core.basic.skill import Skill
|
from core.basic.skill import Skill
|
||||||
|
|
||||||
from core.basic.equipment import get_equipment, EquEffect, Equ
|
from core.basic.equipment import Suit, get_equipment, EquEffect, Equ, OathSuit
|
||||||
|
|
||||||
# from core.basic.equipment import equipments
|
# from core.basic.equipment import equipments
|
||||||
# from core.basic.skill import Skill, ActiveSkill, PassiveSkill
|
# from core.basic.skill import Skill, ActiveSkill, PassiveSkill
|
||||||
|
|||||||
@@ -151,9 +151,22 @@ class Equipments:
|
|||||||
with Session(self.engine) as session:
|
with Session(self.engine) as session:
|
||||||
db_list = session.query(SuitData).all()
|
db_list = session.query(SuitData).all()
|
||||||
for item in db_list:
|
for item in db_list:
|
||||||
suit = Suit(**{k: v for k, v in item.__dict__.items() if not k.startswith('_')})
|
lvs = len(item.point.split(','))
|
||||||
self.suits.append(suit)
|
suits = {k: v for k, v in item.__dict__.items() if not k.startswith('_')}
|
||||||
self.suit_dict.setdefault(str(suit.suitId), []).append(suit)
|
for i in range(1, lvs + 1):
|
||||||
|
suit = {k: v for k, v in suits.items()}
|
||||||
|
suit['point'] = int(suit['point'].split(',')[i - 1])
|
||||||
|
suit['level'] = i
|
||||||
|
skillAttaks = parse_to_number_list(suit['SkillAttack'], [0])
|
||||||
|
suit['SkillAttack'] = 0 if i - 1 >= len(skillAttaks) else skillAttaks[i - 1]
|
||||||
|
attacks = parse_to_number_list(suit['Attack'], [0])
|
||||||
|
suit['Attack'] = 0 if i - 1 >= len(attacks) else attacks[i - 1]
|
||||||
|
buffers = parse_to_number_list(suit['Buffer'], [0])
|
||||||
|
suit['Buffer'] = 0 if i - 1 >= len(buffers) else buffers[i - 1]
|
||||||
|
suit_obj = Suit(**suit)
|
||||||
|
self.suits.append(suit_obj)
|
||||||
|
self.suit_dict.setdefault(str(suit['suitId']), []).append(suit_obj)
|
||||||
|
pass
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def init_enchants(self):
|
def init_enchants(self):
|
||||||
@@ -357,6 +370,9 @@ class OathSuitSkill:
|
|||||||
bufferValue: str
|
bufferValue: str
|
||||||
|
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
|
for key in ['SkillAttack', 'Attack', 'Buffer']:
|
||||||
|
if kwargs.get(key) is None:
|
||||||
|
kwargs[key] = 0
|
||||||
self.__dict__.update(kwargs)
|
self.__dict__.update(kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,18 @@ from . import emblem
|
|||||||
from . import enchant
|
from . import enchant
|
||||||
from . import sundry
|
from . import sundry
|
||||||
from . import suit
|
from . import suit
|
||||||
|
from . import oathSuitSkill
|
||||||
|
|
||||||
from .register import execture
|
from .register import execture
|
||||||
|
|
||||||
options = [{'id': 1, 'name': '龙战八荒', 'options': ['BUFF OFF', 'BUFF ON', '期望']}, {'id': 2, 'name': '混沌净化', 'options': ['净化', '堕落']}, {'id': 3, 'name': '群猎美学', 'options': ['单刷', '组队']}, {'id': 4, 'name': '魔攻核', 'options': ['普通', '追击']}, {'id': 5, 'name': '传世手杖', 'options': ['BUFF ON', 'BUFF OFF', '期望']}, {'id': 6, 'name': '传世嵌合弓', 'options': ['本能飞跃', '非理性着陆']}]
|
options = [
|
||||||
|
{'id': 1, 'name': '龙战八荒', 'options': ['BUFF OFF', 'BUFF ON', '期望']},
|
||||||
|
{'id': 2, 'name': '混沌净化', 'options': ['净化', '堕落']},
|
||||||
|
{'id': 3, 'name': '群猎美学', 'options': ['单刷', '组队']},
|
||||||
|
{'id': 4, 'name': '魔攻核', 'options': ['普通', '追击']},
|
||||||
|
{'id': 5, 'name': '传世手杖', 'options': ['BUFF ON', 'BUFF OFF', '期望']},
|
||||||
|
{'id': 6, 'name': '传世嵌合弓', 'options': ['本能飞跃', '非理性着陆']},
|
||||||
|
]
|
||||||
|
|
||||||
sundryList = {
|
sundryList = {
|
||||||
'medal_rarity': {'id': 0, 'options': [{'name': f'品质:{i}', 'value': idx} for idx, i in enumerate(['普通', '高级', '稀有', '神器', '传说', '史诗'])]},
|
'medal_rarity': {'id': 0, 'options': [{'name': f'品质:{i}', 'value': idx} for idx, i in enumerate(['普通', '高级', '稀有', '神器', '传说', '史诗'])]},
|
||||||
@@ -28,4 +36,29 @@ sundryList = {
|
|||||||
'costume_card': {'id': 13, 'options': [{'name': f'{i}', 'value': idx} for idx, i in enumerate(['无', '四维(3)|三速(1%)'])]},
|
'costume_card': {'id': 13, 'options': [{'name': f'{i}', 'value': idx} for idx, i in enumerate(['无', '四维(3)|三速(1%)'])]},
|
||||||
}
|
}
|
||||||
|
|
||||||
__all__ = [get_dress_list, calc_dress_effect, options, execture, sundryList, equ, stone, jade, emblem, enchant, sundry, suit]
|
__all__ = [get_dress_list, calc_dress_effect, options, execture, sundryList, equ, stone, jade, emblem, enchant, sundry, suit, oathSuitSkill]
|
||||||
|
|
||||||
|
|
||||||
|
def get_reinforce_sum(char):
|
||||||
|
reinforce_0 = 0
|
||||||
|
"""防具"""
|
||||||
|
reinforce_1 = 0
|
||||||
|
"""首饰"""
|
||||||
|
reinforce_2 = 0
|
||||||
|
"""特殊装备"""
|
||||||
|
reinforce_3 = 0
|
||||||
|
"""武器"""
|
||||||
|
for part in char.charEquipInfo.keys():
|
||||||
|
if char.charEquipInfo[part] is None:
|
||||||
|
continue
|
||||||
|
num = char.charEquipInfo[part].reinforce
|
||||||
|
# if part == '武器':
|
||||||
|
# reinforce_3 += num
|
||||||
|
if part in ['上衣', '头肩', '下装', '腰带', '鞋']:
|
||||||
|
reinforce_0 += num
|
||||||
|
if part in ['手镯', '项链', '戒指']:
|
||||||
|
reinforce_1 += num
|
||||||
|
if part in ['耳环', '辅助装备', '魔法石']:
|
||||||
|
reinforce_2 += num
|
||||||
|
reinforce = reinforce_0 + reinforce_1 + reinforce_2 + reinforce_3
|
||||||
|
return reinforce
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -2,7 +2,7 @@
|
|||||||
# import sys
|
# import sys
|
||||||
from sqlalchemy import Column, Integer, Text, Float
|
from sqlalchemy import Column, Integer, Text, Float
|
||||||
from sqlalchemy import create_engine
|
from sqlalchemy import create_engine
|
||||||
from sqlalchemy.orm import Session,declarative_base
|
from sqlalchemy.orm import Session, declarative_base
|
||||||
|
|
||||||
Base = declarative_base()
|
Base = declarative_base()
|
||||||
metadata = Base.metadata
|
metadata = Base.metadata
|
||||||
@@ -26,6 +26,7 @@ class SuitData(Base):
|
|||||||
bufferValue = Column(Text)
|
bufferValue = Column(Text)
|
||||||
fame = Column(Integer)
|
fame = Column(Integer)
|
||||||
|
|
||||||
|
|
||||||
class EquData(Base):
|
class EquData(Base):
|
||||||
"""
|
"""
|
||||||
装备属性映射
|
装备属性映射
|
||||||
@@ -56,6 +57,7 @@ class EquData(Base):
|
|||||||
Buffer = Column(Text)
|
Buffer = Column(Text)
|
||||||
suit = Column(Text)
|
suit = Column(Text)
|
||||||
|
|
||||||
|
|
||||||
class StoneData(Base):
|
class StoneData(Base):
|
||||||
"""
|
"""
|
||||||
装备属性映射
|
装备属性映射
|
||||||
@@ -86,6 +88,7 @@ class StoneData(Base):
|
|||||||
Buffer = Column(Text)
|
Buffer = Column(Text)
|
||||||
suit = Column(Text)
|
suit = Column(Text)
|
||||||
|
|
||||||
|
|
||||||
class EnchantData(Base):
|
class EnchantData(Base):
|
||||||
__tablename__ = 'enchant'
|
__tablename__ = 'enchant'
|
||||||
|
|
||||||
@@ -96,6 +99,7 @@ class EnchantData(Base):
|
|||||||
fame = Column(Integer)
|
fame = Column(Integer)
|
||||||
rarity = Column(Text)
|
rarity = Column(Text)
|
||||||
|
|
||||||
|
|
||||||
class EmblemData(Base):
|
class EmblemData(Base):
|
||||||
__tablename__ = 'emblem'
|
__tablename__ = 'emblem'
|
||||||
|
|
||||||
@@ -106,6 +110,7 @@ class EmblemData(Base):
|
|||||||
fame = Column(Integer)
|
fame = Column(Integer)
|
||||||
rarity = Column(Text)
|
rarity = Column(Text)
|
||||||
|
|
||||||
|
|
||||||
class JadeData(Base):
|
class JadeData(Base):
|
||||||
__tablename__ = 'jade'
|
__tablename__ = 'jade'
|
||||||
|
|
||||||
@@ -116,11 +121,13 @@ class JadeData(Base):
|
|||||||
unit = Column(Text)
|
unit = Column(Text)
|
||||||
pre = Column(Float)
|
pre = Column(Float)
|
||||||
|
|
||||||
|
|
||||||
class OathData(Base):
|
class OathData(Base):
|
||||||
"""
|
"""
|
||||||
誓约属性映射
|
誓约属性映射
|
||||||
首字母大写的属性为调适可能会影响到的属性
|
首字母大写的属性为调适可能会影响到的属性
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__tablename__ = 'oath'
|
__tablename__ = 'oath'
|
||||||
|
|
||||||
id = Column(Integer, primary_key=True)
|
id = Column(Integer, primary_key=True)
|
||||||
@@ -145,11 +152,13 @@ class OathData(Base):
|
|||||||
suit = Column(Text)
|
suit = Column(Text)
|
||||||
wearUrl = Column(Text)
|
wearUrl = Column(Text)
|
||||||
|
|
||||||
|
|
||||||
class PrimerData(Base):
|
class PrimerData(Base):
|
||||||
"""
|
"""
|
||||||
誓约属性映射
|
誓约属性映射
|
||||||
首字母大写的属性为调适可能会影响到的属性
|
首字母大写的属性为调适可能会影响到的属性
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__tablename__ = 'primer'
|
__tablename__ = 'primer'
|
||||||
|
|
||||||
id = Column(Integer, primary_key=True)
|
id = Column(Integer, primary_key=True)
|
||||||
@@ -174,6 +183,7 @@ class PrimerData(Base):
|
|||||||
suit = Column(Text)
|
suit = Column(Text)
|
||||||
wearUrl = Column(Text)
|
wearUrl = Column(Text)
|
||||||
|
|
||||||
|
|
||||||
class OathSuitData(Base):
|
class OathSuitData(Base):
|
||||||
__tablename__ = 'oathSuit'
|
__tablename__ = 'oathSuit'
|
||||||
|
|
||||||
@@ -190,6 +200,7 @@ class OathSuitData(Base):
|
|||||||
Attack = Column(Text)
|
Attack = Column(Text)
|
||||||
Buffer = Column(Text)
|
Buffer = Column(Text)
|
||||||
|
|
||||||
|
|
||||||
class OathSuitSkillData(Base):
|
class OathSuitSkillData(Base):
|
||||||
__tablename__ = 'oathSuitSkill'
|
__tablename__ = 'oathSuitSkill'
|
||||||
|
|
||||||
@@ -204,4 +215,4 @@ class OathSuitSkillData(Base):
|
|||||||
Attack = Column(Float)
|
Attack = Column(Float)
|
||||||
Buffer = Column(Float)
|
Buffer = Column(Float)
|
||||||
value = Column(Text)
|
value = Column(Text)
|
||||||
bufferValue = Column(Text)
|
bufferValue = Column(Text)
|
||||||
|
|||||||
+2
-1
@@ -4,7 +4,8 @@ char = createCharacter('GF.gunner_female.spitfire_female')
|
|||||||
|
|
||||||
char.calc_init(
|
char.calc_init(
|
||||||
{
|
{
|
||||||
'oaths': {'0': {'id': '2010201', 'adaptation': 3}, '1': {'id': '2010201', 'adaptation': 3}, '2': {'id': '2010201', 'adaptation': 3}, '3': {'id': '2010201', 'adaptation': 3}, '4': {'id': '2010201', 'adaptation': 3}, '11': {'id': '2010200', 'adaptation': 0}},
|
'oaths': {'0': {'id': '2030201', 'adaptation': 3}, '1': {'id': '2030201', 'adaptation': 3}, '2': {'id': '2030201', 'adaptation': 3}, '3': {'id': '2030201', 'adaptation': 3}, '4': {'id': '2030201', 'adaptation': 3}, '11': {'id': '2030200', 'adaptation': 0}},
|
||||||
|
'oathSkill': 1,
|
||||||
'equips': {
|
'equips': {
|
||||||
'武器': {'id': '88', 'reinforce': 14, 'reinforceType': 1, 'enchant': 512, 'emblem_0': 0, 'emblem_1': 0, 'fusion': 0, 'refine': 8, 'adaptation': 3, 'precision': 100},
|
'武器': {'id': '88', 'reinforce': 14, 'reinforceType': 1, 'enchant': 512, 'emblem_0': 0, 'emblem_1': 0, 'fusion': 0, 'refine': 8, 'adaptation': 3, 'precision': 100},
|
||||||
'称号': {'id': '3017', 'reinforce': 0, 'reinforceType': 0, 'enchant': 1201, 'emblem_0': 0, 'emblem_1': 0, 'fusion': 0, 'refine': 0, 'adaptation': 3, 'precision': 100},
|
'称号': {'id': '3017', 'reinforce': 0, 'reinforceType': 0, 'enchant': 1201, 'emblem_0': 0, 'emblem_1': 0, 'fusion': 0, 'refine': 0, 'adaptation': 3, 'precision': 100},
|
||||||
|
|||||||
Reference in New Issue
Block a user