Register for your free account! | Forgot your password?

You last visited: Today at 03:18

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



transmuted icon inside tooltip

Discussion on transmuted icon inside tooltip within the Flyff PServer Guides & Releases forum part of the Flyff Private Server category.

Reply
 
Old   #1
 
Int16's Avatar
 
elite*gold: 115
Join Date: Jun 2022
Posts: 13
Received Thanks: 14
transmuted icon inside tooltip

howdy this is a little addition for the __LOOKCHANGE system (using it on ketchup files)
it basically shows the transmuted item inside the tooltip

I know this isn't something big but i do those little snippets to expand my understanding for the flyff source and the coding language in general.
since im not a professional when it comes to coding i would be happy about some criticism or if someone points out some bad practices!



[tooltip.cpp]

[tooltip.h]

[WndManger.cpp]

[WndField.cpp] ( __ITEMLINK tooltip )
Int16 is offline  
Thanks
7 Users
Old 10/02/2022, 15:22   #2
 
Nιgнтмαяε's Avatar
 
elite*gold: 0
Join Date: Jul 2018
Posts: 426
Received Thanks: 305
Neat idea.
Nιgнтмαяε is offline  
Thanks
1 User
Old 10/03/2022, 12:57   #3
 
elite*gold: 0
Join Date: Sep 2022
Posts: 16
Received Thanks: 0
Warum funktioniert das, was ich hinzugefügt habe, nicht, ohne Symbole anzuzeigen?
liulinkan is offline  
Old 10/03/2022, 13:30   #4
 
Int16's Avatar
 
elite*gold: 115
Join Date: Jun 2022
Posts: 13
Received Thanks: 14
Quote:
Originally Posted by liulinkan View Post
Warum funktioniert das, was ich hinzugefügt habe, nicht, ohne Symbole anzuzeigen?
I do understand german but this sentence makes no sense at all ..
If something is not working i need some proper explanation on what exactly is working and what is not

one thing for sure is that you need the _LOOKCHANGE beforehand ( or could be named different in your source)

if its indeed named something different you need to also change the define names from the snippet i posted

Code:
#if defined(__LOOKCHANGE_TOOLTIP) && defined(RIGHT HERE)
Int16 is offline  
Old 10/04/2022, 04:20   #5
 
elite*gold: 0
Join Date: Sep 2022
Posts: 16
Received Thanks: 0
Quote:
Originally Posted by Int16 View Post
I do understand german but this sentence makes no sense at all ..
If something is not working i need some proper explanation on what exactly is working and what is not

one thing for sure is that you need the _LOOKCHANGE beforehand ( or could be named different in your source)

if its indeed named something different you need to also change the define names from the snippet i posted

Code:
#if defined(__LOOKCHANGE_TOOLTIP) && defined(RIGHT HERE)
Ich benutze Ketchup K18.3, das auch __LOOKCHANG definiert, funktioniert auch, zeigt nur keine Symbole an
liulinkan is offline  
Old 10/04/2022, 04:58   #6
 
Int16's Avatar
 
elite*gold: 115
Join Date: Jun 2022
Posts: 13
Received Thanks: 14
In the wndmanager snipped i posted check the first 2 parts if you missed something

If its not the issue ill have a look at it when im home

But does it show the "Skin :" text inside the tooltip?
Int16 is offline  
Old 10/04/2022, 15:40   #7
 
elite*gold: 0
Join Date: Sep 2022
Posts: 16
Received Thanks: 0
g_toolTip.PutToolTip( pItemBase->m_dwItemId, strItem, *pRect, point, 0 );
#if defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
CItemElem* itemElement = (CItemElem*)pItemBase;

if(itemElement->IsChangedLook() && pItemBase->GetProp()->bCanLooksChange && itemElement->GetLook() != NULL_ID )
g_toolTip.SetSkinTexture(pItemBase);
#endif //__LOOKCHANGE_TOOLTIP
#ifdef __WEAPON_LEVELING
g_toolTip.m_pItemElem = (CItemElem*)pItemBase;
#endif
if( pItemProp->IsUltimate() )
g_toolTip.SetUltimateToolTip( pItemBase );
#ifdef __NEW_ITEM_VARUNA
if( pItemProp->IsBaruna() )
g_toolTip.SetBarunaToolTip( pItemBase );
#endif // __NEW_ITEM_VARUNA
else // __IMPROVE_SYSTEM_VER15
if( pItemBase == NULL )
return;
// ItemProp *pItemProp = pItemBase->GetProp();
if( pItemProp == NULL )
{
LPCTSTR szErr = Error( "PutToolTip_Item : 橇肺欺萍啊 澄 %d", pItemBase->m_dwItemId );
ADDERRORMSG( szErr );
assert( 0 );
return;
}

