DragonNest/Server/DNGameServer/DnLotusGolemMonsterActor.cpp
Cussrro 47f7895977 Revert "修复编码问题"
This reverts commit 9e69c01767.
2024-12-21 10:04:04 +08:00

60 lines
No EOL
1.5 KiB
C++

#include "StdAfx.h"
#include "DnLotusGolemMonsterActor.h"
#include "DnActorClassDefine.h"
#include "DnGameTask.h"
#include "TaskManager.h"
#include "MAAiBase.h"
#include "MAStaticLookMovement.h"
CDnLotusGolemMonsterActor::CDnLotusGolemMonsterActor( CMultiRoom *pRoom, int nClassID )
: CDnPartsMonsterActor( pRoom, nClassID )
{
m_fShakeDelta = 0.f;
m_HitCheckType = HitCheckTypeEnum::Collision;
}
CDnLotusGolemMonsterActor::~CDnLotusGolemMonsterActor()
{
}
MAMovementBase* CDnLotusGolemMonsterActor::CreateMovement()
{
MAMovementBase* pMovement = new IBoostPoolMAStaticMovement();
return pMovement;
}
bool CDnLotusGolemMonsterActor::Initialize()
{
CDnPartsMonsterActor::Initialize();
if( !m_hObject )
return false;
m_hObject->SetCollisionGroup( COLLISION_GROUP_DYNAMIC( 3 ) );
m_hObject->SetTargetCollisionGroup( 0 );
return true;
}
void CDnLotusGolemMonsterActor::Process( LOCAL_TIME LocalTime, float fDelta )
{
float fValue = 1.f;
if( m_fShakeDelta > 0.f ) {
m_fShakeDelta -= fDelta;
if( m_fShakeDelta <= 0.f ) {
m_fShakeDelta = 0.f;
}
fValue = 1.f - ( ( _rand(m_hActor->GetRoom())%100 ) * 0.0005f );
}
MAActorRenderBase::SetScale( EtVector3( GetScale() * fValue, GetScale(), GetScale() * fValue ) );
CDnPartsMonsterActor::Process( LocalTime, fDelta );
}
void CDnLotusGolemMonsterActor::OnDamage( CDnDamageBase *pHitter, SHitParam &HitParam, HitStruct *pHitStruct )
{
m_fShakeDelta = 0.3f;
CDnPartsMonsterActor::OnDamage( pHitter, HitParam, pHitStruct );
}