Files
2025-03-17 13:24:39 +08:00

339 lines
8.6 KiB
Markdown
Raw Permalink 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.

---
sidebarDepth: 1
---
# 天气
## GetDimensionLocalWeatherInfo
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
获取独立维度天气信息(必须先使用SetDimensionUseLocalWeather接口设置此维度拥有自己的独立天气)
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| dimension | int | 维度id |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| dict | 独立维度天气信息(下雨强度,下雨时间,打雷强度,打雷时间,是否开启天气循环) |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.GetDimensionLocalWeatherInfo(0)
```
## GetDimensionUseLocalWeather
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
获取某个维度是否拥有自己的天气规则
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| dimension | int | 维度id |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 是否使用了独立天气规则 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.GetDimensionUseLocalWeather(0)
```
## IsRaining
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
获取是否下雨
- 参数
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 是否下雨 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.IsRaining()
```
## IsThunder
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
获取是否打雷
- 参数
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 是否打雷 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.IsThunder()
```
## SetDimensionLocalDoWeatherCycle
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
设置某个维度是否开启天气循环(必须先使用SetDimensionUseLocalWeather接口设置此维度拥有自己的独立天气)
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| dimension | int | 维度id |
| value | bool | 是否开启天气循环 |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 是否设置成功 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.SetDimensionLocalDoWeatherCycle(0, True)
```
## SetDimensionLocalRain
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
设置某个维度下雨(必须先使用SetDimensionUseLocalWeather接口设置此维度拥有自己的独立天气)
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| dimension | int | 维度id |
| rainLevel | float | 下雨强度范围0-1 |
| rainTime | int | 下雨的持续时间单位为帧一秒20帧。持续时间结束后会自动转换为相反的天气 |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 是否设置成功 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.SetDimensionLocalRain(0, 0.5, 180)
```
## SetDimensionLocalThunder
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
设置某个维度打雷(必须先使用SetDimensionUseLocalWeather接口设置此维度拥有自己的独立天气)
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| dimension | int | 维度id |
| thunderLevel | float | 打雷强度范围0-1 |
| thunderTime | int | 打雷的持续时间单位为帧一秒20帧。持续时间结束后会自动转换为相反的天气 |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 是否设置成功 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.SetDimensionLocalThunder(0, 0.5, 180)
```
## SetDimensionUseLocalWeather
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
设置某个维度拥有自己的天气规则,开启后该维度可以拥有与其他维度不同的天气和天气更替的规则
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| dimension | int | 维度id |
| value | bool | 是否开启独立天气 |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 是否成功 |
- 备注
- 我们对主世界以及自定义维度新增了“局部天气”的概念。在此之前,所有的维度会共享一个“全局天气”,即设置天气或天气循环规则时,会对所有维度生效。
现在,我们可以将某个维度使用局部天气规则,并且单独设置它的下雨强度,下雨时间,打雷强度,打雷时间,是否开启天气循环(见[SetDimensionLocalRain](#setdimensionlocalrain)、[SetDimensionLocalThunder](#setdimensionlocalthunder)、[SetDimensionLocalDoWeatherCycle](#setdimensionlocaldoweathercycle))。
在下文中,我们会将使用局部天气规则的维度称为“局部维度”,而使用全局天气的维度称为“全局维度”。默认情况下,维度都是全局维度。
原版的weather指令接口[SetRaining](#setraining)、[SetThunder](#setthunder)均不会对局部维度产生影响
- 启用局部天气规则时,默认继承全局的天气强度和时间,局部维度天气循环默认开启
- 天气规则对原版的下界与末地无效,这两个维度并没有天气系统
- 建议统一在游戏启动时调用
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.SetDimensionUseLocalWeather(0, True)
```
## SetRaining
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
设置是否下雨
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| level | float | 下雨强度范围为0-1 |
| time | int | 天气的持续时间单位为帧一秒20帧。持续时间结束后会自动转换为相反的天气。注意需要在游戏设置中开启天气更替后该参数才会生效。 |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 设置是否成功 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.SetRaining(0.5,1000)
```
## SetThunder
<span style="display:inline;color:#ff5555">服务端</span>
method in mod.server.component.weatherCompServer.WeatherComponentServer
- 描述
设置是否打雷
- 参数
| 参数名 | <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- | :--- |
| level | float | 打雷强度范围为0-1 |
| time | int | 打雷持续时间单位为帧一秒20帧。注意需要在游戏设置中开启天气更替后该参数才会生效。 |
- 返回值
| <div style="width: 4em">数据类型</div> | 说明 |
| :--- | :--- |
| bool | 设置是否成功 |
- 示例
```python
import mod.server.extraServerApi as serverApi
comp = serverApi.GetEngineCompFactory().CreateWeather(levelId)
comp.SetThunder(0.5,1000)set_lightning
```