CMover* pMover = g_pPlayer;
if( flag == APP_QUERYEQUIP )
{
CWndQueryEquip * pWndQueryEquip = (CWndQueryEquip *)g_WndMng.GetWndBase( APP_QUERYEQUIP );
if( pWndQueryEquip )
pMover = pWndQueryEquip->GetMover();
}

if( pMover == NULL )
return;

CItemElem* pItemElem = (CItemElem*)pItemBase;

CString str;
CString strTemp;
CString strEnter = '\n';
CEditString strEdit; // 傈眉甫 历厘窍绰 String

DWORD dwColorBuf;
dwColorBuf = PutItemName( pItemElem, &strEdit );
PutItemAbilityPiercing( pItemElem, &strEdit, dwColorBuf );
#if __VER >= 14 // __EQUIP_BIND
if( pItemElem->GetProp() && pItemElem->GetProp()->dwFlag & IP_FLAG_EQUIP_BIND )
{
strEdit.AddString( "\n" );
if( pItemElem->IsFlag( CItemElem::binds ) )
strEdit.AddString( GETTEXT( TID_TOOLTIP_EQUIPBIND_AFTER ), GETTEXTCOLOR( TID_TOOLTIP_EQUIPBIND_AFTER ) );
else
strEdit.AddString( GETTEXT( TID_TOOLTIP_EQUIPBIND_BEFORE ), GETTEXTCOLOR( TID_TOOLTIP_EQUIPBIND_BEFORE ) );
}
#endif // __EQUIP_BIND
PutWeapon( pItemElem, &strEdit );
PutSex( pMover, pItemElem, &strEdit );

switch( pItemProp->dwItemKind2 )
{
case IK2_WEAPON_DIRECT:
case IK2_WEAPON_MAGIC:
case IK2_ARMORETC:
case IK2_CLOTHETC:
case IK2_ARMOR:
case IK2_CLOTH:
case IK2_BLINKWING:
#ifdef __UNLIMITED_ARROW
case IK2_BULLET:
#endif // __UNLIMITED_ARROW
#ifdef __UNLIMITED_CHARM
case IK2_CHARM:
#endif // __UNLIMITED_CHARM
{
PutItemMinMax( pMover, pItemElem, &strEdit );
PutItemSpeed( pItemElem, &strEdit );
if( pItemProp->dwItemKind3 == IK3_ELECARD )
PutItemResist( pItemElem, &strEdit );
else if( pItemElem->m_nResistAbilityOption && ( pItemProp->dwItemKind1 == IK1_WEAPON || pItemProp->dwItemKind1 == IK1_ARMOR ) )
PutItemResist( pItemElem, &strEdit );

PutBaseResist( pItemElem, &strEdit ); // 加己 历亲仿

PutBaseItemOpt( pItemElem, &strEdit );
#if __VER < 12 // __EXT_PIERCING
#if __VER >= 9 // __CSC_VER9_1
if( (pItemProp->dwItemKind2 == IK2_WEAPON_DIRECT || pItemProp->dwItemKind2 == IK2_WEAPON_MAGIC) &&
pItemElem->GetProp()->dwReferStat1 == WEAPON_ULTIMATE )
PutAddedOpt( pItemElem, &strEdit );
#endif //__CSC_VER9_1
PutPiercingOpt( pItemElem, &strEdit );
#endif //__EXT_PIERCING
PutRandomOpt( pItemElem, &strEdit );
PutEnchantOpt( pMover, pItemElem, &strEdit, flag );
break;
}
case IK2_REFRESHER:
case IK2_FOOD:
case IK2_POTION:
{
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam1, pItemProp->nAdjParamVal1, &strEdit );
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam2, pItemProp->nAdjParamVal2, &strEdit );
break;
}
case IK2_JEWELRY:
{
PutBaseItemOpt( pItemElem, &strEdit );
break;
}
#if __VER >= 11 // __MA_VER11_05 // 纳腐磐 豪牢 芭贰 扁瓷 world,database,neuz
case IK2_SYSTEM:
{
#if __VER >= 15 // __PETVIS
if( pItemProp->dwItemKind3 == IK3_VIS )
{
PutNeededVis( pItemElem, &strEdit );
PutBaseItemOpt( pItemElem, &strEdit );
}
#endif

if( pItemElem->m_dwItemId == II_SYS_SYS_SCR_SEALCHARACTER )
{
PutSealChar( pItemElem, &strEdit );
}
break;
}
#endif // __MA_VER11_05 // 纳腐磐 豪牢 芭贰 扁瓷 world,database,neuz

#ifdef __ANARCHY_SYSTEM
case IK2_BUFF:
case IK2_BUFF2:
//case IK2_KEEP:
PutSkillTime(pItemElem, &strEdit, flag);
PutCooldown(pItemElem, &strEdit, flag);
//PutBaseItemOpt(pItemElem, &strEdit, flag, true);
PutBaseItemOpt(pItemElem, &strEdit);
break;
#endif // __ANARCHY_SYSTEM

