To make ApochPiQ's point of view even more clear, I'll exercise one possible route of thoughts (the one I've gone during working out an answer before reading ApochPiQ's posts):
When reading the OP and interpreting the statement made there, I see "suggesting the player that he can buy that item". What are the conditions for this? The player can buy an item if a) the item is for sale, and b) the item is offered, and c) the item's price can be payed. Now, that has not really something to do with variables like number of crashes and damage state and, err, how many gates have been passed (whatever that should mean in this context). Considering such variables means in fact not what can be bought but what is meaningful to be bought.
Well, with meaningfulness you have another condition to fulfill: It is an advantage to buy a specific item, be it as an addition or as an replacement (the latter comes into play to give damage another dimension). In reality it is even more complicated: It is more meaningful to buy item A and B, or else item C, because your budget allows just for the one or other decision?
So you are in the realm of optimization: What combination of all offered items give me the best with respect to a goal (winning a race), under consideration of restrictions (e.g. the budget). That is what you want to solve!
After working that out ... is a FSM good for this optimization? A big No! Is a decision tree good for this optimization? Also No! To be precise, both can be used, but you have to model all possible states explicitly. That would be okay if only a few items exist and variables are also very restrictive in count and possible states. But in general it ranges between far too much work and impossible to do. However, since this is an optimization problem, it can be assumed that optimization strategies exist which are able to solve it...