Skrypty z Czasu Zapłaty to jeden wielki bug... Nie pakuj się w nie (recepty kosztują po 500k złota). Znajdź pointer do obecnego przedmiotu a sprawa sama się rozwiąże.
Post połączony: 2018-01-18, 20:38
Albo spróbuj tego:
func void Trade_UpdateValue() //Wywołać w ZS_TALK_LOOP?
{
var int ptr;
ptr = MEM_ReadInt(MEMINT_oCInformationManager_Address + 24);//oCInformationManager.ocViewDialogTrade
if(ptr)
{
ptr = MEM_ReadInt(ptr + 264); //oCViewDialogItemInventory
if(ptr)
{
ptr = MEM_ReadInt(ptr+256); //oCItemContainer
if(ptr)
{
var c_item it;
CALL_thiscall(ptr, oCItemContainer::GetSelectedItem() /*Adres musisz znaleźć sam*/);
MEM_AssignInst(it, CALL_RetValAsPtr());
if(_@(it))
{
Print(it.name);
//Czego dusza zapragnie
};
};
};
};
};
Tylko znajdź adres.