1 - A subclass is the answer. Create the BaseScene class, which is a subclass of SKScene. Include all the common elements of all the scenes here. This includes not only the categories of bitmasks, but also any methods or other properties that the scene may have. This will improve the length of your code besides solving your problems.
Make all your level scenes a subclass of BaseScene.
2 - Create a Bool variable called scoreReached or something in your code. Set this variable to NO during initialization, and then in the code where you check your result in the -update method, follow these steps:
if (!scoreReached) { if (score >= 100) { //Do whatever is needed scoreReached = YES; } }
source share