void
Sector::parse(const lisp::Lisp& sector)
{
+
+ TileMap::loading_worldmap = false;
+
bool has_background = false;
lisp::ListIterator iter(§or);
while(iter.next()) {
void
Sector::parse_old_format(const lisp::Lisp& reader)
{
+
+ TileMap::loading_worldmap = false;
+
name = "main";
reader.get("gravity", gravity);
return;
// calculate intersection
- float itop = r1.get_bottom() - r2.get_top();
+ float itop = r1.get_bottom() - r2.get_top();
float ibottom = r2.get_bottom() - r1.get_top();
- float ileft = r1.get_right() - r2.get_left();
- float iright = r2.get_right() - r1.get_left();
+ float ileft = r1.get_right() - r2.get_left();
+ float iright = r2.get_right() - r1.get_left();
if(fabsf(movement.y) > fabsf(movement.x)) {
if(ileft < SHIFT_DELTA) {
get_hit_normal(moving_object->dest, moving_object_2->dest,
hit, normal);
if(!moving_object->collides(*moving_object_2, hit))
- return;
+ continue;
if(!moving_object_2->collides(*moving_object, hit))
- return;
+ continue;
moving_object->collision(*moving_object_2, hit);
moving_object_2->collision(*moving_object, hit);