[TOC]
# 引导步骤`step`中的`type`配置整理
注: `position` 和 `time` 的相关配置信息看最后的注释
------
#### load_mission
>加载副本界面素材,加载完成后步骤完成
```xml
<step type="load_mission">
<arena_type></arena_type>
<mission_type></mission_type>
<cards>
<card card="" table="" level=""/>
<card card="" table="" level=""/>
<card card="" table="" level=""/>
<card card="" table="" level=""/>
<card card="" table="" level=""/>
<card card="" table="" level=""/>
</cards>
<technologys>
<technology technology="" level=""/>
</technologys>
</step>
```
* arena_type : 参考 client_arena.xml
* mission_type: 参考 client_mission.xml
* cards : 手上的兵 card :cardtype ; level:套装索引
* technologys : 科技列表
------
#### load_map
>加载地图界面素材,加载完成后步骤完成
```xml
<step type="load_map">
<campaign_type></campaign_type>
</step>
```
* campaign_type: 参考 client_campaign.xml 中的type
------
#### load_city
>加载城市界面素材,加载完成后步骤完成
```xml
<step type="load_city">
```
------
#### load_resources
>加载指定的素材,加载完成后步骤完成
```xml
<step type="load_resources">
<resources>
<resource type="" path=""/>
...
</resources>
</step>
```
------
#### camera_tween
> 镜头缓动
```xml
<step type="camera_tween">
<logic_tick> </logic_tick>
<position horizontal=" " vertical=" ">
</position>
<time> </time>
<skip> </skip>
</step>
```
* time:镜头缓动的时间
------
#### fade_in_black
> 画面逐渐变黑
```xml
<step type="fade_in_black">
<time></time>
</step>
```
* time:缓动的时间
------
#### fade_out_black
> 画面由黑变亮
```xml
<step type="fade_out_black">
<time></time>
</step>
```
* time:缓动的时间
------
#### show_gui
> 显示GUI
```xml
<step type="show_gui">
<element>
</element>
</step>
```
* element:GUI的elementName。如:`card_widget`
ps : 客户端需对应配置相应的 GUI 的 elementName
------
#### hide_gui
> 隐藏GUI
```xml
<step type="hide_gui">
<element>
</element>
</step>
```
* element:GUI 的 elementName
------
#### pause
> 副本暂停
```xml
<step type="pause">
<logic_tick>
</logic_tick>
</step>
```
------
#### resume
> 取消副本暂停
```xml
<step type="resume"/>
```
------
#### sleep
> 给引导设定一个延迟时间,达到设定时间后继续下一步引导
```xml
<step type="sleep">
<ticks></ticks>
</step>
```
------
#### show_help
> 显示引导
```xml
<step type="show_help">
<name></name>
<icon></icon>
<text></text>
<icon_offset_x></icon_offset_x>
<icon_align></icon_align>
<position horizontal="" vertical="">
</position>
<time></time>
</step>
```
* name: 引导名。例:`<name>natasha_help_05</name>`
* icon: 文本框上显示的人物 Icon。 例:`<icon>tutorial/natasha</icon>` (娜塔莎)
* text: 引导文本文字。
* icon_offset_x: 人物 Icon偏移量。
* icon_align: 人物对齐方式。 (`left`或者 `right`)
* time:缓动时间
* position
------
#### hide_help
> 隐藏引导
```xml
<step type="hide_help">
<name></name>
<skip></skip>
<time></time>
</step>
```
* name: 引导名。
* skip: `true` 或者 `false`
* time: 缓动时间
------
#### show_overlay
> 显示遮罩,同时挖空一个圆形或者矩形用于点击
```xml
<step type="show_overlay">
<position horizontal="" vertical="">
</position>
<appearance>
<width></width>
<height></height>
<radius></radius>
</appearance>
<time></time>
</step>
```
* width: 矩形宽度
* height:矩形高度
* radius: 圆形半径
ps : 显示圆形不需要设置width和height;显示矩形不需要设置radius*
------
#### hide_overlay
> 隐藏遮罩
```xml
<step type="hide_overlay"/>
```
------
#### lock_viewport
> 当前界面(游戏主界面,地图,副本)禁止拖拽
```xml
<step type="lock_viewport"/>
```
------
#### unlock_viewport
> 当前界面(游戏主界面,地图,副本)可以拖拽
```xml
<step type="unlock_viewport"/>
```
------
#### lock_keyboard
> 禁止键盘操作
```xml
<step type="lock_keyboard"/>
```
------
#### unlock_keyboard
> 开放键盘操作
```xml
<step type="unlock_keyboard"/>
```
------
#### show_text
> 显示文本
```xml
<step type="show_text">
<time></time>
<text></text>
<char></char>
<skip></skip>
<position horizontal=" " vertical=" ">
</position>
</step>
```
* time:类似打字效果的缓动时间
* text:文本文字
* char:打字效果最后一位闪烁的字符
* skip:
* position

