virtual HitResponse collision(GameObject& other,
const CollisionHit& hit);
+ /** Called when a collision with tile with special attributes occured */
+ virtual void collision_tile(uint32_t tile_attributes);
+
/** Set the badguy to kill/falling state, which makes him falling of the
* screen (his sprite is turned upside-down)
*/
virtual void kill_fall();
+ /** Writes out the badguy into the included lisp::Writer. Useful e.g. when
+ * converting an old-format level to the new format.
+ */
+ virtual void save(lisp::Writer& );
+
Vector get_start_position() const
{
return start_position;
* after being deactivated.
*/
bool is_offscreen();
-
+ /**
+ * Checks if the badguy may fall off a platform if continuing a given movement.
+ */
+ bool may_fall_off_platform();
+
Vector start_position;
Direction dir;