// 대전장으로 텔레포트 void CGuildCombat1to1::SetTeleportToWarStage( CUser* pUser ) { int nIndex = g_GuildCombat1to1Mng.GetTenderGuildIndexByUser( pUser ); pUser->m_nGuildCombatState = 1; // 길드대전 모드 g_UserMng.AddGuildCombatUserState( pUser ); if( m_vecTenderGuild[nIndex].nPosition == 0 ) { pUser->SetAngle( 0 ); pUser->REPLACE( g_uIdofMulti, m_vecTenderGuild[nIndex].dwWorldId, D3DXVECTOR3( 260, 75, 252 ), REPLACE_NORMAL, nDefaultLayer ); } else { pUser->SetAngle( 180 ); pUser->REPLACE( g_uIdofMulti, m_vecTenderGuild[nIndex].dwWorldId, D3DXVECTOR3( 260, 75, 235 ), REPLACE_NORMAL, nDefaultLayer ); } }
// 대기실로 텔레포트(입장시, 대전종료시) void CGuildCombat1to1::SetTeleportToWaitStage( CUser* pUser ) { int nIndex = g_GuildCombat1to1Mng.GetTenderGuildIndexByUser( pUser ); if( !g_WorldMng.GetWorld( m_vecTenderGuild[nIndex].dwWorldId ) ) { pUser->AddText( "Not Exist World" ); return; } pUser->m_nGuildCombatState = 2; // 관전자 모드 g_UserMng.AddGuildCombatUserState( pUser ); int nRandx = xRandom(4) - 2; int nRandz = xRandom(4) - 2; if( m_vecTenderGuild[nIndex].nPosition == 0 ) { pUser->SetAngle( 0 ); pUser->REPLACE( g_uIdofMulti, m_vecTenderGuild[nIndex].dwWorldId, D3DXVECTOR3( (float)( 256+nRandx ), 90.0f, (float)( 277+nRandz ) ), REPLACE_NORMAL, nDefaultLayer ); } else { pUser->SetAngle( 180 ); pUser->REPLACE( g_uIdofMulti, m_vecTenderGuild[nIndex].dwWorldId, D3DXVECTOR3( (float)( 272+nRandx ), 90.0f, (float)( 212+nRandz ) ), REPLACE_NORMAL, nDefaultLayer ); } }