drd-plus / skills
3.0.0
2021-09-27 07:55 UTC
Requires
- php: >=7.4
- drdplus/armourer: ^3.0
- drdplus/background: ~3.0
- drdplus/hunting-and-fishing: ~3.0
- drdplus/lighting: ~3.0
- drdplus/profession-levels: ~3.0
Requires (Dev)
- granam/exceptions-hierarchy: ~5.0
- granam/test-with-mockery: ^2.0
- mockery/mockery: ~1.2
- phpunit/phpunit: ~9.0
- rector/rector: ^0.11.53
- roave/security-advisories: dev-master
README
你会游泳吗?你将花多长时间读那本书?你能骑马吗?
关于与 PPH 规则区别的警告
阅读和写作 技能即使按照 PPH 规则阅读和写作不可能,也能给予阅读速度“加成”。
此库给予阅读速度 -164 的“加成”,这意味着 100 年。原因主要是技术性的——因为返回 某些内容 比返回 无(通过 null 或异常)更容易且更清晰,部分是因为其逻辑性——十年后你有机会解码那些奇怪的符号,尤其是当它们在你已知的语言中有意义时。
结构
技能是堆叠在一个堆栈上的人的所有技能。 -> 同类型技能是同一类型的技能,如身体技能,在同一个堆栈上 -> 技能是特定的学习“能力”,如骑马 -> 技能等级是技能的“级别” => 技能点是一个技能等级的唯一但必需的价格
技能点是技能等级的货币单位,由特定的值以特定的组合组成 -> 背景技能点是第一级给出的标准值 -> 职业等级是一个等级增量,携带属性增量,提供技能点 -> 可以使用两个类型不同于付费的类型技能点进行新技能点的交易
检查是否在其他地方使用了付款:(这应该至少检查技能作为最终聚合器,或者更好,每条路上的每个聚合器)
技能点
- 背景技能点 - 通过 \DrdPlus\Background\BackgroundSkillPoints::getSkillPoints 检查其总使用量与可用性的对比
- 职业等级 - 没有什么可以检查的,在每一个等级都可以获得大量的技能点
- 跨类型技能点作为付款 - 必须是唯一的,因此没有人可以使用它,无论是作为付款还是作为标准技能点
技能等级
- 技能点在整个宇宙中必须是唯一的,参见技能点跨类型付款检查
技能
- 由于其聚合意义,可以用作仲裁者
可以检查背景技能点是否过度使用不应该检查它,这太复杂了,让它由技能处理- 可以检查技能点和技能等级在本地是否唯一
- 可以检查作为付款的跨类型技能点是否唯一且在本地未被用作标准点
同类型技能(可以汇总所有第一级和下一级的技能等级)
- 由于其聚合意义,可以用作仲裁者
组合技能 + 物理技能 + 心理技能(具有找出同类型技能未使用技能点值的能力)
- 它所聚合的所有同类型技能在整个宇宙中必须唯一
技能
- 组合技能 + 物理技能 + 心理技能在整个宇宙中必须唯一
- 应该是最终的仲裁者,
建议的方式是重用子聚合器现有的检查