Conditional attributes in a prediction problem
Decision trees can handle conditions based on several features by design: if the model determines that the feature "at home" is important for the prediction, it will create a node based on this condition close to the root of the tree. By construction other features will appear as conjuncts, e.g. "if at-home==true and featureX==valueX and ... then predict ..." (that's just how a decision tree works).

In case you consider that this particular feature is so important that everything else should depend on it, another option is to train two distinct models: one for "at home" and one for "away". The disadvantage is that a model can only use the instances relevant for its case, so there is less training data for each of them.