INIT:/scoreboard objectives add walk stat.walkOneCm
INIT:/scoreboard objectives add walkSmall stat.walkOneCm
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ stone 5 setblock ~ ~-1 ~ cobblestone 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ stone 0 setblock ~ ~-1 ~ stone 5
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ gravel 0 setblock ~ ~-1 ~ stone 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ dirt 1 setblock ~ ~-1 ~ gravel 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ dirt 0 setblock ~ ~-1 ~ dirt 1
/execute @a[score_walkSmall_min=700] ~ ~ ~ detect ~ ~-1 ~ grass 0 setblock ~ ~-1 ~ dirt 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ end_stone 0 setblock ~ ~-1 ~ gravel 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ sand 0 setblock ~ ~-1 ~ end_stone 0
/execute @a[score_walk_min=1000] ~ ~ ~ scoreboard players reset @a walk
/execute @a[score_walk_min=700] ~ ~ ~ scoreboard players reset @a walkSmall
## UPDATE 1 - Clears previous scores if they existed
INIT:/scoreboard players reset @a walk
INIT:/scoreboard players reset @a walkSmall
INIT:/scoreboard objectives add walk stat.walkOneCm
INIT:/scoreboard objectives add walkSmall stat.walkOneCm
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ stone 5 setblock ~ ~-1 ~ cobblestone 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ stone 0 setblock ~ ~-1 ~ stone 5
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ gravel 0 setblock ~ ~-1 ~ stone 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ dirt 1 setblock ~ ~-1 ~ gravel 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ dirt 0 setblock ~ ~-1 ~ dirt 1
/execute @a[score_walkSmall_min=700] ~ ~ ~ detect ~ ~-1 ~ grass 0 setblock ~ ~-1 ~ dirt 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ end_stone 0 setblock ~ ~-1 ~ gravel 0
/execute @a[score_walk_min=1000] ~ ~ ~ detect ~ ~-1 ~ sand 0 setblock ~ ~-1 ~ end_stone 0
/execute @a[score_walk_min=1000] ~ ~ ~ scoreboard players reset @a walk
/execute @a[score_walk_min=700] ~ ~ ~ scoreboard players reset @a walkSmall