Good Morning !
how i can put /awak comand for normal players?
how i can put /awak comand for normal players?
BOOL TextCmd_GenRandomOption( CScanner & s )
BOOL TextCmd_GenRandomOption( CScanner & s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
#ifdef __AWA_WITH_PENYACOST
if( pItemElem )
{
int nCost = 500000;
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( 0 < nCost )
{
if( nRandomOptionKind >= 0 )
{
if( pUser->GetGold() > nCost )
{
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
{
char chMessage[100];
sprintf( chMessage, "Unsummon your pet/cs pet or you wont be able to awake it !" );
pUser->AddText( chMessage );
}
else
{
pUser->AddGold( -( nCost ) );
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
else
{
pUser->AddText( "You dont have enough money!" );
}
}
}
}
else
{
pUser->AddText( " To awake an item it has to be in the first slot of your inventory !" );
}
#else
if( pItemElem )
{
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 ) // 아이템 각성, 여신의 축복이 가능한 대상
{
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
{
char chMessage[100];
sprintf( chMessage, "Unsummon your pet/cs pet or you wont be able to awake it !" );
pUser->AddText( chMessage );
}
else
{
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
}
#endif //__AWA_WITH_PENYACOST
#endif // __WORLDSERVER
return TRUE;
}
ON_TEXTCMDFUNC( TextCmd_gml, "gmlist", "gm", "", "", TCM_SERVER, AUTH_GENERAL , "" )
ON_TEXTCMDFUNC( TextCmd_GenRandomOption, "Awakening", "awa", "각성축복", "각축", TCM_BOTH, AUTH_GENERAL, "" )
#define __AWA_WITH_PENYACOST
How to /Awakenig use scrolls?Quote:
FuncTextCmd.cpp
replace the functionwithPHP Code:BOOL TextCmd_GenRandomOption( CScanner & s )
underPHP Code:BOOL TextCmd_GenRandomOption( CScanner & s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
#ifdef __AWA_WITH_PENYACOST
if( pItemElem )
{
int nCost = 500000;
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( 0 < nCost )
{
if( nRandomOptionKind >= 0 )
{
if( pUser->GetGold() > nCost )
{
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
{
char chMessage[100];
sprintf( chMessage, "Unsummon your pet/cs pet or you wont be able to awake it !" );
pUser->AddText( chMessage );
}
else
{
pUser->AddGold( -( nCost ) );
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
else
{
pUser->AddText( "You dont have enough money!" );
}
}
}
}
else
{
pUser->AddText( " To awake an item it has to be in the first slot of your inventory !" );
}
#else
if( pItemElem )
{
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 ) // 아이템 각성, 여신의 축복이 가능한 대상
{
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
{
char chMessage[100];
sprintf( chMessage, "Unsummon your pet/cs pet or you wont be able to awake it !" );
pUser->AddText( chMessage );
}
else
{
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
}
}
}
#endif //__AWA_WITH_PENYACOST
#endif // __WORLDSERVER
return TRUE;
}
thisPHP Code:ON_TEXTCMDFUNC( TextCmd_gml, "gmlist", "gm", "", "", TCM_SERVER, AUTH_GENERAL , "" )
Versioncommon.h from Neuz an WorldserverPHP Code:ON_TEXTCMDFUNC( TextCmd_GenRandomOption, "Awakening", "awa", "각성축복", "각축", TCM_BOTH, AUTH_GENERAL, "" )
PHP Code:#define __AWA_WITH_PENYACOST