case IK2_GMTEXT:
{
if( pItemProp->dwItemKind3 == IK3_TEXT_DISGUISE )
{
PutDestParam( pItemProp->dwDestParam[0], pItemProp->dwDestParam[1],
pItemProp->nAdjParamVal[0], pItemProp->nAdjParamVal[1], strEdit );

#if __VER >= 8 //__Y_FLAG_SKILL_BUFF
if( pItemProp->dwActiveSkill != NULL_ID )
{
ItemProp *pSkillProp;
AddSkillProp* pAddSkillProp;
pMover->GetSkillProp( &pSkillProp, &pAddSkillProp, pItemProp->dwActiveSkill, 1, "CWndMgr::PutToolTip_Item" );

if( pAddSkillProp )
{
PutDestParam( pAddSkillProp->dwDestParam[0], pAddSkillProp->dwDestParam[1],
pAddSkillProp->nAdjParamVal[0], pAddSkillProp->nAdjParamVal[1], strEdit );
}
}
#endif //__Y_FLAG_SKILL_BUFF


}
break;
}
default:
{
break;
}
} // switch( pItemProp->dwItemKind2 )

#if __VER >= 8 //__Y_FLAG_SKILL_BUFF
if( pItemElem->IsEatPet() )
{
if( pItemProp->dwActiveSkill != NULL_ID )
{
ItemProp *pSkillProp;
AddSkillProp* pAddSkillProp;
pMover->GetSkillProp( &pSkillProp, &pAddSkillProp, pItemProp->dwActiveSkill, 1, "CWndMgr::PutToolTip_Item" );

if( pAddSkillProp )
{
PutDestParam( pAddSkillProp->dwDestParam[0], pAddSkillProp->dwDestParam[1],
pAddSkillProp->nAdjParamVal[0], pAddSkillProp->nAdjParamVal[1], strEdit );
}
}
}
#endif //__Y_FLAG_SKILL_BUFF

#if __VER >= 15 // __PETVIS
if( pItemElem->IsVisPet( ) )
PutVisPetInfo( pItemElem, &strEdit );
#endif

PutCoolTime( pMover, pItemElem, &strEdit ); // 酿鸥烙
PutEndurance( pItemElem, &strEdit, flag ); // 郴备仿
PutKeepTime( pItemElem, &strEdit ); // 荤侩且荐 乐绰 矫埃
PutJob( pMover, pItemElem, &strEdit );
PutLevel( pMover, pItemElem, &strEdit );
PutCommand( pItemElem, &strEdit ); // 侩档
PutItemGold( pMover, pItemElem, &strEdit, flag ); // 啊拜

#if !defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
PutLookText(pItemElem, &strEdit);
#endif
PutSetItemOpt( pMover, pItemElem, &strEdit );
#if __VER >= 9 // __CSC_VER9_1
if( pItemProp->dwItemKind3 == IK3_EGG && pItemElem->m_pPet )//&& pItemElem->m_pPet->GetLevel() != PL_EGG )
PutPetInfo( pItemElem, &strEdit );
if( pItemProp->dwID == II_SYS_SYS_SCR_PET_FEED_POCKET ) //冈捞 林赣聪 砒屏
PutPetFeedPocket( pItemElem, &strEdit );
#endif //__CSC_VER9_1
#if __VER >= 12 // __EXT_PIERCING
PutPiercingOpt( pItemElem, &strEdit );
#endif //__EXT_PIERCING
#if __VER >= 11 // __SYS_IDENTIFY
PutAwakeningBlessing( pItemElem, &strEdit );
#endif // __SYS_IDENTIFY
#if __VER >= 12 // __EXT_PIERCING
if( (pItemProp->dwItemKind2 == IK2_WEAPON_DIRECT || pItemProp->dwItemKind2 == IK2_WEAPON_MAGIC) &&
pItemElem->GetProp()->dwReferStat1 == WEAPON_ULTIMATE )
PutAddedOpt( pItemElem, &strEdit );
#endif //__EXT_PIERCING
g_toolTip.PutToolTip( pItemBase->m_dwItemId, strEdit, *pRect, point, 0 );
#if __VER >= 9 // __CSC_VER9_1
if( pItemProp->IsUltimate() )
g_toolTip.SetUltimateToolTip(pItemBase);
#endif //__CSC_VER9_1
#ifdef __NEW_ITEM_VARUNA
if (pItemProp->IsBaruna())
g_toolTip.SetBarunaToolTip(pItemBase);
#endif // __NEW_ITEM_VARUNA
#endif // __IMPROVE_SYSTEM_VER15
}

