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; }