No, this isn't correct. Look back at the requirements; the buddy requires at least 5 properties and at least three datatypes. Buddy would contain a name, condition and Activity items.
Activity itself should just be a shell. I can think of a dozen ways to accomplish this task, but the absolute minimum for Activity would be a name of the activity and the amount it modifies condition by. The name would include any specific buddy information during construction such as the name and passed to the constructor for Activity. Take all the weight off of Activity and put it into buddy.