Skip to content

Commit

Permalink
...
Browse files Browse the repository at this point in the history
更新子模块
支持获取深渊信息
支持获取所有角色基础信息
  • Loading branch information
molehzy committed Nov 2, 2021
1 parent c483335 commit aabce4a
Show file tree
Hide file tree
Showing 53 changed files with 6,485 additions and 4 deletions.
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,6 @@
[submodule "go-cqhttp-e"]
path = go-cqhttp-e
url = https://github.com/molehzy/go-cqhttp-e
[submodule "Text-table"]
path = Text-table
url = https://github.com/molehzy/Text-table
2 changes: 1 addition & 1 deletion GenshinAPI
43 changes: 43 additions & 0 deletions GenshinBot.代码/DLL.e.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
.版本 2

.DLL命令 PeekMessage, 逻辑型, "user32.dll", "PeekMessageA", , 系统_处理事件1
.参数 lpMsg, MSG
.参数 hwnd, 整数型
.参数 wMsgFilterMin, 整数型
.参数 wMsgFilterMax, 整数型
.参数 wRemoveMsg, 整数型

.DLL命令 TranslateMessage, 逻辑型, "user32.dll", "TranslateMessage", , 系统_处理事件1
.参数 消息结构, MSG, , lpMsg

.DLL命令 DispatchMessage, 整数型, "user32.dll", "DispatchMessageA", , 系统_处理事件1
.参数 消息结构, MSG, , lpMsg

.DLL命令 VariantTimeToSystemTime, 整数型, "oleaut32.dll", "VariantTimeToSystemTime"
.参数 vtime, 日期时间型
.参数 lpSystemTime, 精易_时间

.DLL命令 GetDateFormatA, 整数型, "kernel32.dll", "GetDateFormatA", , 针对指定的“当地”格式,对一个系统日期进行格式化 格式化过后的字串的长度。
.参数 地方ID, 整数型, , Locale,用于决定格式的地方ID。lpFormat参数中指定的任何信息(倘若不是NULL)都优先于特定于地方的信息
.参数 标志, 整数型, , dwFlags,如指定了lpFormat,那么该参数应该为零。否则,可设为LOCALE_NOUSEROVERRIDE,强制使用系统地方参数——即使它们已由用户取代。
.参数 日期结构, 精易_时间, , lpDate,包含了一个系统日期的结构
.参数 格式化, 文本型, , lpFormat,String,可设为NULL,使用特定于不同地方的值(用vbNullString传递一个NULL)。否则包含一个日期格式字串。
.参数 缓冲区文本, 文本型, , lpDateStr,指定一个缓冲区,用于容纳格式化过后的字串。注意事先对字串进行初始化
.参数 缓冲区文本长度, 整数型, , cchDate,缓冲区的长度。如为零,表示函数会返回需要缓冲区的大小;

.DLL命令 GetTimeFormatA, 整数型, "kernel32.dll", "GetTimeFormatA", , _系统置时间进行格式化 针对指定的“当地”格式,对一个系统时间进行格式化。
.参数 地方ID, 整数型, , Locale,用于决定格式的地方ID。lpFormat参数中指定的任何信息(倘若不是NULL)都优先于特定于地方的信息
.参数 标志, 整数型, , dwFlags,如指定了lpFormat,那么该参数应该为零。否则,可设为LOCALE_NOUSEROVERRIDE,强制使用系统地方参数
.参数 时间结构, 精易_时间, , lpDate,SYSTEMTIME,用于包容系统时间的一个结构
.参数 格式化, 文本型, , lpFormat,String,可设为NULL,使用特定于不同地方的值(用vbNullString传递一个NULL)。
.参数 缓冲区文本, 文本型, , lpDateStr,指定一个缓冲区,用于容纳格式化过后的字串。注意事先对字串进行初始化
.参数 缓冲区文本长度, 整数型, , cchDate,缓冲区的长度。如为零,表示函数会返回需要缓冲区的大小;

.DLL命令 GetLocaleInfo, 整数型, "kernel32.dll", "GetLocaleInfoA"
.参数 地方ID, 整数型
.参数 类型, 整数型
.参数 数据, 文本型
.参数 数据尺寸, 整数型

