vladkomarr

Untitled

Oct 10th, 2015
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.77 KB | None | 0 0
  1. void Player::interact(Block *block) {
  2.     switch(block->getType()) {
  3.     case Type::GROUND:
  4.         mState      = State::Ground;
  5.         if(block->getCenter().y < getCenter().y) {
  6.             // if player jumps into ceiling
  7.             setPosition(getPosition().x, block->getPosition().y + block->getSize().y);
  8.             mVelocity.y *= -0.45f;
  9.         }
  10.         else {
  11.             setPosition(getPosition().x, block->getPosition().y - getSize().y);
  12.             mVelocity.y = 0.f;
  13.         }
  14.         break;
  15.  
  16.     case Type::SPRINGBOARD:
  17.         springJump(block->getPeriod());
  18.         break;
  19.  
  20.     case Type::SPIKES:
  21.     case Type::SAWBLADE:
  22.         die();
  23.         break;
  24.  
  25.     case Type::COIN:
  26.         scoreUp(block);
  27.         break;
  28.  
  29.     default : break;
  30.     }
  31. }
Advertisement
Add Comment
Please, Sign In to add comment