//This could work maybe...
//This should go in the collision event
if place_meeting( x+1, y, obj_enemy)
{ x-=(Semi-Big Number) }
if place_meeting( x-1, y, obj_enemy)
{ x+=(Semi-Big Number) }
if place_meeting( x, y+1, obj_enemy)
{ y-=(Semi-Big Number) }
if place_meeting( x, y-1, obj_enemy)
{ y+=(Semi-Big Number) }
//Might have got the (signs messed up a bit, but this might work)
//This should go in the collision event
if self.x > other.x+16
{ x-=(Big Number)
if self.x < other.x-16
{ x+=(Big Number)
if self.y > other.y+16
{ y-=(Big Number)
if self.x > other.y-16
{ y+=(Big Number)