function SetCampaignAvailableBJ takes boolean available, integer campaignNumber returns nothing
local integer campaignOffset
if (campaignNumber == bj_CAMPAIGN_INDEX_H) then
call SetTutorialCleared(true)
endif
if (campaignNumber == bj_CAMPAIGN_INDEX_XN) then
set campaignOffset = bj_CAMPAIGN_OFFSET_XN
elseif (campaignNumber == bj_CAMPAIGN_INDEX_XH) then
set campaignOffset = bj_CAMPAIGN_OFFSET_XH
elseif (campaignNumber == bj_CAMPAIGN_INDEX_XU) then
set campaignOffset = bj_CAMPAIGN_OFFSET_XU
elseif (campaignNumber == bj_CAMPAIGN_INDEX_XO) then
set campaignOffset = bj_CAMPAIGN_OFFSET_XO
else
set campaignOffset = campaignNumber
endif
call SetCampaignAvailable(campaignOffset, available)
call SetCampaignMenuRaceBJ(campaignNumber)
call ForceCampaignSelectScreen()
endfunction