man würde sie jetz sozusagen so aufrufen
/ci NAME ID ANAZAHL UPGRADE ELEMENT ELEMENTUPGRADE
bsp
/ci Jopsi332 21 1 10 1 20
wäre für den char Jopsi332 ein woodensword +10 mit feuer +20
was müsst ihr tun?
ihr geht in Functextcmd.cpp
sucht nacht
Code:
BOOL TextCmd_CreateItem( CScanner& scanner )
KOMPLETT
mit
Code:
BOOL TextCmd_CreateItem( CScanner& scanner )
{
#define __MAX_UPGRADE 10 //maximales upgrade
#define __MAX_ELE_UPGRADE 20 //maximales element upgrade
#define __ANTI_PUSH //ausdefinieren wenn ihr jeden spieler eine waffe erstellen wollt
scanner.GetToken();
#ifdef __CLIENT
// Ŭ¶óÀÌ¾ðÆ®¿¡¼*
if( scanner.tok == FINISHED )
{
if( g_WndMng.GetWndBase( APP_ADMIN_CREATEITEM ) == NULL )
{
CWndAdminCreateItem* pWndAdminCreateItem = new CWndAdminCreateItem;
pWndAdminCreateItem->Initialize();
}
return FALSE;
}
return TRUE;
#endif
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)scanner.dwValue;
if( !IsValidObj( pUser ) )
{
return FALSE;
}
u_long idTarget = CPlayerDataCenter::GetInstance()->GetPlayerId( scanner.token );
if( idTarget == 0 )
{
idTarget = pUser->m_idPlayer;
}
CUser* pTarget = g_UserMng.GetUserByPlayerID( idTarget );
if( !IsValidObj( pTarget ) )
{
pUser->AddText( "Invalid target name." );
return TRUE;
}
#ifdef __ANTI_PUSH
if( pTarget->m_dwAuthorization == AUTH_GENERAL )
{
return TRUE;
}
else
{
#endif
DWORD dwNum;
DWORD dwCharged;
ItemProp* pProp = NULL;
scanner.GetToken();
if( scanner.tokenType == NUMBER )
{
pProp = prj.GetItemProp( _ttoi( scanner.Token ) );
}
else
{
pProp = prj.GetItemProp( scanner.Token );
}
if( pProp && pProp->dwItemKind3 != IK3_VIRTUAL )
{
if( pProp->dwItemKind3 == IK3_EGG && pProp->dwID != II_PET_EGG ) // ¸®¾îÆêÀ» »ý¼ºÇÏ·Á°í ÇÒ °æ¿ì "¾Ë"ÀÎ °æ¿ì¸¸ »ý¼º °¡´ÉÇÏ´Ù.
{
return TRUE;
}
dwNum = scanner.GetNumber();
dwNum = ( dwNum == 0? 1: dwNum );
int nAbilityOption = scanner.GetNumber();
BYTE bItemResist = scanner.GetNumber();
int nResistAbilityOption = scanner.GetNumber();
dwCharged = scanner.GetNumber();
dwCharged = ( dwCharged == 0 ? 0 : 1 );
if( nAbilityOption >= __MAX_UPGRADE )
{
nAbilityOption = __MAX_UPGRADE;
}
if( nAbilityOption <= 0 )
{
nAbilityOption = 0;
}
if( bItemResist >= 5 || bItemResist <= 1 )
{
bItemResist = 0;
}
if( nResistAbilityOption >= __MAX_ELE_UPGRADE )
{
nResistAbilityOption = __MAX_ELE_UPGRADE;
}
if( nResistAbilityOption <= 0)
{
nResistAbilityOption = 0;
}
CItemElem itemElem;
itemElem.m_dwItemId = pProp->dwID;
itemElem.m_nItemNum = (short)( dwNum );
itemElem.m_nHitPoint = -1;
itemElem.m_bCharged = dwCharged;
itemElem.m_nAbilityOption = nAbilityOption;
itemElem.m_nResistAbilityOption = nResistAbilityOption;
itemElem.m_bItemResist = bItemResist;
pTarget->CreateItem( &itemElem );
}
#ifdef __ANTI_PUSH
}
#endif
#endif
return TRUE;
}






