(Well, I haven’t done anything like that yet, but I’m pretty sure you can control that with just one boolean variable.)
Create a boolean variable and name it “StoryComplete?” (Or name it whatever you want, it doesn’t matter.) Set the default value to false, and when the player finishes the last chapter of the story, set it to true.
Now, you’re probably gonna want this variable to be remembered for saved games. I think all you gotta do is go to the details panel for the boolean, and check the box for “SaveGame”.
Now, in your mode select script, (whether it be a menu screen or whatever,) if the player tries to access multiplayer, you can control what happens by simply checking the value of “StoryComplete?” If the value equals true, then continue on to your multiplayer script. If it equals false, then you could simply do nothing, and stay in the mode select, for example.
Does that sound about right? I hope this will set you on your way.