diff options
Diffstat (limited to 'webapp/cao-desktop.js')
-rw-r--r-- | webapp/cao-desktop.js | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/webapp/cao-desktop.js b/webapp/cao-desktop.js new file mode 100644 index 0000000..faa864b --- /dev/null +++ b/webapp/cao-desktop.js @@ -0,0 +1,88 @@ +$(document).ready(function() { + $('#btn_join').click(function() { + var game_name = prompt('Name of the game'); + + cao.join_game(game_name); + }); + + $('#btn_pick_black').click(function() { + cao.pick_black_card(); + }); + + $('#btn_collect').click(function() { + cao.collect_cards(); + }); + + cao.on_socket_open = function() { + $('#btn_join').show(); + }; + + cao.on_join_game_ok = function(state) { + $('#btn_join').hide(); + $('#btn_pick_black').show(); + $('#white_cards').show(); + }; + + cao.on_show_white_card = function(idx, desc) { + identifier = 'white_card_' + idx; + content = '<li id="' + identifier + '">' + desc + '</li>'; + + $('#white_cards').append(content); + + $('#' + identifier).dblclick(this.gen_callback_white_card(idx)); + }; + + cao.on_show_played_card = function(idx, desc) { + identifier = 'played_card_' + idx; + + content = '<li id="' + identifier + '">' + desc + '</li>'; + + $('#played_cards').append(content); + + $('#' + identifier).dblclick(this.gen_callback_played_card(idx)); + }; + + + cao.on_pick_black_card_ok = function() { + $('#btn_collect').show(); + $('#btn_pick_black').hide(); + }; + + cao.on_show_black_card = function(desc) { + $('#black_card').show(); + $('#black_card').html(desc); + }; + + + cao.on_play_white_card_ok = function(idx) { + identifier = 'white_card_' + idx; + $('#' + identifier).remove(); + }; + + cao.on_designate_card_ok = function() { + $('#played_cards').empty(); + $('#played_cards').hide(); + $('#black_card').hide(); + $('#btn_collect').hide(); + $('#btn_pick_black').show(); + }; + + cao.on_collect_cards_ok = function() { + $('#btn_collect').hide(); + $('#played_cards').show(); + }; + + cao.on_judge_designed = function() { + $('#btn_pick_black').hide(); + }; + + cao.on_judge_needed = function() { + $('#btn_pick_black').show(); + }; + + cao.on_updated_score = function(score) { + console.log('new score: ' + score); + }; + + cao.run(); +}); |