Hey guys,
Does anyone know how to use logic bricks to make unlockables? For example, I have 2 levels and want the player to collect fifty points in level one before level two becomes available.

there’s…let’s say, 374 ways to achieve what you want, here’s a basic one:
Player has a “Int” property named “points”
By some “miracle” ( “Player” collision with “Strawberry” objects?) the “points” property increases, and then:
Property Sensor - Equal - property “points” - Value: 50 -> AND -> Scene Actuator - Set Scene - “NameOfNewLevelHere”
It should work…I hope?

Thanks, I know how to do that, but I’m trying to find a way to do it with a level select menu. So, like, in the menu there is level one and level two. Two says it’s locked until you collect 100 '“Points”. You go to level one, get 100 “Points” then return to level select menu. How can I make level two be unlocked now?

To do it with logic bricks, you would need to create an overlay scene and place an invisible ‘stat’ object in it.

When you pass level one, you would use the ‘copy’ option in the property actuator to copy the value from the point counter to the stat object and then in the object representing the level 2 button you would have a line of bricks that uses the same ‘copy’ option to set its points property to that in the stat object.

With the level 2 object then, you would have a second row of bricks with an always sensor that is always connected to an expression controller (where you would type in Points > 50), if the expression is true, you would then probably change a bool property (named something like unlocked) from False to True.

Finally, you would have another row of logic bricks that makes the object respond to input, this would use an and controller and an additional property sensor that checks if ‘unlocked’ is true, if it is then you would set the scene to the specified level.

Don’t forget though, to use the overlay scene you will need to, in the logic of one your objects, use a scene actuator that’s set to add overlay scene and the string field set to the scene name.

Hmm… I think I got all that, but it’s still not working.

Post a .blend, maybe?