------
#### hide_text
> 隐藏文本
```xml
<step type="hide_text">
<time></time>
</step>
```
* time: 渐隐时间
------
#### click_target
> 设置鼠标点击目标,点击其他地方无效
```xml
<step type="click_target">
<name> 鼠标点击target的name 客户端需配置相应的name</name>
注:name 中填写 overlay 时,鼠标点击 只要不是点击在show_overlay的遮罩上,都能通过。可配合show_overlay 使用.
<prevent_default> true or false 是否阻止事件冒泡</prevent_default>
</step>
```
* name: 鼠标点击的目标的name 客户端需要配置对应的name
* prevent_default: 不知道什么用 `true` 或者 `false`
> ps : name中配置为`overlay`时,鼠标点击位置只要不是点击*在show_overlay显示的遮罩上,都能通过点击判断。 配合 `<step type="show_overlay">` 使用
------
#### show_pointer
> 显示引导箭头
```xml
<step type="show_pointer">
<position horizontal=" " vertical=" ">
</position>
<pointer_align>指针方向:top 朝下;left :朝右;right:朝左;bottom:朝上</pointer_align>
</step>
```
* position
* pointer_align:配置箭头显示方向。
ps : `top`:箭头向下、`bottom`:向上、`left`:向右、`right`:向左
------
#### hide_pointer
> 隐藏引导箭头
```xml
<step type="hide_pointer"/>
```
------
#### camera_follow
> 镜头跟随
```xml
<step type="camera_follow">
<name></name>
</step>
```
* name: 跟随目标的name
------
#### camera_unfollow
> 解除镜头跟随
```xml
<step type="camera_unfollow"/>
```
------
#### close_all_windows
> 关闭所有窗口
```xml
<step type="close_all_windows"/>
```
------
#### open_mission_win_window
> 打开副本胜利窗口
```xml
<step type="open_mission_win_window"/>
```
------
#### open_army_choose_panel
> 打开部队选择界面
```xml
<step type="open_army_choose_panel">
<arena_type> </arena_type>
<mission_type> </mission_type>
<cards>
<card card=" " table=" "/>
<card card=" " table=" "/>
<card card=" " table=" "/>
<card card=" " table=" "/>
<card card="" table=" "/>
<card card=" " table=" "/>
<card card=" " table=" "/>
<card card=" " table=" "/>
<card card=" " table=" "/>
<card card=" " table=" "/>
</cards>
<skip></skip>
</step>
```
* arena_type: 参考client_arean.xml 中
* mission_type: 参考client_arean.xml 和 client_mission.xml
* card : (暂) 选择出战的card
对应界面示例截图:

------
#### execute_script
> 执行脚本通信
```xml
<step type="execute_script">
<name></name>
</step>
```
* name: 脚本name
例: ```<name> cutscene_artillery_slot_complete_script</name>```
------
#### enable_tooltip
> (暂)将tooltip设为可用
```xml
<step type="enable_tooltip"/>
```
------
#### disable_tooltip
> (暂)将tooltip设为不可用
```xml
<step type="disable_tooltip"/>
```
------
#### hide
> 隐藏新手引导图层
```xml
<step type="hide"/>
```
------
#### lock_mouse_click
> 禁止鼠标点击操作
```xml
<step type="lock_mouse_click"/>
```
------
#### unlock_mouse_click
> 开放鼠标点击操作
```xml
<step type="unlock_mouse_click"/>
```
------
#### lock_mission_win_request
> 不清楚用处
```xml
<step type="lock_mission_win_request"/>
```
------
#### wait_mission_status
> 当 副本状态变为指定name的状态时,完成
```xml
<step type="wait_mission_status">
<name></name>
</step>
```
* name: 指定的状态name
* * name有:
|name|描述|
|||
|initialized|初始化|
|ready_to_start|准备开始|
|started|开始|
|finished|结束|
|empty|?|
|win|胜利|
|lost|失败|
------
#### cancel_use_card
> 取消玩家当前的派兵操作
```xml
<step type="cancel_use_card"/>
```
> 示意图:

