Desbloquear atribuições de jogo no código Ruby

Acabei de escrever um pequeno artigo em um blog de projeto de estudo, onde ilustro alguns conceitos de código que estou tentando oferecer suporte para desbloquear e realizar atribuições de jogo em código Ruby.

Isso é o que eu descobri em um nível abstrato:

class Assignment
def unlocked?
# Code that checks if the player is able to start
# this assignment and completed all requirements.
end

def accomplished?
# Code that actually goes out and check if
# the player has done all the things needed
# to complete this assignment.
end
end

Confira uma explicação mais detalhada e alguns outros exemplos em http://trakhamer.wordpress.com/2012/10/21/unlocking-game-assignments-in-ruby-code/