پرش به مطلب اصلی

Create3DTextLabel

توضیحات

ایجاد یک برچسب متن سه‌بعدی در مکان مشخصی از جهان

نامتوضیحات
const text[]رشته متن اولیه.
colourرنگ متن، به عنوان عدد صحیح یا مقدار هکس در فرمت رنگی RGBA
Float:xمختصات X
Float:yمختصات Y
Float:zمختصات Z
Float:drawDistanceفاصله‌ای که از آن می‌توانید برچسب متن سه‌بعدی را ببینید
virtualWorldجهان مجازی که در آن می‌توانید متن سه‌بعدی را ببینید
bool:testLOSآزمایش خط دید تا این متن از پشت اشیاء قابل مشاهده نباشد (true/false)
OPEN_MP_TAGS:...تعداد نامحدودی از آرگومان‌ها از هر نوع تگ.

مقادیر بازگشتی

شناسه برچسب متن سه‌بعدی جدید ایجادشده، یا INVALID_3DTEXT_ID اگر به حد مجاز برچسب‌های متن سه‌بعدی (MAX_3DTEXT_GLOBAL) رسیده باشد.

مثال‌ها

public OnGameModeInit()
{
// من در مختصات زیر هستم
Create3DTextLabel("I'm at the coordinates:\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 marked this place", 0xFF0000FF, x, y, z, 15.0, worldid, false, name);
return 1;
}
return 0;
}

نکات

نکته

drawDistance به نظر هنگام تماشا خیلی کوچکتر می‌آید.

نکته

از رنگ‌گذاری درونی برای چندین رنگ در متن استفاده کنید.

هشدار
  • اگر text[] خالی باشد، سرور/کلاینت‌های کنار متن ممکن است کرش کنند! (در open.mp رفع شده)
  • اگر virtualworld روی -1 تنظیم شود، متن ظاهر نخواهد شد.

توابع مرتبط