#if __VER >= 15 // __IMPROVE_SYSTEM_VER15
void CWndMgr::PutToolTipItemAndSubToolTip( CItemBase* pItemBase, CPoint point, CRect* pRect, int nFlag )
{
// 促吝 砒屏 矫胶袍捞 利侩登搁辑 砒屏 免仿 傈俊 砒屏 胶困摹甫 固府 技泼秦辑 困摹甫 炼沥

g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_MAIN );
#ifdef __WEAPON_LEVELING
g_toolTip.m_pItemElem = (CItemElem*)pItemBase;
#endif
PutToolTipParts( pItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_MAIN );
ItemProp* pItemProp = pItemBase->GetProp();
switch( pItemProp->dwItemKind2 )
{
case IK2_WEAPON_DIRECT:
case IK2_WEAPON_MAGIC:
case IK2_ARMOR:
case IK2_ARMORETC:
case IK2_CLOTH:
case IK2_CLOTHETC:
case IK2_JEWELRY:
case IK2_RIDING:
case IK2_CLOTHWIG:
{
CItemBase* pEquipItemBase = g_pPlayer->GetEquipItem( pItemProp->dwParts );
if( pEquipItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB1 );
PutToolTipParts( pEquipItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB1 );
}
if( pItemProp->dwParts == PARTS_RWEAPON )
{
CItemBase* pRWeaponItemBase = g_pPlayer->GetEquipItem( PARTS_RWEAPON );
CItemBase* pLWeaponItemBase = g_pPlayer->GetEquipItem( PARTS_LWEAPON );
if( pRWeaponItemBase && pLWeaponItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB2 );
PutToolTipParts( pLWeaponItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB2 );
}
else if( pRWeaponItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB1 );
PutToolTipParts( pRWeaponItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB1 );
}
else if( pLWeaponItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB1 );
PutToolTipParts( pLWeaponItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB1 );
}
}
else if( pItemProp->dwParts == PARTS_RING1 )
{
CItemBase* pRing1ItemBase = g_pPlayer->GetEquipItem( PARTS_RING1 );
CItemBase* pRing2ItemBase = g_pPlayer->GetEquipItem( PARTS_RING2 );
if( pRing1ItemBase && pRing2ItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB2 );
PutToolTipParts( pRing2ItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB2 );
}
else if( pRing1ItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB1 );
PutToolTipParts( pRing1ItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB1 );
}
else if( pRing2ItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB1 );
PutToolTipParts( pRing2ItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB1 );
}
}
else if( pItemProp->dwParts == PARTS_EARRING1 )
{
CItemBase* pEarring1ItemBase = g_pPlayer->GetEquipItem( PARTS_EARRING1 );
CItemBase* pEarring2ItemBase = g_pPlayer->GetEquipItem( PARTS_EARRING2 );
if( pEarring1ItemBase && pEarring2ItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB2 );
PutToolTipParts( pEarring2ItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB2 );
}
else if( pEarring1ItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB1 );
PutToolTipParts( pEarring1ItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB1 );
}
else if( pEarring2ItemBase )
{
g_toolTip.SetSubToolTipNumber( TOOL_TIP_SWITCH_SUB1 );
PutToolTipParts( pEarring2ItemBase, point, pRect, nFlag, TOOL_TIP_SWITCH_SUB1 );
}
}
break;
}
}
}

