+
+ var commands = {
+ tell : function(msg) {
+ var parts = msg.match(/^(\w+)\s(.*)/);
+ var dest = parts[1];
+ msg = parts[2];
+ $.ajax({
+ url: endpoint,
+ data: { 'cmd' : 'tell', 'dest' : dest, 'msg' : msg },
+ success: function() {
+ writeToLog('You told ' + dest + ': ', 'tell', msg);
+ },
+ });
+ },
+ yell : function(msg) {
+ console.log('yell!');
+ $.ajax({
+ url: endpoint,
+ data: { 'cmd' : 'yell', 'msg' : msg },
+ success: function() {
+ writeToLog('You yelled: ', 'yell', msg);
+ },
+ });
+ },
+ move : function(direction) {
+ player.move(direction);
+ },
+ }
+ function writeToLog(action, style, msg) {
+ $('#log').append(
+ $('<div>').addClass('logline').append(
+ $('<span>').addClass(style).text(action),
+ $('<span>').addClass('msg').text(msg)
+ )
+ )
+ }
+ $('#submit').click(function() {
+ var text = $('#chat').val();
+ var parts = text.match(/^(\w+)\s(.*)/);
+ var cmd = parts[1];
+ text = parts[2];
+ if (commands[cmd] != undefined) {
+ commands[cmd](text);
+ $('#chat').val('');
+ }
+ });
+ $('#chat').keypress(function(e) {
+ if (e.which == '13') {
+ $('#submit').click();
+ }
+ });
+