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

HideMenuForPlayer

توضیحات

یه منو رو برای بازیکن مخفی می‌کنه.

نامتوضیحات
Menu:menuidID منویی که باید مخفی بشه. توسط CreateMenu برگردونده می‌شه و به OnPlayerSelectedMenuRow پاس داده می‌شه.
playeridID بازیکنی که منو براش مخفی می‌شه.

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

true - تابع با موفقیت اجرا شد.

false - تابع اجرا نشد.

مثال‌ها

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/menuhide", true) == 0)
{
new Menu:myMenu = GetPlayerMenu(playerid);
HideMenuForPlayer(myMenu, playerid);
return 1;
}
return 0;
}

نکات

هشدار

اگه ID منوی نامعتبر بدی، هم سرور و هم بازیکن کرش می‌کنن. (در open.mp درست شده)

نکته

این تابع همیشه پارامتر ID منو رو می‌گرفته، ولی در SA:MP این ID استفاده نمی‌شد. پس هر مقداری که می‌دادی منوی فعلی بازیکن بسته می‌شد، حتی اگه اون منویی که گفتی رو نگاه نمی‌کرد.

کد قدیمی شاید اینطوری بود:

gShopMenu = CreateMenu("text", 2, 100.0, 30.0, 7.0);

HideMenuForPlayer(gShopMenu, playerid);

این همیشه منوی فعلی بازیکن رو می‌بست، فرقی نمی‌کرد واقعاً داره به کدومش نگاه می‌کنه. حالا باید یادت باشه که داره به کدومش نگاه می‌کنه، یا فقط بگیریش:

gShopMenu = CreateMenu("text", 2, 100.0, 30.0, 7.0);

HideMenuForPlayer(GetPlayerMenu(playerid), playerid);

توابع مرتبط