void CWndMgr::PutToolTipParts( CItemBase* pPartsItemBase, CPoint point, CRect* pRect, const int nFlag, const int nSubToolTipFlag )
{
if( pPartsItemBase == NULL )
return;

ItemProp* pPartsItemProp = pPartsItemBase->GetProp();
CEditString strEquipItem = _T( "" );
if( nSubToolTipFlag != 0 )
PutEquipItemText( &strEquipItem );
MakeToolTipText( pPartsItemBase, strEquipItem, nFlag );
switch( nSubToolTipFlag )
{
case 0:
{
#ifdef __WEAPON_LEVELING
g_toolTip.m_pItemElem = (CItemElem*)pPartsItemBase;
#endif
g_toolTip.PutToolTipEx( pPartsItemBase->m_dwItemId, strEquipItem, *pRect, point, 0, nSubToolTipFlag );
if( pPartsItemProp->IsUltimate() )
g_toolTip.SetUltimateToolTip( pPartsItemBase );
#ifdef __NEW_ITEM_VARUNA
if( pPartsItemProp->IsBaruna() )
g_toolTip.SetBarunaToolTip( pPartsItemBase );
#endif // __NEW_ITEM_VARUNA
break;
}
case 1:
{
#ifdef __WEAPON_LEVELING
g_toolTipSub1.m_pItemElem = (CItemElem*)pPartsItemBase;
#endif
g_toolTipSub1.PutToolTipEx( pPartsItemBase->m_dwItemId, strEquipItem, *pRect, point, 0, nSubToolTipFlag );
if( pPartsItemProp->IsUltimate() )
g_toolTipSub1.SetUltimateToolTip( pPartsItemBase );
#ifdef __NEW_ITEM_VARUNA
if( pPartsItemProp->IsBaruna() )
g_toolTipSub1.SetBarunaToolTip( pPartsItemBase );
#endif // __NEW_ITEM_VARUNA
#if defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
CItemElem* itemElement = (CItemElem*)pPartsItemBase;

if(itemElement->IsChangedLook() && pPartsItemBase->GetProp()->bCanLooksChange && itemElement->GetLook() != NULL_ID )
g_toolTipSub1.SetSkinTexture(pPartsItemBase);
#endif //__LOOKCHANGE_TOOLTIP
break;
}
case 2:
{
#ifdef __WEAPON_LEVELING
g_toolTipSub2.m_pItemElem = (CItemElem*)pPartsItemBase;
#endif
g_toolTipSub2.PutToolTipEx( pPartsItemBase->m_dwItemId, strEquipItem, *pRect, point, 0, nSubToolTipFlag );
if( pPartsItemProp->IsUltimate() )
g_toolTipSub2.SetUltimateToolTip( pPartsItemBase );
#ifdef __NEW_ITEM_VARUNA
if( pPartsItemProp->IsBaruna() )
g_toolTipSub2.SetBarunaToolTip( pPartsItemBase );
#endif // __NEW_ITEM_VARUNA

#if defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
CItemElem* itemElement = (CItemElem*)pPartsItemBase;

if(itemElement->IsChangedLook() && pPartsItemBase->GetProp()->bCanLooksChange && itemElement->GetLook() != NULL_ID )
g_toolTipSub2.SetSkinTexture(pPartsItemBase);
#endif //__LOOKCHANGE_TOOLTIP
break;
}
}
}

