Follow-up Comment #1, bug #6939 (project wormux):

I cannot try this code now, just for information.

Replace in IsInVacuumXY(const Point2i &position) the FOR_EACH_OBJECT section
with :
...
  if (m_collides_with_objects)
    {
      FOR_EACH_OBJECT(object) {
        if (object -> ptr == this) continue;
        // Hack to avoid the current character stuck with a dynamite (see bug
#6939)
        if (typeid(*(object->ptr)) == typeid(Character)) {
          tmp = (Character *)object->ptr;
          if (tmp == &ActiveCharacter()) continue;
        }
        if ( object->ptr->GetTestRect().Intersect( rect ) ) {
          m_last_colliding_object = object->ptr;
          return false;
        }
      }
    }
...

    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?6939>

_______________________________________________
  Message posté via/par Gna!
  http://gna.org/


_______________________________________________
Wormux-gna mailing list
[email protected]
https://mail.gna.org/listinfo/wormux-gna

Reply via email to