Yishan_Text3D
一个用于 FiveM 服务器的现代化 UI 交互系统。该资源使用流畅、现代化的 HTML 界面取代了传统的 DrawText3D 功能,支持基于距离的缩放和视觉自定义。
功能特性
- 现代化、简洁的 UI 设计,带有浮动交互元素
- 基于距离的交互显示
- 1-5 米范围:仅显示交互按键(如 "E")的蓝色按钮
- 小于 1 米时:显示完整的交互文本,按键单独样式化
- 无背景 - 简洁的 UI 元素,带有细微的文字阴影以提高可见性
- 所有 UI 元素的颜色均可配置
- 性能明显优于原生 DrawText3D
- 流畅的动画和低延迟更新
- 按键高亮显示,带有脉冲发光效果
- 易于与现有脚本集成
- 全面的测试环境用于预览 UI
安装
- 将
Yishan_Text3D文件夹上传到服务器的 resources 目录 - 在 server.cfg 中添加
ensure Yishan_Text3D - 重启服务器
使用方法
基础示例
在脚本中替换传统的 DrawText3D 调用:
旧方法:
lua
DrawText3D(coords.x, coords.y, coords.z, "按 E 打开")新方法:
lua
exports['Yishan_Text3D']:DrawText3D(coords, "~key~E~key~ 打开")按键元素格式化
使用 ~key~ 分隔符来高亮显示文本中的按键:
- 单个按键:
"~key~E~key~ 打开" - 多个按键:
"Press ~key~E~key~ 打开或 ~key~ESC~key~ 取消"
自定义颜色的高级用法
您可以自定义交互的外观:
lua
exports['Yishan_Text3D']:AddInteraction(coords, "~key~E~key~ 打开", {
colors = {
primary = {r = 255, g = 255, b = 255, a = 255}, -- 按键颜色(白色)
secondary = {r = 255, g = 255, b = 255, a = 255}, -- 文本颜色(白色)
background = {r = 59, g = 130, b = 246, a = 200} -- 背景颜色(蓝色)
}
})配置
您可以在 client/config.lua 中自定义行为:
lua
Config = {
-- 距离设置
FullVisibilityDistance = 1.0, -- 显示完整文本的距离
IconVisibilityDistance = 5.0, -- 仅显示按键的距离
-- 性能设置
UpdateFrequency = 50, -- UI 更新频率(毫秒)
-- 按键配置
KeySeparator = '~key~' -- 按键高亮的分隔符
}性能考虑
该资源设计为高性能:
- 使用优化的更新频率(默认 50 毫秒)
- 仅渲染合理距离内的交互
- 玩家死亡时自动清理交互
- 定期清理陈旧的 UI 元素
支持与帮助
作者: 易山
联系方式: 2728496727
交流反馈群: 加入群聊
如果您需要帮助或有任何问题,欢迎联系我们!
