bereg101
Умник
2й день мучаюсь думаю как оптимизировать отображение инвентаря и т.к не люблю тексдравы и толком не знаю как они работают - это сложновато.
На видео видно как отрабатывает цикл отображения предметов и это очень сильно раздражает при открытии инвентаря
Ссылка удалена администрацией форума
Это вообще можно исправить или проще будет пойти заказать новую систему инвентаря?
Если кто то может это исправить, можем договориться о цене
Это часть кода отображения инвентаря, которая отображает сами предметы.
На видео видно как отрабатывает цикл отображения предметов и это очень сильно раздражает при открытии инвентаря
Это вообще можно исправить или проще будет пойти заказать новую систему инвентаря?
Если кто то может это исправить, можем договориться о цене
Это часть кода отображения инвентаря, которая отображает сами предметы.
Код:
for(new i = 0; i < 47; i++)
{
if( i >= 0 && i <= 42)
{
if(i >= 0 && i<= 5)
{
if(ammo[i+1])
{
switch(weapons[i+1])
{
case 1:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[324][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[324][invRot][0], InvType[324][invRot][1], InvType[324][invRot][2], InvType[324][invRot][3]);
}
case 2:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[442][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[442][invRot][0], InvType[442][invRot][1], InvType[442][invRot][2], InvType[442][invRot][3]);
}
case 3:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[443][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[443][invRot][0], InvType[443][invRot][1], InvType[443][invRot][2], InvType[443][invRot][3]);
}
case 5:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[325][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[325][invRot][0], InvType[325][invRot][1], InvType[325][invRot][2], InvType[325][invRot][3]);
}
case 17:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[328][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[328][invRot][0], InvType[328][invRot][1], InvType[328][invRot][2], InvType[328][invRot][3]);
}
case 23:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[444][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[444][invRot][0], InvType[444][invRot][1], InvType[444][invRot][2], InvType[444][invRot][3]);
}
case 24:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[329][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[329][invRot][0], InvType[329][invRot][1], InvType[329][invRot][2], InvType[329][invRot][3]);
}
case 25:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[330][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[330][invRot][0], InvType[330][invRot][1], InvType[330][invRot][2], InvType[330][invRot][3]);
}
case 28:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[336][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[336][invRot][0], InvType[336][invRot][1], InvType[336][invRot][2], InvType[336][invRot][3]);
}
case 29:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[331][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[331][invRot][0], InvType[331][invRot][1], InvType[331][invRot][2], InvType[331][invRot][3]);
}
case 30:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[332][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[332][invRot][0], InvType[332][invRot][1], InvType[332][invRot][2], InvType[332][invRot][3]);
}
case 31:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[333][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[333][invRot][0], InvType[333][invRot][1], InvType[333][invRot][2], InvType[333][invRot][3]);
}
case 33:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[334][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[334][invRot][0], InvType[334][invRot][1], InvType[334][invRot][2], InvType[334][invRot][3]);
}
case 34:
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[335][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[335][invRot][0], InvType[335][invRot][1], InvType[335][invRot][2], InvType[335][invRot][3]);
}
}
PlayerTextDrawShow(playerid,InvAmm[playerid][i]);
format(str,sizeof(str),"%d",ammo[i+1]);
PlayerTextDrawSetString(playerid,InvAmm[playerid][i],str);
}
else
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[0][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[0][invRot][0], InvType[0][invRot][1], InvType[0][invRot][2], InvType[0][invRot][3]);
}
}
if(i > 5 && i < 36)
{
if(InvInfo[playerid][iSlot][i-6])
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[InvInfo[playerid][iSlot][i-6]][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[InvInfo[playerid][iSlot][i-6]][invRot][0], InvType[InvInfo[playerid][iSlot][i-6]][invRot][1], InvType[InvInfo[playerid][iSlot][i-6]][invRot][2], InvType[InvInfo[playerid][iSlot][i-6]][invRot][3]);
// PlayerTextDrawBackgroundColor(playerid, InventoryP[i][playerid], 0x8C8C8C00);
PlayerTextDrawShow(playerid,InvAmm[playerid][i]);
format(str,sizeof(str),"%d",InvInfo[playerid][iKol][i-6]);
PlayerTextDrawSetString(playerid,InvAmm[playerid][i],str);
}
else
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[0][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[0][invRot][0], InvType[0][invRot][1], InvType[0][invRot][2], InvType[0][invRot][3]);
}
}
if(i >= 37 && i<= 42)
{
for(new x = 338; x < 434; x++)
{
if(InvType[x][invObj] != PlayerInfo[playerid][pAcs][i-37]) continue;
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[x][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[x][invRot][0], InvType[x][invRot][1], InvType[x][invRot][2], InvType[x][invRot][3]);
break;
}
if(!PlayerInfo[playerid][pAcs][i-37])
{
PlayerTextDrawSetPreviewModel(playerid, InventoryP[i][playerid], InvType[0][invObj]);
PlayerTextDrawSetPreviewRot(playerid, InventoryP[i][playerid], InvType[0][invRot][0], InvType[0][invRot][1], InvType[0][invRot][2], InvType[0][invRot][3]);
}
}
}
PlayerTextDrawShow(playerid,InventoryP[i][playerid]);
}
Последнее редактирование модератором:
