fix movement & better events