Fix animation + refactor