The code here would be placed in the onCreate script box of the oppo_type field in the OpportunityDetailBox screen.
But this could get unwieldy if there are a lot of options.
Instead, I can create a new sets of options in translations (custom_captions) and then 'swop' the new selection list into the field using the create script
LookupFamily = "newoppo_type"
The hard work is the entry of the different Options allowed for the different Company types but the code becomes much simpler.