Hi Elitepvper´s
ich habe ne frage,
wie lasse ich das pet immer maximal steigen ...
mfg
Delikan
ich habe ne frage,
wie lasse ich das pet immer maximal steigen ...
mfg
Delikan
// pet.inc
Pet_LevelupAvail // ·¹º§¾÷¿¡ ÀÇÇÑ ´É·ÂÄ¡ »ó½Â È®·ü
{
// 1 2 3 4 5 6 7 8 9
10000 0 0 0 0 0 0 0 0
0 0 10000 0 0 0 0 0 0
0 0 0 0 10000 0 0 0 0
0 0 0 0 0 0 10000 0 0
0 0 0 0 0 0 0 0 10000
}
Achso ;<?Quote:
Dafür habt ihr wie lange gebraucht ? 20min ?
Ich hab für Resourcen nichtmal eine Minute gebraucht ~
Warum umständlich wenns auch sehr einfach geht..
void CMover::PetLevelup( void )
{
#ifdef __CLIENT
if( m_pet.GetObj() ) // Á¦°Å Çϸé, ÇÁ·Î¼¼½º¿¡¼* Àç»ý
{
m_pet.SetLevelup( PF_PET_LEVEL_UP );
m_pet.GetObj()->Delete();
m_pet.SetObj( NULL );
}
#else // __CLIENT
CItemElem* pItemElem = GetPetItem();
CPet* pPet = pItemElem->m_pPet;
if( pPet->GetLevel() == PL_EGG ) // ºÎÈ*
{
pPet->SetKind( CPetProperty::GetInstance()->Hatch() );
pPet->SetLife( 1 );
#if __VER >= 13 // __HONORABLE_TITLE // ´ÞÀÎ
((CUser*)this)->SetHonorAdd(HS_HATCHING_EGG,HI_COUNT_CHECK);
#endif // __HONORABLE_TITLE // ´ÞÀÎ
}
pPet->IncLevel();
pItemElem->m_dwItemId = pPet->GetItemId();
pPet->SetExp( 0 );
pPet->SetEnergy( pPet->GetMaxEnergy() );
BYTE nAvailLevel = CPetProperty::GetInstance()->GetLevelupAvailLevel( pPet->GetLevel() );
pPet->SetAvailLevel( pPet->GetLevel(), nAvailLevel );
if( HasPet() )
RemovePet();
switch(pPet->GetLevel())
{
case PL_D:
pPet->SetAvailLevel(PL_D, 1);
case PL_C:
pPet->SetAvailLevel(PL_C, 3);
case PL_B:
pPet->SetAvailLevel(PL_B, 5);
case PL_A:
pPet->SetAvailLevel(PL_A, 7);
case PL_S:
pPet->SetAvailLevel(PL_S, 9);
}
g_dpDBClient.CalluspPetLog( m_idPlayer, pItemElem->GetSerialNumber(), 0, PETLOGTYPE_LEVELUP, pPet );
( (CUser*)this )->AddPet( pPet, PF_PET_LEVEL_UP ); // í»
g_UserMng.AddPetLevelup( this, MAKELONG( (WORD)pPet->GetIndex(), (WORD)pPet->GetLevel() ) ); // öâ
#endif // __CLIENT
}