Esempio n. 1
0
VOID GamePlayKeyDown(HWND hWnd, WPARAM wParam, LPARAM lParam)
{
	if (lParam & 1 << 30)
		return;

	gameTimePass = global.timePass();

	switch (wParam)
	{
	case '5': case 'D':
		if (!global.isGamePaused)
		{
			DoJump(0);
			InvalidateRect(hWnd, NULL, FALSE);
		}
		break;

	case 'T': case 'F':
		if (!global.isGamePaused)
		{
			DoJump(1);
			InvalidateRect(hWnd, NULL, FALSE);
		}
		break;

	case 'G': case 'J':
		if (!global.isGamePaused)
		{
			DoJump(2);
			InvalidateRect(hWnd, NULL, FALSE);
		}
		break;

	case 'B': case 'K':
		if (!global.isGamePaused)
		{
			DoJump(3);
			InvalidateRect(hWnd, NULL, FALSE);
		}
		break;

	case VK_SPACE:
		togglePause();
		break;

	case VK_F3:
		settings.showAccuracyIndicator = !settings.showAccuracyIndicator;
		break;

	case VK_ESCAPE:
		PreviewSong();
		global.status = global.GS_SONGSELECT;
		break;

	default:
		break;
	}
}
Esempio n. 2
0
void ACharacter::CheckJumpInput(float DeltaTime)
{
	if (bPressedJump)
	{
		DoJump(bClientUpdating);
	}
}
Esempio n. 3
0
    void PerconaFTIterator::JumpToLast()
    {
        ClearState();
        if (NULL == m_cursor)
        {
            return;
        }
        int ret = 0;
        if (m_iterate_upper_bound_key.GetType() > 0)
        {
            DoJump(m_iterate_upper_bound_key);
            if (!m_valid)
            {
                CHECK_EXPR((ret = m_cursor->c_getf_last(m_cursor, 0, nil_callback, NULL)));
            }
            if (0 == ret)
            {
                Prev();
            }
        }
        else
        {
            CHECK_EXPR((ret = m_cursor->c_getf_last(m_cursor, 0, nil_callback, NULL)));
            if (ret != 0)
            {
                m_valid = false;
                return;
            }
        }

    }
Esempio n. 4
0
 void PerconaFTIterator::Jump(const KeyObject& next)
 {
     DoJump(next);
     if (Valid())
     {
         CheckBound();
     }
 }
Esempio n. 5
0
void Player::Tick() {
	DoInput();

	UpdateVelocity();
	DoCollision();
	UpdatePosition();

	DoJump();

	DoOrient();

	DoBlockPicking();
}
Esempio n. 6
0
LRESULT TouchEvent(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{

	switch (global.status)
	{
	case global.GS_PLAYING:
	{
		if (global.isGamePaused)
			return 0;

		UINT cInputs = LOWORD(wParam);
		PTOUCHINPUT pInputs = (PTOUCHINPUT)malloc(sizeof(TOUCHINPUT) * cInputs);
		if (pInputs)
		{
			POINT cliCoord = { 0 };
			ClientToScreen(hWnd, &cliCoord);
			if (GetTouchInputInfo((HTOUCHINPUT)lParam, cInputs, pInputs, sizeof(TOUCHINPUT)))
			{
				for (UINT i = 0; i < cInputs; i++)
				{
					int track;
					double ix = double(pInputs[i].x / 100 - cliCoord.x) / WNDWIDTH;
					double iy = double(pInputs[i].y / 100 - cliCoord.y) / WNDHEIGHT;
					if (ix < 0. || ix > 1.)
						continue;
					if (iy <= 0.26)
						track = 0;
					else if (iy <= 0.5)
						track = 1;
					else if (iy <= 0.76)
						track = 2;
					else
						track = 3;
					if (global.heroes[i].jpCount == 0 || (pInputs[i].dwFlags & TOUCHEVENTF_DOWN))
						DoJump(track);
				}
				CloseTouchInputHandle((HTOUCHINPUT)lParam);
			}
			free(pInputs);
		}
		return 0;
		break;
	}

	default:
		break;
	}

	return DefWindowProc(hWnd, message, wParam, lParam);
}
void AClashOfBallsBall::Jump()
{
	DoJump();
}
Esempio n. 8
0
void APlayerOvi::Tick(float DeltaSeconds){
  //get own deltaTime
  DeltaSeconds = TimeManager::Instance()->GetDeltaTime(DeltaSeconds);
  Super::Tick(DeltaSeconds);

  //initilize raycast query param
  //Initialize TraceParam
  if (!m_isValid) {
    //Get ATowardsTheLightGameMode
    if (!m_gameMode)
      m_gameMode = Cast<ATowardsTheLightGameMode>(UGameplayStatics::GetGameMode(this));

    m_gameMode->FindActualPlayer();

    static FName FireTraceIdent = FName(TEXT("Platform"));
    FCollisionQueryParams TraceParams(FireTraceIdent, true, this);
    TraceParams.bTraceAsyncScene = true;
    TraceParams.bFindInitialOverlaps = false;
    TraceParams.bTraceComplex = true;

    TArray<AActor *> ignorados;
    for (TActorIterator<ATappable > ActorItr(GetWorld()); ActorItr; ++ActorItr) {
      if (ActorItr->ActorHasTag("Tappable"))
        ignorados.Add(*ActorItr);
    }

    for (TActorIterator<ACheckPoint > checkItr(GetWorld()); checkItr; ++checkItr)
      ignorados.Add(*checkItr);

    for (TActorIterator<ATutorial > tutItr(GetWorld()); tutItr; ++tutItr)
      ignorados.Add(*tutItr);
    
    if (ignorados.Num() > 0)
      TraceParams.AddIgnoredActors(ignorados);

    m_TraceParams = TraceParams;
    m_isValid = true;
  }

  //pause animations if is game paused
  Mesh->bPauseAnims = isPlayerPaused();

  //first tick initialize viewport properties, dont work at begin play
  if (m_limitViewPort0 == 0 && m_limitViewPort1 == 0) {
    m_limitViewPort0 = GEngine->GameViewport->Viewport->GetSizeXY().X * 0.45;
    m_limitViewPort1 = GEngine->GameViewport->Viewport->GetSizeXY().X * 0.55;
  }

  //update elapsed time if push button animation is running
  if (m_isPushingButton) {
    m_elapsedButton += DeltaSeconds;
    if (m_elapsedButton >= 1.0f) {
      m_elapsedButton = 0.0f;
      m_isPushingButton = false;
    }
  }

  if (m_isPickingPortal) {
    m_elapsedPortal += DeltaSeconds;
    float t = 1.0f - (m_elapsedPortal / 1.2f);
    Mesh->SetRelativeScale3D(FVector(t, t, t));
    if (m_elapsedPortal >= 0.6f) {
      m_elapsedPortal = 0.0f;
      m_isPickingPortal = false;
      Mesh->SetRelativeScale3D(FVector(1, 1, 1));
    }
  }

  if (m_isPickingAltar) {
    m_elapsedAltar += DeltaSeconds;
    if (m_elapsedAltar >= 0.7f) {
      m_elapsedAltar = 0.0f;
      m_isPickingAltar = false;
    }
  }

  //get last position for this frame.
  m_lastPosition = GetActorLocation();
  float value = 0.0f;
  if (isInputEnabled())
    value = UpdateState();
  else{
    value = 0;
    m_doJump = false;
  }

  DoMovement(DeltaSeconds, value);
  if (!m_isPickingPortal) {
    DoJump(DeltaSeconds);
    CalculateGravity(DeltaSeconds);
  }
  CheckCollision();
  CalculateOrientation();
}