void CWndMgr::MakeToolTipText( CItemBase* pItemBase, CEditString& strEdit, int flag )
{
if( pItemBase == NULL )
return;
ItemProp *pItemProp = pItemBase->GetProp();
if( pItemProp == NULL )
{
LPCTSTR szErr = Error( "PutToolTip_Item : 橇肺欺萍啊 澄 %d", pItemBase->m_dwItemId );
ADDERRORMSG( szErr );
assert( 0 );
return;
}

CMover* pMover = g_pPlayer;
if( flag == APP_QUERYEQUIP )
{
CWndQueryEquip * pWndQueryEquip = (CWndQueryEquip *)g_WndMng.GetWndBase( APP_QUERYEQUIP );
if( pWndQueryEquip )
pMover = pWndQueryEquip->GetMover();
}

if( pMover == NULL )
return;

CItemElem* pItemElem = (CItemElem*)pItemBase;

CString str = _T( "" );
CString strTemp = _T( "" );
CString strEnter = '\n';

DWORD dwColorBuf;
dwColorBuf = PutItemName( pItemElem, &strEdit );
PutItemAbilityPiercing( pItemElem, &strEdit, dwColorBuf );
#if defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
if( pItemElem->IsChangedLook() && pItemElem->GetProp()->bCanLooksChange && pItemElem->GetLook() != NULL_ID )
{
strEdit.AddString('\n');
strEdit.AddString("Skin : ", 0xff000000);
}
#endif //__LOOKCHANGE_TOOLTIP
#ifdef __FUSION_ELEM
if( pItemElem->IsFusion() )
strEdit.AddString( "\n[]", D3DCOLOR_XRGB( 178, 0, 255 ) );
#endif // __FUSION_ELEM

#if __VER >= 15 // __PETVIS
PutPetKind( pItemElem, &strEdit ); //gmpbigsun : 酒捞袍 疙 促澜临俊 脐 辆幅 ( 府绢, 侨诀, 滚橇 ) 火涝
#endif //__PETVIS
#ifdef __WEAPON_LEVELING
if(pItemElem && pItemElem->GetProp())
{
WeaponLevelingProp* pProp = prj.GetWeaponLevelingProp(pItemElem->GetProp()->dwItemKind3);
if( pProp )
{
strTemp.Format("\n: %d%%", MulDiv(((CItemElem*)pItemBase)->m_nWeaponExp, 100, INT_MAX / 100 * ((CItemElem*)pItemBase)->m_nWeaponLevel));
strEdit.AddString( strTemp, D3DCOLOR_XRGB( 178, 0, 255 ) );
}
}

#endif
#ifdef __VENDING_NPC
if (pItemElem->GetProp()->dwItemKind3 == IK3_VENDING)
{
strEdit.AddString("\n[]");
}
#endif
#ifdef __OFFLINE_VENDOR
if (pItemElem->GetProp()->dwItemKind3 == IK3_VENDING)
{
strEdit.AddString("\n[]");
}
#endif
#if __VER >= 14 // __EQUIP_BIND
if( pItemElem->GetProp() && pItemElem->GetProp()->dwFlag & IP_FLAG_EQUIP_BIND )
{
strEdit.AddString( "\n" );
if(pItemElem->IsFlag( CItemElem::binds ) )
strEdit.AddString( GETTEXT( TID_TOOLTIP_EQUIPBIND_AFTER ), GETTEXTCOLOR( TID_TOOLTIP_EQUIPBIND_AFTER ) );
else
strEdit.AddString( GETTEXT( TID_TOOLTIP_EQUIPBIND_BEFORE ), GETTEXTCOLOR( TID_TOOLTIP_EQUIPBIND_BEFORE ) );
}
#endif // __EQUIP_BIND
PutWeapon( pItemElem, &strEdit );
PutSex( pMover, pItemElem, &strEdit );

switch( pItemProp->dwItemKind2 )
{
case IK2_WEAPON_DIRECT:
case IK2_WEAPON_MAGIC:
case IK2_ARMORETC:
case IK2_CLOTHETC:
case IK2_ARMOR:
case IK2_CLOTH:
case IK2_BLINKWING:
#ifdef __UNLIMITED_ARROW
case IK2_BULLET:
#endif // __UNLIMITED_ARROW
#ifdef __UNLIMITED_CHARM
case IK2_CHARM:
#endif // __UNLIMITED_CHARM
{
PutItemMinMax( pMover, pItemElem, &strEdit );
PutItemSpeed( pItemElem, &strEdit );
if( pItemProp->dwItemKind3 == IK3_ELECARD )
PutItemResist( pItemElem, &strEdit );
else if( pItemElem->m_nResistAbilityOption && ( pItemProp->dwItemKind1 == IK1_WEAPON || pItemProp->dwItemKind1 == IK1_ARMOR ) )
PutItemResist( pItemElem, &strEdit );

PutBaseResist( pItemElem, &strEdit ); // 加己 历亲仿

PutBaseItemOpt( pItemElem, &strEdit );
#if __VER < 12 // __EXT_PIERCING
#if __VER >= 9 // __CSC_VER9_1
if( (pItemProp->dwItemKind2 == IK2_WEAPON_DIRECT || pItemProp->dwItemKind2 == IK2_WEAPON_MAGIC) &&
pItemElem->GetProp()->dwReferStat1 == WEAPON_ULTIMATE )
PutAddedOpt( pItemElem, &strEdit );
#endif //__CSC_VER9_1
PutPiercingOpt( pItemElem, &strEdit );
#endif //__EXT_PIERCING
PutRandomOpt( pItemElem, &strEdit );
PutEnchantOpt( pMover, pItemElem, &strEdit, flag );
break;
}
case IK2_REFRESHER:
case IK2_FOOD:
case IK2_POTION:
{
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam1, pItemProp->nAdjParamVal1, &strEdit );
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam2, pItemProp->nAdjParamVal2, &strEdit );
#ifdef __PROP_0827
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam3, pItemProp->nAdjParamVal3, &strEdit);
#endif // __PROP_0827
#if __VER >= 19
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam4, pItemProp->nAdjParamVal4, &strEdit);
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam5, pItemProp->nAdjParamVal5, &strEdit);
PutMedicine( pItemElem, pItemElem->GetProp()->dwDestParam6, pItemProp->nAdjParamVal6, &strEdit);
#endif
break;
}
case IK2_JEWELRY:
{
PutBaseItemOpt( pItemElem, &strEdit );
break;
}
#if __VER >= 11 // __MA_VER11_05 // 纳腐磐 豪牢 芭贰 扁瓷 world,database,neuz
case IK2_SYSTEM:
{
#if __VER >= 15 // __PETVIS
if( pItemProp->dwItemKind3 == IK3_VIS )
{
PutNeededVis( pItemElem, &strEdit );
PutBaseItemOpt( pItemElem, &strEdit );
}
#endif

if( pItemElem->m_dwItemId == II_SYS_SYS_SCR_SEALCHARACTER )
{
PutSealChar( pItemElem, &strEdit );
}
break;
}
#endif // __MA_VER11_05 // 纳腐磐 豪牢 芭贰 扁瓷 world,database,neuz

