diff --git a/EN_README.md b/EN_README.md index 95dab74..e147e88 100644 --- a/EN_README.md +++ b/EN_README.md @@ -81,7 +81,7 @@ If you like this project, consider starring it. You can also watch an intro vide ### 🏛️ Organizations - [ ] Sect system - ✅ Settings, techniques, healing, base, styles - - ✅ Special sect action: Hehuan Sect (dual cultivation) + - ✅ Special sect actions: Hehuan Sect (dual cultivation), Hundred Beasts Sect (catch spirit animal) - [ ] sect will AI, tasks, recruiting - [ ] Sect tiers: different titles, abilities, actions - [ ] Clans diff --git a/README.md b/README.md index 81f6ed5..f7e1057 100644 --- a/README.md +++ b/README.md @@ -83,7 +83,7 @@ ### 🏛️ 组织系统 - [ ] 宗门系统 - ✅ 设定、功法、疗伤、驻地、行事风格 - - ✅ 宗门特殊动作:合欢宗(双修) + - ✅ 宗门特殊动作:合欢宗(双修),百兽宗(御兽) - [ ] 宗门意志ai、宗门任务、接引新人 - [ ] 宗门等阶:不同称谓、能力、动作 - [ ] 世家系统 diff --git a/src/classes/cultivation.py b/src/classes/cultivation.py index 63f5690..d5861fc 100644 --- a/src/classes/cultivation.py +++ b/src/classes/cultivation.py @@ -36,11 +36,32 @@ class Realm(Enum): return REALM_RANK[self] >= REALM_RANK[other] +@total_ordering class Stage(Enum): Early_Stage = "前期" Middle_Stage = "中期" Late_Stage = "后期" + def __lt__(self, other): + if not isinstance(other, Stage): + return NotImplemented + return STAGE_RANK[self] < STAGE_RANK[other] + + def __le__(self, other): + if not isinstance(other, Stage): + return NotImplemented + return STAGE_RANK[self] <= STAGE_RANK[other] + + def __gt__(self, other): + if not isinstance(other, Stage): + return NotImplemented + return STAGE_RANK[self] > STAGE_RANK[other] + + def __ge__(self, other): + if not isinstance(other, Stage): + return NotImplemented + return STAGE_RANK[self] >= STAGE_RANK[other] + # 统一的境界顺序与排名,避免重复定义 REALM_ORDER: tuple[Realm, ...] = ( Realm.Qi_Refinement, @@ -50,6 +71,14 @@ REALM_ORDER: tuple[Realm, ...] = ( ) REALM_RANK: dict[Realm, int] = {realm: idx for idx, realm in enumerate(REALM_ORDER)} +# 统一的阶段顺序与排名,避免重复定义 +STAGE_ORDER: tuple[Stage, ...] = ( + Stage.Early_Stage, + Stage.Middle_Stage, + Stage.Late_Stage, +) +STAGE_RANK: dict[Stage, int] = {stage: idx for idx, stage in enumerate(STAGE_ORDER)} + LEVELS_PER_REALM = 30 LEVELS_PER_STAGE = 10 @@ -90,12 +119,7 @@ class CultivationProgress: if level <= 0: return Stage.Early_Stage stage_index = ((level - 1) % LEVELS_PER_REALM) // LEVELS_PER_STAGE - order: tuple[Stage, ...] = ( - Stage.Early_Stage, - Stage.Middle_Stage, - Stage.Late_Stage, - ) - return order[min(stage_index, len(order) - 1)] + return STAGE_ORDER[min(stage_index, len(STAGE_ORDER) - 1)] def get_move_step(self) -> int: """ diff --git a/static/game_configs/persona.csv b/static/game_configs/persona.csv index 5d49eee..550ed8e 100644 --- a/static/game_configs/persona.csv +++ b/static/game_configs/persona.csv @@ -7,7 +7,7 @@ id,name,exclusion_ids,desc,weight,condition 5,随性,1;24;25,你总是会随机应变,性子到哪里了就是哪里,没有一定之规。,1, 6,贪财,,你对灵石和财富有着强烈的渴望。,1, 7,采药,,喜欢在山林中寻找各种奇花异草和灵药,对植物有着敏锐的直觉和深厚的兴趣。你认为大自然的恩赐需要用心去发现和珍惜。,1, -8,猎者,,享受在野外追踪猎物的刺激感,对各种动物的习性了如指掌,喜欢捕猎野兽。情况允许也会御兽。,100, +8,猎者,,享受在野外追踪猎物的刺激感,对各种动物的习性了如指掌,喜欢捕猎野兽。情况允许也会御兽。,1, 9,沉思,2,你总是会深思熟虑,思考问题比较有哲理。,1, 10,惜命,4;24;25,你总是会珍惜自己的生命,不会轻易冒险。,1, 11,友爱,13;14;15;12;24;25,你重视同伴与和谐,乐于助人,倾向通过协作与沟通化解矛盾。,1, diff --git a/static/game_configs/sect.csv b/static/game_configs/sect.csv index 20253cc..3bc3ea9 100644 --- a/static/game_configs/sect.csv +++ b/static/game_configs/sect.csv @@ -1,7 +1,7 @@ id,name,desc,member_act_style,alignment,sect_surnames,male_sect_given_names,female_sect_given_names,weight,effects ,,宗门名称与描述,宗门成员行事风格,阵营(正/中/邪),宗门常用姓氏(分号分隔),男性常用名(分号分隔),女性常用名(分号分隔),权重(默认1),effects(JSON) 1,明心剑宗,通玄界东方第一宗,以无上剑道称雄于世。云纹禁制为不传心法。,清明克己,行止如一。重剑与心法并重,讲究明心见性。,正,明;心;剑;霄;玄;霁;衡;孤;徽;肃,澄川;宏石;磐岳;霆岱;寂岚;久安;宸秋;烁离;沧岳;砺锋;炎洲;远歌,采微;霏岚;韶华;绮澜;珠影;远岫;若水;凝香;雪瑶;南絮;轻萝;宛竹,1, -2,百兽宗,以驯养灵兽闻名,豢养各种妖兽灵怪为战力。,你言语直接,重视力量与血性,崇尚狩猎与搏斗。,邪,,驼王;飞熊;虎魄;狼行;熊罡;白猿;石坚;山岚;青鬃;玄爪;金瞳;裂爪;破角;狂鬃;赤鬣;苍隼;啸风;裂岩,狐绮;白貂;青翎;雪牙;赤羽;玄狸;灵爪;月狐;银鳞;霜蹄;云貉;绒尾;锦狐;轻蹄,100, +2,百兽宗,以驯养灵兽闻名,豢养各种妖兽灵怪为战力。,你言语直接,重视力量与血性,崇尚狩猎与搏斗。,邪,,驼王;飞熊;虎魄;狼行;熊罡;白猿;石坚;山岚;青鬃;玄爪;金瞳;裂爪;破角;狂鬃;赤鬣;苍隼;啸风;裂岩,狐绮;白貂;青翎;雪牙;赤羽;玄狸;灵爪;月狐;银鳞;霜蹄;云貉;绒尾;锦狐;轻蹄,1, 3,水镜宗,正道十宗之一,实则严守中立。拥有仙界异宝"彻天水镜"可预知未来。,你处事冷静圆融,喜以柔克刚,擅借力与反制。,中,水;镜;寒;霜;冰;清;沐;澜;渊;泉,涟光;沧浪;泽远;浩川;泊舟;涓石;溪原;涵舟;泠曜;漪岑;淞岳;涔雨,漫霖;洛漪;潋月;涵烟;沁波;翠波;漫葭;汀兰;潭歌;涓玥;澧宁;潇然,1, 4,冥王宗,行走幽冥之道,术法阴冷狠厉。,你言辞冷厉少情,敬畏因果而不惧杀伐,偏向效率与结果。,邪,冥;王;玄;幽;夜;白;冷;狱;魇;阴,血燎;焚魄;灰灭;殁川;绝尘;厌离;朔寒;邪风;归墟;朽骨;朔月;止戈,寒绫;霜瑶;凄歌;素鸢;祭宁;黛魂;夙梦;绫雪;凛珑;霁月;旷音;凝岚,1, 5,朱勾宗,邪宗大派。以炼器、机关、暗杀闻名于世,素来阴毒冷僻。,你直面欲望与代价,不惧黑暗,以攻伐见长。,邪,朱;绯;刃;戮;蚀;渊;钧;鸦;墨;殷,暗阑;机括;鬼匣;夜禁;幻锁;残锋;暗弦;影栅;幽钩;断线;潜匿;迷踪,玄簪;霜绡;纤罗;碎玉;影裳;轻弦;凝黛;凝烟;冷珥;素纱;凛钗;寒袖,1,