Now, that's probably way off. When it compiles, it lets me know that it is expecting type OldBritishMoney, but type int is found.
The method add() is declared to receive a type OldBritishMoney and return that same time. Your local variable totalAdd is an integer, not OldBritishMoney, so you cannot just return it in place of OldBritishMoney. You could do something like
which instantiates a new OldBritishMoney object and initializes it with 0 pounds, 0 shillings, and totalAdd pence and then returns a reference to it. Code to call the add function might look like:
Seeing this, I might consider putting in a constructor that takes one integer value, the total number of pence you have, and converts that internally to appropriate quantities of pounds, shillings, and pence. At this point, you should be able to make appropriate modifications to what I attempted in case I didn't fully understand your class workings or intentions. I am no Java expert so if I erred, someone else can jump in here and teach us both.
Regards,
Dan