Widget:A2Event



$.fn.reverse = [].reverse;

function wait4a2 (f){ if (window.a2 && window.a2.parser) { f; } else { if (window.importJS) { importJS("MediaWiki:Skin/Projekt:Adventure2/lib.js"); importJS("MediaWiki:Skin/Projekt:Adventure2/parser.js"); } 		window.setTimeout(function { wait4a2(f); }, 100); } } $(function { 	 wait4a2(function  { var text = ""; var error = ""; var list = [];

try { list = window.a2.parser.parse(text); } catch (e) { error = e; 		}

if ("" != "render"){ $pre = $(""); var lines = text.split("\n"); for (var i=0; i<lines.length; i++) { var prefix = String(i+1); while (prefix.length < 3) prefix = " "+prefix;

var lineText = document.createTextNode(prefix + "│ " + lines[i]+"\n"); if (error.line && i+1 == error.line){ var $node1 = $(' ').append(lineText); $pre.append($node1);

var c = "  │"; while (c.length < error.column+4) c += " "; $node2 = $(' '); $node2.append(document.createTextNode(c+"↑ ")); $node2.append(document.createTextNode(error.message + "\n")); $pre.append($node2); } else { $pre.append(lineText); }		 			}

var linkedtext = $pre.html.replace(/goto\(([0-9]+)\)/g, "goto($1)"); $pre.html(linkedtext);

if ($("#wikiPreview").length) $cont = $("#wikiPreview"); else $cont = $("#bodyContent");

$cont.append($pre);

$("area").reverse.each(function{				var box = a2.ui.getAreaBox(this);

var par = $(".a2page img").parent.last; par.css("position","relative"); par.css("width","550px"); par.css("height","300px");

var div = $(' '); var span = $(' '); span.text(this.hash.substr(1)); div.css("left",box.x1+"px"); div.css("top",box.y1+"px"); div.css("width",(box.x2-box.x1-2)+"px"); div.css("height",(box.y2-box.y1-2)+"px"); div.append(span); par.append(div); });

$(".overlay:visible").each(function{				$(this).addClass("a2overlayInfoVisible");			});

$(".overlay").each(function{				$(this).addClass("a2overlayInfo").show;			});

$("#catlinks").remove.appendTo("#bodyContent"); return; }

// ab jetzt nur noch im Spiel und nicht mehr in der Seitenansicht

if (error) { if (a2 && a2.debugError) a2.debugError("Syntaxfehler in ."); return; }

for (var i=0; i<list.length; i++) { var type = list[i][0]; var data = list[i][1];

if (type == "event"){ data.scope = ""; a2.registerEventHandler(data); } else { a2.virtuals[""] = data.virt; } 		}

}); });