BOOL AbilityMachining::IsGemConflict(Obj_Human* pHuman, BYTE GemIndex, BYTE EquipIndex) { __ENTER_FUNCTION Assert( pHuman ); //const _ITEM* pGem = pHuman->GetItem(GemIndex); //const _ITEM* pEquip = pHuman->GetItem(EquipIndex); Item* pGemItem = HumanItemLogic::GetBagItem(pHuman,GemIndex); Item* pEquipItem = HumanItemLogic::GetBagItem(pHuman,EquipIndex); UINT uGemSerialNumber = pGemItem->GetItemTableIndex(); LuaInterface* pLuaInterface; pLuaInterface = pHuman->getScene()->GetLuaInterface(); _ITEM tmpGem; for( INT i=0; i<pEquipItem->GetGemSlotMax(); ++i ) { UINT idx; idx = pEquipItem->GetEquipGemInfo(i).m_GemIndex; if( idx < 1 ) continue; if( pLuaInterface->ExeScript_DDD( ABILITY_LOGIC_SCRIPT, "IsGemConflict", (INT)pHuman->getScene()->SceneID(), (INT)uGemSerialNumber, (INT)idx ) ) { return FALSE; } } return TRUE; __LEAVE_FUNCTION return FALSE; }