The Achievement class models whether or not a user has achieved an SC_Award.

It maintains information about achievement progress when the award cannot be granted in a single step, It keeps track of the date and the image, which reflects the current state.

You query this state by checking the Boolean value returned by SC_Achievement_IsAchieved().
  • If the Boolean value equals SC_TRUE, then the user has achieved the award.

  • If the Boolean value equals SC_FALSE, then the user has not achieved the award.

To achieve an award, a user must reach an arbitrary value that you set; this is 1 in most cases. You can configure the "achieving value" so it can be reached in stages. You must configure both the "achieving value" of the award and the number of stages that it takes to reach it at

For example, you might configure an award so that the "achieving value" equals 10, and that this can be reached in 10 separate incremental stages. When the game is played, this might mean that the user could achieve the award by collecting 10 secret jewels - finding a single jewel would represent completing one of the configured incremental stages. After the tenth jewel has been found then the user has reached the configured "achieving value" and achieves the award.

The progress however is stored only locally on the device. Just the information about achieved awards is synchronized with the server.

Achievement objects are retrieved from the server by using an AchievementsController.

See also:

SC_Award, SC_AchievementsController, Awards and Achievements .

Last modified: 2014-05-14

Got questions about leaving a comment? Get answers from our Disqus FAQ.

comments powered by Disqus