updated keybinding to add mmiddle ckick as tertiary action, added argument to main
This commit is contained in:
parent
9c62efeb67
commit
b81630c28c
@ -6,7 +6,7 @@
|
||||
class DefaultKeysMap : public IKeysMap
|
||||
{
|
||||
public:
|
||||
enum{MAIN_ACTION, SECONDARY_ACTION, MOVE_FORWARD, MOVE_BACKWARD, STRAFE_LEFT, STRAFE_RIGHT,
|
||||
enum{MAIN_ACTION, SECONDARY_ACTION, TERTIARY_ACTION, MOVE_FORWARD, MOVE_BACKWARD, STRAFE_LEFT, STRAFE_RIGHT,
|
||||
TOGGLE_NOCLIP, TOGGLE_PHYSICS_DEBUG, TOGGLE_CONSOLE,
|
||||
MOVE_CURSOR_LEFT, MOVE_CURSOR_RIGHT, PLOP_TEST, CLEAR_CONSOLE,
|
||||
EXIT_GAME,LAST_DEFAULT_ACTION};
|
||||
@ -14,6 +14,7 @@ public:
|
||||
DefaultKeysMap(){
|
||||
keys.push_back( {MAIN_ACTION, sf::Keyboard::KeyCount + sf::Mouse::Left, IKeysMap::PRESSED} );
|
||||
keys.push_back( {SECONDARY_ACTION, sf::Keyboard::KeyCount + sf::Mouse::Right, IKeysMap::PRESSED} );
|
||||
keys.push_back( {TERTIARY_ACTION, sf::Keyboard::KeyCount + sf::Mouse::Middle, IKeysMap::PRESSED} );
|
||||
keys.push_back( {MOVE_FORWARD, sf::Keyboard::Z, IKeysMap::HOLD} );
|
||||
keys.push_back( {MOVE_BACKWARD, sf::Keyboard::S, IKeysMap::HOLD} );
|
||||
keys.push_back( {STRAFE_LEFT, sf::Keyboard::Q, IKeysMap::HOLD} );
|
||||
@ -30,7 +31,7 @@ public:
|
||||
|
||||
static std::vector<int> getDefaultContext()
|
||||
{
|
||||
return {MAIN_ACTION, SECONDARY_ACTION, MOVE_FORWARD, MOVE_BACKWARD, STRAFE_LEFT, STRAFE_RIGHT, TOGGLE_NOCLIP, TOGGLE_PHYSICS_DEBUG, TOGGLE_CONSOLE, EXIT_GAME};
|
||||
return {MAIN_ACTION, SECONDARY_ACTION, TERTIARY_ACTION, MOVE_FORWARD, MOVE_BACKWARD, STRAFE_LEFT, STRAFE_RIGHT, TOGGLE_NOCLIP, TOGGLE_PHYSICS_DEBUG, TOGGLE_CONSOLE, EXIT_GAME};
|
||||
}
|
||||
|
||||
static std::vector<int> getShellContext()
|
||||
|
@ -102,12 +102,31 @@ void generateTerrain(SceneTree *scene, btDiscreteDynamicsWorld *world)
|
||||
}
|
||||
}
|
||||
|
||||
int main(){
|
||||
int main(int argc, char** argv){
|
||||
enum Mode { SIMPLEST_TEST, TERRAIN_TEST, FULLSCREEN_DEMO };
|
||||
Mode mode = SIMPLEST_TEST;
|
||||
if(argc > 1)
|
||||
{
|
||||
std::string modeStr(argv[1]);
|
||||
if(modeStr == "terrain")
|
||||
mode = TERRAIN_TEST;
|
||||
else if(modeStr == "demo")
|
||||
mode = FULLSCREEN_DEMO;
|
||||
else if(modeStr == "simple")
|
||||
mode = SIMPLEST_TEST;
|
||||
else
|
||||
std::cout << "AVAILABLE MODES : simple(default) / terrain / demo" << std::endl;
|
||||
}
|
||||
|
||||
Engine engine;
|
||||
|
||||
|
||||
// this creates the opengl context
|
||||
// the opengl context must exist before any opengl class is used (texture, pipeline, etc..)
|
||||
engine.createWindow("Sparrow Engine Testing Environment");
|
||||
if(mode == FULLSCREEN_DEMO)
|
||||
engine.createWindow("Sparrow Engine Testing Environment", 1920, 1080, false);
|
||||
else
|
||||
engine.createWindow("Sparrow Engine Testing Environment");
|
||||
|
||||
// setting up SparrowEngine
|
||||
engine.initPhysics();
|
||||
@ -149,7 +168,7 @@ int main(){
|
||||
engine.getPhysics()->addRigidBody(player->getRigidbody());
|
||||
|
||||
// throw cubes and spheres with mouse clicks
|
||||
Potator *potator = new Potator(player, DefaultKeysMap::MAIN_ACTION, DefaultKeysMap::SECONDARY_ACTION);
|
||||
Potator *potator = new Potator(player, DefaultKeysMap::MAIN_ACTION, DefaultKeysMap::SECONDARY_ACTION, DefaultKeysMap::TERTIARY_ACTION);
|
||||
scene->getRootObject()->addChild(potator);
|
||||
|
||||
// lighting
|
||||
@ -159,7 +178,8 @@ int main(){
|
||||
scene->getRootObject()->addChild(sunLight);
|
||||
|
||||
// terrain
|
||||
// generateTerrain(scene, engine.getPhysics());
|
||||
if(mode != SIMPLEST_TEST)
|
||||
generateTerrain(scene, engine.getPhysics());
|
||||
|
||||
// shell output tests
|
||||
engine.outputShell("Hello World!");
|
||||
|
Loading…
x
Reference in New Issue
Block a user