#include "stdafx.h" // // //#include "SGameObject.h" //#include "SGameMessage.h" // //#include "SStateVM.h" // ////using namespace GAME_INPUT; ////using namespace GAME_STATE; //// //////---------------------------------- //////전이 상태 추가 ////void FSMstate::AddTransition( int iInput, int iOutputID ) ////{ //// for( unsigned int i=0; i= m_usNumberOfTransistions ) //// return; //// //// m_piInputs[i] = 0; //// m_piOutputState[i] = 0; //// //// for( ; i<(m_usNumberOfTransistions-1); ++i ) //// { //// if( !m_piOutputState[i] ) //// break; //// //// m_piInputs[i] = m_piInputs[i+1]; //// m_piOutputState[i] = m_piOutputState[i+1]; //// } //// m_piInputs[i] = 0; //// m_piOutputState[i] = 0; ////} //// ////FSMstate::FSMstate( int iStateID, unsigned usTransitions ) ////{ //// if( !usTransitions ) //// m_usNumberOfTransistions = 1; //// else //// m_usNumberOfTransistions = usTransitions; //// //// m_iStateID = iStateID; //// //// m_piInputs = new int[m_usNumberOfTransistions]; //// for( unsigned int i=0; iGetOutput( iInput ); //// _oprint( "상태 변경 : %d ->", m_iCurrentState ); //// return m_iCurrentState; ////} //// ////FSMstate *SStateVM::GetState( int iStateID ) ////{ //// FSMstate *pState = NULL; //// State_Map::iterator it; //// //// if( !m_map.empty() ) //// { //// it = m_map.find( iStateID ); //// if( it != m_map.end() ) //// pState = (FSMstate *)((*it).second); //// } //// return( pState ); ////} //// ////void SStateVM::AddState( FSMstate *pNewState ) ////{ //// FSMstate *pState = NULL; //// State_Map::iterator it; //// //// if( !m_map.empty() ) //// { //// it = m_map.find( pNewState->GetID() ); //// if( it != m_map.end() ) //// pState = (FSMstate *)((*it).second); //// } //// //// if( pState != NULL ) //// { //// _oprint( "Error : 이미 있는 상태가 추가 됐다!!!\n" ); //// return; //// } //// //// m_map.insert( SM_VT(pNewState->GetID(), pNewState) ); ////} //// ////void SStateVM::DeleteState( int iStateID ) ////{ //// FSMstate *pState = NULL; //// State_Map::iterator it; //// //// if( !m_map.empty() ) //// { //// it = m_map.find( iStateID ); //// if( it != m_map.end() ) //// pState = (FSMstate *)((*it).second); //// } //// //// if( pState != NULL && //// pState->GetID() == iStateID ) //// { //// m_map.erase( it ); //// delete pState; //// } ////} //// ////void SStateVM::Init() ////{ //// //FSMstate *pFSMstate = NULL; //// //// ////기본 상태 //// //pFSMstate = new FSMstate( ST_NORMAL, 3 ); //// // pFSMstate->AddTransition( RQ_MOVE , ST_MOVE_WAIT ); //// // pFSMstate->AddTransition( RQ_ATTACK, ST_ATTACK ); //// // pFSMstate->AddTransition( RQ_SKILL , ST_SKILL ); //// //AddState( pFSMstate ); ////}