daniil9536
Новичок
Всем привет, у меня появилась проблема, инвентарь не работает, а именно после того как перетаскиваешь предмет, то допустим пустой слот заменяется с багом , перетащим туда какой либо предмет. То-есть по сути того предмета нету который появился в инвентаре так есть невидимый предмет, который пропадет после релога. Ну и это происходит это из за того что на пустой слот, одевается моделька с идом 0, а этот ид скин. И вот не знаю что делать. Код ниже)
За ранее всем спасибо)
Код:
stock RelogSlot(playerid,id)//Перезапуск слота
{
PlayerTextDrawHide(playerid,inv_slot_PTD[playerid][id]);
if(InvInfo[playerid][invIsClick][id] == true)PlayerTextDrawBackgroundColor(playerid, inv_slot_PTD[playerid][id], 0xFF454580);
else PlayerTextDrawBackgroundColor(playerid, inv_slot_PTD[playerid][id], -2139062252);
if(InvInfo[playerid][invClick] == false)PlayerTextDrawBackgroundColor(playerid, inv_slot_PTD[playerid][id], -2139062252);
PlayerTextDrawSetPreviewModel(playerid, inv_slot_PTD[playerid][id], PI[playerid][pInventory][id]);
PlayerTextDrawShow(playerid,inv_slot_PTD[playerid][id]);
return 1;
}
stock UpdInv(playerid)
{
for(new i; i < 36; i++)
{
new models = PI[playerid][pInventory][i];
new string[256];
if(models != 0)
{
format(string, sizeof(string), "%d", PI[playerid][pInvNum][i]);
PlayerTextDrawSetString(playerid, inv_slot_PTD[playerid][i], string);
PlayerTextDrawShow(playerid, inv_slot_PTD[playerid][i]);
PlayerTextDrawSetPreviewModel(playerid, inv_slot_PTD[playerid][i], models);
}
switch(models)
{
case 1..299: PlayerTextDrawSetPreviewRot(playerid, inv_slot_PTD[playerid][i], 0.0000, 0.0000, 0.0000, 1.0000);
case 2.666: PlayerTextDrawSetPreviewRot(playerid, inv_slot_PTD[playerid][i], 0.0000, 0.0000, 90.0000, 2.0000);
default: PlayerTextDrawSetPreviewRot(playerid, inv_slot_PTD[playerid][i], 0.0000, 0.0000, 90.0000, 2.0000);
}
SelectTextDraw(playerid, 0xB9B4E950);
}
return 1;
}
stock MoveSlot(playerid,id,new_id)//Перемещение по слотам
{
new string[245];
PlayerTextDrawHide(playerid, inv_slot_PTD[playerid][id]);
PI[playerid][pInventory][new_id] = PI[playerid][pInventory][id];
PI[playerid][pInventory][id] = 0;
PI[playerid][pInvNum][new_id] = PI[playerid][pInvNum][id];
PI[playerid][pInvNum][id] = 0;
format(string, sizeof(string), "%d", PI[playerid][pInvNum][new_id]);
PlayerTextDrawSetString(playerid, inv_slot_PTD[playerid][new_id], string);
PlayerTextDrawShow(playerid, inv_slot_PTD[playerid][new_id]);
RelogSlot(playerid,id);
RelogSlot(playerid,new_id);
SaveInv(playerid);
UpdInv(playerid);
return 1;
}
