跳到主要内容

Create3DTextLabel

描述

在三维空间中创建带有文字内容的可视化标签。

参数名说明
const text[]初始显示的文本字符串
colour颜色值(使用整数或 RGBA 十六进制格式)
Float:xX 轴坐标
Float:yY 轴坐标
Float:zZ 轴坐标
Float:drawDistance可视距离(单位:游戏单位)
virtualWorld所属虚拟世界 ID
bool:testLOS是否启用视线检测(true=穿透物体不可见,false=可穿透显示)
OPEN_MP_TAGS:...扩展参数(支持任意类型参数)

返回值

成功返回新建 3D 文本标签的 ID,当达到全局 3D 文本标签数量上限(MAX_3DTEXT_GLOBAL)时返回 INVALID_3DTEXT_ID。

应用示例

public OnGameModeInit()
{
// 在坐标(30.0,40.0,50.0)处创建蓝绿色提示标签
Create3DTextLabel("当前位置坐标:\n30.0, 40.0, 50.0", 0x008080FF, 30.0, 40.0, 50.0, 40.0, 0, false);
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if (!strcmp(cmdtext, "/mark", true))
{
new name[MAX_PLAYER_NAME];
new Float:x, Float:y, Float:z;
new worldid;

GetPlayerName(playerid, name, sizeof(name));
GetPlayerPos(playerid, x, y, z);
worldid = GetPlayerVirtualWorld(playerid);

// 在玩家当前位置创建红色标记标签
Create3DTextLabel("%s 标记了这个位置", 0xFF0000FF, x, y, z, 15.0, worldid, false, name);
return 1;
}
return 0;
}

注意事项

提示
  • 在观察模式下有效显示距离会明显缩小
  • 使用r~~g等颜色代码实现多色文本效果
注意
  • 空文本内容可能导致客户端崩溃(open.mp 版本已修复此问题)
  • virtualworld 参数设置为-1 时标签不可见

关联函数