Mercurial > hg > rlgwebd
comparison rlgterm.js @ 90:6c6a6e4f1e5b
RLG-Web client: distinguish playing and watching in UI.
Don't show the keyboard when watching games, and display appropriate
messages when playing or watching.
author | John "Elwin" Edwards <elwin@sdf.org> |
---|---|
date | Tue, 10 Jul 2012 13:53:38 -0700 |
parents | 6145e1ea7ace |
children | e07f98799120 |
comparison
equal
deleted
inserted
replaced
89:6145e1ea7ace | 90:6c6a6e4f1e5b |
---|---|
660 termemu.reset(); | 660 termemu.reset(); |
661 termemu.toAltBuf(); | 661 termemu.toAltBuf(); |
662 setTitle("Watching"); | 662 setTitle("Watching"); |
663 debug(1, "Watching with id " + session.id); | 663 debug(1, "Watching with id " + session.id); |
664 message("You are now watching."); | 664 message("You are now watching."); |
665 setmode("play"); | 665 setmode("watch"); |
666 getData(); | 666 getData(); |
667 } | 667 } |
668 else if (reply.t == 'E') { | 668 else if (reply.t == 'E') { |
669 debug(1, "Could not watch game " + gamenumber + ": " + reply.s); | 669 debug(1, "Could not watch game " + gamenumber + ": " + reply.s); |
670 message("The game could not be watched: " + reply.s); | 670 message("The game could not be watched: " + reply.s); |
723 | 723 |
724 function gameover() { | 724 function gameover() { |
725 if (session.id == null) | 725 if (session.id == null) |
726 return; | 726 return; |
727 /* TODO IFACE2 If the end was unexpected, tell player the game was saved. */ | 727 /* TODO IFACE2 If the end was unexpected, tell player the game was saved. */ |
728 if (session.playing) | |
729 message("Finished playing."); | |
730 else | |
731 message("Finished watching."); | |
728 session.id = null; | 732 session.id = null; |
729 session.playing = false; | 733 session.playing = false; |
730 ajaxstate.clear(); | 734 ajaxstate.clear(); |
731 setTitle("Game over."); | 735 setTitle("Game over."); |
732 termemu.toNormBuf(); | 736 termemu.toNormBuf(); |
765 function setmode(mode, ev) { | 769 function setmode(mode, ev) { |
766 if (ev) | 770 if (ev) |
767 ev.preventDefault(); | 771 ev.preventDefault(); |
768 if (mode == "play") { | 772 if (mode == "play") { |
769 document.getElementById("keyboard").style.display = "block"; | 773 document.getElementById("keyboard").style.display = "block"; |
774 document.getElementById("playctl").style.display = "block"; | |
770 document.getElementById("startgame").style.display = "none"; | 775 document.getElementById("startgame").style.display = "none"; |
771 document.getElementById("login").style.display = "none"; | 776 document.getElementById("login").style.display = "none"; |
772 document.getElementById("register").style.display = "none"; | 777 document.getElementById("register").style.display = "none"; |
773 document.getElementById("current").style.display = "none"; | 778 document.getElementById("current").style.display = "none"; |
774 } | 779 } |
775 if (mode == "choose") { | 780 else if (mode == "watch") { |
776 document.getElementById("keyboard").style.display = "none"; | 781 document.getElementById("keyboard").style.display = "none"; |
782 document.getElementById("playctl").style.display = "block"; | |
783 document.getElementById("startgame").style.display = "none"; | |
784 document.getElementById("login").style.display = "none"; | |
785 document.getElementById("register").style.display = "none"; | |
786 document.getElementById("current").style.display = "none"; | |
787 } | |
788 else if (mode == "choose") { | |
789 document.getElementById("keyboard").style.display = "none"; | |
790 document.getElementById("playctl").style.display = "none"; | |
777 document.getElementById("startgame").style.display = "block"; | 791 document.getElementById("startgame").style.display = "block"; |
778 document.getElementById("login").style.display = "none"; | 792 document.getElementById("login").style.display = "none"; |
779 document.getElementById("register").style.display = "none"; | 793 document.getElementById("register").style.display = "none"; |
780 document.getElementById("current").style.display = "block"; | 794 document.getElementById("current").style.display = "block"; |
781 getcurrent(); | 795 getcurrent(); |
782 } | 796 } |
783 else if (mode == "login") { | 797 else if (mode == "login") { |
784 document.getElementById("keyboard").style.display = "none"; | 798 document.getElementById("keyboard").style.display = "none"; |
799 document.getElementById("playctl").style.display = "none"; | |
785 document.getElementById("startgame").style.display = "none"; | 800 document.getElementById("startgame").style.display = "none"; |
786 document.getElementById("login").style.display = "block"; | 801 document.getElementById("login").style.display = "block"; |
787 document.getElementById("register").style.display = "none"; | 802 document.getElementById("register").style.display = "none"; |
788 document.getElementById("current").style.display = "block"; | 803 document.getElementById("current").style.display = "block"; |
789 getcurrent(); | 804 getcurrent(); |
790 } | 805 } |
791 else if (mode == "register") { | 806 else if (mode == "register") { |
792 document.getElementById("keyboard").style.display = "none"; | 807 document.getElementById("keyboard").style.display = "none"; |
808 document.getElementById("playctl").style.display = "none"; | |
793 document.getElementById("startgame").style.display = "none"; | 809 document.getElementById("startgame").style.display = "none"; |
794 document.getElementById("login").style.display = "none"; | 810 document.getElementById("login").style.display = "none"; |
795 document.getElementById("register").style.display = "block"; | 811 document.getElementById("register").style.display = "block"; |
796 document.getElementById("current").style.display = "none"; | 812 document.getElementById("current").style.display = "none"; |
797 } | 813 } |