diff --git a/rustedwarfareapicode/src/Unit/loginboolean.md b/rustedwarfareapicode/src/Unit/loginboolean.md
index a462500..eeb349f 100644
--- a/rustedwarfareapicode/src/Unit/loginboolean.md
+++ b/rustedwarfareapicode/src/Unit/loginboolean.md
@@ -8,12 +8,15 @@ outline: deep
由于这个组的特殊性,格式不标准,请勿参考这个组的写法。
:::
-### 前置知识
+## 前置知识
+::: tip
+以下的内容为`逻辑组前置知识`,是学习逻辑必备的前置内容。
+:::
-#### 布尔值
+### 布尔值
布尔值表达“真(true)”或“假(false)”的一个状态。在铁锈中,布尔值(`boolean`)被运用于逻辑判断。
-#### 数据类型
+### 数据类型
数据类型指数据的种类,在铁锈中,不同的数据有不同的类型,不同的数据类型之间通常不能直接进行运算。
|常见数据类型英文 |存储的值类型 |
@@ -27,97 +30,153 @@ outline: deep
数据类型之间的转换函数包括:`int`、`str`。
-#### 算数优先级
+### 算数优先级
与数学中计算符一样,铁锈中算数运算符有优先级区别。`%`和`*`和`/`的优先级大于`+`和`-`。
-### 比较运算符
+## 比较运算符
+::: tip
+以下的内容为逻辑中用于`比较`的运算符。
+:::
-#### 如果
-代码:if 中文释义:如果
+### if
+#### if-代码简介
+代码:if 中文释义:如果 类型:逻辑函数
+#### if-要点指示
`if`是大部分逻辑运算的开头(select等不需要if),用于在支持逻辑的键引入逻辑判断。
-
-
-
-
+#### if-演示例子
```ini
[action]
autoTrigger:if self.maxHp() > memory.emx_hp
```
-#### 小于
-代码:< 中文释义:小于
+
+
+### <
+#### <-代码简介
+代码:< 中文释义:小于 类型:比较运算符
+#### <-要点指示
小于用于在逻辑布尔值中比较两个数的大小,格式为`数据a < 数据b`,若`a
-
-
-
+#### <-演示例子
```ini
[action]
autoTrigger:if memory.a < memory.b
```
-#### 大于
-代码:> 中文释义:大于
-同上,格式为`数据a > 数据b`,若`a>b`则整个式子的值为`true`,否则为`false`。
+
-#### 小于等于
-代码:<= 中文释义:小于等于
-同上,若`a<=b`则整个式子的值为`true`,否则为`false`。
+### >
+#### >-代码简介
+代码:> 中文释义:大于 类型:比较运算符
+#### >-要点指示
+大于用于在逻辑布尔值中比较两个数的大小,格式为`数据a > 数据b`,若`a>b`则整个式子的值为`true`,否则为`false`。
+#### >-演示例子
+```ini
+[action]
+autoTrigger:if memory.a > memory.b
+```
-#### 大于等于
-代码:>= 中文释义:大于等于
-同上,若`a>=b`则整个式子的值为`true`,否则为`false`。
+
-#### 等于
-代码:== 中文释义:等于
+### <=
+#### <=-代码简介
+代码:<= 中文释义:小于等于 类型:比较运算符
+#### <=-要点指示
+小于等于用于在逻辑布尔值中比较两个数的大小,格式为`数据a <= 数据b`,若`a<=b`则整个式子的值为`true`,否则为`false`。
+#### <=-演示例子
+```ini
+[action]
+autoTrigger:if memory.a <= memory.b
+```
+
+
+### >=
+#### >=-代码简介
+代码:>= 中文释义:大于等于 类型:比较运算符
+#### >=-要点指示
+大于等于用于在逻辑布尔值中比较两个数的大小,格式为`数据a >= 数据b`,若`a>=b`则整个式子的值为`true`,否则为`false`。
+#### >=-演示例子
+```ini
+[action]
+autoTrigger:if memory.a >= memory.b
+```
+
+
+
+### ==
+#### ==-代码简介
+代码:== 中文释义:等于 类型:比较运算符
+#### ==-要点指示
+等于用于在逻辑布尔值中比较值是否相同,格式为`数据a = 数据b`,若`a=b`则整个式子的值为`true`,否则为`false`。
::: tip
请注意,铁锈中等于的符号为==,=在铁锈中用于赋值或参数。
:::
+#### ==-演示例子
+```ini
+[action]
+autoTrigger:if memory.a == memory.b
+```
+
-同上,若`a=b`则整个式子的值为`true`,否则为`false`。
+### !=
+#### !=-代码简介
+代码:!= 中文释义:不等于 类型:比较运算符
+#### !=-要点指示
+不等于用于在逻辑布尔值中比较值是否相同,格式为`数据a = 数据b`,若`a!=b`则整个式子的值为`true`,否则为`false`。
+#### !=-演示例子
+```ini
+[action]
+autoTrigger:if memory.a != memory.b
+```
-#### 不等于
-代码:!= 中文释义:不等于
-同上,若`a!=b`则整个式子的值为`true`,否则为`false`。
+
-### 逻辑运算符
+## 逻辑运算符
+::: tip
+以下的内容为逻辑中用于`进行逻辑运算`的运算符,它们的结果都是`boolean`类型。
+:::
-#### 且
-代码:and 中文释义:且
+### and
+#### and-代码简介
+代码:and 中文释义:且 类型:逻辑运算符
+#### and-要点指示
::: tip
and用于连接两个逻辑判断,只有在这两个逻辑判断的值都为true时,and的值才为true。
:::
-
-
-
-
+#### and-演示例子
```ini
[action]
autoTrigger:if memory.a < memory.b and memory.a > memory.c
# 在这个例子中,只有a小于b且a大于c时,自动触发才会被触发
```
-#### 或
-代码:or 中文释义:或
+
+
+### or
+#### or-代码简介
+代码:or 中文释义:或 类型:逻辑运算符
+#### or-要点指示
::: tip
or用于连接两个逻辑判断,只要这两个逻辑判断的值有一个为true时,or的值就为true。
+
:::
-#### 非
-代码:not 中文释义:非
+#### or-演示例子
+```ini
+[action]
+autoTrigger:if memory.a < memory.b or memory.a > memory.c
+# 在这个例子中,只要a小于b或a大于c,自动触发就会被触发
+```
+
+
+
+### not
+#### not-代码简介
+代码:not 中文释义:非 类型:逻辑运算符
+#### not-要点指示
::: tip
not用于将某个逻辑判断的值取反,即`true`变`false`,`false`变`true`。
:::
@@ -127,6 +186,9 @@ autoTrigger:if memory.a < memory.b and memory.a > memory.c
推荐在不确定优先级时打括号。
:::
+#### not-演示例子
+:::
+
@@ -141,60 +203,102 @@ autoTrigger:if (memory.a < memory.b or memory.a > memory.c) and not memory.a < m
考考你,在上述这个例子中,满足什么条件才会触发?
```
```bash [显示答案]
-答案:a必须满足小于b和大于c中的一个,且a必须小于d,自动触发才会被触发。
+答案:a必须满足小于b和大于c中的一个,且a必须不小于d,自动触发才会被触发。
```
:::
+
-### 算数运算符
-
-#### 加
-代码:+ 中文释义:加
-
-加用于将两个逻辑值相加,得到结果,格式为`数据a + 数据b`。
+## 算数运算符
+::: tip
+以下的内容为逻辑中用于`进行算数运算`的运算符,它们的结果类型为`参与运算的值的`类型。
+:::
::: info
不同数据类型通常不能直接进行算数运算,但在部分情况下,number和float类型可以混用(建议所有数值全部使用float来避免混淆)。
:::
-
-
+### +
+#### +-代码简介
+代码:+ 中文释义:加 类型:算数运算符
+#### +-要点指示
+加用于将两个逻辑值相加,得到结果,格式为`数据a + 数据b`。
+#### +-演示例子
```ini
[action]
autoTrigger:if (memory.a + memory.c) < memory.b
+#内存a和c的值之和需要小于b
```
-#### 减
-代码:- 中文释义:减
+
+### -
+#### --代码简介
+代码:- 中文释义:减 类型:算数运算符
+#### --要点指示
减用于将两个逻辑值相减,得到结果,格式为`数据a - 数据b`。
-
::: info
对于不满足交换律的运算符,需要注意运算优先级是否正确。由于铁锈本身bug,在数学上正确的优先级不一定在铁锈中正确,因此可能出现减法顺序混乱等问题。
为了避免可能的问题,请尽量在任何不满足交换律的运算符两边打上括号。
:::
-#### 乘
-代码:* 中文释义:乘
+#### --演示例子
+```ini
+[action]
+autoTrigger:if (memory.a - memory.c) < memory.b
+#内存a与c的值之差需要小于b
+```
+
+
+### *
+#### *-代码简介
+代码:* 中文释义:乘 类型:算数运算符
+#### *-要点指示
乘用于将两个逻辑值相乘,得到结果,格式为`数据a * 数据b`。
+#### *-演示例子
+```ini
+[action]
+autoTrigger:if (memory.a * memory.c) == memory.b
+#内存a和c的乘积需要等于b
+```
-#### 除
-代码:/ 中文释义:除
+
+### /
+#### /-代码简介
+代码:/ 中文释义:除 类型:算数运算符
+#### /-要点指示
除用于将两个逻辑值相除,得到结果,格式为`数据a / 数据b`。
+#### /-演示例子
+```ini
+[action]
+autoTrigger:if (memory.a / memory.c) == memory.b
+#内存a除以c的积需要等于b
+```
-#### 求余
-代码:% 中文释义:求余(取模)
+
-求余用于获取两个逻辑值中,第一个除第二个的余数,格式为`数据a % 数据b`。
-例如`7%3=1(7除3余1)`
+### %
+#### %-代码简介
+代码:% 中文释义:求余(取模) 类型:算数运算符
+#### %-要点指示
+求余用于获取两个逻辑值中,第一个除第二个的余数,格式为`数据a % 数据b`,例如`7%3=1(7除3余1)`。
+#### %-演示例子
+```ini
+[action]
+autoTrigger:if (memory.a % memory.c) == memory.b
+#内存a除以c的余数需要等于b
+```
-### 单位统计
+
-#### 通用统计关键字
+## 单位统计
+::: tip
+以下的内容为逻辑中用于`单位数值获取`的函数,它们的类型与单位此项数值对应。
+:::
+
+### 通用统计关键字
单位统计中部分通用的关键字:
1. `greaterThan` 大于
2. `lessThan` 小于
@@ -202,7 +306,7 @@ autoTrigger:if (memory.a + memory.c) < memory.b
4. `full` 满
5. `equalTo` 等于
-#### 内置参数
+### 内置参数-单一或无传参
单位统计中部分内置参数返回代码(由于过于简单不单独列出):
1. `self.hp()` 生命值
2. `self.maxHp()` 最大生命值
@@ -242,6 +346,10 @@ autoTrigger:if (memory.a + memory.c) < memory.b
36. `game.mapHeight()` 地图高度
37. `game.nukesEnabled()` 是否启用核武器
+### 内置参数-需要传参
+
+
+
self.hasResources()
代码:self.hasResources() 中文释义:有资源 返回类型:boolean
@@ -283,7 +391,7 @@ self.numberOfQueuedWaypoints()
`self.numberOfQueuedWaypoints()`用于返回队列中路径点的数量。格式为`self.numberOfQueuedWaypoints(type="路径点类型")`。
-#### 单位运动与定位
+### 单位运动与定位
这部分代码的返回值全部为`boolean`类型,用于检测单位的运动和位置情况
1. `self.underwater/self.isUnderwater()` 单位在水下
2. `self.gound/self.ground/self.isAtGroundHeight()` 单位位于地面高度
@@ -314,7 +422,7 @@ self.numberOfQueuedWaypoints()
-### 单位计时
+## 单位计时
self.hasTakenDemage()
代码:self.hasTakenDemage() 中文释义:受到伤害 返回类型:bool
@@ -351,7 +459,7 @@ resetCustomTimer:true
showMessageToPlayers:10秒过去了
```
-### 杂项
+## 杂项
thisActionIndex/index()
代码:thisActionIndex/index() 中文释义:索引 返回类型:float(number)
@@ -494,9 +602,9 @@ if parent.readUnitMemory("boostTarget", type="unit") == self
#如果 父单位内存boostTarget的值等于自己
```
-### 单位参照
+## 单位参照
-#### 当前动作目标
+### 当前动作目标
::: info
`thisActionTarget`是一条用于获取当前行动目标的代码,不同的行动中,`thisActionTarget`也不同(或没有)。
以下是不同情况下的`thisActionTarget`。
@@ -537,7 +645,7 @@ autoTriggerOnEvent: touchTargetSuccess
-#### 杂项
+### 杂项
attachment
代码:self.attachment() 中文释义:附属物 返回类型:unit/marker
@@ -614,7 +722,7 @@ nullUnit
代码:nullUnit 中文释义:空单位 返回类型:unit/marker
`nullUnit`是铁锈的空单位,用于比较/判断。
-#### 标记
+### 标记
getAsMarker
代码:self.getAsMarker() 中文释义:获取标记 返回类型:unit/marker
@@ -637,7 +745,7 @@ eventSource
代码:eventSource 中文释义:事件源 返回类型:event
`eventSource`用于获取`autoTriggerOnEvent`当前触发器,没有则返回`null`,可以看作对于事件的`autoTriggerOnEvent`。
-#### 全局函数
+### 全局函数
readUnitMemory
代码:self.readUnitMemory() 中文释义:读取单位内存 返回类型:跟随内存类型
@@ -753,11 +861,11 @@ rnd
:::
lowercase
-代码:lowercase() 中文释义:转小写 返回类型:float
+代码:lowercase() 中文释义:转小写 返回类型:string
`lowercase`用于将一个字符串中的大写字符全部转换成小写,格式为`lowercase(string)`。
uppercase
-代码:uppercase() 中文释义:转大写 返回类型:float
+代码:uppercase() 中文释义:转大写 返回类型:string
`uppercase`用于将一个字符串中的小写字符全部转换成大写,格式为`uppercase(string)`。
direction