------
#### shake_camera
> 镜头抖动
```xml
<step type="shake_camera">
<logic_tick></logic_tick>
<ticks></ticks>
</step>
```
* logic_tick:
* ticks:
------
#### <span id="#jump">wait_quest_complete</span>
> 当指定的任务完成,这个step完成
```xml
<step type="wait_quest_complete">
<name><name>
</step>
```
* name: 参考 client_quest.xml
------
#### set_sound_volume
> 设置音量
```xml
<step type="set_sound_volume">
<time></time>
<percent_volume></percent_volume>
<skip></skip>
</step>
```
* time: 音量逐渐增大或者降低的时间
* percent_volume:音量。0~100
* skip:
------
#### check_registration
> 判断是否注册(可能是原来游戏的方法,没用)
```xml
<step type="check_registration"/>
```
------
#### open_card_catalog_upgrade_window
> 打开指挥中心
```xml
<step type="open_card_catalog_upgrade_window">
<name></name>
</step>
```
* name: 兵种name 对应client_card.xml
------
#### check_requirement_or_reset
> 检测是否达到要求,如果没有达到重置引导回第一步
```xml
<step type="check_requirement_or_reset">
<name></name>
</step>
```
* name : 参考 cient_requirement.xml 的type
------
#### check_complete_tutorial
> 检测是否达到要求,如果达到要求直接完成引导
```xml
<step type="check_complete_tutorial">
<name></name>
</step>
```
* name : 参考 client_requirement.xml 的type (一般是填该引导的complete_requirement)
------
#### wait_module
> 等待模块变化,如果当前模块是指定模块直接完成,否则等待下次模块发生变化的时候进入下一步引导
```xml
<step type="wait_module">
<name></name>
</step>
```
* name:
| name | 描述 |
| -- | -- |
| city | 游戏主界面城市模块 |
| map | 地图模块 |
| mission | 副本战斗模块 |
---
#### wait_module_equal
> 等待模块变化。如果当前模块是指定模块直接完成,否则等待模块变成指定模块的时候进入下一步引导
```xml
<step type="wait_module_equal">
<name></name>
</step>
```
* name:
| name | 描述 |
| -- | -- |
| city | 游戏主界面城市模块 |
| map | 地图模块 |
| mission | 副本战斗模块 |
---
#### open_building_construct_window
> 打开建筑窗口,并显示指定建筑
```xml
<step type="open_building_construct_Window">
<name></name>
</step>
```
* name : 对应建筑的type。参考`client_building.xml`
---
#### wait_requirement_complete
> 等待达到指定要求后,进入下一步引导
```xml
<step type="wait_requirement_complete">
<name></name>
</step>
```
* name : 对应requirement的type。参考`client_requirement.xml`
#### lock_map_marker
> 锁定只显示指定的地图图标
如图:
```xml
<step type="lock_map_marker">
<name></name>
</step>
```
* name : 对应client_campaign.xml , client_event.xml , client_tournament.xml , client_tournament_clan.xml , 等文档的type
#### unlock_map_marker
> 解锁地图图标
```xml
<step type="unlock_map_marker"/>
```
#### play_movie_clip
> 播放影片剪辑,播放结束后此引导完成
```xml
<step type="play_movie_clip">
<name></name>
<position horizontal=" " vertical=" ">
</position>
</step>
```
* name : 播放的影片剪辑url
---
#### wait_window_open
> 等待窗口打开
```xml
<step type="wait_window_open">
<name></name>
</step>
```
* name : 对应windowType
---
#### wait_window_close
> 等待窗口关闭
```xml
<step type="wait_window_close">
<name></name>
</step>
```
* name : 对应windowType
---
#### open_unlock_soldier_window
> 打开兵种解锁窗口
```xml
<step type="open_unlock_soldier_window">
<name></name>
</step>
```
* name : 对应`client_unlock_soldier.xml`的type
---
#### open_army_window
> 打开军队窗口
```xml
<step type="open_army_window">
<name></name>
</step>
```
* name : 对应分页
|name|分页|
|---|---|
|army_window_infantry|步兵|
|army_window_armor|车辆|
|army_window_support|支援|
|army_window_mercenary|精英兵|
----
#### lock_window_open
> 锁定窗口打开, 只能打开指定的窗口 (只能锁定city模块下的window)
```xml
<step type="lock_window_open">
<name></name>
</step>
```
* name : 指定的windowType 。除了指定的windowType 其他window不能打开
---
#### unlock_window_open
> 解锁窗口打开
```xml
<step type = "unlock_window_open"/>
```
---
#### execute_helpers
> 执行helper列表.可添加多个helper。具体helper功能参考新版Helper文档
```xml
<step type="execute_helpers">
<helpers>
...
...
</helpers>
</step>
```
* 在helpers内填写要做跳转用的helper。比如:
```xml
跳转到副本第一张第二关窗口
<step type="execute_helpers">
<helpers>
<next_open_campaign campaign="episode_01" arena="episode_01_scene_02_arena"/>
</helpers>
</step>
```
---
#### show_help_with_button
> 类似 `show_help` 。在框内增加一个`下一步按钮`。点击按钮后该步骤结束
```xml
<step type="show_help_with_button">
除了type其他内容和 show_help 一样 。 没有skip功能
</step>
```
---
#### next_show_overlay
> 显示一个带有聚拢效果的overlay遮罩
```xml
<step type="next_show_overlay">
<position horizontal="" vertical="">
...
</position>
<appearance>
...
</appearance>
<time></time>
<testNode>显示遮罩</testNode>
</step>
```
---
### next_hide_overlay
> 隐藏带有聚拢效果的overlay遮罩
```xml
<step type="next_hide_overlay">
<time></time>
</step>
```
---
### next_click_target
> 指定点击目标 。一开始和点击错误的时候会有一个聚拢效果遮罩提示
> 注意: 不要在`next_show_overlay` 和 `next_hide_overlay` 中间 使用 `next_click_target`
```xml
<step type="next_click_target">
<name></name>
<position horizontal="" vertical="">
...
</position>
<appearance>
...
</appearance>
<time></time>
</step>
```
---
### close_window
> 关闭指定窗口
```xml
<step type="close_window">
<name></name>
</step>
```
---
### next_play_animation
> 播放动画(不是swf动画)
```xml
<step type="next_play_animation">
<name></name>
</step>
```
|name|动画效果|
|---|---|
|first_recharge_gift|首冲动画 |
-----
------
## position 标签说明:
position用于配置引导相关功能显示的位置
position有两个属性:
* `horizontal`
水平对齐
* `vertical`
垂直对齐
对齐的方式有三种,对应对齐属性设置内容如下:
1.`strict `
以游戏舞台左上角为准配置坐标
以水平对齐的部分为例:
```xml
<position horizontal="strict">
<x></x>
</position>
```
水平对齐使用`strict`需使用`<x>`标签配置 **x** 坐标
垂直对齐使用`<y>`标签配置 **y** 坐标
2.`relative `
以舞台右下角为准配置坐标
例:
```xml
<position horizontal="relative">
<right></right>
</position>
```
水平对齐使用`<right>`标签配置,表示舞台右侧向左偏移的量(向左偏移为正数)。
垂直对齐使用'<bottom>'标签配置,表示舞台底部向上偏移的量(向上偏移为正数)。
3.`center `
以舞台中心为准配置坐标
例:
```xml
<position horizontal="center">
<h_center></h_center>
</position>
```
水平对齐使用`<h_center>`标签配置,表示舞台中心向右偏移的量。
垂直对齐使用'<v_center>'标签配置,表示舞台中心向下偏移的量。
## logic_tick 标签说明
具体不确定,可能是副本内使用的计时器,当达到计时器表明的时间点时,触发引导步骤内容
