Function cannon can now take an initial function to shoot