MCPcopy Create free account
hub / github.com/Open-GD/OpenGD / setGamemode

Method setGamemode

Source/PlayerObject.cpp:796–849  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

794}
795
796void PlayerObject::setGamemode(PlayerGamemode mode)
797{
798 if (_currentGamemode != mode)
799 {
800 _ufoSprite->setVisible(false);
801 m_pShipSprite->setVisible(false);
802 m_pMainSprite->setVisible(false);
803 _ballSprite->setVisible(false);
804 stopActionByTag(3);
805 stopActionByTag(2);
806 stopActionByTag(1);
807 stopActionByTag(0);
808 dragEffect1->pauseEmissions();
809 dragEffect2->pauseEmissions();
810 dragEffect3->pauseEmissions();
811 switch (mode)
812 {
813 case PlayerGamemodeCube:
814 setIsOnGround(false);
815 m_pMainSprite->setVisible(true);
816 m_pMainSprite->setScale(1.f);
817 m_pMainSprite->setPositionY(0);
818 deactivateStreak();
819 break;
820 case PlayerGamemodeShip:
821 m_pShipSprite->setVisible(true);
822 m_pMainSprite->setVisible(true);
823 m_pMainSprite->setScale(0.55f);
824 m_pMainSprite->setPositionY(5);
825 setRotation(0.f);
826 m_dYVel /= 2.f;
827 setIsOnGround(false);
828 activateStreak();
829 runRotateAction();
830 break;
831 case PlayerGamemodeBall:
832 _ballSprite->setVisible(true);
833 deactivateStreak();
834 runBallRotation();
835 break;
836 case PlayerGamemodeUFO:
837 m_pMainSprite->setVisible(true);
838 m_pMainSprite->setScale(0.55f);
839 m_pMainSprite->setPositionY(5);
840 _ufoSprite->setVisible(true);
841 deactivateStreak();
842 break;
843 default:
844 break;
845 }
846
847 _currentGamemode = mode;
848 }
849}
850
851void PlayerObject::checkSnapJumpToObject(GameObject* obj)
852{

Callers 1

changeGameModeMethod · 0.80

Calls 1

setScaleMethod · 0.80

Tested by

no test coverage detected