This repository has been archived on 2024-09-08. You can view files and clone it, but cannot push or open issues or pull requests.
sqrtools-pre/docs.md
2024-04-04 11:25:28 +08:00

70 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### Docs
sqrtools 的接口调用指南。
当前版本:**24m03a**
------
#### 在代码中添加 sqrtools
[sqrtools 网页](https://sqrt2802.github.io/sqrtools/)提供的的 pyc 文件可以作为 python 库文件使用。把它和你的代码放在同一个文件夹(也可以是 `sys.path` 中的任意目录)中,并直接在你的代码中导入即可:
```python
import sqrtools-24m03a-py39 as sqrtools
my_awesome_name=sqrtools.Name() #创建一个新的空白名字
```
sqrtools 的主要功能是名为 `Name` 的 python 类。
#### Name 类型属性
`Name` 中包含以下数值:
- `namestr`, `teamstr`, `namelen`, `teamlen` : 编码存储名字和战队名字符串信息的数组,不建议手动调用。
- `val`, `namebase` : 使用字符串生成的 hash-like 数组,在其他算号器中可能被称为 `name_base` 等。`val` 长度为 256`namebase` 长度为 128。
- `nameprop` : 名字属性,也就是俗称的"八围"。是长度为 8 的数组,从前到后分别为 \[攻, 防, 速, 敏, 魔, 抗, 智, HP\] 数值。
- `sklid`, `sklfreq` : 名字技能。`sklid` 与 `sklfreq` 一一对应,分别表示技能的名称与熟练度。技能 id 与名称的对应关系如下:
id|0|1|2|3|4|5|6|7|8|9|
:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:
技能|火球术|冰冻术|雷击术|地裂术|吸血攻击|投毒|连击|会心一击|瘟疫|生命之轮
**id**|**10**|**11**|**12**|**13**|**14**|**15**|**16**|**17**|**18**|**19**
技能|狂暴术|魅惑|加速术|减速术|诅咒|治愈魔法|苏生术|净化|铁壁|蓄力
**id**|**20**|**21**|**22**|**23**|**24**|**25**|**26**|**27**|**28**|**29**
技能|聚气|潜行|血祭|分身|幻术|防御|守护|伤害反弹|护身符|护盾
**id**|**30**|**31**|**32**|**33**|**34**|**35**|**36**|**37**|**38**|**39**|
技能|反击|吞噬|召唤亡灵|垂死抗争|隐匿|(空技能)|(空技能)|(空技能)|(空技能)|(空技能)
#### Name 类型方法
使用 `Name()` 可以创建一个新的空白名字。一个 `Name` 类型理论上可以多次使用,但我们不推荐这样做。
`Name` 类型包含以下用于算号的函数方法:
- `check(namein)` : 载入字符串 `namein`。如果报错,会自动用 `print()` 输出错误信息。
- `load()` : 计算 `val``namebase`。在执行函数前,需要先使用 `check()` 载入。
- `calcprops()` : 计算名字属性。在执行函数前,需要先使用 `check()``load()` 载入。
- `calcskill()` : 计算名字技能。在执行函数前,需要先使用 `check()``load()` 载入。
需要注意的是,以上函数均不会返回任何信息。计算完成后,你需要手动调用相关的属性变量查看结果。
以下是一个计算名字数值属性的示例程序:
```python
import sqrtools
name=sqrtools.Name()
name.check('1')
name.load()
name.calcprops()
print(name.nameprop[7],end=' ') #HP
for i in range(7): #七围
print(name.nameprop[i],end=' ')
print()
```