case IK2_GMTEXT:
{
if( pItemProp->dwItemKind3 == IK3_TEXT_DISGUISE )
{
PutDestParam( pItemProp->dwDestParam[0], pItemProp->dwDestParam[1],
pItemProp->nAdjParamVal[0], pItemProp->nAdjParamVal[1], strEdit );

#if __VER >= 8 //__Y_FLAG_SKILL_BUFF
if( pItemProp->dwActiveSkill != NULL_ID )
{
ItemProp *pSkillProp;
AddSkillProp* pAddSkillProp;
pMover->GetSkillProp( &pSkillProp, &pAddSkillProp, pItemProp->dwActiveSkill, 1, "CWndMgr::PutToolTip_Item" );

if( pAddSkillProp )
{
PutDestParam( pAddSkillProp->dwDestParam[0], pAddSkillProp->dwDestParam[1],
pAddSkillProp->nAdjParamVal[0], pAddSkillProp->nAdjParamVal[1], strEdit );
}
}
#endif //__Y_FLAG_SKILL_BUFF


}
break;
}

default:
{
break;
}
} // switch( pItemProp->dwItemKind2 )

#if __VER >= 8 //__Y_FLAG_SKILL_BUFF
if( pItemElem->IsEatPet() )
{
if( pItemProp->dwActiveSkill != NULL_ID )
{
ItemProp *pSkillProp;
AddSkillProp* pAddSkillProp;
pMover->GetSkillProp( &pSkillProp, &pAddSkillProp, pItemProp->dwActiveSkill, 1, "CWndMgr::PutToolTip_Item" );

if( pAddSkillProp )
{
PutDestParam( pAddSkillProp->dwDestParam[0], pAddSkillProp->dwDestParam[1],
pAddSkillProp->nAdjParamVal[0], pAddSkillProp->nAdjParamVal[1], strEdit );
}
}
}
#endif //__Y_FLAG_SKILL_BUFF

#if __VER >= 15 // __PETVIS

if( pItemElem->IsVisPet( ) )
{
PutVisPetInfo( pItemElem, &strEdit );
}
#endif

#ifdef __VENDING_NPC
if (pItemProp->dwItemKind3 == IK3_VENDING)
{
PutSkillTime(pItemElem, &strEdit, flag);
}
#endif
#ifdef __OFFLINE_VENDOR
if (pItemProp->dwItemKind3 == IK3_VENDING)
{
PutSkillTime(pItemElem, &strEdit, flag);
}
#endif
PutCoolTime( pMover, pItemElem, &strEdit ); // 酿鸥烙
PutEndurance( pItemElem, &strEdit, flag ); // 郴备仿
PutKeepTime( pItemElem, &strEdit ); // 荤侩且荐 乐绰 矫埃
PutJob( pMover, pItemElem, &strEdit );
PutLevel( pMover, pItemElem, &strEdit );
#ifdef __ELLDIN_POTION
PutElldinPotionText( pItemElem, &strEdit );
#endif // __ELLDIN_POTION
PutCommand( pItemElem, &strEdit ); // 侩档
PutItemGold( pMover, pItemElem, &strEdit, flag ); // 啊拜
#ifdef __WIKI_ITEMS
if (flag == APP_WIKI_ITEMS)
PutSetItemOptWiki(pMover, pItemElem, &strEdit);
else
#endif
#if !defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
PutLookText(pItemElem, &strEdit);
#endif
PutSetItemOpt( pMover, pItemElem, &strEdit );
liulinkan is offline  
Old 10/04/2022, 20:54   #8
 
Int16's Avatar
 
elite*gold: 115
Join Date: Jun 2022
Posts: 13
Received Thanks: 14
inside
PHP Code:
void CWndMgr::PutToolTipPartsCItemBasepPartsItemBaseCPoint pointCRectpRect, const int nFlag, const int nSubToolTipFlag 
you forgot to add it inside case 0:

PHP Code:
case 0:
{
#ifdef __WEAPON_LEVELING
        
g_toolTip.m_pItemElem = (CItemElem*)pPartsItemBase;
#endif
        
g_toolTip.PutToolTipExpPartsItemBase->m_dwItemIdstrEquipItem, *pRectpoint0nSubToolTipFlag );
        if( 
pPartsItemProp->IsUltimate() )
                
g_toolTip.SetUltimateToolTippPartsItemBase );
#ifdef __NEW_ITEM_VARUNA
        
if( pPartsItemProp->IsBaruna() )
                
g_toolTip.SetBarunaToolTippPartsItemBase );
#endif // __NEW_ITEM_VARUNA
////////////////////////////////////////////////////////////////////////////////
#if defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
        
CItemElemitemElement = (CItemElem*)pPartsItemBase;

        if(
itemElement->IsChangedLook() && pPartsItemBase->GetProp()->bCanLooksChange && itemElement->GetLook() != NULL_ID )
            
g_toolTip.SetSkinTexture(pPartsItemBase);
#endif //__LOOKCHANGE_TOOLTIP
////////////////////////////////////////////////////////////////////////////////
break;

Int16 is offline  
Old 10/06/2022, 13:44   #9
 
