My favorites | Sign in
Project Home Downloads Wiki Issues Source
Checkout   Browse   Changes    
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
require 'active_record'
require 'player'
require 'machine'

class GrudgeMatch < ActiveRecord::Base
belongs_to :machine
belongs_to :winner, :foreign_key => 'winner_id', :class_name => 'Player'
belongs_to :loser, :foreign_key => 'loser_id', :class_name => 'Player'

def self.add_score(winner, loser, machine)
winner = Player.find_or_create_by_name(winner)
loser = Player.find_or_create_by_name(loser)
raise "already played" if (winner.already_played_this_game?(machine))
machine = Machine.find_or_create_by_name(machine)
grudge_match = GrudgeMatch.new :winner => winner, :loser => loser, :machine => machine
grudge_match.save
end

def to_s
"#{winner.name} conquered #{loser.name}"
end

end

Change log

r32 by warren.greg on Nov 1, 2008   Diff
removed all .upcase from domain objects
since player and machine are selected from
drop lists now
Go to: 
Project members, sign in to write a code review

Older revisions

r19 by joshuacronemeyer on Sep 27, 2008   Diff
Longer delay between high score
screens...  Quick hack to make
entering your username or a game not
case sensitive.  UPPERCASE
EVERYTHING!!!!
r14 by joshuacronemeyer on Sep 21, 2008   Diff
Added fix so player can't do a grudge
match for the same machine more than
once
r11 by joshuacronemeyer on Sep 20, 2008   Diff
score calculations now incorporate
grudge matches
All revisions of this file

File info

Size: 732 bytes, 23 lines
Powered by Google Project Hosting