Unbinding

07/03/2013 18:00 Rhyder`#1
i already added the code of scroll of unbinding but it can't remove the soul link of my item what should i do for it?

DPSvr.cpp
Code:
#ifdef __SCROLL_OF_UNBIND
		      case II_CHR_SYS_SCR_UNBIND: 
                b = UnbindScroll(pUser, pMaterial, pTarget); 
		      break;
#endif
Code:
#ifdef __SCROLL_OF_UNBIND
BOOL CDPSrvr::UnbindScroll( CUser* pUser, CItemElem* pMaterial, CItemElem* pTarget ) 
{ 
    if( pTarget->IsFlag(CItemElem::binds) && pMaterial->m_dwItemId == II_CHR_SYS_SCR_UNBIND )  
    { 
        pTarget->ResetFlag(CItemElem::binds); 
        pUser->UpdateItem( (BYTE)( pTarget->m_dwObjId ), UI_FLAG, MAKELONG( pTarget->m_dwObjIndex, pTarget->m_byFlag ) ); 

        // log 
        LogItemInfo    log; 
        log.Action    = "r"; 
        log.SendName    = pUser->GetName(); 
        log.RecvName    = "::binds"; 
        log.WorldId        = pUser->GetWorld()->GetID(); 
        log.Gold    = pUser->GetGold(); 
        log.Gold2    = pUser->GetGold(); 
        OnLogItem( log, pTarget, 1 ); 
        return TRUE; 
    } 
    else 
        pUser->AddText("Already Unbinded"); 

    return FALSE; 
}
#endif
spec_item.txt
Code:
11	II_CHR_SYS_SCR_UNBIND	IDS_UNBIND_TXT_00001	1	9999	IK1_SYSTEM	IK2_SYSTEM	IK3_SCROLL	=	=	1	=	200000000	=	=	=	=	=	=	=	0	=	=	1	1	1	1	1	=	=	=	=	_NONE	0	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	EXT_ITEM	WUI_NOW	=	=	=	=	=	=	=	=	=	0	0	0	0	0	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	"""Itm_SysSysScrAwakeSafe01.dds"""	0	""""""	IDS_UNBIND_TXT_00002		1	300	0	0	1	0	0	0	0	0	2	=	=	=	=	=	=	=	=	=	=	1	1	1	1	1	0
can someone help me???
07/03/2013 20:05 NativeGermany#2
Code:
BOOL CDPSrvr::UnbindScroll( CUser* pUser, CItemElem* pMaterial, CItemElem* pTarget ) 
{ 
    if( pTarget->IsFlag(CItemElem::binds) && pMaterial->m_dwItemId == ITEM ID !!!! )  
    { 
        pTarget->ResetFlag(CItemElem::binds); 
        pUser->UpdateItem( (BYTE)( pTarget->m_dwObjId ), UI_FLAG, MAKELONG( pTarget->m_dwObjIndex, pTarget->m_byFlag ) ); 

        // log 
        LogItemInfo    log; 
        log.Action    = "r"; 
        log.SendName    = pUser->GetName(); 
        log.RecvName    = "::binds"; 
        log.WorldId        = pUser->GetWorld()->GetID(); 
        log.Gold    = pUser->GetGold(); 
        log.Gold2    = pUser->GetGold(); 
        OnLogItem( log, pTarget, 1 ); 
        return TRUE; 
    } 
    else 
        pUser->AddText("Item ist bereits entbunden."); 

    return FALSE; 
}
Code:
			case II_CHR_SYS_SCR_UNBIND: 
                b = UnbindScroll(pUser, pMaterial, pTarget); 
                break;  
			default:
				break;
Code:
11	II_CHR_SYS_SCR_UNBIND	IDS_UNBIND_TXT_00001	1	9999	IK1_SYSTEM	IK2_SYSTEM	IK3_SCROLL	=	=	1	=	200000000	=	=	=	=	=	=	=	0	=	=	1	1	1	1	1	=	=	=	=	_NONE	0	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	EXT_ITEM	WUI_NOW	=	=	=	=	=	=	=	=	=	0	0	0	0	0	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	"""Itm_SysSysScrScroll01.dds"""	0	""""""	IDS_UNBIND_TXT_00002		1	300	0	0	1	0	0	0	0	0	2	=	=	=	=	=	=	=	=	=	=	1	1	1	1	1	0