modifier keys are now checked when doing stamp stuff

This commit is contained in:
jacob1 2015-09-19 20:20:32 -04:00
parent bbdbb67079
commit 8ecb2682aa

View File

@ -1289,50 +1289,7 @@ void GameView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool
introText = 50;
}
if(selectMode!=SelectNone)
{
if(selectMode==PlaceSave)
{
switch(key)
{
case KEY_RIGHT:
case 'd':
c->TranslateSave(ui::Point(1, 0));
break;
case KEY_LEFT:
case 'a':
c->TranslateSave(ui::Point(-1, 0));
break;
case KEY_UP:
case 'w':
c->TranslateSave(ui::Point(0, -1));
break;
case KEY_DOWN:
case 's':
c->TranslateSave(ui::Point(0, 1));
break;
case 'r':
if (ctrl && shift)
{
//Vertical flip
c->TransformSave(m2d_new(1,0,0,-1));
}
else if (!ctrl && shift)
{
//Horizontal flip
c->TransformSave(m2d_new(-1,0,0,1));
}
else
{
//Rotate 90deg
c->TransformSave(m2d_new(0,1,-1,0));
}
break;
}
}
if(key != ' ' && key != 'z')
return;
}
// these key events still work when placing / creating stamps
switch (key)
{
case KEY_LALT:
@ -1383,9 +1340,6 @@ void GameView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool
case ' ': //Space
c->SetPaused();
break;
case KEY_TAB: //Tab
c->ChangeBrush();
break;
case 'z':
if (ctrl)
{
@ -1399,6 +1353,57 @@ void GameView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool
c->SetZoomEnabled(true);
}
break;
}
if (selectMode != SelectNone)
{
if (selectMode == PlaceSave)
{
switch (key)
{
case KEY_RIGHT:
case 'd':
c->TranslateSave(ui::Point(1, 0));
break;
case KEY_LEFT:
case 'a':
c->TranslateSave(ui::Point(-1, 0));
break;
case KEY_UP:
case 'w':
c->TranslateSave(ui::Point(0, -1));
break;
case KEY_DOWN:
case 's':
c->TranslateSave(ui::Point(0, 1));
break;
case 'r':
if (ctrl && shift)
{
//Vertical flip
c->TransformSave(m2d_new(1,0,0,-1));
}
else if (!ctrl && shift)
{
//Horizontal flip
c->TransformSave(m2d_new(-1,0,0,1));
}
else
{
//Rotate 90deg
c->TransformSave(m2d_new(0,1,-1,0));
}
break;
}
}
if (key != ' ' && key != 'z')
return;
}
switch(key)
{
case KEY_TAB: //Tab
c->ChangeBrush();
break;
case '`':
c->ShowConsole();
break;