update horse logic