let's not keep generated javascript around OK
also jquery claims to be different let's shut it up
This commit is contained in:
parent
8be8459d9f
commit
8b97eb46bc
144
iffy.js
144
iffy.js
|
@ -1,144 +0,0 @@
|
||||||
(function() {
|
|
||||||
var ActorPlayer, Gst, Nev, Story, Wst;
|
|
||||||
/*
|
|
||||||
Iffy - parserless interactive fiction for the web
|
|
||||||
(c)2010 Jeremy Penner
|
|
||||||
*/
|
|
||||||
Wst = function(obj, _arg) {
|
|
||||||
this.gst = _arg;
|
|
||||||
this.prototype = obj;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
Wst.prototype.WstNext = function(nev) {
|
|
||||||
var wstNext;
|
|
||||||
wstNext = new Object();
|
|
||||||
wstNext.prototype = this;
|
|
||||||
wstNext.nev = nev;
|
|
||||||
return wstNext;
|
|
||||||
};
|
|
||||||
Wst.prototype.WstPrev = function() {
|
|
||||||
var _ref;
|
|
||||||
return (typeof (_ref = this.prototype.nev) !== "undefined" && _ref !== null) ? this.prototype : null;
|
|
||||||
};
|
|
||||||
Gst = function(_arg, _arg2) {
|
|
||||||
this.jDiv = _arg2;
|
|
||||||
this.story = _arg;
|
|
||||||
this.wstInit = this.story.WstInit(this);
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
Gst.prototype.Display = function() {
|
|
||||||
var _i, _len, _ref, _result, nev;
|
|
||||||
this.jDiv.append("<div class='title'>\
|
|
||||||
<h1>" + (this.story.jStory.attr('title')) + "</h1>\
|
|
||||||
<h2>" + (this.story.jStory.attr('author')) + "</h2>\
|
|
||||||
</div>");
|
|
||||||
_result = []; _ref = this.RgnevRun();
|
|
||||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
|
||||||
nev = _ref[_i];
|
|
||||||
_result.push((function() {
|
|
||||||
this.jDiv.append($("<div class='nev'/>").append(nev.StHtmlDisplay(this)));
|
|
||||||
return this.jDiv.append($("<div class='nev'/>").append(nev.StHtmlDisplay(this)));
|
|
||||||
}).call(this));
|
|
||||||
}
|
|
||||||
return _result;
|
|
||||||
};
|
|
||||||
Gst.prototype.RgnevRun = function() {
|
|
||||||
var _i, _len, _ref, inev, nevResponse, rgnev, wst;
|
|
||||||
rgnev = [this.story.NevByName("start")];
|
|
||||||
wst = this.wstInit;
|
|
||||||
inev = 0;
|
|
||||||
while (inev < rgnev.length) {
|
|
||||||
_ref = this.story.RgnevResponse(rgnev[inev], wst);
|
|
||||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
|
||||||
nevResponse = _ref[_i];
|
|
||||||
if (nev.FCanRun(this, wst)) {
|
|
||||||
wst = wst.WstNext(nevResponse);
|
|
||||||
nevReponse.RunAction(gst, wst);
|
|
||||||
rgnev.push(nevResponse);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
inev++;
|
|
||||||
}
|
|
||||||
return rgnev;
|
|
||||||
};
|
|
||||||
Gst.prototype.FilterStHtml = function(stHtml) {
|
|
||||||
var _i, _len, _ref, _result, actor;
|
|
||||||
_result = []; _ref = this.story.rgactor;
|
|
||||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
|
||||||
actor = _ref[_i];
|
|
||||||
_result.push(stHtml = actor.FilterStHtml(stHtml));
|
|
||||||
}
|
|
||||||
return _result;
|
|
||||||
};
|
|
||||||
Nev = function(_arg) {
|
|
||||||
this.jnev = _arg;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
Nev.prototype.ID = function() {
|
|
||||||
return this.jnev;
|
|
||||||
};
|
|
||||||
Nev.prototype.FCanRun = function() {
|
|
||||||
return true;
|
|
||||||
};
|
|
||||||
Nev.prototype.RunAction = function(gst, wst) {};
|
|
||||||
Nev.prototype.StHtmlDisplay = function(gst) {
|
|
||||||
var _i, _len, _ref, dHTML, jdivTmp, stHtml;
|
|
||||||
jdivTmp = $("<div/>");
|
|
||||||
_ref = $(this.jnev).children();
|
|
||||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
|
||||||
dHTML = _ref[_i];
|
|
||||||
jdivTmp.append(document.importNode(dHTML, true));
|
|
||||||
}
|
|
||||||
stHtml = jdivTmp[0].innerHTML;
|
|
||||||
gst.FilterStHtml(stHtml);
|
|
||||||
return stHtml;
|
|
||||||
};
|
|
||||||
ActorPlayer = function(_arg) {
|
|
||||||
this.story = _arg;
|
|
||||||
this.mpnevID_rgaction = {};
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
ActorPlayer.prototype.RgnevResponse = function(nev, wst) {
|
|
||||||
var rgaction;
|
|
||||||
rgaction = this.mpnevID_rgaction[nev.ID()];
|
|
||||||
return [];
|
|
||||||
};
|
|
||||||
ActorPlayer.prototype.FilterStHtml = function(stHtml) {
|
|
||||||
return stHtml;
|
|
||||||
};
|
|
||||||
Story = function(_arg) {
|
|
||||||
this.jStory = _arg;
|
|
||||||
this.rgactor = [new ActorPlayer(this)];
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
Story.prototype.NevByName = function(stName) {
|
|
||||||
var jNev;
|
|
||||||
jNev = this.jStory.find("[name=" + (stName) + "]");
|
|
||||||
return jNev.length > 0 ? new Nev(jNev[0]) : null;
|
|
||||||
};
|
|
||||||
Story.prototype.RgnevResponse = function(nev, wst) {
|
|
||||||
var _i, _j, _len, _len2, _ref, _ref2, actor, rgnev;
|
|
||||||
rgnev = [];
|
|
||||||
_ref = this.rgactor;
|
|
||||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
|
||||||
actor = _ref[_i];
|
|
||||||
_ref2 = actor.RgnevResponse(nev, wst);
|
|
||||||
for (_j = 0, _len2 = _ref2.length; _j < _len2; _j++) {
|
|
||||||
nev = _ref2[_j];
|
|
||||||
rgnev.push(nev);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return rgnev;
|
|
||||||
};
|
|
||||||
Story.prototype.WstInit = function(gst) {
|
|
||||||
return new Wst({}, gst);
|
|
||||||
};
|
|
||||||
window.PlayStory = function(url, jDiv) {
|
|
||||||
return $.get(url, function(domXml) {
|
|
||||||
var gst, story;
|
|
||||||
story = new Story($("story", domXml));
|
|
||||||
gst = new Gst(story, jDiv);
|
|
||||||
return gst.Display();
|
|
||||||
}, "xml");
|
|
||||||
};
|
|
||||||
}).call(this);
|
|
Loading…
Reference in a new issue