The answer to your question is yes, with the obligatory caveat that you can always be denied entry despite having valid documents if the border officer decides that you are inadmissible for some other reason. This is of course unlikely.
Croatia's treatment of Schengen visa holders is in no way limited to a single entry, nor does it depend on the country from which the traveler is arriving:
All third-country nationals who are holders of valid Schengen documents, as well as national visas and residence permits of Bulgaria, Cyprus, and Romania do not require an additional (Croatian) visa for Croatia.
Third-country nationals who are holders of:
do not require a visa for transit or intended stays in the territory of Croatia not exceeding 90 days in any 180-day period.
The period of validity of the above mentioned Schengen, Bulgarian, Cypriot, and Romanian documents must cover the duration of the transit or stay.
This means is that your multiple-entry Schengen visa, while it is valid, allows you to spend up to 90 days in any 180-day period in Croatia.
Whether you need a visa for Bosnia and Herzegovina is of course a separate question. You should be able to find the answer at the visa page of the Ministry of Foreign Affairs. There is a link to select the English language at the top right of the page. (There was an exemption for holders of Schengen visas from 2014, but I can't find a current Bosnian government web page that mentions this, so I am not certain that it is still in effect. The 2014 document (pdf) says that this provision allows a 90-day stay, but a 2017 amendment (pdf) limited the duration of any single stay to 30 days.)