更新
This commit is contained in:
parent
2c43aba4bf
commit
3661704fb4
@ -1,147 +0,0 @@
|
||||
# RuneStateWindow 符文状态窗口
|
||||
|
||||
## 📋 功能概述
|
||||
|
||||
RuneStateWindow是一个用于显示当前穿戴符文状态的UI窗口,主要功能包括:
|
||||
|
||||
1. **符文栏显示** - 根据当前穿戴装备显示符文列表
|
||||
2. **小丑牌动画** - 接收服务端符文执行记录后播放类似小丑牌的动画效果
|
||||
|
||||
## 🏗️ 文件结构
|
||||
|
||||
```
|
||||
src/StarterPlayerScripts/UI/Windows/RuneStateWindow/
|
||||
├── init.luau # 主窗口文件
|
||||
└── RuneShow.luau # 符文显示组件
|
||||
|
||||
src/StarterPlayerScripts/ClientMain/
|
||||
├── RuneExecutionClient.luau # 客户端接收符文执行记录
|
||||
└── TestRuneStateWindow.luau # 测试脚本
|
||||
```
|
||||
|
||||
## 🎮 使用方法
|
||||
|
||||
### 1. 打开符文状态窗口
|
||||
|
||||
```lua
|
||||
-- 通过UIManager打开窗口
|
||||
UIManager:OpenWindow("RuneStateWindow", {
|
||||
runeData = {
|
||||
{
|
||||
runeName = "RuneFireDamage",
|
||||
runeUniqueId = 1,
|
||||
level = 5,
|
||||
icon = "fire_icon"
|
||||
},
|
||||
{
|
||||
runeName = "RuneIceCoffin",
|
||||
runeUniqueId = 2,
|
||||
level = 3,
|
||||
icon = "ice_icon"
|
||||
}
|
||||
}
|
||||
})
|
||||
```
|
||||
|
||||
### 2. 接收符文执行记录
|
||||
|
||||
窗口会自动接收服务端发送的符文执行记录,并播放动画:
|
||||
|
||||
```lua
|
||||
-- 服务端发送的数据格式
|
||||
local executionRecords = {
|
||||
{
|
||||
runeName = "RuneFireDamage",
|
||||
runeUniqueId = 1,
|
||||
index = 1,
|
||||
timestamp = tick(),
|
||||
action = "Execute",
|
||||
attributesBefore = {attack = 100, hp = 1000},
|
||||
attributesAfter = {attack = 150, hp = 1000},
|
||||
behaviorListBefore = {"Attack"},
|
||||
behaviorListAfter = {"Attack", "FireDamage"},
|
||||
nextIndex = 2
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 3. 测试功能
|
||||
|
||||
使用测试脚本可以快速验证功能:
|
||||
|
||||
- **按 R 键** - 打开符文状态窗口
|
||||
- **按 T 键** - 模拟接收符文执行记录
|
||||
- **按 C 键** - 关闭符文状态窗口
|
||||
|
||||
## 🎨 动画效果
|
||||
|
||||
### 小丑牌动画特点
|
||||
|
||||
1. **金色光效** - 符文激活时显示金色发光效果
|
||||
2. **缩放动画** - 符文图标会放大并旋转
|
||||
3. **粒子效果** - 中心产生黄色粒子扩散效果
|
||||
4. **顺序播放** - 多个符文按执行顺序依次播放动画
|
||||
|
||||
### 动画参数
|
||||
|
||||
- **动画时长**: 0.3秒
|
||||
- **缩放比例**: 1.5倍
|
||||
- **旋转角度**: 360度
|
||||
- **颜色**: 金色(#FFD700)和黄色(#FFFF00)
|
||||
|
||||
## 🔧 技术实现
|
||||
|
||||
### 核心组件
|
||||
|
||||
1. **RuneStateWindow** - 主窗口管理
|
||||
- 管理符文执行记录队列
|
||||
- 控制动画播放顺序
|
||||
- 处理窗口生命周期
|
||||
|
||||
2. **RuneShow** - 符文显示组件
|
||||
- 显示符文图标、名称、等级
|
||||
- 处理符文激活动画
|
||||
- 管理组件生命周期
|
||||
|
||||
3. **RuneExecutionClient** - 客户端接收器
|
||||
- 监听服务端符文执行记录
|
||||
- 转发数据到窗口组件
|
||||
|
||||
### 数据流程
|
||||
|
||||
```
|
||||
服务端符文执行 → RemoteEvent发送 → 客户端接收 → 窗口处理 → 动画播放
|
||||
```
|
||||
|
||||
## 🎯 扩展功能
|
||||
|
||||
### 可扩展的动画效果
|
||||
|
||||
1. **音效支持** - 添加符文激活音效
|
||||
2. **特效增强** - 添加更多视觉特效
|
||||
3. **交互功能** - 点击符文查看详情
|
||||
4. **状态显示** - 显示符文冷却时间
|
||||
|
||||
### 自定义动画
|
||||
|
||||
可以通过修改`CreateJokerCardEffect`方法来自定义动画效果:
|
||||
|
||||
```lua
|
||||
function RuneStateWindow:CreateJokerCardEffect(runeItem, record)
|
||||
-- 自定义动画逻辑
|
||||
-- 可以添加更多特效、音效等
|
||||
end
|
||||
```
|
||||
|
||||
## 🐛 注意事项
|
||||
|
||||
1. **UI预制体** - 需要创建对应的UI预制体`ui_w_rune_state`
|
||||
2. **符文数据** - 需要正确配置符文JSON数据
|
||||
3. **图标资源** - 需要上传对应的符文图标资源
|
||||
4. **性能优化** - 大量符文时注意动画性能
|
||||
|
||||
## 📝 更新日志
|
||||
|
||||
- **v1.0.0** - 初始版本,支持基础符文显示和小丑牌动画
|
||||
- 支持符文执行记录接收和播放
|
||||
- 支持测试脚本快速验证功能
|
17
readme.md
17
readme.md
@ -1,17 +0,0 @@
|
||||
# rbxPlanetSteroids
|
||||
Generated by [Rojo](https://github.com/rojo-rbx/rojo) 7.4.4.
|
||||
|
||||
## Getting Started
|
||||
To build the place from scratch, use:
|
||||
|
||||
```bash
|
||||
rojo build -o "rbxPlanetSteroids.rbxlx"
|
||||
```
|
||||
|
||||
Next, open `rbxPlanetSteroids.rbxlx` in Roblox Studio and start the Rojo server:
|
||||
|
||||
```bash
|
||||
rojo serve
|
||||
```
|
||||
|
||||
For more help, check out [the Rojo documentation](https://rojo.space/docs).
|
Loading…
x
Reference in New Issue
Block a user