Implemented animation
Still need to fix some bugs for switching modes but heyy it works