I'd really strongly recommend not to use variables for each person's vote... at least, not unless you're expecting only a dozen or so voters. And even then, I'd avoid it.

Hash tables would be the best option for something like this. Here's just a really quick example. It can definitely be improved. This only shows how to store the votes. I'll leave it to the OP or someone else to set up the score display. It'll be a matter of sorting through the table and then displaying the ones you want. Or, you can track the votes as they are taken and not worry about checking the table afterwards. That would require checking if the nick has voted already before overwriting it in the /hadd line below and then storing each of the votes in the table (or as variables since you won't have too many anyhow).

Code:
on *:text:*:#vote:{ 
  if ($1 == !reset) { ResetVote | halt }
  CreateVote
  if ($1 == !vote) {
    hadd Vote $nick $ctime $2
    hsave Vote Vote.hsh
  }
}
alias ResetVote {
  hfree Vote
  if ($exists(Vote.hsh)) { .remove Vote.hsh }
  CreateVote
}
alias CreateVote {
  if (!$hget(Vote)) {
    hmake Vote 100
    if ($exists(Vote.hsh)) { hload Vote Vote.hsh }
  }
}


Note that the table will have data stored as $ctime and then the vote. $ctime is your timestamp.


Invision Support
#Invision on irc.irchighway.net