.DLL命令 DLL命令1

Binary file renamed GenshinBot.e → GenshinBot.代码/代码.e
Binary file not shown.
11 changes: 11 additions & 0 deletions GenshinBot.代码/代码/排序.list.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
程序集
类_日志
内存画板
图片对象
图片编辑类
分层画板
__HIDDEN_TEMP_MOD__
正则表达式类
GenshinAPI
类_CQHTTP
标识线程锁
110 changes: 110 additions & 0 deletions GenshinBot.代码/代码/正则表达式类.class.e.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
.版本 2
.支持库 e2ee

.程序集 正则表达式类
.程序集变量 正则, 对象
.程序集变量 集_过度对象, 对象
.程序集变量 集_被搜索的文本, 变体型

.子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用
COM线程初始化 ()

.子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用
正则.清除 ()
集_过度对象.清除 ()
集_被搜索的文本.清除 ()
COM线程释放 ()

.子程序 创建, 逻辑型, 公开, 根据指定的正则表达式文本创建一个正则表达式对象。本对象中的原有内容将被释放
.参数 正则表达式文本, 文本型, , 比如“易语言4\.0(模块|支持库)?”
.参数 被搜索的文本, 文本型
.参数 是否区分大小写, 逻辑型, 可空, 可以留空,默认为假,不区分大小写; 真为区分大小写;本参数指定这个正则表达式在创建成功后进行匹配、搜索、替换时,是否区分大小写;
.参数 是否匹配多行, 逻辑型, 可空, 可以留空,默认为真,允许匹配多行; 如果本成员值为真,字符“^”不仅匹配目标文本的开头,而且匹配目标文本中换行符(字符(10),字符(13)或 #换行符)的后面;字符“$”不仅匹配目标文本的结尾,而且匹配目标文本中换行符的前面。否则字符“^”仅仅匹配目标文本的开头,“$”也仅仅匹配目标文本的结尾。
.参数 是否全局匹配, 逻辑型, 可空, 可以留空,默认为真,全局匹配
.参数 自动替换引号, 逻辑型, 可空, 可空。默认为不替换。说明:正则表达式文本为【formhash" value="7b4aa6c5】,这里面的引号处理起来很麻烦,直接把此参数设置为真,把"换成 #引号 再传进来就可以了,如:【formhash#引号 value=#引号7b4aa6c5】
.局部变量 局_正则文本, 文本型


是否区分大小写 = 取反 (选择 (是否为空 (是否区分大小写), 假, 是否区分大小写))
是否匹配多行 = 选择 (是否为空 (是否匹配多行), 真, 是否匹配多行)
是否全局匹配 = 选择 (是否为空 (是否全局匹配), 真, 是否全局匹配)
正则.清除 ()
集_过度对象.清除 ()
正则.创建 (“VBScript.RegExp”, )
正则.写属性 (“IgnoreCase”, 是否区分大小写) ' 匹配时不区分大小写
正则.写属性 (“Multiline”, 是否匹配多行) ' 是否匹配多行
正则.写属性 (“Singleline”, 真) ' Singleline(单行模式)
正则.写属性 (“Global”, 是否全局匹配) ' 是否全局匹配
.判断开始 (自动替换引号)
局_正则文本 = 子文本替换 (正则表达式文本, “#引号”, #引号, , , 真)
.默认
局_正则文本 = 正则表达式文本
.判断结束
正则.写属性 (“Pattern”, 局_正则文本)
' -----------------
集_被搜索的文本.赋值 (被搜索的文本, )
集_过度对象 = 正则.对象型方法 (“Execute”, 集_被搜索的文本)
' .如果真 (取文本长度 (被搜索的文本) > 510000)
' 输出调试文本 (“友情提醒:正则类 → 创建() 命令的参数二 → 被搜索的文本 的长度过长,可以会导致程序直接结束。”)
' .如果真结束
' 集_过度对象 = 正则.对象型方法 (“Execute”, 被搜索的文本)
' 集_被搜索的文本 = 被搜索的文本

返回 (集_过度对象.是否为空 () = 假)

.子程序 查看, , 公开,
正则.查看 ()

.子程序 取正则文本, 文本型, 公开, 返回以文本形式表示的正则表达式。如果该对象尚未创建,则返回空文本。本命令为高级对象成员命令
返回 (选择 (正则.是否为空 (), “”, 正则.读文本属性 (“Pattern”, )))

.子程序 替换, 文本型, 公开, 替换在正则表达式查找中找到的文本
.参数 用作替换的文本, 文本型, 可空, 用作替换的文本
.局部变量 用作替换的文本_变体型, 变体型

用作替换的文本_变体型.赋值 (用作替换的文本, )
' 返回 (编码_Unicode到Ansi (正则.通用方法 (“Replace”, 集_被搜索的文本, 用作替换的文本_变体型).取字节集 ()))
返回 (正则.文本方法 (“Replace”, 集_被搜索的文本, 用作替换的文本_变体型))

.子程序 取匹配数量, 整数型, 公开, 取出该正则匹配到的数量
返回 (集_过度对象.读数值属性 (“Count”, ))

.子程序 取匹配文本, 文本型, 公开, 取出该正则匹配到的文本
.参数 匹配索引, 整数型, , 索引值从1开始
.参数 起始位置, 整数型, 参考 可空, 可以被省略,提供参数数据时只能提供变量。该命令调用成功后,本参数存放取得的子文本在整个被搜索文本中的起始位置
.局部变量 Match, 对象
.局部变量 Value, 文本型

Match = 集_过度对象.读对象型属性 (“Item”, 匹配索引 - 1)
' ----------------------
Value = Match.读属性 (“Value”, ).取文本 ()
.如果真 (是否为空 (起始位置) = 假)
起始位置 = 寻找文本 (集_被搜索的文本.取文本 (), Value, Match.读数值属性 (“FirstIndex”, ), 选择 (正则.读属性 (“IgnoreCase”, ).取文本 () = “0”, 真, 假)) - 1
.如果真结束
返回 (Value)
' Value = Match.读文本属性 (“Value”, )
' .如果真 (是否为空 (起始位置) = 假)
' 起始位置 = 寻找文本 (集_被搜索的文本, Value, Match.读数值属性 (“FirstIndex”, ), 选择 (正则.读文本属性 (“IgnoreCase”, ) = “0”, 真, 假)) - 1
' .如果真结束
' 返回 (Value)

.子程序 取子匹配文本, 文本型, 公开, 取出该正则的子表达式匹配到的文本
.参数 匹配索引, 整数型, , 索引值从1开始
.参数 子表达式索引, 整数型, , 欲取其值的子表达式,该参数对应与正则表达式中的一个子表达式以圆括号"( )"为标记,索引从1开始
.参数 起始位置, 整数型, 参考 可空, 可以被省略,提供参数数据时只能提供变量。该命令调用成功后,本参数存放取得的子文本在整个被搜索文本中的起始位置
.局部变量 Match, 对象
.局部变量 SubMatches, 对象
.局部变量 value, 文本型

Match = 集_过度对象.读对象型属性 (“Item”, 匹配索引 - 1)
SubMatches = Match.读对象型属性 (“SubMatches”, )
value = SubMatches.读属性 (“Item”, 子表达式索引 - 1).取文本 ()
.如果真 (是否为空 (起始位置) = 假)
起始位置 = 寻找文本 (集_被搜索的文本.取文本 (), value, Match.读数值属性 (“FirstIndex”, ), 选择 (正则.读属性 (“IgnoreCase”, ).取文本 () = “0”, 真, 假)) - 1
' 起始位置 = 寻找文本 (集_被搜索的文本, value, Match.读数值属性 (“FirstIndex”, ), 选择 (正则.读文本属性 (“IgnoreCase”, ) = “0”, 真, 假)) - 1
.如果真结束
返回 (value)

.子程序 取子匹配数量, 整数型, 公开, 取出该正则的子表达式匹配到的数量
返回 (集_过度对象.读对象型属性 (“Item”, 0).读对象型属性 (“SubMatches”, ).读数值属性 (“Count”, ))

5 changes: 5 additions & 0 deletions GenshinBot.代码/代码/目录.desc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"ExpandedDirs": [
"程序集"
]
}
Loading

0 comments on commit aabce4a

Please sign in to comment.