added movement and firing code