Существует ли лимит на CreatePlayerTextDraw или можно ли его обойти? Почему-то не создаются PTD, которые создаются самые последние, я так понял, что это лимит. (ибо менял последнее создание PTD с предпоследним и всё нормально)
Существует ли лимит на CreatePlayerTextDraw или можно ли его обойти? Почему-то не создаются PTD, которые создаются самые последние, я так понял, что это лимит. (ибо менял последнее создание PTD с предпоследним и всё нормально)
wiki.sa-mp.com/wiki/Limits
execution (01.08.2019)
Лимит PlayerTextDraw 256, лично я создаю тд когда это нужно (к примеру игрок открыл инвентарь) и уничтожаю когда игрок закрывает инвентарь.
А маленькие PlayerTextDraw создаются при коннекте.
execution (01.08.2019)
Текстдравы игроков имеют хорошую особенность - их можно создавать только перед самым моментом использования, а после сразу удалять. Тогда и лимит никогда не исчерпается. Такое можно и с глобальными текстдравами проворачивать, но там придётся самостоятельно контролировать то, скольким людям показан текстдрав.
Ну и важно использовать с умом текстравы игроков, не лепя на них то, что можно и через глобальные текстдравы создать.
И да, не забывайте, что отрисовка текстдравов кушает FPS. Поэтому не стоит делать системы, в которых показывается сразу множество текстдравов. Игроки со слабыми ПК не одобрят :)
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
execution (01.08.2019)
UPD:
Создаю перед просмотром, потом показываю - ничего не происходит.
Создаю при подключении, потом показываю - всё нормально.
Создаю 83 PTD, думал не успевает создаваться или ещё что-то, сделал показ через таймер на 1сек - всё равно не показывает.
Всё должно успевать показываться. Ищи ошибку в коде.
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
Показываю:
CDS_CreateTextDraw(playerid); CDS_UpdateCarInfo(playerid, pSelectedCarDealerShip{playerid}); CDS_TextDrawShow(playerid);
Функции:
stock CDS_TextDrawShow(playerid) { for (new i = 0, c1 = 0, c2 = 0; i < sizeof BUY_AUTO[]; i++) { if (TD_MIN_CDS_COLOR_NUMBER_1 <= i <= TD_MAX_CDS_COLOR_NUMBER_1) { } else if (TD_MIN_CDS_COLOR_NUMBER_2 <= i <= TD_MAX_CDS_COLOR_NUMBER_2) { } pShowPlayerCarDealerShipTD{playerid} = true; } } stock CDS_UpdateCarInfo(playerid, selectModel) { stringer = "Model: ~y~"; new car_speed[7]; itos(gVehicleMaxSpeed[CAR_DEALER_SHIP_MODEL[selectModel] - 400], car_speed); stringer = "MAX_SPEED: ~y~"; new car_price[16]; itos(CAR_DEALER_SHIP_PRICE[selectModel], car_price); stringer = "COST: ~y~$"; PlayerTextDrawSetPreviewModel(playerid, BUY_AUTO[playerid][TD_CDS_PREVIEW_CAR_MODEL_ID], CAR_DEALER_SHIP_MODEL[selectModel]); pSelectedCarDealerShipColor_1{playerid}, pSelectedCarDealerShipColor_2{playerid}); } stock CDS_CreateTextDraw(playerid) { PlayerTextDrawSetPreviewRot(playerid, BUY_AUTO[playerid][0], 0.000000, 284.000000, 76.000000, 1.564944); //etc }
Опять таки, если создавать при подключении, то всё нормально
Ну тот же TDEditor создаёт и тут же показывает текстдрав без каких-либо задержек между этими двумя действиями :)
Логируй создаваемые ID и ID, которые выгружаются из переменных в PlayerTextDrawShow. Проблема точно в коде. В SA-MP нет проблем с тем, что текстдрав сразу показывается после создания.
Связаться со мной в VK можно через личные сообщения этой группы
Заказы не принимаю
Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
Великих идей полно, на них нет спроса.
Воплощение идеи в законченную игру требует долгой работы,
таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
Предложить идею просто, воплотить – вот в чём проблема
Steve Pavlina
execution (03.08.2019)
Решено. Оказывается лимит уже был превышен и более позднее созданные PTD уже не показывались.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)