151 lines
3.8 KiB
C++
151 lines
3.8 KiB
C++
//------------------------------------------------------------------------------
|
|
// SkillStateBloodRain.cpp
|
|
// (C) 2005 Webzen Sunstudio
|
|
//------------------------------------------------------------------------------
|
|
#include "SunClientPrecompiledHeader.h"
|
|
#include "statebase.h"
|
|
#include "SkillState.h"
|
|
#include "SkillStateMoonAssault.h"
|
|
#include "Character.h"
|
|
#include "GlobalFunc.h"
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
*/
|
|
SkillStateMoonAssault::SkillStateMoonAssault()
|
|
{
|
|
|
|
}
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
*/
|
|
SkillStateMoonAssault::~SkillStateMoonAssault()
|
|
{
|
|
}
|
|
//
|
|
////------------------------------------------------------------------------------
|
|
///**
|
|
//*/
|
|
//BOOL SkillStateMoonAssault::CanTransite(Object* pOwner, DWORD CurTime, StateBase* pToTransiteState)
|
|
//{
|
|
// return TRUE;
|
|
//}
|
|
|
|
//
|
|
////------------------------------------------------------------------------------
|
|
///**
|
|
//*/
|
|
//STATECHANGE::TYPE SkillStateMoonAssault::OnStart(Object* pOwner, DWORD CurTime)
|
|
//{
|
|
// Character* pChr = (Character*)pOwner;
|
|
//
|
|
// if (g_pEffectManager)
|
|
// {
|
|
//
|
|
// m_hTrailEffect = GlobalFunc::CreateEffectBeUpToOption(StrToWzID("E004"),pChr->GetBonePos(87),pChr->GetObjectKey());
|
|
//
|
|
// // 굴절은 엔진팀의 일단 사용하지 말라고함
|
|
// // !! 굴절적용시 인터페이스를 그리지 못함. !!
|
|
// CEffectBody* pBody = g_pEffectManager->GetEffectPtrHandle(m_hTrailEffect);
|
|
// if( pBody)
|
|
// {
|
|
//
|
|
// pBody->SetRenderType(AR_REFRACTION_GLASS);
|
|
// pBody->SetRefractionRate(0.5f); // 굴절률.(0에 가까워 질수록 투명)
|
|
// pBody->SetRefractionAlpha(1.0f); // 1.0 에 가까워질수록 본 이미지에 가까워짐
|
|
//
|
|
// WzVector pos=pChr->GetBonePos(85);
|
|
// WzVector dir;
|
|
// WzMatrix mat=pChr->GetBoneMatrix(85);
|
|
// dir.x=mat._11*1.3f;
|
|
// dir.y=mat._12*1.3f;
|
|
// dir.z=mat._13*1.3f;//밑으로 내린다.
|
|
//
|
|
// pos+=dir;
|
|
//
|
|
// CEElementFlatChain* pFChain = pBody->GetFlatChainPtr();
|
|
// assert( pFChain );
|
|
//
|
|
// if( pFChain )
|
|
// {
|
|
// pFChain->SetLifeInfo(0, 30000);
|
|
// pFChain->SetTailNum(40);
|
|
// pFChain->SetSplineLength(0.2f);
|
|
//
|
|
// pFChain->SetPosition(pChr->GetBonePos(85),pos);
|
|
// }
|
|
//
|
|
// }
|
|
// else
|
|
// {
|
|
// //assert(!"검기 이펙트를 생성하지 못했습니다");
|
|
// }
|
|
//
|
|
//
|
|
// }
|
|
//
|
|
//
|
|
// return StateSkill::OnStart(pOwner,CurTime);
|
|
//}
|
|
//
|
|
////------------------------------------------------------------------------------
|
|
///**
|
|
//*/
|
|
//STATEPROCESS::TYPE SkillStateMoonAssault::OnProcess(Object* pOwner, DWORD CurTime,DWORD dwTick)
|
|
//{
|
|
// Character* pChr = (Character*)pOwner;
|
|
//
|
|
// EnterProcess(pOwner,CurTime,dwTick);
|
|
//
|
|
// // 타격점 체크
|
|
// CheckEvent();
|
|
//
|
|
// // 한대 친다.
|
|
// ProcessHit(pChr,1);
|
|
//
|
|
// if(m_hTrailEffect!=INVALID_HANDLE_VALUE)
|
|
// {
|
|
// CEffectBody* pBody = g_pEffectManager->GetEffectPtrHandle(m_hTrailEffect);
|
|
// if(pBody)
|
|
// {
|
|
// WzVector pos=pChr->GetBonePos(85);
|
|
// WzMatrix mat=pChr->GetBoneMatrix(85);
|
|
// WzVector dir;
|
|
// dir.x=mat._11*1.3f;
|
|
// dir.y=mat._12*1.3f;
|
|
// dir.z=mat._13*1.3f;
|
|
//
|
|
// pos+=dir;
|
|
//
|
|
// CEElementFlatChain* pFChain = pBody->GetFlatChainPtr();
|
|
// if( pFChain )
|
|
// {
|
|
// pFChain->SetPosition(pChr->GetBonePos(85),pos);
|
|
// }
|
|
//
|
|
// }
|
|
// }
|
|
//
|
|
// if( GetAnimationRate() > 70 )
|
|
// {
|
|
// if (g_pEffectManager&&m_hTrailEffect!=INVALID_HANDLE_VALUE)
|
|
// {
|
|
// g_pEffectManager->RemoveEffectPtr(m_hTrailEffect);
|
|
// m_hTrailEffect=INVALID_HANDLE_VALUE;
|
|
// }
|
|
//
|
|
// }
|
|
//
|
|
// return LeaveProcess(pOwner,CurTime,dwTick);
|
|
//}
|
|
//
|
|
////------------------------------------------------------------------------------
|
|
///**
|
|
//*/
|
|
//STATECHANGE::TYPE SkillStateMoonAssault::OnEnd(Object* pOwner, DWORD CurTime)
|
|
//{
|
|
// //Todo:특화된 처리를 한다.
|
|
//
|
|
// return StateSkill::OnEnd(pOwner,CurTime);
|
|
//
|
|
//}
|