Added better layer support, and unmuvable check method