diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index e0a402065..000000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1 +0,0 @@ -custom: https://blockchain.com/btc/payment_request?address=1Nm2q6VjDcabFVhS6HyYdUzUWbUkg1w3wm&amount=0.00015472&message=support+me+:) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml new file mode 100644 index 000000000..3262294b0 --- /dev/null +++ b/.github/workflows/codeql-analysis.yml @@ -0,0 +1,67 @@ +# For most projects, this workflow file will not need changing; you simply need +# to commit it to your repository. +# +# You may wish to alter this file to override the set of languages analyzed, +# or to provide custom queries or build logic. +# +# ******** NOTE ******** +# We have attempted to detect the languages in your repository. Please check +# the `language` matrix defined below to confirm you have the correct set of +# supported CodeQL languages. +# +name: "CodeQL" + +on: + push: + branches: [ master ] + pull_request: + # The branches below must be a subset of the branches above + branches: [ master ] + schedule: + - cron: '36 10 * * 1' + +jobs: + analyze: + name: Analyze + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + language: [ 'javascript' ] + # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] + # Learn more: + # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v1 + with: + languages: ${{ matrix.language }} + # If you wish to specify custom queries, you can do so here or in a config file. + # By default, queries listed here will override any specified in a config file. + # Prefix the list here with "+" to use these queries and those in the config file. + # queries: ./path/to/local/query, your-org/your-repo/queries@main + + # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). + # If this step fails, then you should remove it and run the build manually (see below) + - name: Autobuild + uses: github/codeql-action/autobuild@v1 + + # ℹ️ Command-line programs to run using the OS shell. + # 📚 https://git.io/JvXDl + + # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines + # and modify them (or add more) to build your code if your project + # uses a compiled language + + #- run: | + # make bootstrap + # make release + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v1 diff --git a/bin/r.js b/bin/r.js index d2a1c4407..5b21174f3 100644 --- a/bin/r.js +++ b/bin/r.js @@ -3272,28 +3272,28 @@ var UNICODE = { function is_letter(ch) { return UNICODE.letter.test(ch); -}; +} function is_digit(ch) { ch = ch.charCodeAt(0); return ch >= 48 && ch <= 57; //XXX: find out if "UnicodeDigit" means something else than 0..9 -}; +} function is_alphanumeric_char(ch) { return is_digit(ch) || is_letter(ch); -}; +} function is_unicode_combining_mark(ch) { return UNICODE.non_spacing_mark.test(ch) || UNICODE.space_combining_mark.test(ch); -}; +} function is_unicode_connector_punctuation(ch) { return UNICODE.connector_punctuation.test(ch); -}; +} function is_identifier_start(ch) { return ch == "$" || ch == "_" || is_letter(ch); -}; +} function is_identifier_char(ch) { return is_identifier_start(ch) @@ -3303,7 +3303,7 @@ function is_identifier_char(ch) { || ch == "\u200c" // zero-width non-joiner || ch == "\u200d" // zero-width joiner (in my ECMA-262 PDF, this is also 200c) ; -}; +} function parse_js_number(num) { if (RE_HEX_NUMBER.test(num)) { @@ -3313,7 +3313,7 @@ function parse_js_number(num) { } else if (RE_DEC_NUMBER.test(num)) { return parseFloat(num); } -}; +} function JS_Parse_Error(message, line, col, pos) { this.message = message; @@ -3327,7 +3327,7 @@ function JS_Parse_Error(message, line, col, pos) { this.stack = ex.stack; }; */ -}; +} JS_Parse_Error.prototype.toString = function() { return this.message + " (line: " + this.line + ", col: " + this.col + ", pos: " + this.pos + ")" + "\n\n" + this.stack; @@ -3335,11 +3335,11 @@ JS_Parse_Error.prototype.toString = function() { function js_error(message, line, col, pos) { throw new JS_Parse_Error(message, line, col, pos); -}; +} function is_token(token, type, val) { return token.type == type && (val == null || token.value == val); -}; +} var EX_EOF = {}; @@ -3358,7 +3358,7 @@ function tokenizer($TEXT) { comments_before : [] }; - function peek() { return S.text.charAt(S.pos); }; + function peek() { return S.text.charAt(S.pos); } function next(signal_eof) { var ch = S.text.charAt(S.pos++); @@ -3372,23 +3372,23 @@ function tokenizer($TEXT) { ++S.col; } return ch; - }; + } function eof() { return !S.peek(); - }; + } function find(what, signal_eof) { var pos = S.text.indexOf(what, S.pos); if (signal_eof && pos == -1) throw EX_EOF; return pos; - }; + } function start_token() { S.tokline = S.line; S.tokcol = S.col; S.tokpos = S.pos; - }; + } function token(type, value, is_comment) { S.regex_allowed = ((type == "operator" && !HOP(UNARY_POSTFIX, value)) || @@ -3408,12 +3408,12 @@ function tokenizer($TEXT) { } S.newline_before = false; return ret; - }; + } function skip_whitespace() { while (HOP(WHITESPACE_CHARS, peek())) next(); - }; + } function read_while(pred) { var ret = "", ch = peek(), i = 0; @@ -3422,11 +3422,11 @@ function tokenizer($TEXT) { ch = peek(); } return ret; - }; + } function parse_error(err) { js_error(err, S.tokline, S.tokcol, S.tokpos); - }; + } function read_num(prefix) { var has_e = false, after_e = false, has_x = false, has_dot = prefix == "."; @@ -3460,7 +3460,7 @@ function tokenizer($TEXT) { } else { parse_error("Invalid syntax: " + num); } - }; + } function read_escaped_char() { var ch = next(true); @@ -3476,7 +3476,7 @@ function tokenizer($TEXT) { case "u" : return String.fromCharCode(hex_bytes(4)); default : return ch; } - }; + } function hex_bytes(n) { var num = 0; @@ -3487,7 +3487,7 @@ function tokenizer($TEXT) { num = (num << 4) | digit; } return num; - }; + } function read_string() { return with_eof_error("Unterminated string constant", function(){ @@ -3517,7 +3517,7 @@ function tokenizer($TEXT) { } return token("string", ret); }); - }; + } function read_line_comment() { next(); @@ -3530,7 +3530,7 @@ function tokenizer($TEXT) { S.pos = i; } return token("comment1", ret, true); - }; + } function read_multiline_comment() { next(); @@ -3551,7 +3551,7 @@ function tokenizer($TEXT) { return tok; }); - }; + } function read_name() { var backslash = false, name = "", ch; @@ -3570,7 +3570,7 @@ function tokenizer($TEXT) { } } return name; - }; + } function read_regexp() { return with_eof_error("Unterminated regular expression", function(){ @@ -3594,7 +3594,7 @@ function tokenizer($TEXT) { var mods = read_name(); return token("regexp", [ regexp, mods ]); }); - }; + } function read_operator(prefix) { function grow(op) { @@ -3606,9 +3606,9 @@ function tokenizer($TEXT) { } else { return op; } - }; + } return token("operator", grow(prefix || next())); - }; + } function handle_slash() { next(); @@ -3624,14 +3624,14 @@ function tokenizer($TEXT) { return next_token(); } return S.regex_allowed ? read_regexp() : read_operator("/"); - }; + } function handle_dot() { next(); return is_digit(peek()) ? read_num(".") : token("punc", "."); - }; + } function read_word() { var word = read_name(); @@ -3642,7 +3642,7 @@ function tokenizer($TEXT) { : HOP(KEYWORDS_ATOM, word) ? token("atom", word) : token("keyword", word); - }; + } function with_eof_error(eof_error, cont) { try { @@ -3651,7 +3651,7 @@ function tokenizer($TEXT) { if (ex === EX_EOF) parse_error(eof_error); else throw ex; } - }; + } function next_token(force_regexp) { if (force_regexp) @@ -3668,7 +3668,7 @@ function tokenizer($TEXT) { if (HOP(OPERATOR_CHARS, ch)) return read_operator(); if (ch == "\\" || is_identifier_start(ch)) return read_word(); parse_error("Unexpected character '" + ch + "'"); - }; + } next_token.context = function(nc) { if (nc) S = nc; @@ -3677,7 +3677,7 @@ function tokenizer($TEXT) { return next_token; -}; +} /* -----[ Parser (constants) ]----- */ @@ -3741,7 +3741,7 @@ function NodeWithToken(str, start, end) { this.name = str; this.start = start; this.end = end; -}; +} NodeWithToken.prototype.toString = function() { return this.name; }; @@ -3761,9 +3761,9 @@ function parse($TEXT, exigent_mode, embed_tokens) { function is(type, value) { return is_token(S.token, type, value); - }; + } - function peek() { return S.peeked || (S.peeked = S.input()); }; + function peek() { return S.peeked || (S.peeked = S.input()); } function next() { S.prev = S.token; @@ -3774,11 +3774,11 @@ function parse($TEXT, exigent_mode, embed_tokens) { S.token = S.input(); } return S.token; - }; + } function prev() { return S.prev; - }; + } function croak(msg, line, col, pos) { var ctx = S.input.context(); @@ -3786,52 +3786,52 @@ function parse($TEXT, exigent_mode, embed_tokens) { line != null ? line : ctx.tokline, col != null ? col : ctx.tokcol, pos != null ? pos : ctx.tokpos); - }; + } function token_error(token, msg) { croak(msg, token.line, token.col); - }; + } function unexpected(token) { if (token == null) token = S.token; token_error(token, "Unexpected token: " + token.type + " (" + token.value + ")"); - }; + } function expect_token(type, val) { if (is(type, val)) { return next(); } token_error(S.token, "Unexpected token " + S.token.type + ", expected " + type); - }; + } - function expect(punc) { return expect_token("punc", punc); }; + function expect(punc) { return expect_token("punc", punc); } function can_insert_semicolon() { return !exigent_mode && ( S.token.nlb || is("eof") || is("punc", "}") ); - }; + } function semicolon() { if (is("punc", ";")) next(); else if (!can_insert_semicolon()) unexpected(); - }; + } function as() { return slice(arguments); - }; + } function parenthesised() { expect("("); var ex = expression(); expect(")"); return ex; - }; + } function add_tokens(str, start, end) { return str instanceof NodeWithToken ? str : new NodeWithToken(str, start, end); - }; + } function maybe_embed_tokens(parser) { if (embed_tokens) return function() { @@ -3841,7 +3841,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { return ast; }; else return parser; - }; + } var statement = maybe_embed_tokens(function() { if (is("operator", "/")) { @@ -3946,11 +3946,11 @@ function parse($TEXT, exigent_mode, embed_tokens) { unexpected(start); S.labels.pop(); return as("label", label, stat); - }; + } function simple_statement() { return as("stat", prog1(expression, semicolon)); - }; + } function break_cont(type) { var name; @@ -3966,7 +3966,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { croak(type + " not inside a loop or switch"); semicolon(); return as(type, name); - }; + } function for_() { expect("("); @@ -3979,7 +3979,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { return for_in(init); } return regular_for(init); - }; + } function regular_for(init) { expect(";"); @@ -3988,7 +3988,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { var step = is("punc", ")") ? null : expression(); expect(")"); return as("for", init, test, step, in_loop(statement)); - }; + } function for_in(init) { var lhs = init[0] == "var" ? as("name", init[1][0]) : init; @@ -3996,7 +3996,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { var obj = expression(); expect(")"); return as("for-in", init, lhs, obj, in_loop(statement)); - }; + } var function_ = maybe_embed_tokens(function(in_statement) { var name = is("name") ? prog1(S.token.value, next) : null; @@ -4035,7 +4035,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { belse = statement(); } return as("if", cond, body, belse); - }; + } function block_() { expect("{"); @@ -4046,7 +4046,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { } next(); return a; - }; + } var switch_block_ = curry(in_loop, function(){ expect("{"); @@ -4093,7 +4093,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { if (!bcatch && !bfinally) croak("Missing catch/finally blocks"); return as("try", body, bcatch, bfinally); - }; + } function vardefs(no_in) { var a = []; @@ -4113,15 +4113,15 @@ function parse($TEXT, exigent_mode, embed_tokens) { next(); } return a; - }; + } function var_(no_in) { return as("var", vardefs(no_in)); - }; + } function const_() { return as("const", vardefs()); - }; + } function new_() { var newexp = expr_atom(false), args; @@ -4132,7 +4132,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { args = []; } return subscripts(as("new", newexp, args), true); - }; + } var expr_atom = maybe_embed_tokens(function(allow_calls) { if (is("operator", "new")) { @@ -4179,11 +4179,11 @@ function parse($TEXT, exigent_mode, embed_tokens) { } next(); return a; - }; + } function array_() { return as("array", expr_list("]", !exigent_mode, true)); - }; + } function object_() { var first = true, a = []; @@ -4203,7 +4203,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { } next(); return as("object", a); - }; + } function as_property_name() { switch (S.token.type) { @@ -4212,7 +4212,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { return prog1(S.token.value, next); } return as_name(); - }; + } function as_name() { switch (S.token.type) { @@ -4224,7 +4224,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { default: unexpected(); } - }; + } function subscripts(expr, allow_calls) { if (is("punc", ".")) { @@ -4240,7 +4240,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { return subscripts(as("call", expr, expr_list(")")), true); } return expr; - }; + } function maybe_unary(allow_calls) { if (is("operator") && HOP(UNARY_PREFIX, S.token.value)) { @@ -4254,13 +4254,13 @@ function parse($TEXT, exigent_mode, embed_tokens) { next(); } return val; - }; + } function make_unary(tag, op, expr) { if ((op == "++" || op == "--") && !is_assignable(expr)) croak("Invalid use of " + op + " operator"); return as(tag, op, expr); - }; + } function expr_op(left, min_prec, no_in) { var op = is("operator") ? S.token.value : null; @@ -4272,11 +4272,11 @@ function parse($TEXT, exigent_mode, embed_tokens) { return expr_op(as("binary", op, left, right), min_prec, no_in); } return left; - }; + } function expr_ops(no_in) { return expr_op(maybe_unary(true), 0, no_in); - }; + } function maybe_conditional(no_in) { var expr = expr_ops(no_in); @@ -4287,7 +4287,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { return as("conditional", expr, yes, expression(false, no_in)); } return expr; - }; + } function is_assignable(expr) { if (!exigent_mode) return true; @@ -4300,7 +4300,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { case "name": return expr[1] != "this"; } - }; + } function maybe_assign(no_in) { var left = maybe_conditional(no_in), val = S.token.value; @@ -4312,7 +4312,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { croak("Invalid assignment"); } return left; - }; + } var expression = maybe_embed_tokens(function(commas, no_in) { if (arguments.length == 0) @@ -4332,7 +4332,7 @@ function parse($TEXT, exigent_mode, embed_tokens) { } finally { --S.in_loop; } - }; + } return as("toplevel", (function(a){ while (!is("eof")) @@ -4340,14 +4340,14 @@ function parse($TEXT, exigent_mode, embed_tokens) { return a; })([])); -}; +} /* -----[ Utilities ]----- */ function curry(f) { var args = slice(arguments, 1); return function() { return f.apply(this, args.concat(slice(arguments))); }; -}; +} function prog1(ret) { if (ret instanceof Function) @@ -4355,33 +4355,33 @@ function prog1(ret) { for (var i = 1, n = arguments.length; --n > 0; ++i) arguments[i](); return ret; -}; +} function array_to_hash(a) { var ret = {}; for (var i = 0; i < a.length; ++i) ret[a[i]] = true; return ret; -}; +} function slice(a, start) { return Array.prototype.slice.call(a, start == null ? 0 : start); -}; +} function characters(str) { return str.split(""); -}; +} function member(name, array) { for (var i = array.length; --i >= 0;) if (array[i] === name) return true; return false; -}; +} function HOP(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); -}; +} var warn = function() {}; @@ -4427,7 +4427,7 @@ function ast_squeeze_more(ast) { }, function() { return walk(ast); }); -}; +} exports.ast_squeeze_more = ast_squeeze_more; @@ -4509,13 +4509,13 @@ function ast_walker(ast) { a[1] = walk(def[1]); return a; }) ]; - }; + } function _block(statements) { var out = [ this[0] ]; if (statements != null) out.push(MAP(statements, walk)); return out; - }; + } var walkers = { "string": function(str) { return [ this[0], str ]; @@ -4656,7 +4656,7 @@ function ast_walker(ast) { } finally { stack.pop(); } - }; + } function with_walkers(walkers, cont){ var save = {}, i; @@ -4670,7 +4670,7 @@ function ast_walker(ast) { else user[i] = save[i]; } return ret; - }; + } return { walk: walk, @@ -4682,7 +4682,7 @@ function ast_walker(ast) { return stack; } }; -}; +} /* -----[ Scope and mangling ]----- */ @@ -4702,7 +4702,7 @@ function Scope(parent) { } else { this.level = 0; } -}; +} var base54 = (function(){ var DIGITS = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_"; @@ -4804,15 +4804,15 @@ function ast_add_scope(ast) { ret.scope = current_scope; current_scope = current_scope.parent; return ret; - }; + } function define(name) { return current_scope.define(name); - }; + } function reference(name) { current_scope.refs[name] = true; - }; + } function _lambda(name, args, body) { var is_defun = this[0] == "defun"; @@ -4821,7 +4821,7 @@ function ast_add_scope(ast) { MAP(args, define); return MAP(body, walk); })]; - }; + } return with_new_scope(function(){ // process AST @@ -4882,13 +4882,13 @@ function ast_add_scope(ast) { if (s === origin) break; } } - }; + } fixrefs(current_scope); return ret; }); -}; +} /* -----[ mangle names ]----- */ @@ -4901,7 +4901,7 @@ function ast_mangle(ast, options) { if (options.except && member(name, options.except)) return name; return scope.get_mangled(name, newMangle); - }; + } function get_define(name) { if (options.defines) { @@ -4914,7 +4914,7 @@ function ast_mangle(ast, options) { } return null; } - }; + } function _lambda(name, args, body) { var is_defun = this[0] == "defun", extra; @@ -4933,7 +4933,7 @@ function ast_mangle(ast, options) { return MAP(body, walk); }, extra); return [ this[0], name, args, body ]; - }; + } function with_scope(s, cont, extra) { var _scope = scope; @@ -4948,13 +4948,13 @@ function ast_mangle(ast, options) { ret.scope = s; scope = _scope; return ret; - }; + } function _vardefs(defs) { return [ this[0], MAP(defs, function(d){ return [ get_mangled(d[0]), walk(d[1]) ]; }) ]; - }; + } return w.with_walkers({ "function": _lambda, @@ -4990,7 +4990,7 @@ function ast_mangle(ast, options) { }, function() { return walk(ast_add_scope(ast)); }); -}; +} /* -----[ - compress foo["bar"] into foo.bar, @@ -5007,7 +5007,7 @@ var warn = function(){}; function best_of(ast1, ast2) { return gen_code(ast1).length > gen_code(ast2[0] == "stat" ? ast2[1] : ast2).length ? ast2 : ast1; -}; +} function last_stat(b) { if (b[0] == "block" && b[1] && b[1].length > 0) @@ -5021,7 +5021,7 @@ function aborts(t) { if (t[0] == "return" || t[0] == "break" || t[0] == "continue" || t[0] == "throw") return true; } -}; +} function boolean_expr(expr) { return ( (expr[0] == "unary-prefix" @@ -5046,7 +5046,7 @@ function boolean_expr(expr) { (expr[0] == "seq" && boolean_expr(expr[expr.length - 1])) ); -}; +} function make_conditional(c, t, e) { var make_real_conditional = function() { @@ -5061,18 +5061,18 @@ function make_conditional(c, t, e) { warn_unreachable(val ? e : t); return (val ? t : e); }, make_real_conditional); -}; +} function empty(b) { return !b || (b[0] == "block" && (!b[1] || b[1].length == 0)); -}; +} function is_string(node) { return (node[0] == "string" || node[0] == "unary-prefix" && node[1] == "typeof" || node[0] == "binary" && node[1] == "+" && (is_string(node[2]) || is_string(node[3]))); -}; +} var when_constant = (function(){ @@ -5129,7 +5129,7 @@ var when_constant = (function(){ } } throw $NOT_CONSTANT; - }; + } return function(expr, yes, no) { try { @@ -5172,7 +5172,7 @@ var when_constant = (function(){ function warn_unreachable(ast) { if (!empty(ast)) warn("Dropping unreachable code: " + gen_code(ast, true)); -}; +} function prepare_ifs(ast) { var w = ast_walker(), walk = w.walk; @@ -5223,19 +5223,19 @@ function prepare_ifs(ast) { } return statements; - }; + } function redo_if_lambda(name, args, body) { body = redo_if(body); return [ this[0], name, args.slice(), body ]; - }; + } function redo_if_block(statements) { var out = [ this[0] ]; if (statements != null) out.push(redo_if(statements)); return out; - }; + } return w.with_walkers({ "defun": redo_if_lambda, @@ -5256,7 +5256,7 @@ function prepare_ifs(ast) { }, function() { return walk(ast); }); -}; +} function ast_squeeze(ast, options) { options = defaults(options, { @@ -5298,7 +5298,7 @@ function ast_squeeze(ast, options) { break; } return not_c; - }; + } function with_scope(s, cont) { var _scope = scope; @@ -5307,7 +5307,7 @@ function ast_squeeze(ast, options) { ret.scope = s; scope = _scope; return ret; - }; + } function rmblock(block) { if (block != null && block[0] == "block" && block[1]) { @@ -5317,7 +5317,7 @@ function ast_squeeze(ast, options) { block = [ "block" ]; } return block; - }; + } function _lambda(name, args, body) { var is_defun = this[0] == "defun"; @@ -5328,7 +5328,7 @@ function ast_squeeze(ast, options) { return ret; }); return [ this[0], name, args, body ]; - }; + } // we get here for blocks that have been already transformed. // this function does a few things: @@ -5412,7 +5412,7 @@ function ast_squeeze(ast, options) { })(0, []); return statements; - }; + } function make_if(c, t, e) { return when_constant(c, function(ast, val){ @@ -5426,7 +5426,7 @@ function ast_squeeze(ast, options) { }, function() { return make_real_if(c, t, e); }); - }; + } function make_real_if(c, t, e) { c = walk(c); @@ -5492,7 +5492,7 @@ function ast_squeeze(ast, options) { ret = walk([ "block", ret ]); } return ret; - }; + } function _do_while(cond, body) { return when_constant(cond, function(cond, val){ @@ -5503,7 +5503,7 @@ function ast_squeeze(ast, options) { return [ "for", null, null, null, walk(body) ]; } }); - }; + } ast = prepare_ifs(ast); ast = ast_add_scope(ast); @@ -5592,7 +5592,7 @@ function ast_squeeze(ast, options) { }, function() { return walk(ast); }); -}; +} /* -----[ re-generate code from the AST ]----- */ @@ -5627,7 +5627,7 @@ function make_string(str, ascii_only) { if (ascii_only) str = to_ascii(str); if (dq > sq) return "'" + str.replace(/\x27/g, "\\'") + "'"; else return '"' + str.replace(/\x22/g, '\\"') + '"'; -}; +} function to_ascii(str) { return str.replace(/[\u0080-\uffff]/g, function(ch) { @@ -5635,7 +5635,7 @@ function to_ascii(str) { while (code.length < 4) code = "0" + code; return "\\u" + code; }); -}; +} var SPLICE_NEEDS_BRACKETS = jsp.array_to_hash([ "if", "while", "do", "for", "for-in", "with" ]); @@ -5659,14 +5659,14 @@ function gen_code(ast, options) { if (options.inline_script) ret = ret.replace(/<\x2fscript([>/\t\n\f\r ])/gi, "<\\/script$1"); return ret; - }; + } function make_name(name) { name = name.toString(); if (options.ascii_only) name = to_ascii(name); return name; - }; + } function indent(line) { if (line == null) @@ -5674,14 +5674,14 @@ function gen_code(ast, options) { if (beautify) line = repeat_string(" ", options.indent_start + indentation * options.indent_level) + line; return line; - }; + } function with_indent(cont, incr) { if (incr == null) incr = 1; indentation += incr; try { return cont.apply(null, slice(arguments, 1)); } finally { indentation -= incr; } - }; + } function add_spaces(a) { if (beautify) @@ -5697,11 +5697,11 @@ function gen_code(ast, options) { } } return b.join(""); - }; + } function add_commas(a) { return a.join("," + space); - }; + } function parenthesize(expr) { var gen = make(expr); @@ -5711,7 +5711,7 @@ function gen_code(ast, options) { return "(" + gen + ")"; } return gen; - }; + } function best_of(a) { if (a.length == 1) { @@ -5723,7 +5723,7 @@ function gen_code(ast, options) { return a.length <= b.length ? a : b; } return best_of([ a[0], best_of(a.slice(1)) ]); - }; + } function needs_parens(expr) { if (expr[0] == "function" || expr[0] == "object") { @@ -5748,7 +5748,7 @@ function gen_code(ast, options) { } } return !HOP(DOT_CALL_NO_PARENS, expr[0]); - }; + } function make_num(num) { var str = num.toString(10), a = [ str.replace(/^0\./, ".") ], m; @@ -5763,7 +5763,7 @@ function gen_code(ast, options) { str.substr(str.indexOf("."))); } return best_of(a); - }; + } var generators = { "string": encode_string, @@ -6019,7 +6019,7 @@ function gen_code(ast, options) { else break; } return make(th); - }; + } function make_function(name, args, body, keyword) { var out = keyword || "function"; @@ -6028,7 +6028,7 @@ function gen_code(ast, options) { } out += "(" + add_commas(MAP(args, make_name)) + ")"; return add_spaces([ out, make_block(body) ]); - }; + } function make_block_statements(statements, noindent) { for (var a = [], last = statements.length - 1, i = 0; i <= last; ++i) { @@ -6049,7 +6049,7 @@ function gen_code(ast, options) { } } return noindent ? a : MAP(a, indent); - }; + } function make_switch_block(body) { var n = body.length; @@ -6066,7 +6066,7 @@ function gen_code(ast, options) { code += ";"; return code; }).join(newline) + newline + indent("}"); - }; + } function make_block(statements) { if (!statements) return ";"; @@ -6074,14 +6074,14 @@ function gen_code(ast, options) { return "{" + newline + with_indent(function(){ return make_block_statements(statements).join(newline); }) + newline + indent("}"); - }; + } function make_1vardef(def) { var name = def[0], val = def[1]; if (val != null) name = add_spaces([ make_name(name), "=", parenthesize(val, "seq") ]); return name; - }; + } var $stack = []; @@ -6094,10 +6094,10 @@ function gen_code(ast, options) { var ret = gen.apply(type, node.slice(1)); $stack.pop(); return ret; - }; + } return make(ast); -}; +} function split_lines(code, max_line_length) { var splits = [ 0 ]; @@ -6107,11 +6107,11 @@ function split_lines(code, max_line_length) { var prev_token; function current_length(tok) { return tok.pos - last_split; - }; + } function split_here(tok) { last_split = tok.pos; splits.push(last_split); - }; + } function custom(){ var tok = next_token.apply(this, arguments); out: { @@ -6131,7 +6131,7 @@ function split_lines(code, max_line_length) { } prev_token = tok; return tok; - }; + } custom.context = function() { return next_token.context.apply(this, arguments); }; @@ -6140,7 +6140,7 @@ function split_lines(code, max_line_length) { return splits.map(function(pos, i){ return code.substring(pos, splits[i + 1] || code.length); }).join("\n"); -}; +} /* -----[ Utilities ]----- */ @@ -6151,7 +6151,7 @@ function repeat_string(str, i) { d += d; if (i & 1) d += str; return d; -}; +} function defaults(args, defs) { var ret = {}; @@ -6161,7 +6161,7 @@ function defaults(args, defs) { ret[i] = (args && HOP(args, i)) ? args[i] : defs[i]; } return ret; -}; +} function is_identifier(name) { return /^[a-z_$][a-z0-9_$]*$/i.test(name) @@ -6169,11 +6169,11 @@ function is_identifier(name) { && !HOP(jsp.KEYWORDS_ATOM, name) && !HOP(jsp.RESERVED_WORDS, name) && !HOP(jsp.KEYWORDS, name); -}; +} function HOP(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); -}; +} // some utilities @@ -6190,7 +6190,7 @@ var MAP; return ret; }; MAP.at_top = function(val) { return new AtTop(val) }; - function AtTop(val) { this.v = val }; + function AtTop(val) { this.v = val } })(); /* -----[ Exports ]----- */ @@ -6223,7 +6223,7 @@ function uglify(orig_code, options){ ast = pro.ast_squeeze(ast, options.squeeze_options); // get an AST with compression optimizations var final_code = pro.gen_code(ast, options.gen_options); // compressed code here return final_code; -}; +} uglify.parser = require("./parse-js"); uglify.uglify = require("./process"); diff --git a/client/css/achievements.css b/client/css/achievements.css index ea1bf0982..d92e85c98 100644 --- a/client/css/achievements.css +++ b/client/css/achievements.css @@ -32,14 +32,14 @@ #achievements ul {float:left;margin-left:60px;} #achievements nav {height:66px;width:202px;margin:0 auto;} #previous, #next {height:66px;width:102px;display:inline-block;} - .page1 #previous, .upscaled .page1 #previous {background-position:0px -846px;} + .page1 #previous, .upscaled .page1 #previous {background-position:0 -846px;} .page5 #next, .upscaled .page5 #next {background-position:-99px -846px;} #previous, .upscaled #previous {background-position:-201px -846px;} #previous:active, .upscaled #previous:active {background-position:-402px -846px;} #next, .upscaled #next {margin-left:-15px;background-position:-300px -846px;} #next:active, .upscaled #next:active {background-position:-501px -846px;} - .page1 #previous:hover, .page1 #previous:active {background-position:0px -846px;} + .page1 #previous:hover, .page1 #previous:active {background-position:0 -846px;} .page5 #next:hover, .page5 #next:active {background-position:-99px -846px} #lists {width:6000px;} @@ -67,7 +67,7 @@ #achievement-notification .coin {position:absolute;top:-60px;left:50%;margin-left:-36px;opacity:0;} #achievement-notification.active .coin {opacity:1;} #achievement-notification.active #coinsparks, .upscaled #achievement-notification.active #coinsparks {height:78px;width:72px;-moz-animation:coinsparks3 0.8s steps(6, end) 7;-webkit-animation:coinsparks3 0.8s steps(6, end) 7;-o-animation:coinsparks3 0.8s steps(6, end) 7;-ms-animation:coinsparks3 0.8s steps(6, end) 7;} - #achievement-notification .title {color:#fce045;font-size:20px;margin:27px 0 9px 0;} + #achievement-notification .title {color:#fce045;font-size:20px;margin:27px 0 9px;} #achievement-notification .name {color:#eee;font-size:30px;margin:9px 0;} } @@ -98,14 +98,14 @@ #achievements ul {float:left;margin-left:40px;} #achievements nav {height:44px;width:134px;margin:0 auto;} #previous, #next {height:44px;width:68px;display:inline-block;} - .page1 #previous, .upscaled .page1 #previous {background-position:0px -564px;} + .page1 #previous, .upscaled .page1 #previous {background-position:0 -564px;} .page5 #next, .upscaled .page5 #next {background-position:-66px -564px;} #previous, .upscaled #previous {background-position:-134px -564px;} #previous:active, .upscaled #previous:active {background-position:-268px -564px;} #next, .upscaled #next {margin-left:-10px;background-position:-200px -564px;} #next:active, .upscaled #next:active {background-position:-334px -564px;} - .page1 #previous:hover, .page1 #previous:active {background-position:0px -564px;} + .page1 #previous:hover, .page1 #previous:active {background-position:0 -564px;} .page5 #next:hover, .page5 #next:active {background-position:-66px -564px} #lists {width:4000px;} @@ -133,7 +133,7 @@ #achievement-notification .coin {position:absolute;top:-40px;left:50%;margin-left:-24px;opacity:0;} #achievement-notification.active .coin {opacity:1;} #achievement-notification.active #coinsparks, .upscaled #achievement-notification.active #coinsparks {height:52px;width:48px;-moz-animation:coinsparks2 0.8s steps(6, end) 7;-webkit-animation:coinsparks2 0.8s steps(6, end) 7;-o-animation:coinsparks2 0.8s steps(6, end) 7;-ms-animation:coinsparks2 0.8s steps(6, end) 7;} - #achievement-notification .title {color:#fce045;font-size:14px;margin:18px 0 6px 0;} + #achievement-notification .title {color:#fce045;font-size:14px;margin:18px 0 6px;} #achievement-notification .name {color:#eee;font-size:20px;margin:6px 0;} } @@ -164,14 +164,14 @@ #achievements ul {float:left;margin-left:40px;} #achievements nav {height:44px;width:135px;margin:0 auto;} #previous, #next {height:44px;width:68px;display:inline-block;} - .page1 #previous, .upscaled .page1 #previous {background-position:0px -564px;} + .page1 #previous, .upscaled .page1 #previous {background-position:0 -564px;} .page5 #next, .upscaled .page5 #next {background-position:-66px -564px;} #previous, .upscaled #previous {background-position:-134px -564px;} #previous:active, .upscaled #previous:active {background-position:-268px -564px;} #next, .upscaled #next {margin-left:-10px;background-position:-200px -564px;} #next:active, .upscaled #next:active {background-position:-334px -564px;} - .page1 #previous:hover, .page1 #previous:active {background-position:0px -564px;} + .page1 #previous:hover, .page1 #previous:active {background-position:0 -564px;} .page5 #next:hover, .page5 #next:active {background-position:-66px -564px} #lists {width:4000px;} @@ -199,7 +199,7 @@ #achievement-notification .coin {position:absolute;top:-40px;left:50%;margin-left:-24px;opacity:0;} #achievement-notification.active .coin {opacity:1;} #achievement-notification.active #coinsparks, .upscaled #achievement-notification.active #coinsparks {height:52px;width:48px;-moz-animation:coinsparks2 0.8s steps(6, end) 7;-webkit-animation:coinsparks2 0.8s steps(6, end) 7;-o-animation:coinsparks2 0.8s steps(6, end) 7;-ms-animation:coinsparks2 0.8s steps(6, end) 7;} - #achievement-notification .title {color:#fce045;font-size:14px;margin:18px 0 6px 0;} + #achievement-notification .title {color:#fce045;font-size:14px;margin:18px 0 6px;} #achievement-notification .name {color:#eee;font-size:20px;margin:6px 0;} } @@ -230,14 +230,14 @@ #achievements ul {float:left;margin-left:20px;} #achievements nav {height:22px;width:68px;margin:0 auto;} #previous, #next {height:22px;width:34px;display:inline-block;} - .page1 #previous, .upscaled .page1 #previous {background-position:0px -282px;} + .page1 #previous, .upscaled .page1 #previous {background-position:0 -282px;} .page5 #next, .upscaled .page5 #next {background-position:-33px -282px;} #previous, .upscaled #previous {background-position:-67px -282px;} #previous:active, .upscaled #previous:active {background-position:-134px -282px;} #next, .upscaled #next {margin-left:-5px;background-position:-100px -282px;} #next:active, .upscaled #next:active {background-position:-167px -282px;} - .page1 #previous:hover, .page1 #previous:active {background-position:0px -282px;} + .page1 #previous:hover, .page1 #previous:active {background-position:0 -282px;} .page5 #next:hover, .page5 #next:active {background-position:-33px -282px} #lists {width:2000px;-moz-transition:none;-webkit-transition:none;-o-transition:none;-ms-transition:none;transition:none;} @@ -265,7 +265,7 @@ #achievement-notification .coin {position:absolute;top:-20px;left:50%;margin-left:-12px;opacity:0;} #achievement-notification.active .coin {opacity:1;} #achievement-notification.active #coinsparks, .upscaled #achievement-notification.active #coinsparks {height:26px;width:24px;-moz-animation:coinsparks1 0.8s steps(6, end) 7;-webkit-animation:coinsparks1 0.8s steps(6, end) 7;-o-animation:coinsparks1 0.8s steps(6, end) 7;-ms-animation:coinsparks1 0.8s steps(6, end) 7;} - #achievement-notification .title {color:#fce045;font-size:10px;margin:9px 0 3px 0;} + #achievement-notification .title {color:#fce045;font-size:10px;margin:9px 0 3px;} #achievement-notification .name {color:#eee;font-size:10px;margin:3px 0;} } @@ -294,14 +294,14 @@ #achievements nav {height:22px;width:68px;margin:0 auto;} #previous, #next {height:22px;width:34px;display:inline-block;} - .page1 #previous, .upscaled .page1 #previous {background-position:0px -282px;} + .page1 #previous, .upscaled .page1 #previous {background-position:0 -282px;} .page5 #next, .upscaled .page5 #next {background-position:-33px -282px;} #previous, .upscaled #previous {background-position:-67px -282px;} #previous:active, .upscaled #previous:active {background-position:-134px -282px;} #next, .upscaled #next {margin-left:-5px;background-position:-100px -282px;} #next:active, .upscaled #next:active {background-position:-167px -282px;} - .page1 #previous:hover, .page1 #previous:active {background-position:0px -282px;} + .page1 #previous:hover, .page1 #previous:active {background-position:0 -282px;} .page5 #next:hover, .page5 #next:active {background-position:-33px -282px} #lists {width:2000px;-moz-transition:none;-webkit-transition:none;-o-transition:none;-ms-transition:none;transition:none;} @@ -319,7 +319,7 @@ #achievement-notification .coin {position:absolute;top:-40px;left:50%;margin-left:-24px;opacity:0;} #achievement-notification.active .coin {opacity:1;} #achievement-notification.active #coinsparks {display:none;} - #achievement-notification .title {color:#fce045;font-size:14px;margin:18px 0 6px 0;} + #achievement-notification .title {color:#fce045;font-size:14px;margin:18px 0 6px;} #achievement-notification .name {color:#eee;font-size:20px;margin:6px 0;} #achievements li.unlocked .achievement-sharing {display:block;} diff --git a/client/fonts/advocut-webfont.svg b/client/fonts/advocut-webfont.svg index 28d1dfcc7..22b0b39f7 100644 --- a/client/fonts/advocut-webfont.svg +++ b/client/fonts/advocut-webfont.svg @@ -1,193 +1 @@ - - - - -This is a custom SVG webfont generated by Font Squirrel. -Copyright : Copyright c homebrainbox 2001 All rights reserved -Designer : Marc mieps Misman - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file +This is a custom SVG webfont generated by Font Squirrel. Copyright : Copyright c homebrainbox 2001 All rights reserved Designer : Marc mieps Misman \ No newline at end of file diff --git a/client/fonts/graphicpixel-webfont.svg b/client/fonts/graphicpixel-webfont.svg index e8ec459f8..8e8e6c54e 100644 --- a/client/fonts/graphicpixel-webfont.svg +++ b/client/fonts/graphicpixel-webfont.svg @@ -1,161 +1 @@ - - - - -This is a custom SVG webfont generated by Font Squirrel. -Copyright : C GiorgioCat - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file +This is a custom SVG webfont generated by Font Squirrel. Copyright : C GiorgioCat \ No newline at end of file diff --git a/client/img/1/achievements.png b/client/img/1/achievements.png index b1336948e..0ff88895e 100644 Binary files a/client/img/1/achievements.png and b/client/img/1/achievements.png differ diff --git a/client/img/1/agent.png b/client/img/1/agent.png index bf02cb0b0..2e3fd4c43 100644 Binary files a/client/img/1/agent.png and b/client/img/1/agent.png differ diff --git a/client/img/1/axe.png b/client/img/1/axe.png index d89de7c01..0268ed437 100644 Binary files a/client/img/1/axe.png and b/client/img/1/axe.png differ diff --git a/client/img/1/barsheet.png b/client/img/1/barsheet.png index 235a2ef14..cd9156b23 100644 Binary files a/client/img/1/barsheet.png and b/client/img/1/barsheet.png differ diff --git a/client/img/1/bat.png b/client/img/1/bat.png index 727f64034..d8d134bd5 100644 Binary files a/client/img/1/bat.png and b/client/img/1/bat.png differ diff --git a/client/img/1/beachnpc.png b/client/img/1/beachnpc.png index 880b9e72e..6b1cdc1a5 100644 Binary files a/client/img/1/beachnpc.png and b/client/img/1/beachnpc.png differ diff --git a/client/img/1/bluesword.png b/client/img/1/bluesword.png index 9d9d0e93e..b5394c7c2 100644 Binary files a/client/img/1/bluesword.png and b/client/img/1/bluesword.png differ diff --git a/client/img/1/boss.png b/client/img/1/boss.png index 349ab5eaa..b26b83087 100644 Binary files a/client/img/1/boss.png and b/client/img/1/boss.png differ diff --git a/client/img/1/clotharmor.png b/client/img/1/clotharmor.png index ae13f2af0..fc204d129 100644 Binary files a/client/img/1/clotharmor.png and b/client/img/1/clotharmor.png differ diff --git a/client/img/1/coder.png b/client/img/1/coder.png index 8bc0f2a92..228db05c6 100644 Binary files a/client/img/1/coder.png and b/client/img/1/coder.png differ diff --git a/client/img/1/crab.png b/client/img/1/crab.png index 26768bc98..d6bca7505 100644 Binary files a/client/img/1/crab.png and b/client/img/1/crab.png differ diff --git a/client/img/1/death.png b/client/img/1/death.png index fe1909c63..5d6fb41e2 100644 Binary files a/client/img/1/death.png and b/client/img/1/death.png differ diff --git a/client/img/1/deathknight.png b/client/img/1/deathknight.png index 4fb236934..9799cc4c7 100644 Binary files a/client/img/1/deathknight.png and b/client/img/1/deathknight.png differ diff --git a/client/img/1/desertnpc.png b/client/img/1/desertnpc.png index ce0167106..0dcfe03b6 100644 Binary files a/client/img/1/desertnpc.png and b/client/img/1/desertnpc.png differ diff --git a/client/img/1/eye.png b/client/img/1/eye.png index d32a75596..24f2ffd49 100644 Binary files a/client/img/1/eye.png and b/client/img/1/eye.png differ diff --git a/client/img/1/firefox.png b/client/img/1/firefox.png index 2d2eb98b5..1aa15c49e 100644 Binary files a/client/img/1/firefox.png and b/client/img/1/firefox.png differ diff --git a/client/img/1/forestnpc.png b/client/img/1/forestnpc.png index 1035f664f..5b22510b8 100644 Binary files a/client/img/1/forestnpc.png and b/client/img/1/forestnpc.png differ diff --git a/client/img/1/goblin.png b/client/img/1/goblin.png index e9290206a..8d99505ac 100644 Binary files a/client/img/1/goblin.png and b/client/img/1/goblin.png differ diff --git a/client/img/1/goldenarmor.png b/client/img/1/goldenarmor.png index bb4a936ad..6ccb84232 100644 Binary files a/client/img/1/goldenarmor.png and b/client/img/1/goldenarmor.png differ diff --git a/client/img/1/goldensword.png b/client/img/1/goldensword.png index b903a8c77..5690a7153 100644 Binary files a/client/img/1/goldensword.png and b/client/img/1/goldensword.png differ diff --git a/client/img/1/guard.png b/client/img/1/guard.png index 5d7178103..ba9690026 100644 Binary files a/client/img/1/guard.png and b/client/img/1/guard.png differ diff --git a/client/img/1/item-burger.png b/client/img/1/item-burger.png index a5c45d382..f95eaa695 100644 Binary files a/client/img/1/item-burger.png and b/client/img/1/item-burger.png differ diff --git a/client/img/1/item-cake.png b/client/img/1/item-cake.png index 44da17cd9..f3f82024a 100644 Binary files a/client/img/1/item-cake.png and b/client/img/1/item-cake.png differ diff --git a/client/img/1/item-goldenarmor.png b/client/img/1/item-goldenarmor.png index 4dcb017e8..fcb2ee8be 100644 Binary files a/client/img/1/item-goldenarmor.png and b/client/img/1/item-goldenarmor.png differ diff --git a/client/img/1/item-leatherarmor.png b/client/img/1/item-leatherarmor.png index c3b1ea7a1..2ef679e36 100644 Binary files a/client/img/1/item-leatherarmor.png and b/client/img/1/item-leatherarmor.png differ diff --git a/client/img/1/item-morningstar.png b/client/img/1/item-morningstar.png index 1e852214b..7b27e9597 100644 Binary files a/client/img/1/item-morningstar.png and b/client/img/1/item-morningstar.png differ diff --git a/client/img/1/item-platearmor.png b/client/img/1/item-platearmor.png index 71dde3f62..8ffe9c60e 100644 Binary files a/client/img/1/item-platearmor.png and b/client/img/1/item-platearmor.png differ diff --git a/client/img/1/item-redarmor.png b/client/img/1/item-redarmor.png index 1f2a16a8d..97afb95cd 100644 Binary files a/client/img/1/item-redarmor.png and b/client/img/1/item-redarmor.png differ diff --git a/client/img/1/king.png b/client/img/1/king.png index 36f97b53d..423148a22 100644 Binary files a/client/img/1/king.png and b/client/img/1/king.png differ diff --git a/client/img/1/lavanpc.png b/client/img/1/lavanpc.png index 13ab738f7..e177fa63e 100644 Binary files a/client/img/1/lavanpc.png and b/client/img/1/lavanpc.png differ diff --git a/client/img/1/leatherarmor.png b/client/img/1/leatherarmor.png index 1296041c7..7a964176c 100644 Binary files a/client/img/1/leatherarmor.png and b/client/img/1/leatherarmor.png differ diff --git a/client/img/1/mailarmor.png b/client/img/1/mailarmor.png index 4fc2e8020..f292efb27 100644 Binary files a/client/img/1/mailarmor.png and b/client/img/1/mailarmor.png differ diff --git a/client/img/1/morningstar.png b/client/img/1/morningstar.png index 84bf55525..9ad09fb17 100644 Binary files a/client/img/1/morningstar.png and b/client/img/1/morningstar.png differ diff --git a/client/img/1/nyan.png b/client/img/1/nyan.png index 2a1c01230..41a953c1c 100644 Binary files a/client/img/1/nyan.png and b/client/img/1/nyan.png differ diff --git a/client/img/1/octocat.png b/client/img/1/octocat.png index a0e99e2de..f80289fb5 100644 Binary files a/client/img/1/octocat.png and b/client/img/1/octocat.png differ diff --git a/client/img/1/ogre.png b/client/img/1/ogre.png index 5f242c991..311c4c82a 100644 Binary files a/client/img/1/ogre.png and b/client/img/1/ogre.png differ diff --git a/client/img/1/platearmor.png b/client/img/1/platearmor.png index be64c10ee..8b8212b5b 100644 Binary files a/client/img/1/platearmor.png and b/client/img/1/platearmor.png differ diff --git a/client/img/1/priest.png b/client/img/1/priest.png index e0a47b72c..ba1271182 100644 Binary files a/client/img/1/priest.png and b/client/img/1/priest.png differ diff --git a/client/img/1/rat.png b/client/img/1/rat.png index bbced91ef..ab470726c 100644 Binary files a/client/img/1/rat.png and b/client/img/1/rat.png differ diff --git a/client/img/1/redarmor.png b/client/img/1/redarmor.png index 346d1ad9d..2875a684a 100644 Binary files a/client/img/1/redarmor.png and b/client/img/1/redarmor.png differ diff --git a/client/img/1/redsword.png b/client/img/1/redsword.png index b20086dc2..16a14d277 100644 Binary files a/client/img/1/redsword.png and b/client/img/1/redsword.png differ diff --git a/client/img/1/rick.png b/client/img/1/rick.png index 852fc105d..b03b32eb4 100644 Binary files a/client/img/1/rick.png and b/client/img/1/rick.png differ diff --git a/client/img/1/scientist.png b/client/img/1/scientist.png index 0546c6d07..a2e37d8b3 100644 Binary files a/client/img/1/scientist.png and b/client/img/1/scientist.png differ diff --git a/client/img/1/skeleton.png b/client/img/1/skeleton.png index 0e3572a58..2ffa89657 100644 Binary files a/client/img/1/skeleton.png and b/client/img/1/skeleton.png differ diff --git a/client/img/1/skeleton2.png b/client/img/1/skeleton2.png index 5ed428d75..5cf11a593 100644 Binary files a/client/img/1/skeleton2.png and b/client/img/1/skeleton2.png differ diff --git a/client/img/1/snake.png b/client/img/1/snake.png index 408777883..668d373f9 100644 Binary files a/client/img/1/snake.png and b/client/img/1/snake.png differ diff --git a/client/img/1/sorcerer.png b/client/img/1/sorcerer.png index 5d5d288a3..c050b9752 100644 Binary files a/client/img/1/sorcerer.png and b/client/img/1/sorcerer.png differ diff --git a/client/img/1/spectre.png b/client/img/1/spectre.png index faeff643f..514de0b47 100644 Binary files a/client/img/1/spectre.png and b/client/img/1/spectre.png differ diff --git a/client/img/1/spritesheet.png b/client/img/1/spritesheet.png index 3f304d62a..5ccde5842 100644 Binary files a/client/img/1/spritesheet.png and b/client/img/1/spritesheet.png differ diff --git a/client/img/1/sword1.png b/client/img/1/sword1.png index b5fb4f4c5..3afe16e52 100644 Binary files a/client/img/1/sword1.png and b/client/img/1/sword1.png differ diff --git a/client/img/1/sword2.png b/client/img/1/sword2.png index 9daeb03cd..a31ecbe30 100644 Binary files a/client/img/1/sword2.png and b/client/img/1/sword2.png differ diff --git a/client/img/1/tilesheet.png b/client/img/1/tilesheet.png index b9f7707d4..eeafdea89 100644 Binary files a/client/img/1/tilesheet.png and b/client/img/1/tilesheet.png differ diff --git a/client/img/1/villagegirl.png b/client/img/1/villagegirl.png index 13b595d7e..be0f69fec 100644 Binary files a/client/img/1/villagegirl.png and b/client/img/1/villagegirl.png differ diff --git a/client/img/1/villager.png b/client/img/1/villager.png index 97e07529d..ca560ad05 100644 Binary files a/client/img/1/villager.png and b/client/img/1/villager.png differ diff --git a/client/img/1/wizard.png b/client/img/1/wizard.png index ea634f9f7..c8b4e4b18 100644 Binary files a/client/img/1/wizard.png and b/client/img/1/wizard.png differ diff --git a/client/img/1/wood.png b/client/img/1/wood.png index 21d06695d..f4eae96a9 100644 Binary files a/client/img/1/wood.png and b/client/img/1/wood.png differ diff --git a/client/img/2/achievements.png b/client/img/2/achievements.png index e85a889f4..6a583adae 100644 Binary files a/client/img/2/achievements.png and b/client/img/2/achievements.png differ diff --git a/client/img/2/agent.png b/client/img/2/agent.png index 544b7335b..de723df19 100644 Binary files a/client/img/2/agent.png and b/client/img/2/agent.png differ diff --git a/client/img/2/axe.png b/client/img/2/axe.png index 669eee12a..78792ceee 100644 Binary files a/client/img/2/axe.png and b/client/img/2/axe.png differ diff --git a/client/img/2/barsheet.png b/client/img/2/barsheet.png index cab19e928..710c8675f 100644 Binary files a/client/img/2/barsheet.png and b/client/img/2/barsheet.png differ diff --git a/client/img/2/bat.png b/client/img/2/bat.png index e7253d2b5..867ce8ce9 100644 Binary files a/client/img/2/bat.png and b/client/img/2/bat.png differ diff --git a/client/img/2/beachnpc.png b/client/img/2/beachnpc.png index c1b965a7e..4da0289a5 100644 Binary files a/client/img/2/beachnpc.png and b/client/img/2/beachnpc.png differ diff --git a/client/img/2/bluesword.png b/client/img/2/bluesword.png index 3e0b49270..6a63dae8b 100644 Binary files a/client/img/2/bluesword.png and b/client/img/2/bluesword.png differ diff --git a/client/img/2/boss.png b/client/img/2/boss.png index 71cbf90a4..08745c446 100644 Binary files a/client/img/2/boss.png and b/client/img/2/boss.png differ diff --git a/client/img/2/clotharmor.png b/client/img/2/clotharmor.png index cad21b6f8..d3e38845d 100644 Binary files a/client/img/2/clotharmor.png and b/client/img/2/clotharmor.png differ diff --git a/client/img/2/coder.png b/client/img/2/coder.png index f9057fe26..536a68a57 100644 Binary files a/client/img/2/coder.png and b/client/img/2/coder.png differ diff --git a/client/img/2/crab.png b/client/img/2/crab.png index e3c277c1b..d809000b1 100644 Binary files a/client/img/2/crab.png and b/client/img/2/crab.png differ diff --git a/client/img/2/death.png b/client/img/2/death.png index 52c4de1a9..43e17cbdd 100644 Binary files a/client/img/2/death.png and b/client/img/2/death.png differ diff --git a/client/img/2/deathknight.png b/client/img/2/deathknight.png index 3160fd16e..830693ae0 100644 Binary files a/client/img/2/deathknight.png and b/client/img/2/deathknight.png differ diff --git a/client/img/2/desertnpc.png b/client/img/2/desertnpc.png index 6455fcdb2..469a17f9f 100644 Binary files a/client/img/2/desertnpc.png and b/client/img/2/desertnpc.png differ diff --git a/client/img/2/eye.png b/client/img/2/eye.png index 73e50f04a..355cda17c 100644 Binary files a/client/img/2/eye.png and b/client/img/2/eye.png differ diff --git a/client/img/2/firefox.png b/client/img/2/firefox.png index 44f7e2400..8955d9144 100644 Binary files a/client/img/2/firefox.png and b/client/img/2/firefox.png differ diff --git a/client/img/2/forestnpc.png b/client/img/2/forestnpc.png index feb520709..8b94e596c 100644 Binary files a/client/img/2/forestnpc.png and b/client/img/2/forestnpc.png differ diff --git a/client/img/2/goblin.png b/client/img/2/goblin.png index a47f00d93..809775065 100644 Binary files a/client/img/2/goblin.png and b/client/img/2/goblin.png differ diff --git a/client/img/2/goldenarmor.png b/client/img/2/goldenarmor.png index 81fd3e27a..f2a628097 100644 Binary files a/client/img/2/goldenarmor.png and b/client/img/2/goldenarmor.png differ diff --git a/client/img/2/goldensword.png b/client/img/2/goldensword.png index 354aa9359..2cea4ef39 100644 Binary files a/client/img/2/goldensword.png and b/client/img/2/goldensword.png differ diff --git a/client/img/2/guard.png b/client/img/2/guard.png index 2268dbd6e..7e19179f4 100644 Binary files a/client/img/2/guard.png and b/client/img/2/guard.png differ diff --git a/client/img/2/item-axe.png b/client/img/2/item-axe.png index 5b6e8bd5f..5d2d4686d 100644 Binary files a/client/img/2/item-axe.png and b/client/img/2/item-axe.png differ diff --git a/client/img/2/item-bluesword.png b/client/img/2/item-bluesword.png index 747fe01c9..a15c5e1ae 100644 Binary files a/client/img/2/item-bluesword.png and b/client/img/2/item-bluesword.png differ diff --git a/client/img/2/item-burger.png b/client/img/2/item-burger.png index ea4e3a68b..610808923 100644 Binary files a/client/img/2/item-burger.png and b/client/img/2/item-burger.png differ diff --git a/client/img/2/item-cake.png b/client/img/2/item-cake.png index 66882fd57..4ea1692b2 100644 Binary files a/client/img/2/item-cake.png and b/client/img/2/item-cake.png differ diff --git a/client/img/2/item-goldenarmor.png b/client/img/2/item-goldenarmor.png index f65f0ba03..ff0a93420 100644 Binary files a/client/img/2/item-goldenarmor.png and b/client/img/2/item-goldenarmor.png differ diff --git a/client/img/2/item-goldensword.png b/client/img/2/item-goldensword.png index b9058e607..71807a7c9 100644 Binary files a/client/img/2/item-goldensword.png and b/client/img/2/item-goldensword.png differ diff --git a/client/img/2/item-leatherarmor.png b/client/img/2/item-leatherarmor.png index fd66086d0..c65c9ef66 100644 Binary files a/client/img/2/item-leatherarmor.png and b/client/img/2/item-leatherarmor.png differ diff --git a/client/img/2/item-morningstar.png b/client/img/2/item-morningstar.png index e0473cbd3..64d4e4376 100644 Binary files a/client/img/2/item-morningstar.png and b/client/img/2/item-morningstar.png differ diff --git a/client/img/2/item-platearmor.png b/client/img/2/item-platearmor.png index 4043faf65..59c19da3e 100644 Binary files a/client/img/2/item-platearmor.png and b/client/img/2/item-platearmor.png differ diff --git a/client/img/2/item-redarmor.png b/client/img/2/item-redarmor.png index 909c38d41..cff640ca2 100644 Binary files a/client/img/2/item-redarmor.png and b/client/img/2/item-redarmor.png differ diff --git a/client/img/2/item-redsword.png b/client/img/2/item-redsword.png index 442d4decc..3ab34af96 100644 Binary files a/client/img/2/item-redsword.png and b/client/img/2/item-redsword.png differ diff --git a/client/img/2/item-sword2.png b/client/img/2/item-sword2.png index 4128491ea..a04132287 100644 Binary files a/client/img/2/item-sword2.png and b/client/img/2/item-sword2.png differ diff --git a/client/img/2/king.png b/client/img/2/king.png index 35f047484..4a179501b 100644 Binary files a/client/img/2/king.png and b/client/img/2/king.png differ diff --git a/client/img/2/lavanpc.png b/client/img/2/lavanpc.png index 2c261ecca..467539149 100644 Binary files a/client/img/2/lavanpc.png and b/client/img/2/lavanpc.png differ diff --git a/client/img/2/leatherarmor.png b/client/img/2/leatherarmor.png index 98831c1a8..028b3d6a9 100644 Binary files a/client/img/2/leatherarmor.png and b/client/img/2/leatherarmor.png differ diff --git a/client/img/2/mailarmor.png b/client/img/2/mailarmor.png index 9e9b96a37..668553a14 100644 Binary files a/client/img/2/mailarmor.png and b/client/img/2/mailarmor.png differ diff --git a/client/img/2/morningstar.png b/client/img/2/morningstar.png index 7226dc67f..f16697375 100644 Binary files a/client/img/2/morningstar.png and b/client/img/2/morningstar.png differ diff --git a/client/img/2/nyan.png b/client/img/2/nyan.png index cf2d500a8..fe2e334b5 100644 Binary files a/client/img/2/nyan.png and b/client/img/2/nyan.png differ diff --git a/client/img/2/octocat.png b/client/img/2/octocat.png index 35b05c600..ff0d49b51 100644 Binary files a/client/img/2/octocat.png and b/client/img/2/octocat.png differ diff --git a/client/img/2/ogre.png b/client/img/2/ogre.png index 71eaa8e74..a76bedab5 100644 Binary files a/client/img/2/ogre.png and b/client/img/2/ogre.png differ diff --git a/client/img/2/platearmor.png b/client/img/2/platearmor.png index 1aa4afec1..314572c1d 100644 Binary files a/client/img/2/platearmor.png and b/client/img/2/platearmor.png differ diff --git a/client/img/2/priest.png b/client/img/2/priest.png index 950060890..3c349caa7 100644 Binary files a/client/img/2/priest.png and b/client/img/2/priest.png differ diff --git a/client/img/2/rat.png b/client/img/2/rat.png index 8a96fa18c..5d0c9c942 100644 Binary files a/client/img/2/rat.png and b/client/img/2/rat.png differ diff --git a/client/img/2/redarmor.png b/client/img/2/redarmor.png index a770320b4..b02b4c1d2 100644 Binary files a/client/img/2/redarmor.png and b/client/img/2/redarmor.png differ diff --git a/client/img/2/redsword.png b/client/img/2/redsword.png index 28b7423fd..5dcbf5b56 100644 Binary files a/client/img/2/redsword.png and b/client/img/2/redsword.png differ diff --git a/client/img/2/rick.png b/client/img/2/rick.png index 0646ec7b8..55a695849 100644 Binary files a/client/img/2/rick.png and b/client/img/2/rick.png differ diff --git a/client/img/2/scientist.png b/client/img/2/scientist.png index a7cab4da3..27abcc753 100644 Binary files a/client/img/2/scientist.png and b/client/img/2/scientist.png differ diff --git a/client/img/2/skeleton.png b/client/img/2/skeleton.png index 8bf55dff1..1ec054d50 100644 Binary files a/client/img/2/skeleton.png and b/client/img/2/skeleton.png differ diff --git a/client/img/2/skeleton2.png b/client/img/2/skeleton2.png index 48dee3a8e..4daea3ba6 100644 Binary files a/client/img/2/skeleton2.png and b/client/img/2/skeleton2.png differ diff --git a/client/img/2/snake.png b/client/img/2/snake.png index 847f163eb..fc6c76ca8 100644 Binary files a/client/img/2/snake.png and b/client/img/2/snake.png differ diff --git a/client/img/2/sorcerer.png b/client/img/2/sorcerer.png index e2a28ff5e..5a9e7c4ae 100644 Binary files a/client/img/2/sorcerer.png and b/client/img/2/sorcerer.png differ diff --git a/client/img/2/spectre.png b/client/img/2/spectre.png index 268765273..66d28efbb 100644 Binary files a/client/img/2/spectre.png and b/client/img/2/spectre.png differ diff --git a/client/img/2/spritesheet.png b/client/img/2/spritesheet.png index a7b3383f5..7c1891d37 100644 Binary files a/client/img/2/spritesheet.png and b/client/img/2/spritesheet.png differ diff --git a/client/img/2/sword1.png b/client/img/2/sword1.png index 45562d288..c203a90c2 100644 Binary files a/client/img/2/sword1.png and b/client/img/2/sword1.png differ diff --git a/client/img/2/sword2.png b/client/img/2/sword2.png index 10b4acb72..b32337a8b 100644 Binary files a/client/img/2/sword2.png and b/client/img/2/sword2.png differ diff --git a/client/img/2/tilesheet.png b/client/img/2/tilesheet.png index 9eb40fc54..97fe02a3e 100644 Binary files a/client/img/2/tilesheet.png and b/client/img/2/tilesheet.png differ diff --git a/client/img/2/villagegirl.png b/client/img/2/villagegirl.png index 699d886b6..b7eeef3dd 100644 Binary files a/client/img/2/villagegirl.png and b/client/img/2/villagegirl.png differ diff --git a/client/img/2/villager.png b/client/img/2/villager.png index feb520709..58a0a2d7d 100644 Binary files a/client/img/2/villager.png and b/client/img/2/villager.png differ diff --git a/client/img/2/wizard.png b/client/img/2/wizard.png index 2b6c766fe..53359c3be 100644 Binary files a/client/img/2/wizard.png and b/client/img/2/wizard.png differ diff --git a/client/img/2/wood.png b/client/img/2/wood.png index a8c899841..60f5899bc 100644 Binary files a/client/img/2/wood.png and b/client/img/2/wood.png differ diff --git a/client/img/2/wood3.png b/client/img/2/wood3.png index 8bab21a72..f46eb3082 100644 Binary files a/client/img/2/wood3.png and b/client/img/2/wood3.png differ diff --git a/client/img/3/achievements.png b/client/img/3/achievements.png index 1dccc7dde..38351a479 100644 Binary files a/client/img/3/achievements.png and b/client/img/3/achievements.png differ diff --git a/client/img/3/agent.png b/client/img/3/agent.png index 99240b7f4..5cc0d1d0b 100644 Binary files a/client/img/3/agent.png and b/client/img/3/agent.png differ diff --git a/client/img/3/axe.png b/client/img/3/axe.png index e0cd012ff..c868ed45d 100644 Binary files a/client/img/3/axe.png and b/client/img/3/axe.png differ diff --git a/client/img/3/barsheet.png b/client/img/3/barsheet.png index d7f88de1c..a7d9aa54b 100644 Binary files a/client/img/3/barsheet.png and b/client/img/3/barsheet.png differ diff --git a/client/img/3/bat.png b/client/img/3/bat.png index 8c6140468..10cfdc242 100644 Binary files a/client/img/3/bat.png and b/client/img/3/bat.png differ diff --git a/client/img/3/beachnpc.png b/client/img/3/beachnpc.png index 92c1f6969..88150e433 100644 Binary files a/client/img/3/beachnpc.png and b/client/img/3/beachnpc.png differ diff --git a/client/img/3/bluesword.png b/client/img/3/bluesword.png index 2b04024a4..c768081a9 100644 Binary files a/client/img/3/bluesword.png and b/client/img/3/bluesword.png differ diff --git a/client/img/3/boss.png b/client/img/3/boss.png index f7099d589..351469c09 100644 Binary files a/client/img/3/boss.png and b/client/img/3/boss.png differ diff --git a/client/img/3/clotharmor.png b/client/img/3/clotharmor.png index a9467fefc..70a50bc86 100644 Binary files a/client/img/3/clotharmor.png and b/client/img/3/clotharmor.png differ diff --git a/client/img/3/coder.png b/client/img/3/coder.png index b6f8b9c6b..1c2980526 100644 Binary files a/client/img/3/coder.png and b/client/img/3/coder.png differ diff --git a/client/img/3/crab.png b/client/img/3/crab.png index 448d57312..90cc1ed44 100644 Binary files a/client/img/3/crab.png and b/client/img/3/crab.png differ diff --git a/client/img/3/death.png b/client/img/3/death.png index b57823915..8a32f3254 100644 Binary files a/client/img/3/death.png and b/client/img/3/death.png differ diff --git a/client/img/3/deathknight.png b/client/img/3/deathknight.png index 3d8a10973..9fff61da2 100644 Binary files a/client/img/3/deathknight.png and b/client/img/3/deathknight.png differ diff --git a/client/img/3/desertnpc.png b/client/img/3/desertnpc.png index 60ef8c0b5..77d25154b 100644 Binary files a/client/img/3/desertnpc.png and b/client/img/3/desertnpc.png differ diff --git a/client/img/3/eye.png b/client/img/3/eye.png index ee66ca27a..fbaad1e29 100644 Binary files a/client/img/3/eye.png and b/client/img/3/eye.png differ diff --git a/client/img/3/firefox.png b/client/img/3/firefox.png index 6c18770e5..d2b7f19bb 100644 Binary files a/client/img/3/firefox.png and b/client/img/3/firefox.png differ diff --git a/client/img/3/forestnpc.png b/client/img/3/forestnpc.png index 656289ce6..f549b6c45 100644 Binary files a/client/img/3/forestnpc.png and b/client/img/3/forestnpc.png differ diff --git a/client/img/3/goblin.png b/client/img/3/goblin.png index c6988e457..3aef5a28f 100644 Binary files a/client/img/3/goblin.png and b/client/img/3/goblin.png differ diff --git a/client/img/3/goldenarmor.png b/client/img/3/goldenarmor.png index 9749bd7bf..f388a62cb 100644 Binary files a/client/img/3/goldenarmor.png and b/client/img/3/goldenarmor.png differ diff --git a/client/img/3/goldensword.png b/client/img/3/goldensword.png index 3ca4993f9..cf7b78fd3 100644 Binary files a/client/img/3/goldensword.png and b/client/img/3/goldensword.png differ diff --git a/client/img/3/guard.png b/client/img/3/guard.png index c817c65d4..ebedbf464 100644 Binary files a/client/img/3/guard.png and b/client/img/3/guard.png differ diff --git a/client/img/3/item-axe.png b/client/img/3/item-axe.png index 6226bc5ff..79c3ca72a 100644 Binary files a/client/img/3/item-axe.png and b/client/img/3/item-axe.png differ diff --git a/client/img/3/item-bluesword.png b/client/img/3/item-bluesword.png index 2b55bb56c..9f57388c1 100644 Binary files a/client/img/3/item-bluesword.png and b/client/img/3/item-bluesword.png differ diff --git a/client/img/3/item-burger.png b/client/img/3/item-burger.png index f4cbe6d43..a9e0ca2be 100644 Binary files a/client/img/3/item-burger.png and b/client/img/3/item-burger.png differ diff --git a/client/img/3/item-cake.png b/client/img/3/item-cake.png index 67c78c694..f1e5939cf 100644 Binary files a/client/img/3/item-cake.png and b/client/img/3/item-cake.png differ diff --git a/client/img/3/item-firepotion.png b/client/img/3/item-firepotion.png index 5b7474eff..95cbcf493 100644 Binary files a/client/img/3/item-firepotion.png and b/client/img/3/item-firepotion.png differ diff --git a/client/img/3/item-goldenarmor.png b/client/img/3/item-goldenarmor.png index 3c0fa7108..bc76d155c 100644 Binary files a/client/img/3/item-goldenarmor.png and b/client/img/3/item-goldenarmor.png differ diff --git a/client/img/3/item-goldensword.png b/client/img/3/item-goldensword.png index 0711322c7..8115208e5 100644 Binary files a/client/img/3/item-goldensword.png and b/client/img/3/item-goldensword.png differ diff --git a/client/img/3/item-leatherarmor.png b/client/img/3/item-leatherarmor.png index fd2d03492..75277b776 100644 Binary files a/client/img/3/item-leatherarmor.png and b/client/img/3/item-leatherarmor.png differ diff --git a/client/img/3/item-mailarmor.png b/client/img/3/item-mailarmor.png index db23b6079..7d78f6f5c 100644 Binary files a/client/img/3/item-mailarmor.png and b/client/img/3/item-mailarmor.png differ diff --git a/client/img/3/item-morningstar.png b/client/img/3/item-morningstar.png index 18f7d137e..f613334d4 100644 Binary files a/client/img/3/item-morningstar.png and b/client/img/3/item-morningstar.png differ diff --git a/client/img/3/item-platearmor.png b/client/img/3/item-platearmor.png index 562f4e843..5eda48234 100644 Binary files a/client/img/3/item-platearmor.png and b/client/img/3/item-platearmor.png differ diff --git a/client/img/3/item-redarmor.png b/client/img/3/item-redarmor.png index 2604f5d69..90023ba8d 100644 Binary files a/client/img/3/item-redarmor.png and b/client/img/3/item-redarmor.png differ diff --git a/client/img/3/item-redsword.png b/client/img/3/item-redsword.png index 310dd5e05..4bca15cd3 100644 Binary files a/client/img/3/item-redsword.png and b/client/img/3/item-redsword.png differ diff --git a/client/img/3/item-sword2.png b/client/img/3/item-sword2.png index f90c619ff..d6f8fb3e9 100644 Binary files a/client/img/3/item-sword2.png and b/client/img/3/item-sword2.png differ diff --git a/client/img/3/king.png b/client/img/3/king.png index 1f29c0e08..9e1a82246 100644 Binary files a/client/img/3/king.png and b/client/img/3/king.png differ diff --git a/client/img/3/lavanpc.png b/client/img/3/lavanpc.png index e08b526d0..04f4ff720 100644 Binary files a/client/img/3/lavanpc.png and b/client/img/3/lavanpc.png differ diff --git a/client/img/3/leatherarmor.png b/client/img/3/leatherarmor.png index f86ef8b2d..a2f3bf8d6 100644 Binary files a/client/img/3/leatherarmor.png and b/client/img/3/leatherarmor.png differ diff --git a/client/img/3/mailarmor.png b/client/img/3/mailarmor.png index db926d58f..0c6e41508 100644 Binary files a/client/img/3/mailarmor.png and b/client/img/3/mailarmor.png differ diff --git a/client/img/3/morningstar.png b/client/img/3/morningstar.png index 77f6b9404..641a1d5be 100644 Binary files a/client/img/3/morningstar.png and b/client/img/3/morningstar.png differ diff --git a/client/img/3/nyan.png b/client/img/3/nyan.png index 6e501f3b5..f6721b0ce 100644 Binary files a/client/img/3/nyan.png and b/client/img/3/nyan.png differ diff --git a/client/img/3/octocat.png b/client/img/3/octocat.png index 16f8a9505..8401eeba3 100644 Binary files a/client/img/3/octocat.png and b/client/img/3/octocat.png differ diff --git a/client/img/3/ogre.png b/client/img/3/ogre.png index 9296df06e..706d3cf71 100644 Binary files a/client/img/3/ogre.png and b/client/img/3/ogre.png differ diff --git a/client/img/3/platearmor.png b/client/img/3/platearmor.png index c8b21f341..41f698d3a 100644 Binary files a/client/img/3/platearmor.png and b/client/img/3/platearmor.png differ diff --git a/client/img/3/priest.png b/client/img/3/priest.png index a84f729f0..70a8adae2 100644 Binary files a/client/img/3/priest.png and b/client/img/3/priest.png differ diff --git a/client/img/3/rat.png b/client/img/3/rat.png index 083d22490..1a2b7fbaf 100644 Binary files a/client/img/3/rat.png and b/client/img/3/rat.png differ diff --git a/client/img/3/redarmor.png b/client/img/3/redarmor.png index 88e0b55ad..050f1e88c 100644 Binary files a/client/img/3/redarmor.png and b/client/img/3/redarmor.png differ diff --git a/client/img/3/redsword.png b/client/img/3/redsword.png index 8307668aa..f7bbba293 100644 Binary files a/client/img/3/redsword.png and b/client/img/3/redsword.png differ diff --git a/client/img/3/rick.png b/client/img/3/rick.png index 55be26c3a..50172cf94 100644 Binary files a/client/img/3/rick.png and b/client/img/3/rick.png differ diff --git a/client/img/3/scientist.png b/client/img/3/scientist.png index 080d36892..0a6d1937a 100644 Binary files a/client/img/3/scientist.png and b/client/img/3/scientist.png differ diff --git a/client/img/3/skeleton.png b/client/img/3/skeleton.png index 44faf3633..b7cbcb798 100644 Binary files a/client/img/3/skeleton.png and b/client/img/3/skeleton.png differ diff --git a/client/img/3/skeleton2.png b/client/img/3/skeleton2.png index 22a232fb3..488ed270c 100644 Binary files a/client/img/3/skeleton2.png and b/client/img/3/skeleton2.png differ diff --git a/client/img/3/snake.png b/client/img/3/snake.png index 5f2ee774a..5421372d5 100644 Binary files a/client/img/3/snake.png and b/client/img/3/snake.png differ diff --git a/client/img/3/sorcerer.png b/client/img/3/sorcerer.png index 6871f8443..12528da82 100644 Binary files a/client/img/3/sorcerer.png and b/client/img/3/sorcerer.png differ diff --git a/client/img/3/spectre.png b/client/img/3/spectre.png index a624a35a7..3a42b36f8 100644 Binary files a/client/img/3/spectre.png and b/client/img/3/spectre.png differ diff --git a/client/img/3/spritesheet.png b/client/img/3/spritesheet.png index 7e73ddb90..49117bf9d 100644 Binary files a/client/img/3/spritesheet.png and b/client/img/3/spritesheet.png differ diff --git a/client/img/3/sword1.png b/client/img/3/sword1.png index 0c5600627..7ed0980dc 100644 Binary files a/client/img/3/sword1.png and b/client/img/3/sword1.png differ diff --git a/client/img/3/sword2.png b/client/img/3/sword2.png index 6819c33bc..db43f38d1 100644 Binary files a/client/img/3/sword2.png and b/client/img/3/sword2.png differ diff --git a/client/img/3/target.png b/client/img/3/target.png index 533d7ac28..623fa0c50 100644 Binary files a/client/img/3/target.png and b/client/img/3/target.png differ diff --git a/client/img/3/tilesheet.png b/client/img/3/tilesheet.png index 1e95f823e..83fe0fa33 100644 Binary files a/client/img/3/tilesheet.png and b/client/img/3/tilesheet.png differ diff --git a/client/img/3/villagegirl.png b/client/img/3/villagegirl.png index 849a93709..1029a1978 100644 Binary files a/client/img/3/villagegirl.png and b/client/img/3/villagegirl.png differ diff --git a/client/img/3/villager.png b/client/img/3/villager.png index 656289ce6..386b0d8f7 100644 Binary files a/client/img/3/villager.png and b/client/img/3/villager.png differ diff --git a/client/img/3/wizard.png b/client/img/3/wizard.png index 18cf1a5c6..0fe36345b 100644 Binary files a/client/img/3/wizard.png and b/client/img/3/wizard.png differ diff --git a/client/img/3/wood.png b/client/img/3/wood.png index 2e8621b19..46ba257dc 100644 Binary files a/client/img/3/wood.png and b/client/img/3/wood.png differ diff --git a/client/img/3/wood3.png b/client/img/3/wood3.png index e08cb9da3..efe978b66 100644 Binary files a/client/img/3/wood3.png and b/client/img/3/wood3.png differ diff --git a/client/img/common/loading-error.png b/client/img/common/loading-error.png index dbf9c712f..4322d8640 100644 Binary files a/client/img/common/loading-error.png and b/client/img/common/loading-error.png differ diff --git a/client/img/common/loading.png b/client/img/common/loading.png index 3500d8cfc..3d390c0d3 100644 Binary files a/client/img/common/loading.png and b/client/img/common/loading.png differ diff --git a/client/img/common/promo-title.jpg b/client/img/common/promo-title.jpg index 502649489..49012e35f 100644 Binary files a/client/img/common/promo-title.jpg and b/client/img/common/promo-title.jpg differ diff --git a/client/img/common/screenshot.jpg b/client/img/common/screenshot.jpg index dd4873c7c..44cc7b51b 100644 Binary files a/client/img/common/screenshot.jpg and b/client/img/common/screenshot.jpg differ diff --git a/client/img/common/spinner.gif b/client/img/common/spinner.gif index 332616cd6..da549de93 100644 Binary files a/client/img/common/spinner.gif and b/client/img/common/spinner.gif differ diff --git a/client/img/common/thingy.png b/client/img/common/thingy.png index 4356b0278..78228845f 100644 Binary files a/client/img/common/thingy.png and b/client/img/common/thingy.png differ diff --git a/client/js/game.js b/client/js/game.js index 9a15a9d56..c800ef2f1 100644 --- a/client/js/game.js +++ b/client/js/game.js @@ -1776,7 +1776,7 @@ function(InfoManager, BubbleManager, Renderer, Map, Animation, Sprite, AnimatedT _.each(items, function(i) { if(Types.isExpendableItem(i.kind)) { item = i; - }; + } }); // Else, get the first item of the stack diff --git a/client/js/lib/astar.js b/client/js/lib/astar.js index 0603e6a59..0645b1493 100644 --- a/client/js/lib/astar.js +++ b/client/js/lib/astar.js @@ -117,7 +117,7 @@ define(function() { max = f; min = i; } - }; + } current = open.splice(min, 1)[0]; if (current.v != end.v) { --length; diff --git a/client/js/lib/css3-mediaqueries.js b/client/js/lib/css3-mediaqueries.js index 1ea806dd7..f57976a50 100644 --- a/client/js/lib/css3-mediaqueries.js +++ b/client/js/lib/css3-mediaqueries.js @@ -1,7 +1,7 @@ if(typeof Object.create!=="function"){ Object.create=function(o){ function F(){ -}; +} F.prototype=o; return new F(); }; diff --git a/client/js/lib/modernizr.js b/client/js/lib/modernizr.js index f09010e82..666318b8c 100644 --- a/client/js/lib/modernizr.js +++ b/client/js/lib/modernizr.js @@ -1,4 +1,4 @@ /* Modernizr 2.5.3 (Custom Build) | MIT & BSD * Build: http://www.modernizr.com/download/#-opacity-audio-localstorage-prefixes */ -;window.Modernizr=function(a,b,c){function u(a){i.cssText=a}function v(a,b){return u(l.join(a+";")+(b||""))}function w(a,b){return typeof a===b}function x(a,b){return!!~(""+a).indexOf(b)}function y(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:w(f,"function")?f.bind(d||b):f}return!1}var d="2.5.3",e={},f=b.documentElement,g="modernizr",h=b.createElement(g),i=h.style,j,k={}.toString,l=" -webkit- -moz- -o- -ms- ".split(" "),m={},n={},o={},p=[],q=p.slice,r,s={}.hasOwnProperty,t;!w(s,"undefined")&&!w(s.call,"undefined")?t=function(a,b){return s.call(a,b)}:t=function(a,b){return b in a&&w(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=q.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(q.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(q.call(arguments)))};return e}),m.opacity=function(){return v("opacity:.55"),/^0.55$/.test(i.opacity)},m.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},m.localstorage=function(){try{return localStorage.setItem(g,g),localStorage.removeItem(g),!0}catch(a){return!1}};for(var z in m)t(m,z)&&(r=z.toLowerCase(),e[r]=m[z](),p.push((e[r]?"":"no-")+r));return u(""),h=j=null,e._version=d,e._prefixes=l,e}(this,this.document); \ No newline at end of file +window.Modernizr=function(a,b,c){function u(a){i.cssText=a}function v(a,b){return u(l.join(a+";")+(b||""))}function w(a,b){return typeof a===b}function x(a,b){return!!~(""+a).indexOf(b)}function y(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:w(f,"function")?f.bind(d||b):f}return!1}var d="2.5.3",e={},f=b.documentElement,g="modernizr",h=b.createElement(g),i=h.style,j,k={}.toString,l=" -webkit- -moz- -o- -ms- ".split(" "),m={},n={},o={},p=[],q=p.slice,r,s={}.hasOwnProperty,t;!w(s,"undefined")&&!w(s.call,"undefined")?t=function(a,b){return s.call(a,b)}:t=function(a,b){return b in a&&w(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=q.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(q.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(q.call(arguments)))};return e}),m.opacity=function(){return v("opacity:.55"),/^0.55$/.test(i.opacity)},m.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},m.localstorage=function(){try{return localStorage.setItem(g,g),localStorage.removeItem(g),!0}catch(a){return!1}};for(var z in m)t(m,z)&&(r=z.toLowerCase(),e[r]=m[z](),p.push((e[r]?"":"no-")+r));return u(""),h=j=null,e._version=d,e._prefixes=l,e}(this,this.document); \ No newline at end of file diff --git a/client/js/main.js b/client/js/main.js index 6e9f11f14..2e02705ba 100644 --- a/client/js/main.js +++ b/client/js/main.js @@ -93,7 +93,7 @@ define(['jquery', 'app'], function($, App) { } else { $(this).text('Privacy'); } - }; + } }); $('#create-new span').click(function() { diff --git a/server/js/main.js b/server/js/main.js index 69f244a76..0d32f2857 100644 --- a/server/js/main.js +++ b/server/js/main.js @@ -32,7 +32,7 @@ function main(config) { log = new Log(Log.DEBUG); break; case "info": log = new Log(Log.INFO); break; - }; + } log.info("Starting BrowserQuest game server..."); diff --git a/tools/maps/tmx/mobset.png b/tools/maps/tmx/mobset.png index 0ebd3d07e..04d31b6ec 100644 Binary files a/tools/maps/tmx/mobset.png and b/tools/maps/tmx/mobset.png differ