As promised, here is another example using hash tables. This time I present one possible way of supporting multi-language-games. The languages are stored in hash tables sharing the same keys. Furthermore, the use of a hash table to randomly select items, while every item is only selected once, is shown here.
Most of the time people will use a system similar to this:
1) Generate a random number
2) Compare it with the previously generated random number
3) If they match, repeat from step 1
4) Finally after millions of repetitions, the numbers don't match and stuff can be done
The hash table approach doesn't need that, as every key that was used is deleted from the hash table, and the random number is always generated based on the number of keys left.
The .rar file contains a cap and three language files (aka saved hash tables) and the events of the cap are extensively commented.
I hope it is a useful example