Mercurial > qqw
changeset 68:2f7206c57b31
Use cookies to preserve inventory between maps
| author | Radomir Dopieralski <sheep-devel@sheep.art.pl> |
|---|---|
| date | Sun, 17 Feb 2013 20:12:56 +0100 |
| parents | e237a8198518 |
| children | e24626b4448a |
| files | dw.js |
| diffstat | 1 files changed, 16 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/dw.js Sun Feb 17 19:58:09 2013 +0100 +++ b/dw.js Sun Feb 17 20:12:56 2013 +0100 @@ -229,7 +229,7 @@ self.facing = 2; self.steps = 0; - self.items = []; + self.items = module.load_cookie('items').split(','); DX = [ 0, 1, 0, -1 ]; DY = [-1, 0, 1, 0 ]; @@ -305,6 +305,8 @@ if (!self.has_item(item)) { self.items.push(item); }; + var items = self.items.join(','); + module.save_cookie('items', items); }; self.set_pos = function () { @@ -415,6 +417,19 @@ }; }; + module.load_cookie = function (name) { + name = escape(name); + name = name.replace(/[\-\.\+\*]/g, "\\$&"); + var re = "(?:^|.*;\\s*)" + name + "\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*"; + return unescape(document.cookie.replace(new RegExp(re), "$1")); + }; + + module.save_cookie = function (name, value) { + name = escape(name); + value = escape(value); + document.cookie = name + "=" + value; + }; + module.loop = function () { // The main game loop.
