break;
default:
- //show_menu = true;
break;
}
}
default:
if(it >= 0)
{
- cur_tilegroup
- = select_tilegroup_menu->get_item_by_id(it).text;
+ cur_tilegroup = select_tilegroup_menu->get_item_by_id(it).text;
Menu::set_current(0);
cur_objects = "";
select_tilegroup_menu->arrange_left = true;
select_tilegroup_menu->additem(MN_LABEL,"Tilegroup",0,0);
select_tilegroup_menu->additem(MN_HL,"",0,0);
+ select_tilegroup_menu->additem(MN_ACTION,"asd",0,0);
std::set<TileGroup>* tilegroups = TileManager::tilegroups();
int tileid = 1;
for(std::set<TileGroup>::iterator it = tilegroups->begin();
le_world->get_level()->song_title = string_list_active(level_settings_menu->get_item_by_id(MNID_SONG).list);
le_world->get_level()->change_size(atoi(level_settings_menu->get_item_by_id(MNID_LENGTH).input));
- le_world->get_level()->time_left = atoi(level_settings_menu->get_item_by_id(MNID_BGIMG).input);
+ le_world->get_level()->time_left = atoi(level_settings_menu->get_item_by_id(MNID_TIME).input);
le_world->get_level()->gravity = atof(level_settings_menu->get_item_by_id(MNID_GRAVITY).input);
le_world->get_level()->bkgd_speed = atoi(level_settings_menu->get_item_by_id(MNID_BGSPEED).input);
le_world->get_level()->bkgd_top.red = atoi(level_settings_menu->get_item_by_id(MNID_TopRed).input);
/* draw whats inside stuff when cursor is selecting those */
/* (draw them all the time - is this the right behaviour?) */
- if(TileManager::instance()->get(le_world->get_level()->ia_tiles[y][x + (int)(pos_x / 32)])->editor_images.size() > 0)
+ if(!TileManager::instance()->get(le_world->get_level()->ia_tiles[y][x + (int)(pos_x / 32)])->editor_images.empty())
TileManager::instance()->get(le_world->get_level()->ia_tiles[y][x + (int)(pos_x / 32)])->editor_images[0]->draw( x * 32 - ((int)pos_x % 32), y*32);
}
{
Menu::set_current(0);
}
+ le_objects_bt->event(event);
+ if(le_objects_bt->get_state() == BUTTON_CLICKED)
+ {
+ Menu::set_current(0);
+ }
}
}
{
int xx,yy;
int x1, x2, y1, y2;
- unsigned int i;
+ unsigned int i = 0;
/* level_changed = true; */
cursor_base.height = 32;
/* if there is a bad guy over there, remove it */
- for(std::list<BadGuy*>::iterator it = le_world->bad_guys.begin(); it != le_world->bad_guys.end(); ++it)
+ for(std::list<BadGuy*>::iterator it = le_world->bad_guys.begin(); it != le_world->bad_guys.end(); ++it, ++i)
if(rectcollision(cursor_base,(*it)->base))
{
- le_world->bad_guys.erase(le_world->bad_guys.begin(),it);
+ delete (*it);
+ le_world->bad_guys.erase(it);
le_world->get_level()->badguy_data.erase(le_world->get_level()->badguy_data.begin() + i);
+ break;
}
break;
if((*it)->base.x/32 >= x1 && (*it)->base.x/32 <= x2
&& (*it)->base.y/32 >= y1 && (*it)->base.y/32 <= y2)
{
+ delete (*it);
it = le_world->bad_guys.erase(it);
+ le_world->get_level()->badguy_data.erase(le_world->get_level()->badguy_data.begin() + i);
continue;
}
else
{
+ ++i;
++it;
}
}