elite*gold: 0
Join Date: Sep 2022
Posts: 16
Received Thanks: 0
Quote:
Originally Posted by Int16 View Post
inside
PHP Code:
void CWndMgr::PutToolTipPartsCItemBasepPartsItemBaseCPoint pointCRectpRect, const int nFlag, const int nSubToolTipFlag 
you forgot to add it inside case 0:

PHP Code:
case 0:
{
#ifdef __WEAPON_LEVELING
        
g_toolTip.m_pItemElem = (CItemElem*)pPartsItemBase;
#endif
        
g_toolTip.PutToolTipExpPartsItemBase->m_dwItemIdstrEquipItem, *pRectpoint0nSubToolTipFlag );
        if( 
pPartsItemProp->IsUltimate() )
                
g_toolTip.SetUltimateToolTippPartsItemBase );
#ifdef __NEW_ITEM_VARUNA
        
if( pPartsItemProp->IsBaruna() )
                
g_toolTip.SetBarunaToolTippPartsItemBase );
#endif // __NEW_ITEM_VARUNA
////////////////////////////////////////////////////////////////////////////////
#if defined(__LOOKCHANGE_TOOLTIP) && defined(__LOOKCHANGE)
        
CItemElemitemElement = (CItemElem*)pPartsItemBase;

        if(
itemElement->IsChangedLook() && pPartsItemBase->GetProp()->bCanLooksChange && itemElement->GetLook() != NULL_ID )
            
g_toolTip.SetSkinTexture(pPartsItemBase);
#endif //__LOOKCHANGE_TOOLTIP
////////////////////////////////////////////////////////////////////////////////
break;

Vielen Dank
liulinkan is offline  
Old 10/06/2022, 13:46   #10
 
Int16's Avatar
 
elite*gold: 115
Join Date: Jun 2022
Posts: 13
Received Thanks: 14
Quote:
Originally Posted by liulinkan View Post
Vielen Dank

I also updated the thread with some fixes and added the itemlink tooltip
Int16 is offline  
Old 10/06/2022, 14:15   #11
 
elite*gold: 0
Join Date: Sep 2022
Posts: 16
Received Thanks: 0
Quote:
Originally Posted by Int16 View Post
I also updated the thread with some fixes and added the itemlink tooltip
Ich habe ihn immer noch nicht arbeiten lassen und das Symbol nicht gezeigt ....., in der Forschungsstudie
liulinkan is offline  
Old 10/08/2022, 00:10   #12
 
Nιgнтмαяε's Avatar
 
elite*gold: 0
Join Date: Jul 2018
Posts: 426
Received Thanks: 305
Quote:
Originally Posted by Int16 View Post
I do understand german but this sentence makes no sense at all ..
If something is not working i need some proper explanation on what exactly is working and what is not

one thing for sure is that you need the _LOOKCHANGE beforehand ( or could be named different in your source)

if its indeed named something different you need to also change the define names from the snippet i posted

Code:
#if defined(__LOOKCHANGE_TOOLTIP) && defined(RIGHT HERE)
That's because he is a Chinese user trying to use a language he is google translating lol.
Nιgнтмαяε is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[Selling] Clockworks | BCOL and Fierce set (F) (Snowman transmuted)
07/06/2018 - Flyff Trading - 0 Replies
Hello, I am selling my BCOL and Fierce set (F) (Snowman transmuted) on the official Clockworks server. Here's an image of how the set looks like: https://i.imgur.com/6lVv1ef.png If you're interested PM me (with your Skype) and make an offer.
[Buying] Buying Beta Tester Icon (Grandmaster Icon (Rammus Icon)
06/22/2016 - League of Legends Trading - 3 Replies
http://avatar.leagueoflegends.com/na/ELO%20PUPPET. png Buying an Account with Icon like This! I can pay up to 150€ Skype: chaoscomputerclub
Fehler im Tooltip nutzen - Juwelen
06/14/2008 - WoW Exploits, Hacks, Tools & Macros - 1 Replies
Einige Caster werden sich schon gefreut haben. Endlich gibts mal ne gescheite Alternative für nen blauen Sockel: http://wow.buffed.de/items/png/35318.png Juhu endlich die überflüssigen HP los! :) Schaut man sich jedoch die epische Alternative an : http://wow.buffed.de/items/png/35759.png drängt sich einem der Verdacht auf daß da was nicht stimmt.
Suche addon: Tooltip am Courser?
02/05/2006 - World of Warcraft - 4 Replies
Ich weiß das es ein Addon gibt wo mit man das Tooltip am Courser hat aber ka wie das heißt habe auf http://www.curse-gaming.com schon alles durchgesucht nix gefunden ich habs schon mal da druf gesehn aber ich finds nimmer mehr^^ Bitte um ein spende z.b. ein link :D



All times are GMT +2. The time now is 03:18.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.