NEW] Amb ALT es pot moure un actor fora dels limits de l'habitació.
- Més habitacions
This commit is contained in:
@@ -244,12 +244,35 @@ namespace modules
|
||||
vec3_t min = room::getMin();
|
||||
vec3_t max = room::getMax();
|
||||
|
||||
if ( input::keyDown(SDL_SCANCODE_LEFT) && selected->pos.x>min.x ) { selected->pos.x-=adv; actor::setDirty(selected); room::editor::modify(); }
|
||||
if ( input::keyDown(SDL_SCANCODE_RIGHT) && (selected->pos.x+selected->size.x)<max.x ) { selected->pos.x+=adv; actor::setDirty(selected); room::editor::modify(); }
|
||||
if ( input::keyDown(SDL_SCANCODE_UP) && selected->pos.y>min.y ) { selected->pos.y-=adv; actor::setDirty(selected); room::editor::modify(); }
|
||||
if ( input::keyDown(SDL_SCANCODE_DOWN) && (selected->pos.y+selected->size.y)<max.y ) { selected->pos.y+=adv; actor::setDirty(selected); room::editor::modify(); }
|
||||
if ( input::keyDown(SDL_SCANCODE_PAGEDOWN) && selected->pos.z>min.z ) { selected->pos.z-=adv; actor::setDirty(selected); room::editor::modify(); }
|
||||
if ( input::keyDown(SDL_SCANCODE_PAGEUP) /*&& selected->pos.z<max.z*/ ) { selected->pos.z+=adv; actor::setDirty(selected); room::editor::modify(); }
|
||||
if ( input::keyDown(SDL_SCANCODE_LEFT) && (input::keyDown(SDL_SCANCODE_LALT) || selected->pos.x>min.x ))
|
||||
{
|
||||
selected->pos.x-=adv; actor::setDirty(selected); room::editor::modify();
|
||||
}
|
||||
|
||||
if ( input::keyDown(SDL_SCANCODE_RIGHT) && (input::keyDown(SDL_SCANCODE_LALT) || (selected->pos.x+selected->size.x)<max.x ))
|
||||
{
|
||||
selected->pos.x+=adv; actor::setDirty(selected); room::editor::modify();
|
||||
}
|
||||
|
||||
if ( input::keyDown(SDL_SCANCODE_UP) && (input::keyDown(SDL_SCANCODE_LALT) || selected->pos.y>min.y ))
|
||||
{
|
||||
selected->pos.y-=adv; actor::setDirty(selected); room::editor::modify();
|
||||
}
|
||||
|
||||
if ( input::keyDown(SDL_SCANCODE_DOWN) && (input::keyDown(SDL_SCANCODE_LALT) || (selected->pos.y+selected->size.y)<max.y ))
|
||||
{
|
||||
selected->pos.y+=adv; actor::setDirty(selected); room::editor::modify();
|
||||
}
|
||||
|
||||
if ( input::keyDown(SDL_SCANCODE_PAGEDOWN) && (input::keyDown(SDL_SCANCODE_LALT) || selected->pos.z>min.z ))
|
||||
{
|
||||
selected->pos.z-=adv; actor::setDirty(selected); room::editor::modify();
|
||||
}
|
||||
|
||||
if ( input::keyDown(SDL_SCANCODE_PAGEUP) /*&& selected->pos.z<max.z*/ )
|
||||
{
|
||||
selected->pos.z+=adv; actor::setDirty(selected); room::editor::modify();
|
||||
}
|
||||
}
|
||||
|
||||
int loop()
|
||||
|
||||
Reference in New Issue
Block a user