SZS-Assistent

Assistent für das SteinZeitSpiel

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name					SZS-Assistent
// @namespace			Steinzeitspiel
// @description		Assistent für das SteinZeitSpiel
// @author				KingMaxi [InGame-Nick]
// @version				0.9.11
// @include				http://szs.looki.de/*
// @exclude				http://szs.looki.de/impressum.php
// @exclude				http://szs.looki.de/logout.php
// @exclude				http://szs.looki.de/szsb.html*
// @exclude				http://szs.looki.de/szss.html*
// @exclude				http://szs.looki.de/premium_looki.php?m=*
// @grant					GM_getValue
// @grant					GM_setValue
// @grant					GM_deleteValue
// @grant					GM_listValues
// @grant					GM_xmlhttpRequest
// @grant					GM_log
// @grant					GM_info
// ==/UserScript==

/*
changelog
v0.1			initial release [06.11.2012]
v0.2			several bugs fixed; new: SN-Wiederherstellung, wenn noch nicht abgeschickt [09.11.2012]
v0.3			few bugs fixed; new: Thread-, Post- und IGM-Wiederherstellung, wenn noch nicht abgeschickt; new: Kills in der MK-Auswertung werden nun sortiert [14.11.2012]
v0.4			bugs fixed; new: Skillsystem, erweiterte eigene Länderansicht [10.12.2012]
v0.5			bugs fixed; new/change: Frei definierbarer Name für eigene Länder, Änderung des Update-Timestamp in Länderübersicht, EP in SK-Auswertung, Skillsystem-Config versteht nun neben Dezimalunkt auch Dezimalkomma, Config-Dialog überarbeitet, Seitenzahlen im StammForum, SK-MK-Copy überarbeitet [10.01.2013]
v0.6			kleine Verbesserungen; new: Standardtätigkeit hinzugefügt; change: SK-MK-Copy zeigt Waffenstand erst 5h vor Kampf an [13.01.2013]
v0.6.1		fixed/change: SK-Copy bricht Script ab, wenn kein Kampf -> SK-MK-Copy mit Waffenstand-Checkbox [14.01.2013]
v0.6.2		kleine Verbesserungen; fixed: Thread nach erstem Lesen in Übersicht nicht vollständig als gelesen markiert, wenn Posts am Ende gelöscht wurden; fixed: falsches/überflüssiges Werkzeug-Alert, wenn man mehr als ein Werkzeug einer Klasse besitzt; fixed: Google Chrome-Bugs (u.a. SaveConfig, CSS) [16.01.2013]
v0.6.3		kleine Verbesserungen; fixed: InventarIMGHeight wird (manchmal) nicht umgesetzt, wenn Seite neu geladen (Chrome), fixed: Skillsystem läuft nicht, wenn ein SOLL-Wert == 0 [16.01.2013]
v0.7			kleine Verbesserungen; Codeoptimierung; new: Einfaches Auszahlen von Einlagerungen aus dem Lagerlog heraus; new: Übertragen-Seite kennt URL-Parameter für Ressis und Tränke; new: Versionsnummer und Autor im Einstellungsdialog; fixed: Lager-Seite bricht ab, wenn unterwegs und Premium; new: Ausrüstung, Opfer, Artefakte wahlweise zentriert oder im rechten Menu [26.01.2013]
v0.7.1		new: Links in IGM, SN und Forum werden verlinkt; fixed: SK-Zeit im Menu ohne Anmeldeerkennung (Premium) [28.01.2013]
v0.7.2		new: Reminder-Sound; new: Artefakt herstellen/weihen im Aktionen-Menu und als Standardtätigkeit hinzugefügt; new: Logbuch-Filter (nur/keine Nachrichten); fixed: kein Fokus auf Zufallscode, wenn kein aktives Arbeitsopfer oder gültiges Artefakt des Drachenbluts; fixed: Talkampf-Anmeldezeit wird falsch gespeichert; fixed: SK-Zeit im Menu ohne "kein Kampf"-Erkennung (Premium); fixed: Kupfer- und Bronzekessel werden als Ausrüstung nicht erkannt; fixed/change: einige Änderungen der Hinweise beim Starten eines Arbeitsgangs [05.02.2013]
v0.7.3		new: Freunde werden alphabetisch sortiert; change: Logbuch-Filter anders angeordnet; fixed: Zeitangaben werden manchmal falsch ausgelesen; fixed: Ist man unterwegs, werden Marktangebote nicht hervorgehoben (Premium); fixed: Artefakte herstellen/weihen wird nicht als Tätigkeit/Arbeit erkannt; fixed: Teilweise veraltete/falsche Tätigkeitsangabe im Tätigkeitscountdown; fixed: Activity-Reminder erinnert nicht, wenn man nach Tätigkeitsbeginn Seite nicht neu lädt; fixed: TK-Anmeldeanzeige zeigt manchmal falschen Status [14.02.2013]
v0.7.4		change: Freunde-Sortierung optional/einstellbar [15.02.2013]
v0.8			kleine Verbesserungen und Fixes; new: Onlinestatusfarbe von Freunden aktualisiert sich automatisch; new: one-click-Rohstoffesicherung auf Stammkampf-Seite (Markt/Lager: voreingetragene Werte entfernt); new: einstellbare Anzeige für Uhrzeit und SK-Zeit im Menu; new: Stamm-EP in StammTop; change: Stammkampfzeitbestimmung überarbeitet; change: SK-Auswertung überarbeitet (u. a. keine fehlenden Daten mehr, Bugfix); change: Auslesen von Ausrüstung und Artefakten verbessert [26.02.2013]
v0.8.1		ein paar Kleinigkeiten; change: one-click-Rohstoffsicherung aus- und alte Rohstoffsicherung wieder eingebaut (wg. Verstoß gegen Punkt 3 der Regeln) [02.03.2013]
v0.8.2		new: Message-Reminder und -sound; new: Sound "Glocke" hinzugefügt; new: Sound-Lautstärke einstellbar; fixed/change: Reminder-Hinweise kommen nur noch in einem Tab; change: Länderansicht überarbeitet (immer aktuelle Daten, keine frei definierbaren Namen mehr) [13.03.2013]
v0.8.3		new: SK-Gegner zur SK-Zeit im Menu hinzugefügt; fixed: Zeitangaben werden manchmal falsch ausgelesen; fixed: "MK läuft" wird bis 1h nach MK angezeigt [20.03.2013]
v0.8.4		fixed: 2 kleine Fehler, wenn man stammlos ist; fixed: SK-Bestimmung fehlerhaft, wenn Sonderzeichen in Gegnername; change: IGM-Wiederherstellung überarbeitet; change: Kommas aus SK-Auswertung entfernt um Kompatibilität mit anderen Programmen zu gewährleisten [25.03.2013]
v0.8.5		change: Tätigkeits-Countdown zeigt Zeiten >1h auch in min an; fixed: fehlerhafte ist-derzeit-unterwegs-Erkennung in MK-Startnachricht; fixed: einige Fehler im Bereich Text-/Nickerkennung; fixed: Problem mit Sonderzeichen bei IGM-Wiederherstellung; new: Script-eigener Versions-Check (+ Hinweis im linken Menu einstellbar) [09.04.2013]
v0.8.6		fixed: Fehler in SK-Auswertung, falsche Angreifer-/Verteidigeranzahl [21.04.2013]
v0.8.7		new: Direktlinks in Hinweise eingefügt (Arbeitsopfer, Waffenopfer); new: PN-Icons in Freundesliste; change: PN-Icons in SN verkleinert; new: gelb in den SN schreiben (sieht natürlich nur, wer auch das Script hat!); new: Stammname in SK-Auswertung; new: Logbuch-Filter zeigt neue Einträge ("NEU") immer an; fixed: KöhlerDingens wird in Länderansicht nicht erkannt; fixed: TK- + MK-Zeiten in Beschreibungstexten falsch [07.05.2013]
v0.8.8		new: Auswahlmöglichkeiten für Lagerauszahlungen (nur eigene, + andere, alle) [19.05.2013]
v0.8.9		fixed: Direktlinks werden beim zusammenfassen des Inventars angezeigt; new: SK-Auswertung opt-out (Performance); fixed: unvollständige SK-Auswertung, wenn SN-Seite zu früh verlassen wird; new: Waffen- und Werkzeugwarnung (opt-out); new: Landüberwachung; fixed: Menueintrag Lagerfeuer, wenn noch kein Lagerfeuer gebaut; new: CP für SOLL-Skillung; Codeoptimierung [11.06.2013]
v0.8.10		new: "Zufallscode nicht richtig" stärker hervorgehoben; new: PN-Icons im StammForum; new: Menupunkt farbig, wenn neuer GB-Eintrag; fixed: Bugs mit Quellcode-komprimierenden Internetanbietern; fixed: Fehler beim Auslösen von Hotkeys im neusten Firefox 22; fixed: HTML-Sonderzeichen in PN-Widerherstellungsvorschau [26.06.2013]
v0.8.11		new: Links zur Kartenansicht für Marktländer hinzugefügt; new: Durchschnittswerte in Stammübersicht; new: Status-Spalte in 2. Tabelle in Stammübersicht entfernt und Status mit Spalte 1 verknüpft; new: MK-Startnachricht speichert MK-Teilnehmer; fixed: Doppelte Klammern in SK-Auswertung beim Stammname; new/change: neue/erweiterte MK-Auswertung; new: Links im Logbuch (TK-Gegner, Nachricht an, Übertragungen) [22.08.2013]
v0.8.12		change: Links im Logbuch überarbeitet; fixed: Magierkill falsch/gar nicht gewertet; new: Magierkill in MK-Auswertung in orange hervorgehoben; new: Links im Logbuch für Marktein-/-verkäufe; zusätzliche Seitenaufrufe reduziert; new: Auofokus auf Eingabefeld beim Kaufen vom Markt [26.09.2013]
v0.8.13		fixed: Logbuch-Links, wenn Angebot nicht verkauft werden konnte; change: SK-Auswertung per Button, Option in Einstellungen entfernt [24.10.2013]
v0.8.14		fixed: TK-Anmeldung wird gespeichert, obwohl zu wenig Ressis; fixed: SK-Auswertung funktioniert nicht [24.10.2013]
v0.8.15		fixed: Logbuch-Links, wenn Angebot nicht verkauft werden konnte (jetzt aber :D); fixed: Logbuch-TK-Links zur Winterzeit nicht vorhanden; fixed: Sonderzeichen in Vorschau für gespeicherte PN; new: Wenn Zufallscode falsch eingegeben wurde, Weiter-/Zurückleitung zur Arbeitsseite; new: maximal mögliche Kaufmenge auf Marktkaufseite; new: Wenn Müdigkeit >= 80%, verlinkt zu st. Wachtrank; fixed: MK-Teilnehmerstand-Zeit manchmal falsch [22.01.2014]
v0.9			change: update- und downloadURL von http auf https geändert; fixed: Logbuchlinks (Sonderzeichennicks); fixed: Handling von URL-Parametern (Sonderzeichen); fixed: SK-Auswertung (Nick kann nicht gefunden weden); fixed: Abbrechen-Link flackert/wird ständig neu gesetzt; new: Inventar überarbeitet; new: Waffen-/Ringtausch; fixed: Konflikt zw. Übertragung und Jagdergebnis (Logbuch); fixed/new: Forum jetzt auch ohne Forenrechte nutzbar (beim Verlust der Forenrechte werden alte Beiträge ggf. als ungelesen markiert!); new: Weiterleitung zurück zur ursprünglichen Seite nach Direktlink; change: Rohstoffsicherung via Stammkampfseite (nicht mehr via Lager + Markt); new: Standardmengen- und preise für alle Rohstoffe; sowie ein paar Kleinigkeiten [16.04.2014]
v0.9.1		change: Waffen ab- statt aufsteigend im Inventar; change: Wachtränke vor Heiltränken im Inventar; fixed: Werkzeuge werden nicht angezeigt [17.04.2014]
v0.9.2		fixed: Anzahl Ringe/Waffen/Werkezuge, wenn gleicher Gegenstand in der Hand; fixed: Trankverkauf -> Geistertränke auf dem Markt -> Trankverlust (kritisch!) [18.04.2014]
v0.9.3		Script wird jetzt auf greasyfork.org gehostet; fixed: Verletzung wird nicht als aktuelle Aktion ausgegeben; Codeoptimierung (Performance); new: Nomadenzeit als Tooltip der Serverzeit im Header; new: leere (= max) und negative (= max-1, usw.) Standardverkaufsmengen für den Markt; new: Ressis-Icons in Einstellungen; remove: @updateURL und @downloadURL; remove: Update-Check im Menu; remove: Onlinestatusfarbe von Freunden aktualisiert sich automatisch (überflüssige Seitenaufrufe); fixed: Script hängt sich bei einigen Userprofilen auf; new: "Dein Alter" im rechten Menu (einstellbar); new: Anzahl Länder auf Landseite; fixed: Scriptupdateprobleme/Audiowiedergabe (u. a. Chrome) [28.07.2014]
v0.9.4		fixed: Auslesen des Zeitstempels in SN, wenn Nachricht NEU; new: Marktnavigation auf jeder Marktseite; new Marktseite mit allen Rohstoffen (siehe Marktnavigation); new: dynamische Marktpreishervorhebung (alternativ zu bisheriger -> Einstellungen); new: "Karte zentrieren"-Link auf Landinfoseite; new: Hinweis/Info bei Durchschnitts-EP in Userinfo eingefügt [04.09.2014]
v0.9.5		new: "alte"-Link hinter Logbuch im Menu eingefügt; fixed: Vergiftung wird nicht als aktuelle Tätigkeit erkannt/angezeigt; changed: Vote #2-Link entfernt, Seite existiert nicht mehr; fixed: Landausbau wird nicht als aktuelle Tätigkeit erkannt/angezeigt; fixed: Verlinkungen werden bei runden Klammern abgebrochen; new: Standardverkaufsmengen und -preise für Tränke; fixed: EP-Berechnung der Stammkampfauswertung fehlerhaft, sowie Handhabung von Nicks mit Leerzeichen verbessert; new: Fußzeile (== Kopfzeile)  in Tabellen in StammÜbersicht eingefügt, wenn >20 Mitglieder; new: farbige Landausbaustufen (0 (rot), 1 bis max-1 (gelb), max (grün)); new: Übertragen-Seite kennt nun auch URL-Parameter "an" (== "anrohstoffe") und "geld" (== "gold"); Codeoptimierung [07.11.2014]
v0.9.6		change: Weiter-/Zurückleitung zur Arbeitsseite, wenn Zufallscode falsch eingegeben wurde, entfernt (wg. Verstoß gegen Punkt 3 der Regeln); fixed: nach Magier-Kill in MK-Auswertung wird "orange" nicht aufgehoben; fixed: SK-Teilnahme arbeitet nicht korrekt, zeigt dauerhaft "angemeldet" an; new: neuer Logbuchfilter [27.11.2014]
v0.9.7		fixed: aktuelle Tätigkeit zeigt Verletzung an, obwohl nicht mehr verletzt; fixed: Lagerentnahmen, Weihnachtsmann/Rentier und co werden nicht zugeordnet (Logbuchfilter); fixed: Nickauswahl (PN/Handel) im Logbuchfilter nicht sortiert; new: "Alle (ab-) wählen"-Button im Logbuchfilter; new: Thread-Status-Dot im StammForum linkt auf "Antworten"; ein paar Grafiken und kleine Verbesserungen [16.12.2014]
v0.9.8		change: Wachtränke wieder hinter Heiltränke im Inventar; new: Trankreihenfolge einstellbar (-> Allgemein); fixed: "Du verpasst SK/MK"-Meldung kommt manchmal falsch; fixed: Einzelkampf, zum Talkampf nicht verfügbar, SK-Start, wenn nicht im Stamm, werden nicht zugeordnet (Logbuchfilter); new: Anzahl der Einträge hinter jeder Auswahl (Logbuchfilter); change: Einstellungen "Markt" umgebaut; new: Ringwarnung (opt-out); fixed: Fehler, wenn nicht genügend Gold für MK-Anmeldung; new: Spieler auf dem Land in Länderübersicht; Codeoptimierung [14.01.2015]
v0.9.9		fixed: "wilde Tiere" ohne Zuordnung (Logbuchfilter); fixed: Anzahl Kämpfe NaN (Logbuchfilter); fixed: Standardverkaufspreis Stein verursacht Probleme (-> SteinE) [13.02.2015]
v0.9.10		fixed: "vom Stammkampf ausgeschlossen" ohne Zuordnung (Logbuchfilter); fixed: Charakterpunkte formatiert (Tausendertrennzeichen); new: Nahrung in Stammübersicht fett/rot, wenn weniger als 50; new: Artefakt der Gesundheit wird ebenfalls ausgelesen; fixed: Anzahl Angreifer/Verteidiger zu hoch, wenn Nick Leerzeichen enthält (SK-Auswertung); new: SK-Auswertung mit EP für jeden Teilnehmer (opt-out); Codeoptimierung [03.03.2015]
v0.9.11		change: Länderansicht überarbeitet (Sortierung nach Entfernung, Design); new: x/y-Überschrift auf Landinfo-Seite; change: Config-Überschriften (auch: "Logbuch-Filter") klickbar, nicht nur Pfeil; fixed: Ausrüstung zeigt Zahlen an [31.03.2015]
------------------------------
Do not change anything further
------------------------------
*/

// Login-Focus
if(document.URL.indexOf('/login.php') != -1 && document.getElementsByName('code')[0]) {
	document.getElementsByName('code')[0].focus();
} else if(document.getElementsByTagName('a')[0].href.indexOf('login.php') != -1) {
// Weiterleitung zum Login
	window.setTimeout("window.location.href = 'http://szs.looki.de/login.php';", 50);

} else if(document.URL.indexOf('/charakter.php') != -1 && document.getElementsByTagName('body')[0].innerHTML.indexOf('top.location.href=\'charakter.php\'') != -1) {
// Charakterpunkte verteilt (Dein SteinzeitMensch hat sich verbessert.)
	window.location.href = 'http://szs.looki.de/charakter.php';

} else if(document.URL.indexOf('/login.php') == -1) {
	var scriptstarttime = new Date();



// Standardelemente/Variablen
	var i, j, k, l;
	var wrap = document.getElementsByTagName('table')[0];
	wrap.setAttribute('id', 'wrap');
	var main = document.getElementsByTagName('table')[1];
	main.setAttribute('id', 'main');
	i=0;
	while(document.getElementById('main').getElementsByTagName('td')[i].innerHTML.indexOf('<!-- INHALT ANFANG -->') == -1) {
		i++;
	}
	var content = document.getElementById('main').getElementsByTagName('td')[i];
	content.setAttribute('id', 'content');
	var aktuelleAktion = document.getElementById('content').getElementsByTagName('td')[0];
	aktuelleAktion.setAttribute('id', 'aktuelleAktion');
	aktuelleAktion.removeAttribute('align');
	i=0;
	while(document.getElementById('main').getElementsByTagName('td')[i].innerHTML.indexOf('<!-- linkes menu ANFANG -->') == -1) {
		i++;
	}
	var menuLeft = main.getElementsByTagName('td')[i];
	i=0;
	while(document.getElementById('main').getElementsByTagName('td')[i].innerHTML.indexOf('<!-- rechtes menu ANFANG -->') == -1) {
		i++;
	}
	var menuRight = main.getElementsByTagName('td')[i];
	var isPremiumSpieler = (document.getElementsByTagName('body')[0].getAttribute('onscroll') == null)? true : false;
	i = (isPremiumSpieler)? 1 : 0;
	var ep_gesamt = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[1].textContent.replace(/\./g, ''), 10);
	var ressis_gesamt = new Array();
		ressis_gesamt['Nahrung'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[3].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Wasser'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[5].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Gold'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[7].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Holz'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[9].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Steine'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[11].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Kohle'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[13].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Kupfer'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[15].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Zinn'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[17].textContent.replace(/\./g, ''), 10);
		ressis_gesamt['Bronze'] = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[19].textContent.replace(/\./g, ''), 10);
	menuRight.textContent.search(/Dein Alter:\s*(\d+) Jahre\s*(\d+) Monate/);
	var alter = new Array(RegExp.$1, RegExp.$2);
	var waffen = 'Stock#Stock mit Bronze#Keule#Speer mit Holzspitze#Speer mit Steinspitze#Pfeil und Bogen#Pfeil und Bogen PLUS#Pfeil und Bogen Bronze#Knochenspalter#Knochenspalter PLUS#Knochenspalter Bronze#Hammerfaust#Hammerfaust Bronze#Berserkerfaust#Götterzorn';
	var werkzeuge = 'Kupfer-Keil#Kupfer-Schaber#Kupfer-Hacke#Zinn-Keil#Zinn-Schaber#Kupferkessel#Bronzekessel';
	var ringe = 'Talkampfring#Stammkampfring#Wasserring#Jagdring#Marktring';
	var traenke = 'kleiner Heiltrank#mittlerer Heiltrank#starker Heiltrank#Wachtrank#starker Wachtrank#Holztrank#Steintrank#Kupfertrank#Zinntrank';
	i=document.getElementsByTagName('center').length-1;
	while(document.getElementsByTagName('center')[i].textContent.indexOf('Jahres nach der 1. Nacht des Nomaden.') == -1) {
		i--;
	}
	var servertime = document.getElementsByTagName('center')[i].innerHTML;
	var audioA = document.createElement('audio');
	audioA.setAttribute('src', 'https://dl.dropboxusercontent.com/u/79333916/phone.mp3');
	audioA.setAttribute('id', 'audioA');
	document.body.appendChild(audioA);
	var audioB = document.createElement('audio');
	audioB.setAttribute('src', 'https://dl.dropboxusercontent.com/u/79333916/gong.mp3');
	audioB.setAttribute('id', 'audioB');
	document.body.appendChild(audioB);
	var audioC = document.createElement('audio');
	audioC.setAttribute('src', 'https://dl.dropboxusercontent.com/u/79333916/glocke.mp3');
	audioC.setAttribute('id', 'audioC');
	document.body.appendChild(audioC);
	var audioD = document.createElement('audio');
	audioD.setAttribute('src', 'https://dl.dropboxusercontent.com/u/79333916/coin.mp3');
	audioD.setAttribute('id', 'audioD');
	document.body.appendChild(audioD);
	// Gespeicherte Variablen
	var Assi_UserName = GM_getValue("Assi_UserName", "");
	var Assi_StammName = GM_getValue("Assi_StammName", "");
	var Assi_Infoanzeigen = GM_getValue("Assi_Infoanzeigen", "menu");
	var Assi_DeinAlter = GM_getValue("Assi_DeinAlter", true);
	var Assi_FreundeSortierung = GM_getValue("Assi_FreundeSortierung", false);
	var Assi_Notizen = GM_getValue("Assi_Notizen", false);
	var Assi_HotkeyTimeout = parseInt(GM_getValue("Assi_HotkeyTimeout", "500"), 10);
	var Assi_InventarIMGheight = parseInt(GM_getValue("Assi_InventarIMGheight", "50"), 10);
	var Assi_InventarTrankreihenfolge = GM_getValue('Assi_InventarTrankreihenfolge', traenke);
	var Assi_Lagerauszahlungen = GM_getValue("Assi_Lagerauszahlungen", "eigene");
	var Assi_LagerauszahlungenNicks = GM_getValue("Assi_LagerauszahlungenNicks", "");
	var Assi_MenuUhrzeit = GM_getValue("Assi_MenuUhrzeit", false);
	var Assi_MenuSKZeit = GM_getValue("Assi_MenuSKZeit", false);
	var Assi_MenuVersionTip = GM_getValue("Assi_MenuVersionTip", true);
	var Assi_SKAuswertung = GM_getValue("Assi_SKAuswertung", true);
	var Assi_ActivityReminder = GM_getValue("Assi_ActivityReminder", false);
	var Assi_Remindersound = GM_getValue("Assi_Remindersound", "");
	var Assi_ReminderSoundVolume = GM_getValue("Assi_ReminderSoundVolume", 100);
	var Assi_Standardtaetigkeit = GM_getValue("Assi_Standardtaetigkeit", "");
	var Assi_MessageReminder = GM_getValue("Assi_MessageReminder", false);
	var Assi_Messagesound = GM_getValue("Assi_Messagesound", "");
	var Assi_MessageSoundVolume = GM_getValue("Assi_MessageSoundVolume", 100);
	var Assi_WaffenWerkzeugWarnung = GM_getValue("Assi_WaffenWerkzeugWarnung", true);
	var Assi_RingWarnung = GM_getValue("Assi_RingWarnung", true);
	var Assi_Gaestebucheintrag = GM_getValue("Assi_Gaestebucheintrag", true);
	var Assi_Kraft = GM_getValue("Assi_Kraft", "");
	var Assi_Intelligenz = GM_getValue("Assi_Intelligenz", "");
	var Assi_Geschwindigkeit = GM_getValue("Assi_Geschwindigkeit", "");
	var Assi_List = GM_getValue("Assi_List", "");
	var Assi_Ausdauer = GM_getValue("Assi_Ausdauer", "");
	var Assi_Geschick = GM_getValue("Assi_Geschick", "");
	var Assi_NahrungRest = parseInt(GM_getValue("Assi_NahrungRest", "50"), 10);
	var Assi_GoldRest = parseInt(GM_getValue("Assi_GoldRest", "50"), 10);
	var Assi_HolzRest = parseInt(GM_getValue("Assi_HolzRest", "0"), 10);
	var Assi_SteinRest = parseInt(GM_getValue("Assi_SteinRest", "0"), 10);
	var Assi_NahrungRund = parseInt(GM_getValue("Assi_NahrungRund", "100"), 10);
	var Assi_GoldRund = parseInt(GM_getValue("Assi_GoldRund", "100"), 10);
	var Assi_HolzPreis = parseInt(GM_getValue("Assi_HolzPreis", "100"), 10);
	var Assi_SteinPreis = parseInt(GM_getValue("Assi_SteinPreis", "100"), 10);
	var Assi_Preishervorhebung = GM_getValue("Assi_Preishervorhebung", "dynamisch");
	var Assi_MarktPreis = new Array();
		Assi_MarktPreis['Wasser'] = GM_getValue("Assi_MarktWasserPreis", "");
		Assi_MarktPreis['Holz'] = GM_getValue("Assi_MarktHolzPreis", "");
		Assi_MarktPreis['Stein'] = GM_getValue("Assi_MarktSteinPreis", "");
		Assi_MarktPreis['Kohle'] = GM_getValue("Assi_MarktKohlePreis", "");
		Assi_MarktPreis['Kupfer'] = GM_getValue("Assi_MarktKupferPreis", "");
		Assi_MarktPreis['Zinn'] = GM_getValue("Assi_MarktZinnPreis", "");
		Assi_MarktPreis['Bronze'] = GM_getValue("Assi_MarktBronzePreis", "");
	var Assi_MarktVerkaufsmenge = new Array();
		Assi_MarktVerkaufsmenge['Wasser'] = GM_getValue("Assi_MarktWasserverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Holz'] = GM_getValue("Assi_MarktHolzverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Steine'] = GM_getValue("Assi_MarktSteinverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Kohle'] = GM_getValue("Assi_MarktKohleverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Kupfer'] = GM_getValue("Assi_MarktKupferverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Zinn'] = GM_getValue("Assi_MarktZinnverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Bronze'] = GM_getValue("Assi_MarktBronzeverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Wachtrank'] = GM_getValue("Assi_MarktWachtrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['starker Wachtrank'] = GM_getValue("Assi_MarktstarkerWachtrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['kleiner Heiltrank'] = GM_getValue("Assi_MarktkleinerHeiltrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['mittlerer Heiltrank'] = GM_getValue("Assi_MarktmittlererHeiltrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['starker Heiltrank'] = GM_getValue("Assi_MarktstarkerHeiltrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Holztrank'] = GM_getValue("Assi_MarktHolztrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Steintrank'] = GM_getValue("Assi_MarktSteintrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Kupfertrank'] = GM_getValue("Assi_MarktKupfertrankverkaufsmenge", "");
		Assi_MarktVerkaufsmenge['Zinntrank'] = GM_getValue("Assi_MarktZinntrankverkaufsmenge", "");
	var Assi_MarktVerkaufspreis = new Array();
		Assi_MarktVerkaufspreis['Wasser'] = GM_getValue("Assi_MarktWasserverkaufspreis", "");
		Assi_MarktVerkaufspreis['Holz'] = GM_getValue("Assi_MarktHolzverkaufspreis", "");
		Assi_MarktVerkaufspreis['Steine'] = GM_getValue("Assi_MarktSteinverkaufspreis", "");
		Assi_MarktVerkaufspreis['Kohle'] = GM_getValue("Assi_MarktKohleverkaufspreis", "");
		Assi_MarktVerkaufspreis['Kupfer'] = GM_getValue("Assi_MarktKupferverkaufspreis", "");
		Assi_MarktVerkaufspreis['Zinn'] = GM_getValue("Assi_MarktZinnverkaufspreis", "");
		Assi_MarktVerkaufspreis['Bronze'] = GM_getValue("Assi_MarktBronzeverkaufspreis", "");
		Assi_MarktVerkaufspreis['Wachtrank'] = GM_getValue("Assi_MarktWachtrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['starker Wachtrank'] = GM_getValue("Assi_MarktstarkerWachtrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['kleiner Heiltrank'] = GM_getValue("Assi_MarktkleinerHeiltrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['mittlerer Heiltrank'] = GM_getValue("Assi_MarktmittlererHeiltrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['starker Heiltrank'] = GM_getValue("Assi_MarktstarkerHeiltrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['Holztrank'] = GM_getValue("Assi_MarktHolztrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['Steintrank'] = GM_getValue("Assi_MarktSteintrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['Kupfertrank'] = GM_getValue("Assi_MarktKupfertrankverkaufspreis", "");
		Assi_MarktVerkaufspreis['Zinntrank'] = GM_getValue("Assi_MarktZinntrankverkaufspreis", "");
	var notice = GM_getValue("notice", "");
	var nextSK = GM_getValue("NextSK", "0");
	var tkTeilnahme = parseInt(GM_getValue("TKTeilnahme", "0"), 10);
	var skTeilnahme = parseInt(GM_getValue("SKTeilnahme", "0"), 10);
	var mkTeilnahme = parseInt(GM_getValue("MKTeilnahme", "0"), 10);
	var hand = GM_getValue("Hand", "Unbekannt");
	var finger = GM_getValue("Finger", "Unbekannt");
	var starkerWachtrankID = GM_getValue("starkerWachtrank", "0");
	var drachenblutDate = new Date(parseInt(GM_getValue("DrachenblutTime", "0"), 10));
	var glueckDate = new Date(parseInt(GM_getValue("GlueckTime", "0"), 10));
	var meisterschmiedDate = new Date(parseInt(GM_getValue("MeisterschmiedTime", "0"), 10));
	var gesundheitDate = new Date(parseInt(GM_getValue("GesundheitTime", "0"), 10));
	var landControlColor = GM_getValue("LandControlColor", "red");
	var statusToggle = new Array();
		statusToggle['logbuchFilterOptions'] = GM_getValue("StatusToggle_logbuchFilterOptions", "none");



// Hotkeys
	var hotkeys = new Array(
		['Logbuch', 'http://szs.looki.de/news.php', 'l'],
		['Alte Logbucheintrage', 'http://szs.looki.de/news.php?alte=1', ''],
		['Profil', 'http://szs.looki.de/profil.php', 'p'],
		['Charakter', 'http://szs.looki.de/charakter.php', 'c'],
		['Inventar', 'http://szs.looki.de/inventar.php', 'i'],
		['Artefakte', 'http://szs.looki.de/artefakt.php', 'a'],
		['Karte', 'http://szs.looki.de/karte.php', ''],
		['Land', 'http://szs.looki.de/deinland.php', ''],
		['Jagd', 'http://szs.looki.de/jagd.php', 'j'],
		['Wasser suchen', 'http://szs.looki.de/wasser.php', 'w'],
		['Holz fällen', 'http://szs.looki.de/holzfaeller.php', ''],
		['Köhlern', 'http://szs.looki.de/koehlern.php', ''],
		['Steine metzen', 'http://szs.looki.de/steinmetz.php', ''],
		['Kupfer abbauen', 'http://szs.looki.de/kupferding.php', ''],
		['Bronze herstellen', 'http://szs.looki.de/bronze.php', ''],
		['Zinn abbauen', 'http://szs.looki.de/zinnding.php', ''],
		['Trank brauen', 'http://szs.looki.de/schamane.php', ''],
		['Waffe bauen', 'http://szs.looki.de/waffenschmied.php', ''],
		['Werkzeug bauen', 'http://szs.looki.de/werkzeug.php', ''],
		['Schlafen', 'http://szs.looki.de/schlafen.php', ''],
		['Einzelkampf', 'http://szs.looki.de/kampf.php', ''],
		['Talkampf', 'http://szs.looki.de/grtal.php', ''],
		['Stammkampf', 'http://szs.looki.de/stamm.php?do=kampfsuche', ''],
		['Magierkampf', 'http://szs.looki.de/stamm.magierkampf.php', ''],
		['Markt', 'http://szs.looki.de/markt.php', 'm'],
		['Händler', 'http://szs.looki.de/nahrung.php', ''],
		['Waffenhöhle', 'http://szs.looki.de/waffenshop.php', ''],
		['Nomade', 'http://szs.looki.de/nomade.php', ''],
		['StammÜbersicht', 'http://szs.looki.de/stamm.php?do=uebersicht', 'u'],
		['StammNachrichten', 'http://szs.looki.de/stamm.php?do=nachricht', 'n'],
		['Alte StammNachrichten', 'http://szs.looki.de/stamm.php?do=nachricht&alte=1', ''],
		['StammForum', 'http://szs.looki.de/stammforum.forum.php', 'f'],
		['Lager', 'http://szs.looki.de/stamm.php?do=lager', ''],
		['Waffenlager', 'http://szs.looki.de/stamm.php?do=waffenlager', ''],
		['Tranklager', 'http://szs.looki.de/stamm.php?do=tranklager', ''],
		['Werkzeuglager', 'http://szs.looki.de/stamm.php?do=werkzeuglager', ''],
		['Altar', 'http://szs.looki.de/altar.php', ''],
		['Weltwunder', 'http://szs.looki.de/weltwunder.php', ''],
		['Lagerfeuer', 'http://szs.looki.de/stamm.php?do=lagerfeuer', ''],
		['UserTop', 'http://szs.looki.de/top.php', '1'],
		['StammTop', 'http://szs.looki.de/stammtop.php', '2'],
		['Aktive Spieler', 'http://szs.looki.de/aktivespieler.php', '3'],
		['Aktive Stämme', 'http://szs.looki.de/aktivpunkte.php', '4'],
		['VIPTop', 'http://szs.looki.de/viptop.php', ''],
		['UserSuche', 'http://szs.looki.de/userinfo.php', ''],
		['StammSuche', 'http://szs.looki.de/stamminfo.php', ''],
		['OnlineUser', 'http://szs.looki.de/useronline.php', '']
	);

	var strHotkeys = GM_getValue("Assi_Hotkeys", "");
	if(typeof(strHotkeys) == 'undefined') {
		strHotkeys = '';
	}
	strHotkeys = strHotkeys.split('|');
	if(hotkeys.length == strHotkeys.length-1) {
		for(i=0; i<hotkeys.length; i++) {
			hotkeys[i][2] = strHotkeys[i];
		}
	}



// CSS-Deklarationen
	var css = document.createElement('style');
	css.setAttribute('type', 'text/css');
	css.innerHTML =
	'body {margin:10px} ' +
	'#serverzeit {position:absolute; top:27px; font-size:14px; font-weight:bold; background-color:rgba(0, 0, 0, 0.6); padding: 3px 4px; border-radius:4px;} ' +
	'#reminder {position:absolute; top:27px; width:122px; font-size:14px; font-weight:bold; background-color:rgba(0, 0, 0, 0.6); padding: 3px 4px; border-radius:5px;} ' +
	'#tk_inner, #sk_inner, #mk_inner {position: absolute; right:4px;} ' +
	'#weather {position:absolute; top:29px; background-color:rgba(0, 0, 0, 0.6); padding: 6px 5px; border-radius:5px;} ' +
	'.green, .lime {color:#00ff00;} ' +
	'.yellow {color:#ffff00;} ' +
	'.orange {color:#ff8000;} ' +
	'.red {color:#ff0000;} ' +
	'.left {text-align:left;} ' +
	'.center {text-align:center;} ' +
	'.right {text-align:right;} ' +
	'.bold {font-weight:bold;} ' +
	'.pointer {cursor:pointer;} ' +
	'.underline {text-decoration: underline;} ' +
	'.pn-icon {background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAKCAYAAABrGwT5AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAFmSURBVChTlZBNbhNBEIW/bo8zP/Z4Mm4jDsBtcgskNiBvQMolssgROARHYBUFFMwChJAXRvgn2MSyUeRkfrqbGitiAQqIll6Xquu9rlelbm9GPqyu+d+zqdvosnRMFi9Ah6DW/4bwPk2eU5QWrXWLdhAz+jCE1iMpzu+H1M/fPSMIIrTSjTigE/cY5BnvP76C4EiIX/6EvJ+/fYrpZ3SiFKUCNF5+IKGbpJjemIuLEyEe/yY85s3ZEx6IsBunaB/jnUI7ueoqRvkuyUFFdTPl7PVjEbz8hSa3dUwSHaJcB1sleK9Q19vPfrc6FRue5XKHMRHbHyVX61uKwhKGLbEakaYHrFY7Bv2Y2kJkhnedy5jpV0ve62PLhDCQEbI+D43Zxya3wsl7htnc7Z16GVY33meLivzQyPojQYi1iWw0la7ZPjZ5UYSUUsszw+W3mmZXavN97K21OO9xzsksfo+/HaVkXqX4CQKYpMZ5l9XzAAAAAElFTkSuQmCC") no-repeat transparent; display:inline-block; width:15px; height:10px;} ' +
	'.pn-icon-s {background:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QBaRXhpZgAATU0AKgAAAAgABQMBAAUAAAABAAAASgMDAAEAAAABAAAAAFEQAAEAAAABAQAAAFERAAQAAAABAAAOxFESAAQAAAABAAAOxAAAAAAAAYagAACxj//bAEMAAgEBAgEBAgICAgICAgIDBQMDAwMDBgQEAwUHBgcHBwYHBwgJCwkICAoIBwcKDQoKCwwMDAwHCQ4PDQwOCwwMDP/bAEMBAgICAwMDBgMDBgwIBwgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDP/AABEIAAcACwMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP1yk8f+I9Du9Qt4NNW9haaQ2slxdANBlm+8AcunQhcqwGRu6BXeGbzULjRY5L/7W14zOZWecEk725+U7cegAAAwMDGKKK/Jcr4Xw1HEOpzzlo1Zyut10stVay8r92ezWxDlC1kf/9k=") no-repeat transparent; display:inline-block; width:11px; height:7px} ' +
	'#scriptlaufzeit {font-size:9px; font-weight:normal;} ' +
	'.menuHeadline {background: url("/static/menu.png") repeat-x transparent; height:22px; margin-top:2px; padding-top:8px; text-align:center;} ' +
	'.menuItemContainer {margin-bottom:12px; padding:0 1px;} ' +
	'#infoanzeige table {background: url("/static/bgs.png") repeat transparent; width:100%; padding: 0 10px 5px 10px} ' +
	'#infoanzeige th:nth-child(2n+1) {background: url("/static/menu.png") repeat-x transparent; height:30px; font-size:11px;} ' +
	'#infoanzeige th:nth-child(2n) {width:50px;} ' +
	'#infoanzeige td:nth-child(2n+1) {vertical-align:top;} ' +
	'#aktuelleAktion {text-align:center; height:30px;} ' +
	'#logbuchFilter {margin: 10px 5px 0;}' +
	'#logbuchFilterOptions {margin-top:5px; margin-left:5px;}' +
	'#logbuchFilterOptions div#overallAll {margin:0 10px 10px; text-align:center;}' +
	'#logbuchFilterOptions div.column {float:left; width:190px; max-height:250px; overflow:auto; margin-bottom:20px;}' +
	'#logbuchFilterOptions div#trade {margin:0 10px 20px;}' +
	'#logbuchFilterOptions div#other {width:150px;}' +
	'#logbuchFilterOptions .layer2 {margin-left: 7px;}' +
	'#logbuch {width:95%}' +
	'#logbuch .hide {display:none;}' +
	'#logbuch tr td:nth-child(3) {padding: 0 5px 3px;}' +
	'#site_extern {height:100%; text-align:center; vertical-align:top; padding-left:10px; top:'+(window.pageYOffset)+'px} ' +
	'.headline {position:relative; font-size:18px; text-decoration:underline; padding-bottom:10px;} ' +
	'#quicklinks td {vertical-align:top; padding-right:5px;} ' +
	'#notice {position:relative; width:100%; top:0;} ' +
	'#configLayer {display:none; position:fixed; top:50px; width:500px; background-color:#215C28;} ' +
	'.border-right {background: url("/static/stab.png") repeat-y transparent; width:8px; height:100%; float:right;} ' +
	'.border-left {background: url("/static/stab.png") repeat-y transparent; width:8px; height:100%; float:left;} ' +
	'#config-main {height:100%; margin: 0 8px;} ' +
	'.border-top {background: url("/static/menu.png") repeat-x transparent; width:100%; height:30px;} ' +
	'.border-bottom {background: url("/static/menu.png") repeat-x transparent; width:100%; height:30px;} ' +
	'.close {padding:7px 5px 0 0; font-weight:bold; font-size:12px; float:right;} ' +
	'.close a {color:#ffffff; text-decoration:none;} ' +
	'.close a:hover {color:#ACACAC;} ' +
	'#config-content {padding:5px; width:472px; overflow:auto; margin-bottom:5px;} ' +
	'h1 {font-size:16px; margin:0 0 15px 0;} ' +
	'h2 {font-size:13px; margin:10px 0 2px; display:inline-block;} ' +
	'.triggerElementToggle {display: inline-block; width: 16px; height:14px; text-decoration:none; transform: rotateX(0deg); transition: all 0.3s ease-in-out 0s; background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAMAAACzB5/1AAABwlBMVEUAAAAAAAAAAAC/v78AAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMzMwAAAAtLS0AAABVVVUAAAAAAAAAAAAAAAC4uLjT09P///9GRkZ5eXny8vK2trbPz8+SkpL///////+/v7/Pz8+xsbG2trb///+6urrGxsb////////y8vLq6urc3Nz////5+fn9/f3c3Nzt7e3////j4+Pl5eXt7e319fXl5eX////////r6+vo6Oj7+/vx8fHs7Oz////y8vL5+fn7+/v////39/f7+/v////8/Pz9/f3////+/v7////+/v7///9ISEj19fVSUlLs7OzV1dVbW1uioqLi4uKjo6NycnLT09NwcHBvb29lZWXY2NilpaWhoaGWlpagoKDf39/g4OCKioqvr6+9vb3U1NR+fn6AgIC4uLi6urq7u7u8vLx9fX2Xl5fHx8fIyMjGxsaBgYHW1tZ0dHTe3t6Li4unp6fh4eGurq6MjIy+vr6ZmZmwsLCxsbHKysrNzc1qamq5ublzc3OmpqZsbGzc3Nzd3d2srKyGhoa/v7/AwMDExMTp6enq6urr6+uHh4d2dnZxcXFpzYrbAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfeDBAPLwhmkpoDAAAAJklEQVQI12NgwABsqBQbGyoFYkApKAPOQ/DhZqHwIHwUu9gYsAEAWS4BIadU530AAAAASUVORK5CYII=") no-repeat scroll left 0 center rgba(0, 0, 0, 0);} ' +
	'.triggerElementToggle.opened, .opened .triggerElementToggle {transform: rotateX(180deg);} ' +
	'.configTable {width:100%} ' +
	'.configTable .ressicon {background-repeat:no-repeat; padding-left:25px;} ' +
	'.configTable .essen {background-image:url(/static/rohstoff_icons/essen.gif);} ' +
	'.configTable .gold {background-image:url(/static/rohstoff_icons/gold.gif);} ' +
	'.configTable .wasser {background-image:url(/static/rohstoff_icons/wasser.gif);} ' +
	'.configTAble .holz {background-image:url(/static/rohstoff_icons/holz.gif);} ' +
	'.configTAble .steine {background-image:url(/static/rohstoff_icons/stein.gif);} ' +
	'.configTAble .kohle {background-image:url(/static/rohstoff_icons/kohle.gif);} ' +
	'.configTAble .kupfer {background-image:url(/static/rohstoff_icons/kupfer.gif);} ' +
	'.configTAble .zinn {background-image:url(/static/rohstoff_icons/zinn.gif);} ' +
	'.configTAble .bronze {background-image:url(/static/rohstoff_icons/bronze.gif);} ' +
	'.configTable .trankicon {background:no-repeat 0 2px / 16px 20px; padding-left:25px;} ' +
	'.configTAble .klheil {background-image:url(/images/traenke/1.gif);} ' +
	'.configTAble .miheil {background-image:url(/images/traenke/2.gif);} ' +
	'.configTAble .stheil {background-image:url(/images/traenke/3.gif);} ' +
	'.configTAble .wach {background-image:url(/images/traenke/4.gif);} ' +
	'.configTAble .stwach {background-image:url(/images/traenke/5.gif);} ' +
	'.configTAble .holztr {background-image:url(/images/traenke/7.gif);} ' +
	'.configTAble .steintr {background-image:url(/images/traenke/6.gif);} ' +
	'.configTAble .kupfertr {background-image:url(/images/traenke/8.gif);} ' +
	'.configTAble .zinntr {background-image:url(/images/traenke/9.gif);} ' +
	'.i1 {width:100%;} ' +
	'.i2 {width:55px;} ' +
	'.i1, .i2 {margin: 1px 0;} ' +
	'.tir {text-align:right;} ' +
	'.s {width:7px} ' +
	'#resetbuttons {text-align:center; margin: 30px 0 15px 0; padding-top: 10px; border-top: 2px solid #ABABAB;} ' +
	'#button_ResetConfig {position:relative; right:50px;} ' +
	'#button_DeleteAll {position:relative; left:40px;} ' +
	'.version {left:15px;} ' +
	'.scriptlink {left: 204px;} ' +
	'.author {right:20px;} ' +
	'.version, .scriptlink, .author {position:absolute; bottom:10px; font-size:10px;} ' +
	'.good td, .good td a {color:#00ff00;} ' +
	'.bad td, .bad td a {color:#ff0000;} ' +
	'#resSaveButton, #forumDataDel {margin:20px 0 10px 10px;} ' +
	'#forum-legend {margin-left:15px;} ' +
	'.postrecovery {text-align:center; font-size:10px; color:#ffff00; margin:5px 0 15px;} ' +
	'.pointer.save { margin: 0 5px;} ' +
	'.kampfcopy {width:100%; height:150px;} ' +
	'#stammnachrichteneingabetable {width:95%;} ' +
	'#stammnachrichteneingabe {width:100%; height:200px;} ' +
	'#posteingabe {width:100%; height:300px;} ' +
	'.eigeneLaender thead td {font-weight:bold; text-align:center;} ' +
	'.eigeneLaender td {padding:3px 1.5px; text-align:center;} ' +
	'.eigeneLaender td.spieler {text-align:left;} ' +
	'table.inventar thead td {font-weight:bold; padding:4px; text-align:center;} ' +
	'table.inventar td {padding:0px 4px; text-align:center;} ' +
	'.greenDot {display:inline-block; background-color:#64c02c ; width:10px; height: 10px; border-radius:5px;} ' +
	'.redDot {display:inline-block; background-color:#db1100 ; width:10px; height: 10px; border-radius:5px;} ' +
	'.blueDot {display:inline-block; background-color:#1668df ; width:10px; height: 10px; border-radius:5px;} ' +
	'#topiceingabe {width:300px;} ' +
	'#contenteingabe {width:100%; height:300px;} ' +
	'table td.top {vertical-align:top;} ';
	document.getElementsByTagName('head')[0].appendChild(css);



// Konfiguration
	var configLayer = document.createElement("div");
	configLayer.setAttribute("id", "configLayer");
	var configContent = '<h1>SZS-Assistent - Einstellungen</h1>';
	// Allgemein
	configContent += '<h2 class="pointer" name="configTriggerElementToggle" data-szsa-toggle="configItem-Allgemein">Allgemein <span class="triggerElementToggle"></span></h2><br>';
	configContent += '<div id="configItem-Allgemein" style="display: none;">';
	configContent += '<table class="configTable" border="1">';
	configContent += '<tr><td width="115px">Username</td><td colspan="2"><input class="i1" type="text" name="Assi_UserName" value="'+Assi_UserName+'"></td></tr>';
	configContent += '<tr><td>Stamm</td><td colspan="2"><input class="i1" type="text" name="Assi_StammName" value="'+Assi_StammName+'"></td></tr>';
	configContent += '<tr><td>Info-Anzeigen</td><td width="130px"><input type="radio" name="Assi_Infoanzeigen" value="menu"'+((Assi_Infoanzeigen == 'menu')? ' checked="checked"' : '')+'>im rechten Menu<br><input type="radio" name="Assi_Infoanzeigen" value="zentriert"'+((Assi_Infoanzeigen == 'zentriert')? ' checked="checked"' : '')+'>zentriert<br></td><td class="center">Position für Ausrüstung-, Opfer- und Artefakte-Info</td></tr>';
	configContent += '<tr><td>"Dein Alter"</td><td class="center"><input type="checkbox" name="Assi_DeinAlter"'+((Assi_DeinAlter)? ' checked="checked"' : '')+'></td><td class="center">im rechten Menu anzeigen</td></tr>';
	configContent += '<tr><td>Freunde-Sortierung</td><td class="center"><input type="checkbox" name="Assi_FreundeSortierung"'+((Assi_FreundeSortierung)? ' checked="checked"' : '')+'></td><td class="center">Alphabetisch</td></tr>';
	configContent += '<tr><td>Notizen anzeigen</td><td class="center"><input type="checkbox" name="Assi_Notizen"'+((Assi_Notizen)? ' checked="checked"' : '')+'></td><td><br></td></tr>';
	configContent += '<tr><td>Hotkey-Timeout</td><td><input class="i2 tir" type="text" name="Assi_HotkeyTimeout" value="'+Assi_HotkeyTimeout+'"> ms</td><td class="center">Zeit bis eine Hotkeyeingabe verfällt</td></tr>';
	configContent += '<tr><td>Bilderhöhe im Inventar</td><td><input class="i2 tir" type="text" name="Assi_InventarIMGheight" value="'+Assi_InventarIMGheight+'"> Pixel</td><td class="center">0 = Standardgröße</td></tr>';
	configContent += '<tr><td>Tränkereihenfolge im Inventar</td><td colspan="2"><input class="i1" type="text" name="Assi_InventarTrankreihenfolge" value="'+Assi_InventarTrankreihenfolge+'"><br>Weggelassene oder falsch geschriebene Tränke werdenans Ende gesetzt!<br><br><b>Standard:</b> '+traenke+'</td></tr>';
	configContent += '<tr><td>Lagerauszahlungen</td><td colspan="2"><input type="radio" name="Assi_Lagerauszahlungen" value="eigene"'+((Assi_Lagerauszahlungen == 'eigene')? ' checked="checked"' : '')+'>Nur eigene Einzahlungen<br><input type="radio" name="Assi_Lagerauszahlungen" value="andere"'+((Assi_Lagerauszahlungen == 'andere')? ' checked="checked"' : '')+'>eigene und andere: (Nicks mit Komma trennen)<input class="i1" type="text" name="Assi_LagerauszahlungenNicks" value="'+Assi_LagerauszahlungenNicks+'"><br><input type="radio" name="Assi_Lagerauszahlungen" value="alle"'+((Assi_Lagerauszahlungen == 'alle')? ' checked="checked"' : '')+'>alle<br></td></tr>';
	configContent += '<tr><td>Uhrzeit links im Menu</td><td class="center"><input type="checkbox" name="Assi_MenuUhrzeit"'+((Assi_MenuUhrzeit)? ' checked="checked"' : '')+'></td><td class="center"><br></td></tr>';
	configContent += '<tr><td>SK-Zeit rechts im Menu</td><td class="center"><input type="checkbox" name="Assi_MenuSKZeit"'+((Assi_MenuSKZeit)? ' checked="checked"' : '')+'></td><td class="center"><br></td></tr>';
	configContent += '<tr><td>Versionscheck</td><td class="center"><input type="checkbox" name="Assi_MenuVersionTip"'+((Assi_MenuVersionTip)? ' checked="checked"' : '')+'></td><td class="center">Zeigt dir im Menu, ob eine neue Script-Version verfügbar ist.</td></tr>';
	configContent += '<tr><td>SK-Auswertung</td><td class="center"><input type="checkbox" name="Assi_SKAuswertung"'+((Assi_SKAuswertung)? ' checked="checked"' : '')+'></td><td class="center">... mit EP für jeden Teilnehmer?</td></tr>';
	configContent += '</table></div>';
	// Reminder
	configContent += '<h2 class="pointer" name="configTriggerElementToggle" data-szsa-toggle="configItem-Reminder">Reminder <span class="triggerElementToggle"></span></h2><br>';
	configContent += '<div id="configItem-Reminder" style="display: none;">';
	configContent += '<table class="configTable" border="1">';
	configContent += '<tr><td width="115px">Activity-Reminder</td><td width="180px" class="center"><input type="checkbox" name="Assi_ActivityReminder"'+((Assi_ActivityReminder)? ' checked="checked"' : '')+'></td><td class="center">Hinweis, wenn du wieder verfügbar bist.</td></tr>';
	configContent += '<tr><td>Activity-Sound</td><td>';
		configContent += '<input type="radio" name="Assi_Remindersound" value=""'+((Assi_Remindersound == '')? ' checked="checked"':'')+'>Kein Sound<br>';
		configContent += '<input type="radio" name="Assi_Remindersound" value="SoundA"'+((Assi_Remindersound == 'SoundA')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_ReminderSoundVolume audioA">Phone-Ring</a><br>';
		configContent += '<input type="radio" name="Assi_Remindersound" value="SoundB"'+((Assi_Remindersound == 'SoundB')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_ReminderSoundVolume audioB">Gong</a><br>';
		configContent += '<input type="radio" name="Assi_Remindersound" value="SoundC"'+((Assi_Remindersound == 'SoundC')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_ReminderSoundVolume audioC">Glocke</a><br>';
		configContent += '<input type="radio" name="Assi_Remindersound" value="SoundD"'+((Assi_Remindersound == 'SoundD')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_ReminderSoundVolume audioD">Coin</a><br>';
	configContent += '</td><td class="center">Wird zusätzlich zum Reminder abgespielt.</td></tr>';
	configContent += '<tr><td>Lautstärke</td><td><input class="i2 tir" type="text" name="Assi_ReminderSoundVolume" value="'+Assi_ReminderSoundVolume+'"> %</td><td class="center">Lautstärke des <br>Activity-Sounds</td></tr>';
	configContent += '<tr><td>Standardtätigkeit</td><td>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value=""'+((Assi_Standardtaetigkeit == '')? ' checked="checked" id="standardtaetigkeit"':'')+'>Keine<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Jagen"'+((Assi_Standardtaetigkeit == 'Jagen')? ' checked="checked" id="standardtaetigkeit"':'')+'>Jagen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Wasser"'+((Assi_Standardtaetigkeit == 'Wasser')? ' checked="checked" id="standardtaetigkeit"':'')+'>Wasser suchen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Holz"'+((Assi_Standardtaetigkeit == 'Holz')? ' checked="checked" id="standardtaetigkeit"':'')+'>Holz fällen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Stein"'+((Assi_Standardtaetigkeit == 'Stein')? ' checked="checked" id="standardtaetigkeit"':'')+'>Steine metzen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Kohle"'+((Assi_Standardtaetigkeit == 'Kohle')? ' checked="checked" id="standardtaetigkeit"':'')+'>Köhlern<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Kupfer"'+((Assi_Standardtaetigkeit == 'Kupfer')? ' checked="checked" id="standardtaetigkeit"':'')+'>Kupfer abbauen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Zinn"'+((Assi_Standardtaetigkeit == 'Zinn')? ' checked="checked" id="standardtaetigkeit"':'')+'>Zinn abbauen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Bronze"'+((Assi_Standardtaetigkeit == 'Bronze')? ' checked="checked" id="standardtaetigkeit"':'')+'>Bronze herstellen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Trank"'+((Assi_Standardtaetigkeit == 'Trank')? ' checked="checked" id="standardtaetigkeit"':'')+'>Trank brauen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Waffe"'+((Assi_Standardtaetigkeit == 'Waffe')? ' checked="checked" id="standardtaetigkeit"':'')+'>Waffe bauen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Werkzeug"'+((Assi_Standardtaetigkeit == 'Werkzeug')? ' checked="checked" id="standardtaetigkeit"':'')+'>Werkzeug bauen<br>';
		configContent += '<input type="radio" name="Assi_Standardtaetigkeit" value="Artefakt"'+((Assi_Standardtaetigkeit == 'Artefakt')? ' checked="checked" id="standardtaetigkeit"':'')+'>Artefakt herstellen/weihen<br>';
	configContent += '</td><td class="center">Diese Tätigkeit wird aufgerufen, wenn du wieder verfügbar bist.<br><br><br>Funktioniert nur mit aktiviertem Activity-Reminder!</td></tr>';
	configContent += '<tr><td>Message-Reminder</td><td class="center"><input type="checkbox" name="Assi_MessageReminder"'+((Assi_MessageReminder)? ' checked="checked"' : '')+'></td><td class="center">Hinweis, wenn eine neue Nachricht eingeht.</td></tr>';
	configContent += '<tr><td>Message-Sound</td><td>';
		configContent += '<input type="radio" name="Assi_Messagesound" value=""'+((Assi_Messagesound == '')? ' checked="checked"':'')+'>Kein Sound<br>';
		configContent += '<input type="radio" name="Assi_Messagesound" value="SoundA"'+((Assi_Messagesound == 'SoundA')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_MessageSoundVolume audioA">Phone-Ring</a><br>';
		configContent += '<input type="radio" name="Assi_Messagesound" value="SoundB"'+((Assi_Messagesound == 'SoundB')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_MessageSoundVolume audioB">Gong</a><br>';
		configContent += '<input type="radio" name="Assi_Messagesound" value="SoundC"'+((Assi_Messagesound == 'SoundC')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_MessageSoundVolume audioC">Glocke</a><br>';
		configContent += '<input type="radio" name="Assi_Messagesound" value="SoundD"'+((Assi_Messagesound == 'SoundD')? ' checked="checked"':'')+'><a class="pointer underline" name="SoundSample" data-szsa-sound="Assi_MessageSoundVolume audioD">Coin</a><br>';
	configContent += '</td><td class="center">Wird abgespielt, wenn eine neue Nachricht eingeht.<br>Unabhängig vom Hinweis!</td></tr>';
	configContent += '<tr><td>Lautstärke</td><td><input class="i2 tir" type="text" name="Assi_MessageSoundVolume" value="'+Assi_MessageSoundVolume+'"> %</td><td class="center">Lautstärke des Message-Sounds</td></tr>';
	configContent += '<tr><td>Waffen- und Werkzeugwarnung</td><td class="center"><input type="checkbox" name="Assi_WaffenWerkzeugWarnung"'+((Assi_WaffenWerkzeugWarnung)? ' checked="checked"' : '')+'></td><td class="center"><br></td></tr>';
	configContent += '<tr><td>Ringwarnung</td><td class="center"><input type="checkbox" name="Assi_RingWarnung"'+((Assi_RingWarnung)? 'checked="checked"' : '')+'></td><td class="center"><br></td></tr>';
	configContent += '<tr><td>Gästebucheintrag</td><td class="center"><input type="checkbox" name="Assi_Gaestebucheintrag"'+((Assi_Gaestebucheintrag)? ' checked="checked"' : '')+'></td><td class="center">Hinweis bei neuem GB-Eintrag<br></td></tr>';
	configContent += '</table></div>';
	// Skillsystem
	configContent += '<h2 class="pointer" name="configTriggerElementToggle" data-szsa-toggle="configItem-Skillsystem">Skillsystem <span class="triggerElementToggle"></span></h2><br>';
	configContent += '<div id="configItem-Skillsystem" style="display: none;">';
	configContent += '<table class="configTable" border="1">';
	configContent += '<tr><td width="115px">Kraft</td><td><input class="i2 tir" type="text" name="Assi_Kraft" value="'+Assi_Kraft+'"></td><td rowspan="6" class="center">Trage hier Punkte oder Prozent ein um die Verteilung zu bestimmen.</td></tr>';
	configContent += '<tr><td>Intelligenz</td><td><input class="i2 tir" type="text" name="Assi_Intelligenz" value="'+Assi_Intelligenz+'"></td></tr>';
	configContent += '<tr><td>Geschwindigkeit</td><td><input class="i2 tir" type="text" name="Assi_Geschwindigkeit" value="'+Assi_Geschwindigkeit+'"></td></tr>';
	configContent += '<tr><td>List</td><td><input class="i2 tir" type="text" name="Assi_List" value="'+Assi_List+'"></td></tr>';
	configContent += '<tr><td>Ausdauer</td><td><input class="i2 tir" type="text" name="Assi_Ausdauer" value="'+Assi_Ausdauer+'"></td></tr>';
	configContent += '<tr><td>Geschick</td><td><input class="i2 tir" type="text" name="Assi_Geschick" value="'+Assi_Geschick+'"></td></tr>';
	configContent += '</table></div>';
	// Rohstoffsicherung
	configContent += '<h2 class="pointer" name="configTriggerElementToggle" data-szsa-toggle="configItem-Rohstoffsicherung">Rohstoffsicherung <span class="triggerElementToggle"></span></h2><br>';
	configContent += '<div id="configItem-Rohstoffsicherung" style="display: none;">';
	configContent += '<table class="configTable" border="1">';
	configContent += '<tr><td class="ressicon essen" width="90px">Nahrung</td><td width="90px"><input class="i2 tir" type="text" name="Assi_NahrungRest" value="'+Assi_NahrungRest+'"></td><td rowspan="4" class="center">Wieviele Rohstoffe sollen mindestens behalten werden?</td></tr>';
	configContent += '<tr><td class="ressicon gold">Gold</td><td><input class="i2 tir" type="text" name="Assi_GoldRest" value="'+Assi_GoldRest+'"></td></tr>';
	configContent += '<tr><td class="ressicon holz">Holz</td><td><input class="i2 tir" type="text" name="Assi_HolzRest" value="'+Assi_HolzRest+'"></td></tr>';
	configContent += '<tr><td class="ressicon steine">Stein</td><td><input class="i2 tir" type="text" name="Assi_SteinRest" value="'+Assi_SteinRest+'"></td></tr>';
	configContent += '<tr><td class="ressicon essen">Nahrung</td><td><input class="i2 tir" type="text" name="Assi_NahrungRund" value="'+Assi_NahrungRund+'"></td><td rowspan="2" class="center">Auf was soll beim Sichern abgerundet werden?<br>z. B. 10, 50, 100, ...</td></tr>';
	configContent += '<tr><td class="ressicon gold">Gold</td><td><input class="i2 tir" type="text" name="Assi_GoldRund" value="'+Assi_GoldRund+'"></td></tr>';
	configContent += '<tr><td class="ressicon holz">Holz</td><td><input class="i2 tir" type="text" name="Assi_HolzPreis" value="'+Assi_HolzPreis+'"> Gold</td><td rowspan="2" class="center">Zu welchem Preis sollen die Rohstoffe eingestellt werden?</td></tr>';
	configContent += '<tr><td class="ressicon steine">Stein</td><td><input class="i2 tir" type="text" name="Assi_SteinPreis" value="'+Assi_SteinPreis+'"> Gold</td></tr>';
	configContent += '</table></div>';
	// Markt
	configContent += '<h2 class="pointer" name="configTriggerElementToggle" data-szsa-toggle="configItem-Markt">Markt <span class="triggerElementToggle"></span></h2><br>';
	configContent += '<div id="configItem-Markt" style="display: none;">';
	configContent += '<table class="configTable" border="1">';
	configContent += '<tr><td width="115px">Preishervorhebung</td><td width="100px"><input type="radio" name="Assi_Preishervorhebung" value="dynamisch"'+((Assi_Preishervorhebung == 'dynamisch')? ' checked="checked"' : '')+'>dynamisch<br><input type="radio" name="Assi_Preishervorhebung" value="eigenePreise"'+((Assi_Preishervorhebung == 'eigenePreise')? ' checked="checked"' : '')+'>eigene Preise<br></td><td class="center">dynamisch = automatisch vom Script<br>eigene Preise = s.u.</td></tr>';
	configContent += '<tr><td class="ressicon wasser">Wasser</td><td><input class="i2 tir" type="text" name="Assi_MarktWasserPreis" value="'+Assi_MarktPreis["Wasser"]+'"> Gold</td><td rowspan="7" class="center">Lege hier Preise für die Preishervorhebung mit <i>eigenen Preisen</i> fest.<br><br>Angebote, deren Preis <b>kleiner</b> dem angegebenen Wert ist, werden hervorgehoben.</td></tr>';
	configContent += '<tr><td class="ressicon holz">Holz</td><td><input class="i2 tir" type="text" name="Assi_MarktHolzPreis" value="'+Assi_MarktPreis["Holz"]+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon steine">Steine</td><td><input class="i2 tir" type="text" name="Assi_MarktSteinPreis" value="'+Assi_MarktPreis["Stein"]+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon kohle">Kohle</td><td><input class="i2 tir" type="text" name="Assi_MarktKohlePreis" value="'+Assi_MarktPreis["Kohle"]+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon kupfer">Kupfer</td><td><input class="i2 tir" type="text" name="Assi_MarktKupferPreis" value="'+Assi_MarktPreis["Kupfer"]+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon zinn">Zinn</td><td><input class="i2 tir" type="text" name="Assi_MarktZinnPreis" value="'+Assi_MarktPreis["Zinn"]+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon bronze">Bronze</td><td><input class="i2 tir" type="text" name="Assi_MarktBronzePreis" value="'+Assi_MarktPreis["Bronze"]+'"> Gold</td></tr>';
	configContent += '</table><br>';
	configContent += '<table class="configTable" border="1">';
	configContent += '<tr><td width="115px"><br></td><td width="60px" class="center bold">Standard-<br>menge</td><td width="90px" class="center bold">Standardpreis</td><td rowspan="17" class="center"><b>Standardmengen</b> und <b>-preise</b>, die beim Verkaufen voreingetragen werden.<br><br>Dabei gilt:<br>(für Mengen)<br>leer = keine Standardmenge<br>0 = maximale Menge<br>-1 = max-1, usw.<br><br>(für Preise)<br>Lässt du das Feld leer, wird kein Standardpreis beim Verkauf eingetragen.</td></tr>';
	configContent += '<tr><td class="ressicon wasser">Wasser</td><td><input class="i2 tir" type="text" name="Assi_MarktWasserverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Wasser']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktWasserverkaufspreis" value="'+Assi_MarktVerkaufspreis['Wasser']+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon holz">Holz</td><td><input class="i2 tir" type="text" name="Assi_MarktHolzverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Holz']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktHolzverkaufspreis" value="'+Assi_MarktVerkaufspreis['Holz']+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon steine">Steine</td><td><input class="i2 tir" type="text" name="Assi_MarktSteinverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Steine']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktSteinverkaufspreis" value="'+Assi_MarktVerkaufspreis['Steine']+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon kohle">Kohle</td><td><input class="i2 tir" type="text" name="Assi_MarktKohleverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Kohle']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktKohleverkaufspreis" value="'+Assi_MarktVerkaufspreis['Kohle']+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon kupfer">Kupfer</td><td><input class="i2 tir" type="text" name="Assi_MarktKupferverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Kupfer']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktKupferverkaufspreis" value="'+Assi_MarktVerkaufspreis['Kupfer']+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon zinn">Zinn</td><td><input class="i2 tir" type="text" name="Assi_MarktZinnverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Zinn']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktZinnverkaufspreis" value="'+Assi_MarktVerkaufspreis['Zinn']+'"> Gold</td></tr>';
	configContent += '<tr><td class="ressicon bronze">Bronze</td><td><input class="i2 tir" type="text" name="Assi_MarktBronzeverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Bronze']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktBronzeverkaufspreis" value="'+Assi_MarktVerkaufspreis['Bronze']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon klheil">kl. Heiltrank</td><td><input class="i2 tir" type="text" name="Assi_MarktkleinerHeiltrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['kleiner Heiltrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktkleinerHeiltrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['kleiner Heiltrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon miheil">mi. Heiltrank</td><td><input class="i2 tir" type="text" name="Assi_MarktmittlererHeiltrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['mittlerer Heiltrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktmittlererHeiltrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['mittlerer Heiltrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon stheil">st. Heiltrank</td><td><input class="i2 tir" type="text" name="Assi_MarktstarkerHeiltrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['starker Heiltrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktstarkerHeiltrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['starker Heiltrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon wach">Wachtrank</td><td><input class="i2 tir" type="text" name="Assi_MarktWachtrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Wachtrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktWachtrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['Wachtrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon stwach">st. Wachtrank</td><td><input class="i2 tir" type="text" name="Assi_MarktstarkerWachtrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['starker Wachtrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktstarkerWachtrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['starker Wachtrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon holztr">Holztrank</td><td><input class="i2 tir" type="text" name="Assi_MarktHolztrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Holztrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktHolztrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['Holztrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon steintr">Steintrank</td><td><input class="i2 tir" type="text" name="Assi_MarktSteintrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Steintrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktSteintrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['Steintrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon kupfertr">Kupfertrank</td><td><input class="i2 tir" type="text" name="Assi_MarktKupfertrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Kupfertrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktKupfertrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['Kupfertrank']+'"> Gold</td></tr>';
	configContent += '<tr><td class="trankicon zinntr">Zinntrank</td><td><input class="i2 tir" type="text" name="Assi_MarktZinntrankverkaufsmenge" value="'+Assi_MarktVerkaufsmenge['Zinntrank']+'"></td><td><input class="i2 tir" type="text" name="Assi_MarktZinntrankverkaufspreis" value="'+Assi_MarktVerkaufspreis['Zinntrank']+'"> Gold</td></tr>';
	configContent += '</table></div>';
	// Hotkeys
	configContent += '<h2 class="pointer" name="configTriggerElementToggle" data-szsa-toggle="configItem-Hotkeys">Hotkeys <span class="triggerElementToggle"></span></h2><br>';
	configContent += '<div id="configItem-Hotkeys" style="display: none;">';
	configContent += '<table class="configTable" border="1">';
	for(i=0; i<hotkeys.length; i++) {
		configContent += '<tr>';
		configContent += '<td width="115px">'+hotkeys[i][0]+'</td><td><input class="i2 tir" type="text" name="Assi_Hotkeys['+i+']" value="'+hotkeys[i][2]+'"></td>';
		if(i == 0) configContent += '<td valign="top" rowspan="'+hotkeys.length+'" class="center">Definiere hier deine eigenen, ganz individuellen Hotkeys.<br><br><br>Erlaubte Zeichen:<br>- Zahlen: 0-9<br>- Buchstaben: a-z<br>- Sonderzeichen: <^#+-,.<br><br><br>Auch eine Zeichenfolge (z.B. a1, holz, etc.) ist möglich. Beachte, dass du diese innerhalb der Hotkey-Timeout-Zeit eingeben musst.<br><br>Doppelte Hotkeys sind nicht möglich, es wird immer der oberste zuerst ausgelöst. Ebenso sind Erweiterungen (z.B. h und h1) nicht möglich, da bei der ersten Übereinstimmung ausgelöst wird.</td>';
		configContent += '</tr>';
	}
	configContent += '</table></div><br>';
	configContent += '<br><input class="pointer" type="button" id="button_SaveConfig" value="Speichern" data-szsa-toggle="configLayer">';
	// Einstellungen zurücksetzen- und Alle Daten löschen-Button
	var strButtons = '<div id="resetbuttons"><input class="pointer" type="button" id="button_ResetConfig" value="Einstellungen zurücksetzen"><input class="pointer" type="button" id="button_DeleteAll" value="ALLE Daten löschen"></div>';
	configLayer.innerHTML = '<div class="border-left"></div><div class="border-right"></div><div id="config-main"><div class="border-top"><div class="close"><a id="toggle_configClose" class="pointer" title="Einstellungen schließen" data-szsa-toggle="configLayer">[X]</a></div></div><div id="config-content">'+configContent+strButtons+'</div><div class="border-bottom"><span class="version">Version: '+GM_info.script.version+'</span><span class="scriptlink"><a href="https://greasyfork.org/scripts/3698-szs-assistent" target="_blank">SZS-Assistent</a></span><span class="author">by <a href="userinfo.php?userinfo=87836">KingMaxi</a></span></div></div>';
	document.getElementsByTagName('body')[0].appendChild(configLayer);
	document.getElementById('toggle_configClose').addEventListener('click', toggleElement, false);
	var configTrigger = document.getElementsByName('configTriggerElementToggle');
	for(i=0; i<configTrigger.length; i++) {
		configTrigger[i].addEventListener('click', toggleElement, false);
	}
	var configSounds = document.getElementsByName('SoundSample');
	for(i=0; i<configSounds.length; i++) {
		document.getElementsByName('SoundSample')[i].addEventListener('click', playSound, false);
	}



// remove/change attributes in body-tag
	document.getElementsByTagName('body')[0].removeAttribute('onscroll');
	document.getElementsByTagName('body')[0].removeAttribute('marginwidth');
	document.getElementsByTagName('body')[0].removeAttribute('leftmargin');
	document.getElementsByTagName('body')[0].removeAttribute('topmargin');
	document.getElementsByTagName('body')[0].removeAttribute('bgcolor');
	document.getElementsByTagName('body')[0].removeAttribute('style');
// remove waste childNodes of body
	var elems = document.getElementsByTagName('body')[0].childNodes;
	for(i=elems.length-1; i>=0; i--) {
		if(elems[i].tagName == 'BR' || elems[i].tagName == 'CENTER' || elems[i].tagName == 'SCRIPT' || elems[i].tagName == 'NOSCRIPT' || elems[i].tagName == 'IMG') {
			elems[i].parentNode.removeChild(elems[i]);
		}
	}
// header (remove ad + "nur durch Werbung bleibt SteinZeitSpiel.de kostenfrei.")
	if(!isPremiumSpieler) {
		i = document.getElementsByTagName('center').length-1;
		while(i >= 0) {
			if(document.getElementsByTagName('center')[i].textContent.indexOf('nur durch Werbung bleibt SteinZeitSpiel.de kostenfrei.') != -1) {
				var elem_temp = document.getElementsByTagName('center')[i];
				if(typeof elem_temp == 'object') elem_temp.parentNode.removeChild(elem_temp);
				break;
			}
			i--;
		}
	}



// first table, wrap-table
	// left side (remove waste td)
	wrap.getElementsByTagName('td')[0].parentNode.removeChild(wrap.getElementsByTagName('td')[0]);
	// right side (replace/add notice)
	if(isPremiumSpieler) {
		i=0;
		while(!(wrap.getElementsByTagName('td')[i].innerHTML.trim() == "" && wrap.getElementsByTagName('td')[i].getAttribute('valign') == 'top')) {
			i++;
		}
		var temp = wrap.getElementsByTagName('td')[i];
	} else {
		var temp = document.getElementById('site_extern').parentNode;
	}
	if(Assi_Notizen) {
		temp.innerHTML = '<div id="site_extern" style="position:relative"></div>';
		document.getElementById('site_extern').innerHTML = '<div class="headline">Notizen</div><textarea id="notice"></textarea>';
		if(notice != "") {
			document.getElementById('notice').value = notice;
		}
	} else {
		temp.style.display = "none";
	}
// second table, main-table - change attributes (move main-container to left side)
	main.parentNode.setAttribute('width', '800');
	main.setAttribute('width', 800);
	main.removeAttribute('align');
	content.removeChild(content.getElementsByTagName('br')[0]);
	if(Assi_Infoanzeigen == 'zentriert') content.removeChild(content.getElementsByTagName('br')[0]);



// Serverzeit auslesen
	var nomadenzeit = servertime.slice(0, servertime.indexOf('<br>')).trim().replace(/\s\s/g, " ");
	servertime = servertime.slice(servertime.indexOf('ServerZeit:')+11, servertime.indexOf('Uhr'));
	var servertimeArray = servertime.split(':');
	servertimeDate = new Date();
	servertimeDate.setHours(servertimeArray[0]);
	servertimeDate.setMinutes(servertimeArray[1]);
	servertimeDate.setSeconds(servertimeArray[2]);
	servertimeDate.setMilliseconds(0);
	var diffServertime = (new Date()).getTime()-servertimeDate.getTime(); // Zeitunterschied zwischen PC und Server



// Talkampf bestimmen
	var tkStart = 10;
	var tkEnde = 12;
	if(isSommerzeit(servertimeDate)) {
		tkStart = 12;
		tkEnde = 14;
	} else {
		tkStart = 11;
		tkEnde = 13;
	}
	var talkampfDate = new Date(servertimeDate);
	talkampfDate.setHours(tkStart);
	talkampfDate.setMinutes(0);
	talkampfDate.setSeconds(0);
	if(servertimeDate.getHours() >= tkEnde) {
		talkampfDate.setDate(talkampfDate.getDate()+1);
	}
// Talkampf-Teilnahme
	if(tkTeilnahme+7260000 <= servertimeDate.getTime()) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/grtal.php",
			onload: function(response) {
				if(response.responseText.indexOf('Du bist für die Kämpfe im Tal angemeldet.') != -1) {
					GM_setValue("TKTeilnahme", talkampfDate.getTime().toString());
				} else {
					GM_deleteValue("TKTeilnahme"); 
				}
			}
		});
	}

// Stammkampf bestimmen
	if(nextSK == "kein Kampf" || parseInt(nextSK.split(',')[0], 10)+3660000 < servertimeDate.getTime()) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/stamm.php?do=uebersicht",
			onload: function(response) {
				if(response.responseText.search(/Nächster Kampf: (\d+)\.(\d+)\.(\d+) \- (\d+):(\d+) Uhr gegen: <a href=stamminfo.php\?stammid=(\d+)>(.+)<\/a><br>Kampfstamm/) != -1) {
					var skStartDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), 0);
					GM_setValue("NextSK", skStartDate.getTime().toString()+","+RegExp.$6.trim()+","+RegExp.$7.trim());
				} else {
					GM_setValue("NextSK", "kein Kampf");
				}
			}
		});
	}
// Stammkampf-Teilnahme
if(isNaN(skTeilnahme)) { skTeilnahme = 0; } // fix for v0.9.5, skTeilnahme can be NaN (== 'kein Kampf')
	if(skTeilnahme+3660000 < servertimeDate.getTime()) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/stamm.php?do=kampfuserauswahl",
			onload: function(response) {
				if(response.responseText.indexOf('Uhr kämpft ihr gegen') != -1) {
					if(response.responseText.indexOf('nicht teilnehmen') != -1 && response.responseText.search(/Am (\d+)\.(\d+)\.(\d+) - (\d+):(\d+) Uhr kämpft ihr gegen/) != -1) {
						var skStartDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), 0);
						GM_setValue("SKTeilnahme", skStartDate.getTime().toString());
					} else {
						GM_deleteValue("SKTeilnahme"); 
					}
				}
			}
		});
	}

// Magierkampf bestimmen
	var mkStart = 16;
	var mkEnde = 18;
	if(isSommerzeit(servertimeDate)) {
		mkStart = 18;
		mkEnde = 20;
	} else {
		mkStart = 17;
		mkEnde = 19;
	}
	var magierkampfDate = new Date(servertimeDate);
	if(servertimeDate.getDay() == 1 && servertimeDate.getHours() < mkEnde) {
		magierkampfDate.setHours(mkStart);
	} else {
		var day = (servertimeDate.getDay()==0)? 1 : (8-servertimeDate.getDay());
		magierkampfDate.setDate(magierkampfDate.getDate()+day);
		magierkampfDate.setHours(mkStart);
	}
	magierkampfDate.setMinutes(0);
	magierkampfDate.setSeconds(0);
	magierkampfDate.setMilliseconds(0);
// Magierkampf-Teilnahme
	if(mkTeilnahme+7260000 <= servertimeDate.getTime()) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/stamm.magierkampf.php",
			onload: function(response) {
				if(response.responseText.indexOf('zum Magierkampf eintragen') != -1) {
					if(response.responseText.indexOf('vom Magierkampf austragen') != -1) {
						GM_setValue("MKTeilnahme", magierkampfDate.getTime().toString());
					} else {
						GM_deleteValue("MKTeilnahme"); 
					}
				}
			}
		});
	}



// Logbuch
	if(document.URL.indexOf('/news.php') != -1) {
		content.getElementsByTagName('table')[1].setAttribute('id', 'logbuch');
		document.getElementById('logbuch').removeAttribute('width');
		var logs = content.getElementsByTagName('table')[1].getElementsByTagName('tr');
		logs[0].getElementsByTagName('td')[1].setAttribute('colspan', 2);
		var pn_nicks = new Array();
		var trade_nicks = new Array();
		var filter = new Array();
		var count = new Array();
		count['PN'] = 0;
		count['trade'] = 0;
		count['Rest'] = 0;
		count['combat EK'] = 0;
		count['combat TK'] = 0;
		count['combat SK'] = 0;
		count['combat MK'] = 0;
		for(i=1; i<logs.length; i++) {
			var dataFilterText = '';
			if(logs[i].getElementsByTagName('td')[0].textContent.indexOf('NEU') != -1) {
				dataFilterText += ' NEU';
			}
			if(logs[i].getElementsByTagName('td')[1].getElementsByTagName('div')[0]) {
				logs[i].getElementsByTagName('td')[1].getElementsByTagName('div')[0].setAttribute('style', 'width:100%; overflow:auto;');
			}
			logs[i].getElementsByTagName('td')[1].setAttribute('colspan', 2);
			if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Nachricht') != -1) {
				// PN
				count['PN']++;
				// Textlinks setzen
				logs[i].getElementsByTagName('td')[1].innerHTML = logs[i].getElementsByTagName('td')[1].innerHTML.replace(/((http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:\/~\+#\(\)]*[\w\-\@?^=%&amp;\/~\+#\(\)])?)/g, '<a class="menu" target="_blank" href="$1">$1</a>');
				if(logs[i].getElementsByTagName('div')[0].innerHTML.split('<br>')[0].trim().search(/^Du hast an .* diese Nachricht geschrieben:/) != -1) {
					// gesendete PN (Profillinks)
					logs[i].getElementsByTagName('td')[1].removeAttribute('colspan');
					logs[i].innerHTML += '<td class="center"></td>';
					var pnzeilen = logs[i].getElementsByTagName('div')[0].innerHTML.split('<br>');
					pnzeilen[0] = pnzeilen[0].trim().replace(/^Du hast an (.*) diese Nachricht geschrieben:/, 'Du hast an <span id="pn_'+i+'"><a href="userinfo.php?s=$1">$1</a></span> diese Nachricht geschrieben:');
					var nick = RegExp.$1;
					logs[i].getElementsByTagName('td')[2].innerHTML = '<span id="pn_'+i+'-2"><a href="message.php?to='+nick+'">Nachricht</a><br><a href="uebertragen.php?anrohstoffe='+nick+'">Übertragen</a></span>';
					logs[i].getElementsByTagName('div')[0].innerHTML = pnzeilen.join('<br>');
					addLinksToLogbuch(nick, 'pn_'+i);
					dataFilterText += ' PN '+nick;
					if(pn_nicks.indexOf(nick) == -1) {
						pn_nicks.push(nick);
					}
				} else {
					// empfangene PN
					logs[i].getElementsByTagName('i')[0].innerHTML.search(/von <a href="userinfo\.php\?userinfo=\d*">(.*)<\/a> \| <a href="message\.php/);
					var nick = RegExp.$1;
					dataFilterText += ' PN '+nick;
					if(pn_nicks.indexOf(nick) == -1) {
						pn_nicks.push(nick);
					}
				}
			} else if((logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du hast an') != -1 && logs[i].getElementsByTagName('td')[1].textContent.indexOf('übertragen.') != -1) || (logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du hast von') != -1 && logs[i].getElementsByTagName('td')[1].textContent.indexOf('bekommen.') != -1)) {
				// Übertragung (Profillinks)
				count['trade']++;
				logs[i].getElementsByTagName('td')[1].removeAttribute('colspan');
				logs[i].innerHTML += '<td class="center"></td>';
				logs[i].getElementsByTagName('td')[1].innerHTML = logs[i].getElementsByTagName('td')[1].innerHTML.replace(/Du hast (an|von) (.*) (\d)/, 'Du hast $1 <span id="transfer_'+i+'"><a href="userinfo.php?s=$2">$2</a></span><br>$3');
				var nick = RegExp.$2;
				logs[i].getElementsByTagName('td')[2].innerHTML = '<span id="transfer_'+i+'-2"><a href="message.php?to='+nick+'">Nachricht</a><br><a href="uebertragen.php?anrohstoffe='+nick+'">Übertragen</a></span>';
				addLinksToLogbuch(nick, 'transfer_'+i);
				dataFilterText += ' trade '+nick;
					if(trade_nicks.indexOf(nick) == -1) {
						trade_nicks.push(nick);
					}
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('auf dem Markt') != -1 && logs[i].getElementsByTagName('td')[1].textContent.indexOf('konnte nicht auf dem Markt verkauft werden') == -1) {
				// Marktein-/-verkauf (Profillinks)
				count['trade']++;
				logs[i].getElementsByTagName('td')[1].removeAttribute('colspan');
				logs[i].innerHTML += '<td class="center"></td>';
				logs[i].getElementsByTagName('td')[1].innerHTML = logs[i].getElementsByTagName('td')[1].innerHTML.replace(/von (.*) auf dem Markt (gekauft|zum)/, 'von <span id="market_'+i+'"><a href="userinfo.php?s=$1">$1</a></span> auf dem Markt $2');
				var nick = RegExp.$1;
				logs[i].getElementsByTagName('td')[2].innerHTML = '<span id="market_'+i+'-2"><a href="message.php?to='+nick+'">Nachricht</a><br><a href="uebertragen.php?anrohstoffe='+nick+'">Übertragen</a></span>';
				addLinksToLogbuch(nick, 'market_'+i);
				dataFilterText += ' trade '+nick;
					if(trade_nicks.indexOf(nick) == -1) {
						trade_nicks.push(nick);
					}
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('konnte nicht auf dem Markt verkauft werden') != -1) {
				// Marktrückläufe
					count['trade']++;
					dataFilterText += ' trade tradeReturn';
					filter['TradeReturn'] = true;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du bist für die Kämpfe im Tal angemeldet.') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Tal angemeldet, bist aber nicht verfügbar.') != -1) {
				// Talkampf (Anmeldung, nicht verfügbar)
				dataFilterText += ' combat TK';
				filter['TK'] = true;
			} else if(logs[i].getElementsByTagName('td')[0].textContent.indexOf(tkEnde+':00') != -1 && logs[i].getElementsByTagName('td')[1].textContent.indexOf('Runde 1 Start:') != -1) {
				// Talkampfeergebnis (Profillinks)
				var tkzeilen = logs[i].getElementsByTagName('td')[1].innerHTML.split('<br>');
				for(j=2; j<tkzeilen.length-2; j++) {
					if(tkzeilen[j].indexOf('Du triffst auf') != -1) {
						tkzeilen[j].search(/Du triffst auf (.*) \(Erfahrungspunkte: (\d*)/);
						var tkgegner = RegExp.$1;
						var tkgegnerep = RegExp.$2;
						tkzeilen[j] = 'Du triffst auf <span id=\"tk_'+i+'_'+j+'"><a href="userinfo.php?s='+encodeURI(tkgegner)+'">'+htmlspecialchars(tkgegner)+'</a></span> (Erfahrungspunkte: '+number_format(tkgegnerep, 0, ',', '.')+').';
						addLinksToLogbuch(tkgegner, 'tk_'+i+'_'+j);
					}
				}
				logs[i].getElementsByTagName('td')[1].innerHTML = tkzeilen.join('<br>');
				dataFilterText += ' combat TK';
				filter['TK'] = true;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('für Deinen Stamm zu kämpfen') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('vom Stammkampf ausgeschlossen') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du machst dich auf, um deinem Stamm im Kampf beizustehen') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du hättest jetzt kämpfen sollen') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('deswegen nimmst du auch nicht am Stammkampf teil.') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Ihr habt den Kampf gewonnen.') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Allerdings hast Du 3 Erfahrungspunkte und 3 frei verteilbare Punkte bekommen') != -1) {
				// Stammkampf (Anmeldung, Ausschluss, Start und Ergebnis)
				dataFilterText += ' combat SK';
				filter['SK'] = true;
				
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du hast Dich entschieden im Magierkampf anzutreten') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du wurdest beim Magierkampf durch ein Artefakt geschützt') != -1) {
				// Magierkampf (nur Anmeldung)
				dataFilterText += ' combat MK';
				filter['MK'] = true;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('angegriffen und hast gewonnen.') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('angegriffen und hast verloren.') != -1) {
				// Einzelkampf
				dataFilterText += 'combat EK';
				filter['EK'] = true;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Nahrungspunkte bekommen') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Wasser geholt') != -1 || logs[i].getElementsByTagName('td')[1].textContent.search(/mit nach\s*Hause/) != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('hergestellt') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('gebaut') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('geschabt') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('geweiht') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('trank gebraut') != -1) {
				// Arbeitsgang ("Nahrungspunkte bekommen": Nahrung, "Wasser geholt": Wasser, "mit nach Hause": Holz/Stein, "hergestellt": Kohle/Bronze/Artefakt, "gebaut": Kupfer/WW-Stufe, "geschabt": Zinn, "geweiht": Artefakt, "trank gebraut": Tränke
				dataFilterText += ' AG';
				filter['AG'] = true;
// ab hier: Rest (Knochenfunde, Funde (Ring/Wasser/Gold), Verletzungen/Artefaktschutz, Ringsuche, Wandern/"angekommen"
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du wurdest verletzt') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Stamm wurde von wilden Tieren angegriffen') != -1) {
				// Verletzung
				dataFilterText += ' Rest Verletzung';
				filter['Verletzung'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('dabei siehst du einen Knochen') != -1) {
				// Knochenfund
				dataFilterText += ' Rest Knochenfund';
				filter['Knochenfund'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Die Götter haben') != -1) {
				// Ringsuche
				dataFilterText += ' Rest Ringsuche';
				filter['Ringsuche'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du wurdest durch ein Artefakt geschützt') != -1) {
				// Artefaktschutz
				dataFilterText += ' Rest Artefaktschutz';
				filter['Artefaktschutz'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Du bist angekommen') != -1) {
				// Wandern
				dataFilterText += ' Rest Wandern';
				filter['Wandern'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('gefunden') != -1) {
				// Fundgold/-wasser/Ringfund
				dataFilterText += ' Rest Funde';
				filter['Funde'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('aus dem Lager genommen') != -1) {
				dataFilterText += 'Rest Lager';
				filter['Lager'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else if(logs[i].getElementsByTagName('td')[1].textContent.indexOf('Schneemann') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Rentier') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Mann in roten Kleidern') != -1 || logs[i].getElementsByTagName('td')[1].textContent.indexOf('Knecht Ruprecht') != -1) {
				dataFilterText += 'Rest Weihnachten';
				filter['Weihnachten'] = true;
				filter['Rest'] = true;
				count['Rest']++;
			} else {
				// Ohne Zuordnung
				dataFilterText += ' OhneZuordnung';
				filter['OhneZuordnung'] = true;
			}
			dataFilterText = dataFilterText.trim();
			if(dataFilterText.trim() != '') {
				logs[i].setAttribute('data-szsa-filter', htmlspecialchars(dataFilterText));
			}
			if(count[dataFilterText] == undefined) {
				count[dataFilterText] = 1;
			} else {
				count[dataFilterText]++;
			}
		}
		// Filter-Einstellungen
		var newDIV = document.createElement('div');
		newDIV.setAttribute('id', 'logbuchFilter');
		var logbuchFilterContent = '<h2 id="toggle_logbuchFilterOptions" class="pointer" data-szsa-toggle="logbuchFilterOptions" data-szsa-status="save">Logbuch-Filter <span class="triggerElementToggle'+((statusToggle['logbuchFilterOptions'] == 'none')? '':' opened')+'"></span></h2><br>';
		logbuchFilterContent += '<div id="logbuchFilterOptions" style="display: '+statusToggle['logbuchFilterOptions']+';"><form id="logbuchFilterForm">';
		logbuchFilterContent += '<div id="overallAll"><input id="overallAllButton" class="pointer" type="button" value="Alle abwählen"></div>';
		logbuchFilterContent += '<div id="pn" class="column"><b>Private Nachrichten</b><br>';
		if(pn_nicks.length > 0) {
			logbuchFilterContent += '<label class="layer1" for="pnAll"><input type="checkbox" id="pnAll" data-szsa-filter="PN" checked="checked">Alle ('+count['PN']+')</label><br>';
			pn_nicks.sort(nickSort);
			for(i=0; i<pn_nicks.length; i++) {
				logbuchFilterContent += '<label class="layer2" for="pn['+pn_nicks[i]+']"><input type="checkbox" id="pn['+pn_nicks[i]+']" data-szsa-filter="PN '+pn_nicks[i]+'" checked="checked">'+pn_nicks[i]+' ('+count['PN '+pn_nicks[i]]+')</label><br>';
			}
		} else {
			logbuchFilterContent += '<i>Keine in der aktuellen Ansicht!</i>';
		}
		logbuchFilterContent += '</div>';
		logbuchFilterContent += '<div id="trade" class="column"><b>Handel</b><br>';
		if(trade_nicks.length > 0 || filter['TradeReturn']) {
			logbuchFilterContent += '<label class="layer1" for="tradeAll"><input type="checkbox" id="tradeAll" data-szsa-filter="trade" checked="checked">Alle ('+count['trade']+')</label><br>';
			if(filter['TradeReturn']) {
				logbuchFilterContent += '<label class="layer2" for="tradeReturn"><input type="checkbox" id="tradeReturn" data-szsa-filter="trade tradeReturn" checked="checked">Marktrückläufe ('+count['trade tradeReturn']+')</label><br>';
			}
			trade_nicks.sort(nickSort);
			for(i=0; i<trade_nicks.length; i++) {
				logbuchFilterContent += '<label class="layer2" for="trade['+trade_nicks[i]+']"><input type="checkbox" id="trade['+trade_nicks[i]+']" data-szsa-filter="trade '+trade_nicks[i]+'" checked="checked">'+trade_nicks[i]+' ('+count['trade '+trade_nicks[i]]+')</label><br>';
			}
		} else {
			logbuchFilterContent += '<i>Keine in der aktuellen Ansicht!</i>';
		}
		logbuchFilterContent += '</div>';
		logbuchFilterContent += '<div id="other" class="column"><b>Sonstige</b><br>';
		if(filter['AG']) {
			logbuchFilterContent += '<div><label class="layer1" for="ag"><input type="checkbox" id="ag" data-szsa-filter="AG" checked="checked">Arbeitsgänge ('+count['AG']+')</label></div>';
		}
		if(filter['EK'] || filter['TK'] || filter['SK'] || filter['MK']) {
			logbuchFilterContent += '<div>';
			logbuchFilterContent += '<label class="layer1" for="combatAll"><input type="checkbox" id="combatAll" data-szsa-filter="combat" checked="checked">Kämpfe ('+(count['combat EK']+count['combat TK']+count['combat SK']+count['combat MK'])+')</label><br>';
			if(filter['EK']) {
				logbuchFilterContent += '<label class="layer2" for="combat[ek]"><input type="checkbox" id="combat[ek]" data-szsa-filter="combat EK" checked="checked">Einzelkampf ('+count['combat EK']+')</label><br>';
			}
			if(filter['TK']) {
				logbuchFilterContent += '<label class="layer2" for="combat[tk]"><input type="checkbox" id="combat[tk]" data-szsa-filter="combat TK" checked="checked">Talkampf ('+count['combat TK']+')</label><br>';
			}
			if(filter['SK']) {
				logbuchFilterContent += '<label class="layer2" for="combat[sk]"><input type="checkbox" id="combat[sk]" data-szsa-filter="combat SK" checked="checked">Stammkampf ('+count['combat SK']+')</label><br>';
			}
			if(filter['MK']) {
				logbuchFilterContent += '<label class="layer2" for="combat[mk]"><input type="checkbox" id="combat[mk]" data-szsa-filter="combat MK" checked="checked">Magierkampf ('+count['combat MK']+')</label><br>';
			}
			logbuchFilterContent += '</div>';
		}
		if(filter['Rest']) {
			logbuchFilterContent += '<div><label class="layer1" for="rest"><input type="checkbox" id="rest" data-szsa-filter="Rest" checked="checked">Rest ('+count['Rest']+')</label></div>';
		}
		if(filter['OhneZuordnung']) {
			logbuchFilterContent += '<br><div><label class="layer1" for="ohneZuordnung"><input type="checkbox" id="ohneZuordnung" data-szsa-filter="OhneZuordnung" checked="checked">Ohne Zuordnung ('+count['OhneZuordnung']+')</label><br><span class="orange">Bitte kopiere <a href="message.php?empf=87836">mir</a> diese Logbucheinträge, damit sie in Zukunft zugeordnet werden können. </span></div>';
		}
		logbuchFilterContent += '</div>';
		i = 1;
		while(content.getElementsByTagName('a')[i].textContent.indexOf('Hilfe') == -1) {
			i++;
		}
		if(content.getElementsByTagName('a')[i+1].textContent.indexOf('Stammnachrichten') != -1) i++;
		logbuchFilterContent += '</form></div>';
		newDIV.innerHTML = logbuchFilterContent;
		content.insertBefore(newDIV, content.getElementsByTagName('a')[i].nextSibling);
		document.getElementById('toggle_logbuchFilterOptions').addEventListener('click', toggleElement, false);
		document.getElementById('overallAllButton').addEventListener('click', function(e) {
			var newStatus = true;
			if(this.getAttribute('value') == 'Alle abwählen') {
				newStatus = false;
			}
			var items = document.getElementById('logbuchFilterForm').getElementsByTagName('input');
			for(var i=1; i<items.length; i++) {
				items[i].indeterminate = false;
				items[i].checked = newStatus;
			}
			var logbuchEntrys = document.getElementById('logbuch').getElementsByTagName('tr');
			for(i=1; i<logbuchEntrys.length; i++) {
				if(newStatus) {
					logbuchEntrys[i].removeAttribute('class');
				} else {
					logbuchEntrys[i].setAttribute('class', 'hide');
				}
			}
			this.setAttribute('value', (newStatus)? 'Alle abwählen' : 'Alle wählen');
		}, false);
		for(i=1; i<document.getElementById('logbuchFilterForm').getElementsByTagName('input').length; i++) {
			document.getElementById('logbuchFilterForm').getElementsByTagName('input')[i].addEventListener('change', function(e) {
				var newStatus = this.checked;
				var filterTerms = this.getAttribute('data-szsa-filter').split(' ');
				if(this.parentNode.getAttribute('class') == 'layer1') {
					var catItems = this.parentNode.parentNode.getElementsByTagName('input');
					for(var i=1; i<catItems.length; i++) {
						catItems[i].checked = newStatus;
					}
				} else {
					var catItems = this.parentNode.parentNode.getElementsByTagName('input');
					var catStatus = new Array();
					catStatus['true'] = 0;
					catStatus['false'] = 0;
					for(var i=1; i<catItems.length; i++) {
						if(catItems[i].checked) {
							catStatus['true']++;
						} else {
							catStatus['false']++;
						}
					}
					if(catStatus['true'] == 0) {
						catItems[0].checked = false;
						catItems[0].indeterminate = false;
					} else if(catStatus['false'] == 0) {
						catItems[0].checked = true;
						catItems[0].indeterminate = false;
					} else {
						catItems[0].indeterminate = true;
					}
				}
				var logbuchEntrys = document.getElementById('logbuch').getElementsByTagName('tr');
				logbuchLoop: for(i=1; i<logbuchEntrys.length; i++) {
					var filterThis = true;
					for(j=0; j<filterTerms.length; j++) {
						if(logbuchEntrys[i].getAttribute('data-szsa-filter').indexOf(filterTerms[j]) == -1) {
							filterThis = false;
							continue logbuchLoop;
						}
					}
					if(filterThis) {
						if(newStatus) {
							logbuchEntrys[i].removeAttribute('class');
						} else {
							logbuchEntrys[i].setAttribute('class', 'hide');
						}
					}
				}
			}, false);
		}
	}



// Nachrichten
	if(document.URL.indexOf('/message.php') != -1) {
		// Nachricht löschen, wenn abgeschickt
		var allEmpf = GM_getValue("Message_Empf", "#");
		if(content.textContent.search(/Deine Nachricht wurde an (.+) übermittelt./) != -1) {
			var currEmpf = RegExp.$1;
			if(allEmpf.indexOf('#'+currEmpf+'#') != -1) {
				GM_setValue("Message_Empf", allEmpf.replace('#'+currEmpf+'#', '#'));
				GM_deleteValue("Message_"+currEmpf);
			} else {
				GM_setValue("Message_Empf", allEmpf.replace('##', '#'));
				GM_deleteValue("Message_");
			}
		} else if(content.getElementsByTagName('input')[0] && content.getElementsByTagName('textarea')[0]) {
			content.getElementsByTagName('input')[0].setAttribute('id', 'empfeingabe');
			content.getElementsByTagName('textarea')[0].setAttribute('id', 'contenteingabe');
			// Lösche wiederherstellbare Nachricht
			if(getURLParameter('del') != null) {
				allEmpf = allEmpf.replace('#'+decodeURI(getURLParameter('del'))+'#', '#')
				GM_setValue("Message_Empf", allEmpf);
				GM_deleteValue("Message_"+decodeURI(getURLParameter('del')));
			}
			// Stelle ausgewählte Nachricht wieder her
			if(getURLParameter('to') != null) {
				document.getElementById('empfeingabe').value = decodeURI(getURLParameter('to'));
				document.getElementById('contenteingabe').value = GM_getValue("Message_"+decodeURI(getURLParameter('to')), "");
			}
			// Zeige Tabelle mit wiederherstellbaren Nachrichten
			if(allEmpf != '#') {
				allEmpf = allEmpf.split('#');
				var newDIV = document.createElement('div');
				newDIV.setAttribute('class', 'postrecovery');
				content.insertBefore(newDIV, content.getElementsByTagName('center')[0]);
				var newDIV_inner = 'Nicht abgeschickte Nachrichten wiederherstellen:<br><table border="1" style="margin:auto;"><tbody>';
				newDIV_inner += '<tr><td width="110px" class="center bold">User</td><td width="120px" class="center bold">Nachricht</td><td width="75px" class="center bold">Löschen?</td></tr>';
				for(i=1; i<allEmpf.length-1; i++) {
					if(allEmpf[i] == '') {
						newDIV_inner += '<tr><td class="center"><a href="message.php?to=">NoUser</a></td>';
					} else {
						newDIV_inner += '<tr><td class="center"><a href="message.php?to='+encodeURI(allEmpf[i])+'">'+htmlspecialchars(allEmpf[i])+'</a></td>';
					}
					newDIV_inner += '<td>'+htmlspecialchars(GM_getValue("Message_"+allEmpf[i], "").slice(0, 50))+'</td>';
					newDIV_inner += '<td class="center"><a href="message.php?del='+encodeURI(allEmpf[i])+'">Löschen</a></td></tr>';
				}
				newDIV_inner += '</tbody></table>';
				newDIV.innerHTML = newDIV_inner;
			}
			// Event-Listener
			document.getElementsByTagName('form')[0].addEventListener('submit', function(e) {
				var newEmpf = document.getElementById('empfeingabe').value.trim();
				var newMessage = document.getElementById('contenteingabe').value.trim();
				if(newEmpf == '' || newMessage == '') {
					e.preventDefault();
					alert('Empfänger oder Nachricht leer!');
					return false;
				} else {
					var allEmpf = GM_getValue("Message_Empf", "#");
					if(getURLParameter('to') == '') {
						GM_setValue("Message_Empf", allEmpf.replace('##', '#'));
						GM_deleteValue("Message_");
					}
					if(allEmpf.indexOf('#'+newEmpf+'#') == -1) {
						GM_setValue("Message_Empf", allEmpf+newEmpf+'#');
					}
					GM_setValue("Message_"+newEmpf, newMessage);
					return true;
				}
			}, false);
			document.getElementById('contenteingabe').addEventListener('keyup', function() {
				var newEmpf = document.getElementById('empfeingabe').value.trim();
				var newMessage = document.getElementById('contenteingabe').value.trim();
				var allEmpf = GM_getValue("Message_Empf", "#");
				if(newMessage == '') {
					GM_setValue("Message_Empf", allEmpf.replace('#'+newEmpf+'#', '#'));
					GM_deleteValue("Message_"+newEmpf);
				} else {
					if(allEmpf.indexOf('#'+newEmpf+'#') == -1) {
						GM_setValue("Message_Empf", allEmpf+newEmpf+'#');
					}
					GM_setValue("Message_"+newEmpf, newMessage);
				}
			}, false);
		}
	}



// Charakter
	if(document.URL.indexOf('/charakter.php') != -1 && content.textContent.indexOf('Hier kannst du deinen Steinzeitmenschen') != -1) {
		// aktuelle Position speichern
		content.textContent.search(/Du stehst im Moment auf Land\:\sX\:\s(\d{1,3})\sY\:\s(\d{1,3})/);
		var x = RegExp.$1;
		var y = RegExp.$2;
		GM_setValue("AktuellePosition", x+"#"+y);
		// Skillsystem
		var gesamt_cp = parseInt(content.getElementsByTagName('td')[4].textContent, 10);
		var kraft_ist = parseInt(content.getElementsByTagName('tr')[3].getElementsByTagName('td')[1].textContent, 10);
		var intelligenz_ist = parseInt(content.getElementsByTagName('tr')[4].getElementsByTagName('td')[1].textContent, 10);
		var geschwindigkeit_ist = parseInt(content.getElementsByTagName('tr')[5].getElementsByTagName('td')[1].textContent, 10);
		var list_ist = parseInt(content.getElementsByTagName('tr')[6].getElementsByTagName('td')[1].textContent, 10);
		var ausdauer_ist = parseInt(content.getElementsByTagName('tr')[7].getElementsByTagName('td')[1].textContent, 10);
		var geschick_ist = parseInt(content.getElementsByTagName('tr')[8].getElementsByTagName('td')[1].textContent, 10);
		var freie_cp = parseInt(content.getElementsByTagName('tr')[9].getElementsByTagName('td')[1].getElementsByTagName('b')[0].textContent, 10);
		var kraft_soll = parseFloat(Assi_Kraft.replace(/\,/, '.'));
		if(kraft_soll < 0 || isNaN(kraft_soll)) kraft_soll = 0;
		var intelligenz_soll = parseFloat(Assi_Intelligenz.replace(/\,/, '.'));
		if(intelligenz_soll < 0 || isNaN(intelligenz_soll)) kraft_soll = 0;
		var geschwindigkeit_soll = parseFloat(Assi_Geschwindigkeit.replace(/\,/, '.'));
		if(geschwindigkeit_soll < 0 || isNaN(geschwindigkeit_soll)) kraft_soll = 0;
		var list_soll = parseFloat(Assi_List.replace(/\,/, '.'));
		if(list_soll < 0 || isNaN(list_soll)) kraft_soll = 0;
		var ausdauer_soll = parseFloat(Assi_Ausdauer.replace(/\,/, '.'));
		if(ausdauer_soll < 0 || isNaN(ausdauer_soll)) kraft_soll = 0;
		var geschick_soll = parseFloat(Assi_Geschick.replace(/\,/, '.'));
		if(geschick_soll < 0 || isNaN(geschick_soll)) kraft_soll = 0;
		var gesamt_soll = kraft_soll+intelligenz_soll+geschwindigkeit_soll+list_soll+ausdauer_soll+geschick_soll;
		if(gesamt_soll == 0) gesamt_soll = 1;
		kraft_soll = kraft_soll/gesamt_soll;
		intelligenz_soll = intelligenz_soll/gesamt_soll;
		geschwindigkeit_soll = geschwindigkeit_soll/gesamt_soll;
		list_soll = list_soll/gesamt_soll;
		ausdauer_soll = ausdauer_soll/gesamt_soll;
		geschick_soll = geschick_soll/gesamt_soll;
		content.getElementsByTagName('tbody')[1].innerHTML += '<tr bgcolor="123014"><td>CP/EP-Verhältnis:</td><td>'+number_format((gesamt_cp-freie_cp)/ep_gesamt, 5)+'</td></tr>';
		content.getElementsByTagName('tr')[10].getElementsByTagName('td')[0].getElementsByTagName('b')[0].innerHTML = 'Freie CP:';
		content.getElementsByTagName('tr')[4].getElementsByTagName('td')[0].removeAttribute('width');
		content.getElementsByTagName('tbody')[2].innerHTML = '<tr bgcolor="173F1A"><td width="*" class="center bold">Fertigkeit</td><td width="26%" class="center bold">Charakterpunkte</td>'+((content.getElementsByTagName('input').length > 1)? '<td width="17%" class="center"><br></td>' : '')+'<td width="12%" class="center bold">IST</td><td width="12%" class="center bold">SOLL</td></tr>'+content.getElementsByTagName('tbody')[2].innerHTML;
		content.getElementsByTagName('table')[2].getElementsByTagName('tr')[1].innerHTML += '<td class="right">'+number_format(kraft_ist/(gesamt_cp-freie_cp)*100, 2, ',', '.', true)+' %</td><td class="right">'+number_format(kraft_soll*100, 2, ',', '.', true)+' %</td>';
		content.getElementsByTagName('table')[2].getElementsByTagName('tr')[2].innerHTML += '<td class="right">'+number_format(intelligenz_ist/(gesamt_cp-freie_cp)*100, 2, ',', '.', true)+' %</td><td class="right">'+number_format(intelligenz_soll*100, 2, ',', '.', true)+' %</td>';
		content.getElementsByTagName('table')[2].getElementsByTagName('tr')[3].innerHTML += '<td class="right">'+number_format(geschwindigkeit_ist/(gesamt_cp-freie_cp)*100, 2, ',', '.', true)+' %</td><td class="right">'+number_format(geschwindigkeit_soll*100, 2, ',', '.', true)+' %</td>';
		content.getElementsByTagName('table')[2].getElementsByTagName('tr')[4].innerHTML += '<td class="right">'+number_format(list_ist/(gesamt_cp-freie_cp)*100, 2, ',', '.', true)+' %</td><td class="right">'+number_format(list_soll*100, 2, ',', '.', true)+' %</td>';
		content.getElementsByTagName('table')[2].getElementsByTagName('tr')[5].innerHTML += '<td class="right">'+number_format(ausdauer_ist/(gesamt_cp-freie_cp)*100, 2, ',', '.', true)+' %</td><td class="right">'+number_format(ausdauer_soll*100, 2, ',', '.', true)+' %</td>';
		content.getElementsByTagName('table')[2].getElementsByTagName('tr')[6].innerHTML += '<td class="right">'+number_format(geschick_ist/(gesamt_cp-freie_cp)*100, 2, ',', '.', true)+' %</td><td class="right">'+number_format(geschick_soll*100, 2, ',', '.', true)+' %</td>';
		for(i=1; i<=6; i++) {
			content.getElementsByTagName('table')[2].getElementsByTagName('tr')[i].getElementsByTagName('td')[1].innerHTML = number_format(content.getElementsByTagName('table')[2].getElementsByTagName('tr')[i].getElementsByTagName('td')[1].textContent);
		}
		if(content.getElementsByTagName('input').length > 1) {
			// CP-Verteilung
			var kraft_ad = 0;
			var intelligenz_ad = 0;
			var geschwindigkeit_ad = 0;
			var list_ad = 0;
			var ausdauer_ad = 0;
			var geschick_ad = 0;
			for(i=freie_cp; i>0; i--) {
				var fertigkeiten = new Array('Kraft', 'Intelligenz', 'Geschwindigkeit', 'List', 'Ausdauer', 'Geschick');
				var potenziale = new Array();
				potenziale[fertigkeiten[0]] = 1-((kraft_ist+kraft_ad)/(gesamt_cp*kraft_soll));
				potenziale[fertigkeiten[1]] = 1-((intelligenz_ist+intelligenz_ad)/(gesamt_cp*intelligenz_soll));
				potenziale[fertigkeiten[2]] = 1-((geschwindigkeit_ist+geschwindigkeit_ad)/(gesamt_cp*geschwindigkeit_soll));
				potenziale[fertigkeiten[3]] = 1-((list_ist+list_ad)/(gesamt_cp*list_soll));
				potenziale[fertigkeiten[4]] = 1-((ausdauer_ist+ausdauer_ad)/(gesamt_cp*ausdauer_soll));
				potenziale[fertigkeiten[5]] = 1-((geschick_ist+geschick_ad)/(gesamt_cp*geschick_soll));
				for(j=0; j<fertigkeiten.length; j++) {
					for(k=j+1; k<fertigkeiten.length; k++) {
						if(potenziale[fertigkeiten[j]] < potenziale[fertigkeiten[k]]) {
							var z = fertigkeiten[j];
							fertigkeiten[j] = fertigkeiten[k];
							fertigkeiten[k] = z;
						}
					}
				}
				switch(fertigkeiten[0]) {
					case 'Kraft':
						kraft_ad++;
						break;
					case 'Intelligenz':
						intelligenz_ad++;
						break;
					case 'Geschwindigkeit':
						geschwindigkeit_ad++;
						break;
					case 'List':
						list_ad++;
						break;
					case 'Ausdauer':
						ausdauer_ad++;
						break;
					case 'Geschick':
						geschick_ad++;
						break;
					default:
						break;
				}
			}
			document.getElementsByName('kraft')[0].value = kraft_ad;
			document.getElementsByName('intelligenz')[0].value = intelligenz_ad;
			document.getElementsByName('geschwindigkeit')[0].value = geschwindigkeit_ad;
			document.getElementsByName('list')[0].value = list_ad;
			document.getElementsByName('ausdauer')[0].value = ausdauer_ad;
			document.getElementsByName('geschick')[0].value = geschick_ad;
		}
		// erforderliche CP bis Skillung erreicht
		var highestSkill = new Array();
		highestSkill.push(new Array((kraft_ist/(gesamt_cp*kraft_soll)), kraft_ist, kraft_soll));
		highestSkill.push(new Array((intelligenz_ist/(gesamt_cp*intelligenz_soll)), intelligenz_ist, intelligenz_soll));
		highestSkill.push(new Array((geschwindigkeit_ist/(gesamt_cp*geschwindigkeit_soll)), geschwindigkeit_ist, geschwindigkeit_soll));
		highestSkill.push(new Array((list_ist/(gesamt_cp*list_soll)), list_ist, list_soll));
		highestSkill.push(new Array((ausdauer_ist/(gesamt_cp*ausdauer_soll)), ausdauer_ist, ausdauer_soll));
		highestSkill.push(new Array((geschick_ist/(gesamt_cp*geschick_soll)), geschick_ist, geschick_soll));
		for(i=0; i<highestSkill.length; i++) {
			for(j=i+1; j<highestSkill.length; j++) {
				if(highestSkill[i][0] < highestSkill[j][0]) {
					var z = highestSkill[i];
					highestSkill[i] = highestSkill[j];
					highestSkill[j] = z;
				}
			}
		}
		var erforderliche_cp = 0;
		(highestSkill[0][2] == kraft_soll)? erforderliche_cp += kraft_ist : erforderliche_cp += Math.ceil(highestSkill[0][1]/highestSkill[0][2]*kraft_soll);
		(highestSkill[0][2] == intelligenz_soll)? erforderliche_cp += intelligenz_ist : erforderliche_cp += Math.ceil(highestSkill[0][1]/highestSkill[0][2]*intelligenz_soll);
		(highestSkill[0][2] == geschwindigkeit_soll)? erforderliche_cp += geschwindigkeit_ist : erforderliche_cp += Math.ceil(highestSkill[0][1]/highestSkill[0][2]*geschwindigkeit_soll);
		(highestSkill[0][2] == list_soll)? erforderliche_cp += list_ist : erforderliche_cp += Math.ceil(highestSkill[0][1]/highestSkill[0][2]*list_soll);
		(highestSkill[0][2] == ausdauer_soll)? erforderliche_cp += ausdauer_ist : erforderliche_cp += Math.ceil(highestSkill[0][1]/highestSkill[0][2]*ausdauer_soll);
		(highestSkill[0][2] == geschick_soll)? erforderliche_cp += geschick_ist : erforderliche_cp += Math.ceil(highestSkill[0][1]/highestSkill[0][2]*geschick_soll);
		content.getElementsByTagName('tbody')[1].innerHTML += '<tr bgcolor="173f1a"><td>benötigte CP für SOLL-Skillung:</td><td>'+number_format(erforderliche_cp)+' (noch: '+number_format(erforderliche_cp-gesamt_cp)+')</td></tr>';
	}



// Inventar
	// Ausrüstung auslesen
	if(!document.getElementsByName('zufallscode')[0]) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/inventar.php",
			onload: function(response) {
				// in der Hand
				var anfang = response.responseText.indexOf('Diesen Gegenstand hältst du in der Hand:');
				var ende = response.responseText.indexOf('Diesen Ring hast du am Finger:');
				if(anfang != -1 && ende != -1) {
					var html = response.responseText.slice(anfang, ende);
					html.search(/<b>([\S\s]*)<\/b>/);
					var handAkt = RegExp.$1.replace(/<[\S\s]*>/g, '').trim();
					if(hand.indexOf(handAkt) == -1) {
						if(handAkt == 'nichts') {
							handAkt = '<span class="green">nichts</span>';
						} else if(waffen.indexOf(handAkt) != -1) {
							handAkt = '<span class="red">'+handAkt+'</span>';
						} else if(werkzeuge.indexOf(handAkt) != -1) {
							handAkt = '<span class="yellow">'+handAkt+'</span>';
						}
						GM_setValue("Hand", handAkt);
						if(document.getElementById('hand')) document.getElementById('hand').innerHTML = handAkt;
					}
				}
				// am Finger
				anfang = response.responseText.indexOf('Diesen Ring hast du am Finger:');
				ende = response.responseText.indexOf('Ringe in der Truhe:');
				if(anfang != -1 && ende != -1) {
					html = response.responseText.slice(anfang, ende);
					html.search(/<b>([\S\s]*)<\/b>/);
					var fingerAkt = RegExp.$1.replace(/<[\S\s]*>/g, '').trim();
					if(finger.indexOf(fingerAkt) == -1) {
						if(fingerAkt == 'keinen') {
							fingerAkt = '<span class="green">nichts</span>';
						} else if(ringe.indexOf(fingerAkt) != -1) {
							fingerAkt = '<span class="green">'+fingerAkt+'</font>';
						}
						GM_setValue("Finger", fingerAkt);
						if(document.getElementById('finger')) document.getElementById('finger').innerHTML = fingerAkt;
					}
				}
			}
		});
	}
	// Inventar-Seite
	if(document.URL.indexOf('/inventar.php') != -1 && document.URL.indexOf('aktion') == -1 && content.textContent.indexOf('Inventar aufräumen') != -1) {
		content.innerHTML = content.innerHTML.replace(/\s*<br>\s*<br>\s*<br>\s*<br>\s*<br>\s*/g, '<br><br><br><br>').replace(/\s*<br>\s*<br>\s*<br>\s*<br>\s*/g, '<br><br><br>').replace(/\s*<br>\s*<br>\s*<br>\s*/g, '<br><br>');
		// vorhandenes Inventar speichern
		if(content.textContent.indexOf('Kupfer-Hacke') != -1) {
			GM_setValue("Kupfer-Hacke", true);
		} else {
			GM_setValue("Kupfer-Hacke", false);
		}
		if(content.textContent.indexOf('Kupfer-Schaber') != -1) {
			GM_setValue("Kupfer-Schaber", true);
		} else {
			GM_setValue("Kupfer-Schaber", false);
		}
		if(content.textContent.indexOf('Kupfer-Keil') != -1) {
			GM_setValue("Kupfer-Keil", true);
		} else {
			GM_setValue("Kupfer-Keil", false);
		}
		if(content.textContent.indexOf('Zinn-Schaber') != -1) {
			GM_setValue("Zinn-Schaber", true);
		} else {
			GM_setValue("Zinn-Schaber", false);
		}
		if(content.textContent.indexOf('Zinn-Keil') != -1) {
			GM_setValue("Zinn-Keil", true);
		} else {
			GM_setValue("Zinn-Keil", false);
		}
		if(content.textContent.indexOf('Wasserring') != -1) {
			GM_setValue("Wasserring", true);
		} else {
			GM_setValue("Wasserring", false);
		}
		if(content.textContent.indexOf('Jagdring') != -1) {
			GM_setValue("Jagdring", true);
		} else {
			GM_setValue("Jagdring", false);
		}
		if(content.textContent.indexOf('Talkampfring') != -1) {
			GM_setValue("Talkampfring", true);
		} else {
			GM_setValue("Talkampfring", false);
		}
		if(content.textContent.indexOf('Stammkampfring') != -1) {
			GM_setValue("Stammkampfring", true);
		} else {
			GM_setValue("Stammkampfring", false);
		}
		if(content.innerHTML.indexOf('Verringert deine Müdigkeit um 80%') != -1) {
			var html = content.innerHTML.slice(content.innerHTML.indexOf('Verringert deine Müdigkeit um 80%'));
			var anfang = html.indexOf('inventar.php?aktion=trinken2&amp;trankid=');
			var ende = html.indexOf('Trinken');
			starkerWachtrankID = html.slice(anfang+41, ende-2)
			GM_setValue("starkerWachtrank", starkerWachtrankID);
		} else {
			starkerWachtrankID = 0;
			GM_setValue("starkerWachtrank", 0);
		}
		if(content.innerHTML.indexOf('Verringert deine Müdigkeit um 20%') != -1) {
			var html = content.innerHTML.slice(content.innerHTML.indexOf('Verringert deine Müdigkeit um 20%'));
			var anfang = html.indexOf('inventar.php?aktion=trinken2&amp;trankid=');
			var ende = html.indexOf('Trinken');
			GM_setValue("Wachtrank", html.slice(anfang+41, ende-2));
		} else {
			GM_setValue("Wachtrank", 0);
		}
		// Ringe auslesen
		var ringeInventar = new Array();
		var ringeZeilen = content.getElementsByTagName('table')[3].getElementsByTagName('tr');
		for(i=1; i<ringeZeilen.length; i++) {
			var temp = new Array();
			temp[0] = ringeZeilen[i].getElementsByTagName('td')[0].textContent.trim();
			ringeZeilen[i].getElementsByTagName('a')[0].getAttribute('href').search(/id=(\d+)/);
			temp[1] = RegExp.$1;
			temp[2] = ringeZeilen[i].getElementsByTagName('td')[1].textContent.trim();
			temp[3] = ringeZeilen[i].getElementsByTagName('img')[0].getAttribute('src').trim();
			ringeInventar.push(temp);
		}
		// Waffen auslesen
		var waffenInventar = new Array();
		var waffenZeilen = content.getElementsByTagName('table')[4].getElementsByTagName('tr');
		for(i=1; i<waffenZeilen.length; i++) {
			var temp = new Array();
			temp[0] = waffenZeilen[i].getElementsByTagName('td')[0].textContent.trim()
			waffenZeilen[i].getElementsByTagName('a')[0].getAttribute('href').search(/id=(\d+)/);
			temp[1] = RegExp.$1;
			temp[2] = waffenZeilen[i].getElementsByTagName('td')[1].textContent.trim();
			temp[3] = waffenZeilen[i].getElementsByTagName('img')[0].getAttribute('src').trim();
			waffenInventar.push(temp);
		}
		// Werkzeug auslesen
		var werkzeugeInventar = new Array();
		var werkzeugeZeilen = content.getElementsByTagName('table')[5].getElementsByTagName('tr');
		for(i=1; i<werkzeugeZeilen.length; i++) {
			var temp = new Array();
			temp[0] = werkzeugeZeilen[i].getElementsByTagName('td')[0].textContent.trim();
			werkzeugeZeilen[i].getElementsByTagName('a')[0].getAttribute('href').search(/id=(\d+)/);
			temp[1] = RegExp.$1;
			temp[2] = werkzeugeZeilen[i].getElementsByTagName('td')[1].textContent.trim();
			temp[3] = werkzeugeZeilen[i].getElementsByTagName('img')[0].getAttribute('src').trim();
			werkzeugeInventar.push(temp);
		}
		// Tränke auslesen
		var traenkeInventar = new Array();
		var traenkeZeilen = content.getElementsByTagName('table')[6].getElementsByTagName('tr');
		for(i=1; i<traenkeZeilen.length; i++) {
			var temp = new Array();
			temp[0] = traenkeZeilen[i].getElementsByTagName('td')[0].textContent.trim();
			traenkeZeilen[i].getElementsByTagName('a')[0].getAttribute('href').search(/id=(\d+)/);
			temp[1] = RegExp.$1;
			temp[2] = parseInt(traenkeZeilen[i].getElementsByTagName('td')[1].textContent.trim(), 10);
			temp[3] = traenkeZeilen[i].getElementsByTagName('img')[0].getAttribute('src').trim();
			traenkeInventar.push(temp);
		}
		// Inventarcontent ändern
		var contentHTML = content.innerHTML;
		var ende = contentHTML.indexOf('Ringe in der Truhe');
		contentHTML = contentHTML.slice(0, ende);
		// Grafikhöhe anpassen
		var inventarIMGheight = Assi_InventarIMGheight;
		if(inventarIMGheight < 0 || isNaN(inventarIMGheight)) inventarIMGheight = 0;
		contentHTML += '<b>Ringe:</b><br>';
		var tempContent = '';
		var ringe2 = ringe.split('#');
		for(i=0; i<ringe2.length; i++) {
			for(j=0; j<ringeInventar.length; j++) {
				if(ringe2[i] == ringeInventar[j][0]) {
					tempContent += '<tr><td>'+ringeInventar[j][0]+'</td><td class="center">'+ringeInventar[j][2]+'</td><td><img height='+inventarIMGheight+' src="'+ringeInventar[j][3]+'"></td><td><a href="inventar.php?aktion=take&id='+ringeInventar[j][1]+'&artgegen=ring">Anlegen</a></td><td><a href="inventar.php?aktion=verkaufen&id='+ringeInventar[j][1]+'">Verkaufen</a></td><td><a href="inventar.php?aktion=uebertragen&id='+ringeInventar[j][1]+'">Übertragen</a></td></tr>';
				}
			}
		}
		if(tempContent != '') {
			contentHTML += '<table class="inventar" border="1"><thead><tr bgcolor="#173f1a"><td>Name</td><td>Anzahl</td><td>Bild</td><td>Anlegen</td><td>Verkaufen</td><td>Übertragen</td></tr></thead></tbody>';
			contentHTML += tempContent;
			contentHTML += '</tbody></table>';
		} else {
			contentHTML += 'Keine Ringe vorhanden<br>';
		}
		contentHTML += '<br><br><b>Waffen:</b><br>';
		var tempContent = '';
		var waffen2 = waffen.split('#');
		waffen2.reverse();
		for(i=0; i<waffen2.length; i++) {
			for(j=0; j<waffenInventar.length; j++) {
				if(waffen2[i] == waffenInventar[j][0]) {
					tempContent += '<tr><td>'+waffenInventar[j][0]+'</td><td class="center">'+waffenInventar[j][2]+'</td><td><img height='+inventarIMGheight+' src="'+waffenInventar[j][3]+'"></td><td><a href="inventar.php?aktion=take&id='+waffenInventar[j][1]+'&artgegen=hand">Anlegen</a></td><td><a href="inventar.php?aktion=verkaufen&id='+waffenInventar[j][1]+'">Verkaufen</a></td><td><a href="inventar.php?aktion=uebertragen&id='+waffenInventar[j][1]+'">Übertragen</a></td><td><a href="inventar.php?aktion=stamm&id='+waffenInventar[j][1]+'">Einlagern</a></td></tr>';
				}
			}
		}
		if(tempContent != '') {
			contentHTML += '<table class="inventar" border="1"><thead><tr bgcolor="#173f1a"><td>Name</td><td>Anzahl</td><td>Bild</td><td>Anlegen</td><td>Verkaufen</td><td>Übertragen</td><td>Stammlager</td></tr></thead></tbody>';
			contentHTML += tempContent;
			contentHTML += '</tbody></table>';
		} else {
			contentHTML += 'Keine Waffen vorhanden<br>';
		}
		contentHTML += '<br><br><b>Werkzeuge:</b><br>';
		var tempContent = '';
		var werkzeuge2 = werkzeuge.split('#');
		for(i=0; i<werkzeuge2.length; i++) {
			for(j=0; j<werkzeugeInventar.length; j++) {
				if(werkzeuge2[i] == werkzeugeInventar[j][0]) {
					tempContent += '<tr><td>'+werkzeugeInventar[j][0]+'</td><td class="center">'+werkzeugeInventar[j][2]+'</td><td><img height='+inventarIMGheight+' src="'+werkzeugeInventar[j][3]+'"></td><td><a href="inventar.php?aktion=take&id='+werkzeugeInventar[j][1]+'&artgegen=hand">Anlegen</a></td><td><a href="inventar.php?aktion=verkaufen&id='+werkzeugeInventar[j][1]+'">Verkaufen</a></td><td><a href="inventar.php?aktion=uebertragen&id='+werkzeugeInventar[j][1]+'">Übertragen</a></td><td><a href="inventar.php?aktion=stamm&id='+werkzeugeInventar[j][1]+'">Einlagern</a></td></tr>';
				}
			}
		}
		if(tempContent != '') {
			contentHTML += '<table class="inventar" border="1"><thead><tr bgcolor="#173f1a"><td>Name</td><td>Anzahl</td><td>Bild</td><td>Anlegen</td><td>Verkaufen</td><td>Übertragen</td><td>Stammlager</td></tr></thead></tbody>';
			contentHTML += tempContent;
			contentHTML += '</tbody></table>';
		} else {
			contentHTML += 'Keine Werkzeuge vorhanden<br>';
		}
		contentHTML += '<br><br><b>Tränke:</b><br>';
		var tempContent = '';
		var traenke2 = Assi_InventarTrankreihenfolge.split('#');
		for(i=0; i<traenke2.length; i++) {
			for(j=0; j<traenkeInventar.length; j++) {
				if(traenke2[i] == traenkeInventar[j][0]) {
					// Standardverkaufsmenge für Verkaufen-URL bestimmen
					var menge = '';
					Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] = parseInt(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]], 10);
					if(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] > 0) {
						if(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] < traenkeInventar[j][2]) {
							menge = Assi_MarktVerkaufsmenge[traenkeInventar[j][0]];
						} else {
							menge = traenkeInventar[j][2];
						}
					} else if(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] <= 0) {
						if(traenkeInventar[j][2]+Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] > 0) {
							menge = traenkeInventar[j][2]+Assi_MarktVerkaufsmenge[traenkeInventar[j][0]];
						} else {
							menge = 0
						}
					}
					tempContent += '<tr><td>'+traenkeInventar[j][0]+'</td><td class="center">'+traenkeInventar[j][2]+'</td><td><img height='+inventarIMGheight+' src="'+traenkeInventar[j][3]+'"></td><td><a href="inventar.php?aktion=trinken2&trankid='+traenkeInventar[j][1]+'">Trinken</a></td><td><a href="inventar.php?aktion=trankverkaufen&id='+traenkeInventar[j][1]+((menge != '')? '&menge='+menge : '')+((Assi_MarktVerkaufspreis[traenkeInventar[j][0]] != '')? '&preis='+Assi_MarktVerkaufspreis[traenkeInventar[j][0]] : '')+'">Verkaufen</a>'+((menge != '' && Assi_MarktVerkaufspreis[traenkeInventar[j][0]] != '')? '<br>('+menge+' für '+Assi_MarktVerkaufspreis[traenkeInventar[j][0]]+')' : '')+'</td><td><a href="inventar.php?aktion=uebertragen&id='+traenkeInventar[j][1]+'">Übertragen</a></td><td><a href="inventar.php?aktion=trankstamm&id='+traenkeInventar[j][1]+'">Einlagern</a></td></tr>';
					traenkeInventar.splice(j, 1);
					j--;
				}
			}
		}
		// Tränke, die in den Einstellungen vergessen wurden
		for(j=0; j<traenkeInventar.length; j++) {
			// Standardverkaufsmenge für Verkaufen-URL bestimmen
			var menge = '';
			Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] = parseInt(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]], 10);
			if(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] > 0) {
				if(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] < traenkeInventar[j][2]) {
					menge = Assi_MarktVerkaufsmenge[traenkeInventar[j][0]];
				} else {
					menge = traenkeInventar[j][2];
				}
			} else if(Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] <= 0) {
				if(traenkeInventar[j][2]+Assi_MarktVerkaufsmenge[traenkeInventar[j][0]] > 0) {
					menge = traenkeInventar[j][2]+Assi_MarktVerkaufsmenge[traenkeInventar[j][0]];
				} else {
					menge = 0
				}
			}
			tempContent += '<tr><td>'+traenkeInventar[j][0]+'</td><td class="center">'+traenkeInventar[j][2]+'</td><td><img height='+inventarIMGheight+' src="'+traenkeInventar[j][3]+'"></td><td><a href="inventar.php?aktion=trinken2&trankid='+traenkeInventar[j][1]+'">Trinken</a></td><td><a href="inventar.php?aktion=trankverkaufen&id='+traenkeInventar[j][1]+((menge != '')? '&menge='+menge : '')+((Assi_MarktVerkaufspreis[traenkeInventar[j][0]] != '')? '&preis='+Assi_MarktVerkaufspreis[traenkeInventar[j][0]] : '')+'">Verkaufen</a>'+((menge != '' && Assi_MarktVerkaufspreis[traenkeInventar[j][0]] != '')? '<br>('+menge+' für '+Assi_MarktVerkaufspreis[traenkeInventar[j][0]]+')' : '')+'</td><td><a href="inventar.php?aktion=uebertragen&id='+traenkeInventar[j][1]+'">Übertragen</a></td><td><a href="inventar.php?aktion=trankstamm&id='+traenkeInventar[j][1]+'">Einlagern</a></td></tr>';
		}
		if(tempContent != '') {
			contentHTML += '<table class="inventar" border="1"><thead><tr bgcolor="#173f1a"><td>Name</td><td>Anzahl</td><td>Bild</td><td>Trinken</td><td>Verkaufen</td><td>Übertragen</td><td>Stammlager</td></tr></thead></tbody>';
			contentHTML += tempContent;
			contentHTML += '</tbody></table>';
		} else {
			contentHTML += 'Keine Tränke vorhanden<br>';
		}
		contentHTML += '<br><br><center>[<a href="inventar.php?aktion=zusammenfassen">Inventar aufräumen</a>]</center><br>';
		content.innerHTML = contentHTML;
		if(getURLParameter('szsa') == 'stwach') {
			if(starkerWachtrankID != 0) {
				window.location.href = 'http://szs.looki.de/inventar.php?aktion=trinken2&trankid='+starkerWachtrankID;
			} else {
				alert("Du besitzt keinen starken Wachtrank mehr!");
			}
		}
	// "Trinken"-Button fokusieren
	} else if(document.URL.indexOf('inventar.php?aktion=trinken2') != -1 && content.textContent.indexOf('Wie oft möchtest Du') != -1) {
		content.getElementsByTagName('input')[2].focus();
	// Standardverkaufsmengen und -preise für Trankverkäufe auslesen/eintrangen
	} else if(document.URL.indexOf('inventar.php?aktion=trankverkaufen') != -1 && content.textContent.indexOf('Wie oft möchtest du diesen Trank auf dem Markt anbieten ?') != -1) {
		document.getElementsByName('verkaufanzahl')[0].value = getURLParameter('menge');
		document.getElementsByName('preis')[0].value = getURLParameter('preis');
		content.getElementsByTagName('input')[3].focus();
	// Trank-ID vom st. Wachtrank nicht gefunden -> Fehlernummer
	} else if(document.URL.indexOf('inventar.php') != -1 && content.textContent.indexOf('Es ist ein Fehler aufgetreten. Fehlernummer:') != -1 && getURLParameter('szsa') == 'stwach') {
		window.location.href = 'http://szs.looki.de/inventar.php?szsa=stwach';
	// Waffe/Ring ablegen -> bereits Waffe in der Hand/Ring am Finger
	} else if(document.URL.indexOf('inventar.php?aktion=take') != -1 && (content.textContent.indexOf('Du hast schon etwas in der Hand, bitte lege diesen Gegenstand erst in die Truhe.') != -1 || content.textContent.indexOf('Du trägst bereits einen Ring.') != -1)) {
		content.innerHTML += '<br><br><span class="yellow"><b>SZS-Assistent:</b> Es wird versucht die Gegenstände zu tauschen.<br>';
		GM_xmlhttpRequest({
			method: "POST",
			url: "http://szs.looki.de/inventar.php",
			data: "aktion=intruhe&artgegen="+getURLParameter('artgegen'),
			headers: { "Content-Type": "application/x-www-form-urlencoded" },
			onload: function(response) {
				var anfang = response.responseText.indexOf('<!-- INHALT ANFANG -->');
				var ende = response.responseText.indexOf('<!-- INHALT ENDE -->');
				var html = response.responseText.slice(anfang, ende);
				if(html.indexOf('Du hast den Gegenstand in die Truhe gelegt.') != -1) {
					window.location.href = document.URL;
				} else {
					content.innerHTML += '<br><br><span class="red"><b>Es ist ein Fehler aufgetreten!</b><br><br>Content:<br></span>'+html;
				}
			}
		});
	// schnellere Weiterleitung zurück zum Invenatar
	} else if(document.URL.indexOf('inventar.php') != -1 && (content.textContent.indexOf('falls dein Browser keine automatische Weiterleitung') != -1 || content.getElementsByTagName('meta')[0])) {
		window.setTimeout("window.location.href = 'http://szs.looki.de/inventar.php';", 50);
	// Direktlinks für Waffenopfer
	} else if(document.URL.indexOf('inventar.php') != -1 && content.textContent.indexOf('Die Götter erlauben Dir das Tragen dieser Waffe nicht.') != -1) {
		content.innerHTML += '<br><br><span class="yellow">Direktlinks:<br>- <a href="altar.php?do=waffenopfer&auswahl=1&szsa=link&url='+encodeURIComponent(document.URL)+'">kleines Waffenopfer</a> (Kosten: 50 Zinn + 50 Wasser)<br>- <a href="altar.php?do=waffenopfer&auswahl=2&szsa=link&url='+encodeURIComponent(document.URL)+'">großes Waffenopfer</a> (Kosten: 50 Bronze + 50 Wasser)</span>';
	}



// Artefakte
	if(!document.getElementsByName('zufallscode')[0]) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/artefakt.php",
			onload: function(response) {
				if(response.responseText.indexOf('Diese Artefakte hast du angelegt:') != -1) {
					var anfang = response.responseText.indexOf('Diese Artefakte hast du angelegt:');
					var html = response.responseText.slice(anfang);
					var zeilen = html.split('<tr');
					i = 1;
					while(zeilen[i].indexOf('noch bis zum') != -1) {
						// Drachenblut
						if(zeilen[i].indexOf('Drachenblut') != -1) {
							zeilen[i].search(/<span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
							var artefaktDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
							GM_setValue("DrachenblutTime", artefaktDate.getTime().toString());
						// Glück
						} else if(zeilen[i].indexOf('Glück') != -1) {
							zeilen[i].search(/<span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
							var artefaktDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
							GM_setValue("GlueckTime", artefaktDate.getTime().toString());
						// Meisterschmied
						} else if(zeilen[i].indexOf('Meisterschmied') != -1) {
							zeilen[i].search(/<span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
							var artefaktDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
							GM_setValue("MeisterschmiedTime", artefaktDate.getTime().toString());
						// Gesundheit
						} else if(zeilen[i].indexOf('Gesundheit') != -1) {
							zeilen[i].search(/<span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
							var artefaktDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
							GM_setValue("GesundheitTime", artefaktDate.getTime().toString());
						}
						i++;
					}
				}
			}
		});
	}



// Altar
	if(document.URL.indexOf('/altar.php') != -1 && document.URL.indexOf('szsa=link') != -1 && (content.textContent.indexOf('Die Götter haben Dein Opfer angenommen.') != -1 || content.textContent.indexOf('Die Götter haben dein Opfer akzeptiert.') != -1)) {
		content.innerHTML += '<br><br><span class="yellow"><b>SZS-Assistent:</b> Du wirst auf die vorherige Seite weitergeleitet.<br>';
		window.setTimeout("window.location.href = '"+decodeURIComponent(getURLParameter('url'))+"';", 100);
	}



// Karte
	if(document.URL.indexOf('/karte.php') != -1) {
		// aktuelle Position speichern
		if(content.getElementsByTagName('table')[2].getElementsByTagName('tr')[5].getElementsByTagName('td')[5].innerHTML.indexOf('red') != -1) {
			var x = document.getElementsByName('x')[0].value;
			var y = document.getElementsByName('y')[0].value;
			GM_setValue("AktuellePosition", x+"#"+y);
		}
		// optimierte Marktländer-Darstellung + Entfernung zur aktuellen Position
		var x1 = document.getElementsByName('x')[0].value;
		var y1 = document.getElementsByName('y')[0].value;
		var marktlaender = content.getElementsByTagName('table')[3].getElementsByTagName('tr');
		marktlaender[0].innerHTML += '<td class="center bold">Entf.</td><td><br></td>';
		for(i=1; i<marktlaender.length; i++) {
			x2 = marktlaender[i].getElementsByTagName('td')[0].textContent.trim();
			y2 = marktlaender[i].getElementsByTagName('td')[1].textContent.trim();
			var distance = (Math.max(x1, x2)-Math.min(x1, x2))+(Math.max(y1, y2)-Math.min(y1, y2));
			marktlaender[i].innerHTML += '<td class="right">'+distance+'</td>';
			marktlaender[i].innerHTML += '<td class="center"><a href="karte.php?x='+x2+'&y='+y2+'">Karte</a></td>';
		}
	}



// Landinfo
	if(document.URL.indexOf('landinfo.php') != -1) {
		if(getURLParameter('id') != null) {
			content.innerHTML = content.innerHTML.replace(/<br>\s*<a href="wandern.php\?do=1&amp;wposx=(\d+)&amp;wposy=(\d+)">\[zu diesem Land wandern\]/, '<h2>$1/$2</h2><br><br><a href="wandern.php?do=1&wposx=$1&wposy=$2">[zu diesem Land wandern]</a> | <a href="karte.php?x=$1&y=$2">[Karte zentrieren]</a>');
		}
	}



// Länder
	if(document.URL.indexOf('/deinland.php') != -1) {
		var curr_coords = GM_getValue("AktuellePosition", "0#0").split('#');
		curr_coords[0] = parseInt(curr_coords[0], 10);
		curr_coords[1] = parseInt(curr_coords[1], 10);
		var bgcolor = new Array('#123014', '#173F1A');
		var laenderHTML = content.innerHTML.split('<br>');
		var laender = new Array();
		for(i=0; i<laenderHTML.length; i++) {
			if(laenderHTML[i].search(/ID : (\d{1,5}) X\: (\d{1,3}) Y\: (\d{1,3})/) != -1) {
				var landid = RegExp.$1;
				var x = parseInt(RegExp.$2, 10);
				var y = parseInt(RegExp.$3, 10);
				var temp = new Array(landid, x, y, Math.abs(x-curr_coords[0])+Math.abs(y-curr_coords[1]));
				laender.push(temp);
			}
		}
		var newContent = '';
		newContent += '<h2>Deine Länder: '+laender.length+' Stück</h2><br><br>';
		if(curr_coords[0] != 0 && curr_coords[1] != 0) {
			newContent += '<b>Aktuelle Position:</b> '+curr_coords[0]+' | '+curr_coords[1]+'<br><br>';
		}
		newContent += '<table class="eigeneLaender" border="0" align="center"><thead>';
		newContent += '<tr bgcolor="'+bgcolor[0]+'">';
		newContent += '<td rowspan="2">X/Y</td>';
		newContent += '<td rowspan="2">Entf.</td>';
		newContent += '<td colspan="9">Ausbau-Stufen</td>'
		newContent += '<td colspan="4">Rohstoffe</td>';
		newContent += '</tr><tr bgcolor="'+bgcolor[0]+'">';
		newContent += '<td title="HolzhauDing"><img src="/static/rohstoff_icons/holz.gif"></td>';
		newContent += '<td title="SteinhauDingens"><img src="/static/rohstoff_icons/stein.gif"></td>';
		newContent += '<td title="KöhlerDingens"><img src="/static/rohstoff_icons/kohle.gif"></td>';
		newContent += '<td title="Mine"><img src="/static/rohstoff_icons/kupfer.gif"></td>';
		newContent += '<td title="ZinnDing"><img src="/static/rohstoff_icons/zinn.gif"></td>';
		newContent += '<td title="BronzeDing"><img src="/static/rohstoff_icons/bronze.gif"></td>';
		newContent += '<td title="SchamanenDingensDa">Tr.</td>';
		newContent += '<td title="Waffenbauplatz">Wa.</td>';
		newContent += '<td title="Werkzeugbauplatz">We.</td>';
		newContent += '<td title="Holz"><img src="/static/rohstoff_icons/holz.gif"></td>';
		newContent += '<td title="Stein"><img src="/static/rohstoff_icons/stein.gif"></td>';
		newContent += '<td title="Kupfer"><img src="/static/rohstoff_icons/kupfer.gif"></td>';
		newContent += '<td title="Zinn"><img src="/static/rohstoff_icons/zinn.gif"></td>';
		newContent += '</tr></thead><tbody>';
		var gesamtHolz = 0;
		var gesamtStein = 0;
		var gesamtKupfer = 0;
		var gesamtZinn = 0;
		var configLandControlFormInner = '<table class="eigeneLaender" border="0" align="center"><thead><tr bgcolor="'+bgcolor[0]+'"><td>X/Y</td><td>Entf.</td><td>Holz</td><td>Stein</td><td>Kupfer</td><td>Zinn</td></tr></thead><tbody>';
		var landControlData = GM_getValue("LandControlData", "#").split('#');
		var landControlData2 = new Array();
		for(i=1; i<landControlData.length-1; i++) {
			var temp = landControlData[i].split(',');
			landControlData2[temp[0]] = new Object();
			landControlData2[temp[0]]["Holz"] = temp[1];
			landControlData2[temp[0]]["Stein"] = temp[2];
			landControlData2[temp[0]]["Kupfer"] = temp[3];
			landControlData2[temp[0]]["Zinn"] = temp[4];
		}
		// Länder nach Entfernung sortieren
		for(i=0; i<laender.length; i++) {
			for(j=i+1; j<laender.length; j++) {
				if(laender[i][3] > laender[j][3] || (laender[i][3] == laender[j][3] && laender[i][0] > laender[j][0])) {
					var z = laender[i];
					laender[i] = laender[j];
					laender[j] = z;
				}
			}
		}
		var lineCounter = 1;
		for(i=0; i<laender.length; i++) {
			if(i != 0 && i%20 == 0) {
				newContent += '</tbody><thead><tr bgcolor="'+bgcolor[lineCounter%2]+'"><td>X/Y</td><td>Entf.</td><td><img src="/static/rohstoff_icons/holz.gif"></td><td><img src="/static/rohstoff_icons/stein.gif"></td><td><img src="/static/rohstoff_icons/kohle.gif"></td><td><img src="/static/rohstoff_icons/kupfer.gif"></td><td><img src="/static/rohstoff_icons/zinn.gif"></td><td><img src="/static/rohstoff_icons/bronze.gif"></td><td>Tr.</td><td>Wa.</td><td>We.</td><td><img src="/static/rohstoff_icons/holz.gif"></td><td><img src="/static/rohstoff_icons/stein.gif"></td><td><img src="/static/rohstoff_icons/kupfer.gif"></td><td><img src="/static/rohstoff_icons/zinn.gif"></td></tr></thead><tbody>';
				lineCounter++;
			}
			newContent += '<tr id="land_'+laender[i][0]+'" bgcolor="'+bgcolor[lineCounter%2]+'">';
			newContent += '<td><a href="landinfo.php?id='+laender[i][0]+'">'+laender[i][1]+'/'+laender[i][2]+'</a></td>';
			newContent += '<td>'+((laender[i][3] == 0)? '-' : (laender[i][3]))+'</td>';
			newContent += '<td colspan="13" class="center yellow">Daten werden geladen</td>';
			newContent += '</tr>';
			newContent += '<tr id="spieler_'+laender[i][0]+'" bgcolor="'+bgcolor[lineCounter%2]+'" style="display:none;"></tr>';
			configLandControlFormInner += '<tr bgcolor="'+bgcolor[lineCounter%2]+'" data-szsa-landid="'+laender[i][0]+'">';
			configLandControlFormInner += '<td><a href="landinfo.php?id='+laender[i][0]+'">'+laender[i][1]+'/'+laender[i][2]+'</a></td>';
			configLandControlFormInner += '<td>'+((laender[i][3] == 0)? '-' : (laender[i][3]))+'</td>';
			configLandControlFormInner += '<td><input class="i2 tir" type="text" value="'+((landControlData2[laender[i][0]])? landControlData2[laender[i][0]]["Holz"] : '')+'"></td>';
			configLandControlFormInner += '<td><input class="i2 tir" type="text" value="'+((landControlData2[laender[i][0]])? landControlData2[laender[i][0]]["Stein"] : '')+'"></td>';
			configLandControlFormInner += '<td><input class="i2 tir" type="text" value="'+((landControlData2[laender[i][0]])? landControlData2[laender[i][0]]["Kupfer"] : '')+'"></td>';
			configLandControlFormInner += '<td><input class="i2 tir" type="text" value="'+((landControlData2[laender[i][0]])? landControlData2[laender[i][0]]["Zinn"] : '')+'"></td>';
			configLandControlFormInner += '</tr>';
			lineCounter++;
			// Landinfos laden
			GM_xmlhttpRequest({
				method: "GET",
				url: "http://szs.looki.de/landinfo.php?id="+laender[i][0],
				onload: function(response) {
					var id = response.finalUrl.replace(/\D*/, '');
					if(document.getElementById('land_'+id)) {
						var anfang = response.responseText.indexOf('Diese Dinge stehen auf deinem Land:');
						var ende = response.responseText.indexOf('Diese Dinge kannst du bauen:');
						var html = response.responseText.slice(anfang, ende);
						var landinfos = new Array();
						landinfos['Bauplatzvorbereitung'] = 0;
						landinfos['HolzhauDing'] = 0;
						landinfos['SteinhauDingens'] = 0;
						landinfos['KöhlerDingens'] = 0;
						landinfos['Mine'] = 0;
						landinfos['ZinnDing'] = 0;
						landinfos['BronzeDing'] = 0;
						landinfos['SchamanenDingensDa'] = 0;
						landinfos['Waffenbauplatz'] = 0;
						landinfos['Werkzeugbauplatz'] = 0;
						var dinge = html.split('<tr>');
						for(i=1; i<dinge.length; i++) {
							dinge[i].search(/<td valign=top>\s*([A-Za-zö]*)\s*<\/td>/);
							var ding = RegExp.$1;
							dinge[i].search(/(\d+)/);
							var stufe = RegExp.$1;
							landinfos[ding] = stufe;
						}
						response.responseText.search(/Holz:\s*(\-?\d*)<br>\s*Stein:\s*(\-?\d*)<br>\s*Kupfer:\s*(\-?\d*)<br>\s*Zinn:\s*(\-?\d*)<br>/);
						var holz = parseInt(RegExp.$1, 10);
						var stein = parseInt(RegExp.$2, 10);
						var kupfer = parseInt(RegExp.$3, 10);
						var zinn = parseInt(RegExp.$4, 10);
						var str_landinfo = '';
						if(landinfos['Bauplatzvorbereitung'] == 0) {
							str_landinfo += '<td colspan="9" class="center">keine Bauplatzvorbereitung</td>';
						} else {
							var dinge = new Array('HolzhauDing', 'SteinhauDingens', 'KöhlerDingens', 'Mine', 'ZinnDing', 'BronzeDing', 'SchamanenDingensDa', 'Waffenbauplatz', 'Werkzeugbauplatz');
							var maxAusbaustufe = new Array();
								maxAusbaustufe['HolzhauDing'] = 4;
								maxAusbaustufe['SteinhauDingens'] = 4;
								maxAusbaustufe['KöhlerDingens'] = 1;
								maxAusbaustufe['Mine'] = 1;
								maxAusbaustufe['ZinnDing'] = 1;
								maxAusbaustufe['BronzeDing'] = 1;
								maxAusbaustufe['SchamanenDingensDa'] = 5;
								maxAusbaustufe['Waffenbauplatz'] = 10;
								maxAusbaustufe['Werkzeugbauplatz'] = 5;
							for(i=0; i<dinge.length; i++) {
								if(landinfos[dinge[i]] == 0) {
									str_landinfo += '<td class="red">';
								} else if(landinfos[dinge[i]] == maxAusbaustufe[dinge[i]]) {
									str_landinfo += '<td class="green">';
								} else {
									str_landinfo += '<td class="yellow">';
								}
								str_landinfo += landinfos[dinge[i]]+'</td>';
							}
						}
						anfang = response.responseText.indexOf('Auf diesem Land stehen im Moment diese Spieler:');
						ende = response.responseText.indexOf('<!-- INHALT ENDE -->');
						html = response.responseText.slice(anfang, ende);
						html = html.split('<a href=userinfo.php?');
						if(html.length > 1) {
							var str_spielerinfo = '<td colspan="13" class="spieler">Spieler: ';
							for(i=1; i<html.length; i++) {
								if(html[i].search(/userinfo=(\d*)>(.*)<\/a>/) != -1) {
									if(str_spielerinfo.indexOf('userinfo') != -1) {
										str_spielerinfo += ', ';
									}
									str_spielerinfo += '<a href="userinfo.php?userinfo='+RegExp.$1+'">'+RegExp.$2+'</a>';
								}
							}
							str_spielerinfo += '</td>';
							document.getElementById('land_'+id).getElementsByTagName('td')[0].setAttribute('rowspan', 2);
							document.getElementById('land_'+id).getElementsByTagName('td')[1].setAttribute('rowspan', 2);
							document.getElementById('spieler_'+id).innerHTML = str_spielerinfo;
							document.getElementById('spieler_'+id).removeAttribute('style');
						}
						str_landinfo += '<td'+((landControlData2[id] && holz <= landControlData2[id]["Holz"])? ' class="'+landControlColor+'"' : '')+'>'+number_format(holz)+'</td>';
						str_landinfo += '<td'+((landControlData2[id] && stein <= landControlData2[id]["Stein"])? ' class="'+landControlColor+'"' : '')+'>'+number_format(stein)+'</td>';
						str_landinfo += '<td'+((landControlData2[id] && kupfer <= landControlData2[id]["Kupfer"])? ' class="'+landControlColor+'"' : '')+'>'+number_format(kupfer)+'</td>';
						str_landinfo += '<td'+((landControlData2[id] && zinn <= landControlData2[id]["Zinn"])? ' class="'+landControlColor+'"' : '')+'>'+number_format(zinn)+'</td>';
						document.getElementById('land_'+id).getElementsByTagName('td')[2].outerHTML = str_landinfo;
						gesamtHolz += holz;
						gesamtStein += stein;
						gesamtKupfer += kupfer;
						gesamtZinn += zinn;
						if(document.getElementById('gesamtHolz')) document.getElementById('gesamtHolz').innerHTML = number_format(gesamtHolz);
						if(document.getElementById('gesamtStein')) document.getElementById('gesamtStein').innerHTML = number_format(gesamtStein);
						if(document.getElementById('gesamtKupfer')) document.getElementById('gesamtKupfer').innerHTML = number_format(gesamtKupfer);
						if(document.getElementById('gesamtZinn')) document.getElementById('gesamtZinn').innerHTML = number_format(gesamtZinn);
					}
				}
			});
		}
		configLandControlFormInner += '</tbody></table>';
		newContent += '<tr bgcolor="'+bgcolor[laender.length%2]+'"><td class="bold" colspan="2">&Sigma;</td><td colspan="9"><br></td><td id="gesamtHolz"></td><td id="gesamtStein"></td><td id="gesamtKupfer"></td><td id="gesamtZinn"></td></tr>';
		newContent += '</tbody></table>';
		newContent += '<br><br><br><h2>Landüberwachung</h2><br><br>Trage hier den Rohstoffwert ein, ab dem du gewarnt werden möchtest.<br>Der Menueintrag "Land" und der entsprechende Wert in der Tabelle oben werden <span class="'+landControlColor+' bold">eingefärbt</span>.<br>Lasse ein Feld leer, wenn du keine Warnung erhalten möchtest.<br><br>';
		newContent += '<form id="configLandControl" method="post" action=""><div id="toggle_landueberwachung" class="pointer bold center" data-szsa-toggle="landueberwachung">Auswahl anzeigen <span class="triggerElementToggle"></span></div><br><div id="landueberwachung" style="display:none;">'+configLandControlFormInner+'</div><br><b>Farbe:</b><input type="radio" name="configLandControlColor" value="red"'+((landControlColor == 'red')? ' checked="checked"':'')+'><span class="red">rot</span> <input type="radio" name="configLandControlColor" value="orange"'+((landControlColor == 'orange')? ' checked="checked"':'')+'><span class="orange">orange</span> <input type="radio" name="configLandControlColor" value="yellow"'+((landControlColor == 'yellow')? ' checked="checked"':'')+'><span class="yellow">gelb</span><br><br><input class="pointer" type="submit" value="Speichern"></form>';
		content.innerHTML = content.innerHTML.replace(/<br>\s*Dein\(e\) Landstück\(e\):.*/, newContent);
		document.getElementById('toggle_landueberwachung').addEventListener('click', toggleElement, false);
		document.getElementById('configLandControl').addEventListener('submit', function() {
			var laender = document.getElementById('configLandControl').getElementsByTagName('tr');
			var laender_str = '#';
			for(var i=1; i<laender.length; i++) {
				var landid = laender[i].getAttribute('data-szsa-landid');
				var holz = parseInt(laender[i].getElementsByTagName('input')[0].value, 10);
				if(holz < 0 || isNaN(holz)) holz = "";
				var stein = parseInt(laender[i].getElementsByTagName('input')[1].value, 10);
				if(stein < 0 || isNaN(stein)) stein = "";
				var kupfer = parseInt(laender[i].getElementsByTagName('input')[2].value, 10);
				if(kupfer < 0 || isNaN(kupfer)) kupfer = "";
				var zinn = parseInt(laender[i].getElementsByTagName('input')[3].value, 10);
				if(zinn < 0 || isNaN(zinn)) zinn = "";
				if(holz != "" || stein != "" || kupfer != "" || zinn != "") {
					laender_str += landid+','+holz+','+stein+','+kupfer+','+zinn+'#';
				}
			}
			GM_setValue("LandControlData", laender_str);
			GM_setValue("LandControlColor", getRadioValue(document.getElementsByName('configLandControlColor')));
		}, true);
	}



// Gästebuch
	if(document.URL.indexOf('/gbuch.php') != -1) {
		var entrys = document.getElementById('content').getElementsByTagName('table');
		for(i=entrys.length-1; i>0; i--) {
			var data_entrys = GM_getValue("GBEntrys", "0#");
			data_entrys = (data_entrys == '')? '0#': data_entrys;
			entrys[i].getElementsByTagName('td')[0].innerHTML.search(/eintragid=(\d+)/);
			var entryid = parseInt(RegExp.$1, 10);
			if(data_entrys.indexOf('#'+entryid+'#') == -1) {
				entrys[i].getElementsByTagName('td')[1].setAttribute('bgcolor', '#3468a8');
				data_entrys += entryid+'#';
			}
			var isPageOne = (document.getElementById('content').getElementsByTagName('div')[1].getElementsByTagName('b')[0].textContent.trim() == '1')? true : false;
			entrys[i].getElementsByTagName('td')[0].textContent.search(/(\d+)\.(\d+)\.(\d+) - (\d+):(\d+)/);
			var entryDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), 0);
			var lastGBEntry = parseInt(data_entrys.split('#')[0], 10);
			if(lastGBEntry < entryDate.getTime() && isPageOne) {
				data_entrys = data_entrys.replace(/^\d+#/, entryDate.getTime().toString()+'#');
			}
			GM_setValue("GBEntrys", data_entrys);
		}
	}
	if(Assi_Gaestebucheintrag) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/gbuch.php",
			onload: function(response) {
				var anfang = response.responseText.indexOf('<!-- INHALT ANFANG -->');
				var ende = response.responseText.indexOf('<!-- INHALT ENDE -->');
				if(anfang != -1 && ende != -1) {
					var html = response.responseText.slice(anfang, ende);
					var entrys = html.split('<table border="0" cellspacing="0" width="99%">');
					html = entrys[1];
					anfang = html.indexOf('</a>');
					ende = html.indexOf('löschen</a>');
					html = html.slice(anfang+6, ende).trim();
					html.search(/(\d+)\.(\d+)\.(\d+) - (\d+):(\d+)/);
					var lastGBDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), 0);
					var data_entrys = GM_getValue("GBEntrys", "0#");
					data_entrys = (data_entrys == '')? '0#': data_entrys;
					var lastGBEntry = parseInt(data_entrys.split('#')[0], 10);
					if(parseInt(lastGBEntry, 10) < lastGBDate.getTime()) {
						if(document.getElementById('guestbook')) document.getElementById('guestbook').setAttribute('class', 'menu yellow');
					}
				}
			}
		});
	}



// Schlafen
	if(document.URL.indexOf('/schlafen.php') != -1) {
		// Automatisches einschlafen bzw. aufwachen, je nach vorhandenem Link
		if(content.textContent.indexOf('[jetzt schlafen legen]') != -1) {
			window.location.href = 'http://szs.looki.de/schlafen.php?aktion=schlafen';
		} else if(content.textContent.indexOf('[aufwachen]') != -1) {
			window.location.href = 'http://szs.looki.de/schlafen.php?aktion=aufwachen';
		}
	}



// Markt
	if(document.URL.indexOf('/markt.php') != -1) {
		if(document.URL.indexOf('markt.php') != -1 && content.textContent.indexOf('Du bist im Moment unterwegs.') == -1) {
			// Marktnavigation einfügen
			var marktnavi = document.createElement('div');
			marktnavi.innerHTML = '<br><b>Marktnavigation:</b><br>- Gegenstände: <a href="markt.php?do=waffen">Waffen</a> | <a href="markt.php?do=ringe">Ringe</a> | <a href="markt.php?do=trank">Tränke</a> | <a href="markt.php?do=werkzeug">Werkzeuge</a> | <a href="markt.php?do=landverkauf">Länder</a><br>- Rohstoffe: <a href="markt.php?do=rohstoffe&rohausw=1">Wasser</a> | <a href="markt.php?do=rohstoffe&rohausw=2">Holz</a> | <a href="markt.php?do=rohstoffe&rohausw=3">Stein</a> | <a href="markt.php?do=rohstoffe&rohausw=4">Kohle</a> | <a href="markt.php?do=rohstoffe&rohausw=5">Kupfer</a> | <a href="markt.php?do=rohstoffe&rohausw=6">Zinn</a> | <a href="markt.php?do=rohstoffe&rohausw=7">Bronze</a> | <a href="markt.php?do=rohstoffe&rohausw=all">Alle</a><br><br><br>';
			content.insertBefore(marktnavi, content.getElementsByTagName('table')[0].nextSibling);
		}
		if(document.URL.indexOf('do=rohstoffe&rohausw=') != -1 && content.textContent.indexOf('Du bist im Moment unterwegs.') == -1) {
			var angebote = 4;
			if(content.textContent.indexOf('Da dein Steini gerade beschäftigt ist, kannst du weder etwas auf den Markt stellen, noch etwas kaufen.') == -1) {
				angebote = 12;
				// Standardverkaufsmengen
				var ressis = new Array('Wasser', 'Holz', 'Steine', 'Kohle', 'Kupfer', 'Zinn', 'Bronze');
				for(i=0; i<ressis.length; i++) {
					Assi_MarktVerkaufsmenge[ressis[i]] = parseInt(Assi_MarktVerkaufsmenge[ressis[i]], 10);
					if(Assi_MarktVerkaufsmenge[ressis[i]] > 0) {
						if(Assi_MarktVerkaufsmenge[ressis[i]] < ressis_gesamt[ressis[i]]) {
							document.getElementsByName('menge'+ressis[i].toLowerCase())[0].value = Assi_MarktVerkaufsmenge[ressis[i]];
						} else {
							document.getElementsByName('menge'+ressis[i].toLowerCase())[0].value = ressis_gesamt[ressis[i]];
						}
					} else if(Assi_MarktVerkaufsmenge[ressis[i]] <= 0) {
						if(ressis_gesamt[ressis[i]]+Assi_MarktVerkaufsmenge[ressis[i]] > 0) {
							document.getElementsByName('menge'+ressis[i].toLowerCase())[0].value = ressis_gesamt[ressis[i]]+Assi_MarktVerkaufsmenge[ressis[i]];
						} else {
							document.getElementsByName('menge'+ressis[i].toLowerCase())[0].value = 0
						}
					}
					// Standardverkaufspreise
					if(Assi_MarktVerkaufspreis[ressis[i]] != "") {
						document.getElementsByName('preis'+ressis[i].toLowerCase())[0].value = Assi_MarktVerkaufspreis[ressis[i]];
					}
				}
			}
			// Preise hervorheben
			if(content.textContent.indexOf('Du befindest dich auf dem steinzeitlichen Rohstoffmarkt.') != -1 && content.getElementsByTagName('table')[angebote]) {
				var angebote = content.getElementsByTagName('table')[angebote].getElementsByTagName('tr');
				if(Assi_Preishervorhebung == 'dynamisch') {
					// Hervorhebung: dynamisch
					if(parseInt(angebote[1].getElementsByTagName('td')[2].textContent, 10) < parseInt(angebote[2].getElementsByTagName('td')[2].textContent, 10)) {
						angebote[1].setAttribute('class', 'good');
						i = 2;
					} else if(parseInt(angebote[1].getElementsByTagName('td')[2].textContent, 10) == parseInt(angebote[2].getElementsByTagName('td')[2].textContent, 10) && parseInt(angebote[2].getElementsByTagName('td')[2].textContent, 10) < parseInt(angebote[3].getElementsByTagName('td')[2].textContent, 10)) {
						angebote[1].setAttribute('class', 'good');
						angebote[2].setAttribute('class', 'good');
						i = 3;
					} else {
						i = 1;
					}
					for(j=i; j<angebote.length; j++) {
						if(parseInt(angebote[i].getElementsByTagName('td')[2].textContent, 10) < parseInt(angebote[j].getElementsByTagName('td')[2].textContent, 10)) {
							angebote[j].setAttribute('class', 'bad');
						}
					}
				} else {
					// Hervorhebung: "eigene Preise"
					for(i=1; i<angebote.length; i++) {
						var rohstoff = angebote[i].getElementsByTagName('td')[1].textContent.trim();
						var preis = parseInt(angebote[i].getElementsByTagName('td')[2].textContent, 10);
						if(preis < parseInt(Assi_MarktPreis[rohstoff], 10)) {
							angebote[i].setAttribute('bgcolor', '#3468a8');
						}
					}
				}
			}
			// Rohstoffauswahl: alle
			if(document.URL.indexOf('rohausw=all') != -1) {
				var status = content.getElementsByTagName('table')[0];
				var rohstoffmarktInfo = content.getElementsByTagName('table')[1];
				var rohstoffeAnbieten = content.getElementsByTagName('table')[2];
				content.innerHTML = '';
				var div = document.createElement('div');
				div.appendChild(status);
				div.appendChild(marktnavi);
				div.appendChild(rohstoffmarktInfo);
				div.appendChild(rohstoffeAnbieten);
				var marktAll = document.createElement('center');
				marktAll.innerHTML += '<br><br><div class="headline">Wasser</div><div id="markt-1"></div><br><div class="headline">Holz</div><div id="markt-2"></div><br><div class="headline">Stein</div><div id="markt-3"></div><br><div class="headline">Kohle</div><div id="markt-4"></div><br><div class="headline">Kupfer</div><div id="markt-5"></div><br><div class="headline">Zinn</div><div id="markt-6"></div><br><div class="headline">Bronze</div><div id="markt-7"></div><br>';
				div.appendChild(marktAll);
				content.appendChild(div);
				for(i=1; i<=7; i++) {
					GM_xmlhttpRequest({
						method: "GET",
						url: "http://szs.looki.de/markt.php?do=rohstoffe&rohausw="+i,
						onload: function(response) {
							var id = response.finalUrl.replace(/\D*/, '');
							if(response.responseText.indexOf('Du bist im Moment unterwegs') == -1 && document.getElementById('markt-'+id)) {
								var anfang = response.responseText.indexOf('Rohstoffe einkaufen:');
								var ende = response.responseText.indexOf('<!-- INHALT ENDE -->');
								var html = response.responseText.slice(anfang, ende);
								anfang = html.indexOf('<table');
								ende = html.lastIndexOf('</table>');
								var angebote = html.slice(anfang, ende+8).split('<tr>');
								if(angebote.length > 2) {
									var ausgabe = '<table width="97%" border="1"><thead><tr><td class="center bold">von</td><td class="center bold">Rohstoff</td><td class="center bold">Preis / Stück</td><td class="center bold">Anzahl</td><td class="center bold">Kaufen</td></tr></thead><tbody>';
									if(Assi_Preishervorhebung == 'dynamisch') {
										// Hervorhebung: dynamisch
										if(parseInt(angebote[2].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10) < parseInt(angebote[3].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10)) {
											ausgabe += '<tr class="good">'+angebote[2];
											j = 3;
										} else if(parseInt(angebote[2].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10) == parseInt(angebote[3].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10) && parseInt(angebote[3].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10) < parseInt(angebote[4].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10)) {
											ausgabe += '<tr class="good">'+angebote[2];
											ausgabe += '<tr class="good">'+angebote[3];
											j = 4;
										} else {
											j = 2;
										}
										for(k=j; k<angebote.length; k++) {
											if(parseInt(angebote[j].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10) < parseInt(angebote[k].split(/<\/td>\s*<td NOWRAP>/)[2].trim(), 10)) {
												ausgabe += '<tr class="bad">'+angebote[k];
											} else {
												ausgabe += '<tr>'+angebote[k];
											}
										}
									} else {
										// Hervorhebung: "eigene Preise"
										for(j=2; j<angebote.length; j++) {
											var temp = angebote[j].split(/<\/td>\s*<td NOWRAP>/);
											var rohstoff = temp[1].trim();
											var preis = parseInt(temp[2].trim(), 10);
											if(preis < parseInt(Assi_MarktPreis[rohstoff], 10)) {
												ausgabe += '<tr bgcolor="#3468a8">'+angebote[j];
											} else {
												ausgabe += '<tr>'+angebote[j];
											}
										}
									}
								ausgabe += '</tbody></table>';
								} else {
									var ausgabe = 'Keine Angebote vorhanden!<br>';
								}
								if(document.getElementById('markt-'+id)) document.getElementById('markt-'+id).innerHTML = ausgabe;
							}
						}
					});
				}
			}
		} else if(document.URL.indexOf('do=kaufen') != -1 && document.getElementsByName('amount')[0]) {
			i = (isPremiumSpieler)? 1 : 0;
			var gold = parseInt(menuRight.getElementsByTagName('table')[1+i].getElementsByTagName('td')[7].textContent.trim().replace(/\./g, ''), 10);
			content.getElementsByTagName('b')[1].textContent.search(/(\S+) für\s*(\d*) Gold/);
			var rohstoff = RegExp.$1;
			var preis = RegExp.$2;
			content.textContent.search(/maximal (\d*) Stück/);
			var menge = RegExp.$1;
			if(gold/preis < menge) {
				content.innerHTML += '<br>Du besitzt '+number_format(gold)+' Gold und kannst daher maximal <b>'+number_format(parseInt(gold/preis, 10))+' '+rohstoff+'</b> kaufen.'
			}
			document.getElementsByName('amount')[0].focus();
		}
	}




// Übertragen
	if(document.URL.indexOf('/uebertragen.php') != -1 && content.textContent.indexOf('Hier kannst du anderen Spielern Rohstoffe übertragen') != -1) {
		var an = getURLParameter('an');
		if(an != null && an != '') document.getElementsByName('an')[0].value = an;
		var nahrung = parseInt(getURLParameter('nahrung'), 10);
		if(!(nahrung <= 0 || isNaN(nahrung))) document.getElementsByName('nahrung')[0].value = nahrung;
		var wasser = parseInt(getURLParameter('wasser'), 10);
		if(!(wasser <= 0 || isNaN(wasser))) document.getElementsByName('wasser')[0].value = wasser;
		var gold = parseInt(getURLParameter('gold'), 10);
		if(!(gold <= 0 || isNaN(gold))) document.getElementsByName('geld')[0].value = gold;
		var geld = parseInt(getURLParameter('geld'), 10);
		if(!(geld <= 0 || isNaN(geld))) document.getElementsByName('geld')[0].value = geld;
		var holz = parseInt(getURLParameter('holz'), 10);
		if(!(holz <= 0 || isNaN(holz))) document.getElementsByName('holz')[0].value = holz;
		var stein = parseInt(getURLParameter('stein'), 10);
		if(!(stein <= 0 || isNaN(stein))) document.getElementsByName('stein')[0].value = stein;
		var kohle = parseInt(getURLParameter('kohle'), 10);
		if(!(kohle <= 0 || isNaN(kohle))) document.getElementsByName('kohle')[0].value = kohle;
		var kupfer = parseInt(getURLParameter('kupfer'), 10);
		if(!(kupfer <= 0 || isNaN(kupfer))) document.getElementsByName('kupfer')[0].value = kupfer;
		var zinn = parseInt(getURLParameter('zinn'), 10);
		if(!(zinn <= 0 || isNaN(zinn))) document.getElementsByName('zinn')[0].value = zinn;
		var bronze = parseInt(getURLParameter('bronze'), 10);
		if(!(bronze <= 0 || isNaN(bronze))) document.getElementsByName('bronze')[0].value = bronze;
		var klheil = parseInt(getURLParameter('klheil'), 10);
		if(!(klheil <= 0 || isNaN(klheil))) document.getElementsByName('klheil')[0].value = klheil;
		var mtheil = parseInt(getURLParameter('mtheil'), 10);
		if(!(mtheil <= 0 || isNaN(mtheil))) document.getElementsByName('mtheil')[0].value = mtheil;
		var stheil = parseInt(getURLParameter('stheil'), 10);
		if(!(stheil <= 0 || isNaN(stheil))) document.getElementsByName('stheil')[0].value = stheil;
		var wach = parseInt(getURLParameter('wach'), 10);
		if(!(wach <= 0 || isNaN(wach))) document.getElementsByName('wach')[0].value = wach;
		var stwach = parseInt(getURLParameter('stwach'), 10);
		if(!(stwach <= 0 || isNaN(stwach))) document.getElementsByName('stwach')[0].value = stwach;
		var holzt = parseInt(getURLParameter('holzt'), 10);
		if(!(holzt <= 0 || isNaN(holzt))) document.getElementsByName('holzt')[0].value = holzt;
		var kupfert = parseInt(getURLParameter('kupfert'), 10);
		if(!(kupfert <= 0 || isNaN(kupfert))) document.getElementsByName('kupfert')[0].value = kupfert;
		var zinnt = parseInt(getURLParameter('zinnt'), 10);
		if(!(zinnt <= 0 || isNaN(zinnt))) document.getElementsByName('zinnt')[0].value = zinnt;
		var steint = parseInt(getURLParameter('steint'), 10);
		if(!(steint <= 0 || isNaN(steint))) document.getElementsByName('steint')[0].value = steint;
	}



// Lager
	if(document.URL.indexOf('/stamm.php?do=lager') != -1 && content.textContent.indexOf('Hier kannst du Rohstoffe von dir in das Stammlager schieben, aber auch Rohstoffe entnehmen.') != -1) {
		// Links zum Rohstoffe übertragen
		var lagerlogs = content.getElementsByTagName('table')[4].getElementsByTagName('tr');
		lagerlogs[0].innerHTML += '<td></td>';
		for(i=1; i<lagerlogs.length; i++) {
			lagerlogs[i].innerHTML += '<td></td>';
			var username = lagerlogs[i].getElementsByTagName('td')[0].innerHTML.split('<br>')[0].trim();
			if(lagerlogs[i].textContent.indexOf('in das Lager verfrachtet.') != -1 && (Assi_UserName == username || Assi_Lagerauszahlungen == "alle" || (Assi_Lagerauszahlungen == "andere" && (','+Assi_LagerauszahlungenNicks+',').indexOf(','+username+',') != -1))) {
				var texts = lagerlogs[i].getElementsByTagName('font')[0].innerHTML.split('<br>');
				var sURL = 'http://szs.looki.de/uebertragen.php?anrohstoffe='+username;
				var inputParam = '';
				for(j=1; j<texts.length-1; j++) {
					var ress = texts[j].trim().split(' ');
					sURL += '&'+ress[1].trim().toLowerCase()+'='+ress[0].trim().replace(/\./g, '');
					inputParam += ' '+ress[1].trim().toLowerCase()+'="'+ress[0].trim().replace(/\./g, '')+'"';
				}
				lagerlogs[i].getElementsByTagName('td')[0].innerHTML = lagerlogs[i].getElementsByTagName('td')[0].innerHTML.replace(/.*<br>/, '<a href="'+sURL+'">'+username+'</a><br>');
				// Checkboxen zum Rohstoffe auszahlen
				lagerlogs[i].getElementsByTagName('td')[2].innerHTML += '<input id="take['+i+']" type="checkbox"'+inputParam+'>';
				document.getElementById('take['+i+']').addEventListener('change', function() {
					var nahrung = parseInt(document.getElementsByName('menge_nahrung')[1].value, 10);
					var nahrung2 = parseInt(this.getAttribute('nahrung'), 10);
					if(nahrung < 0 || isNaN(nahrung)) nahrung = 0;
					if(nahrung2 < 0 || isNaN(nahrung2)) nahrung2 = 0;
					var wasser = parseInt(document.getElementsByName('menge_wasser')[1].value, 10);
					var wasser2 = parseInt(this.getAttribute('wasser'), 10);
					if(wasser < 0 || isNaN(wasser)) wasser = 0;
					if(wasser2 < 0 || isNaN(wasser2)) wasser2 = 0;
					var gold = parseInt(document.getElementsByName('menge_geld')[1].value, 10);
					var gold2 = parseInt(this.getAttribute('gold'), 10);
					if(gold < 0 || isNaN(gold)) gold = 0;
					if(gold2 < 0 || isNaN(gold2)) gold2 = 0;
					var holz = parseInt(document.getElementsByName('menge_holz')[1].value, 10);
					var holz2 = parseInt(this.getAttribute('holz'), 10);
					if(holz < 0 || isNaN(holz)) holz = 0;
					if(holz2 < 0 || isNaN(holz2)) holz2 = 0;
					var stein = parseInt(document.getElementsByName('menge_stein')[1].value, 10);
					var stein2 = parseInt(this.getAttribute('stein'), 10);
					if(stein < 0 || isNaN(stein)) stein = 0;
					if(stein2 < 0 || isNaN(stein2)) stein2 = 0;
					var kohle = parseInt(document.getElementsByName('menge_kohle')[1].value, 10);
					var kohle2 = parseInt(this.getAttribute('kohle'), 10);
					if(kohle < 0 || isNaN(kohle)) kohle = 0;
					if(kohle2 < 0 || isNaN(kohle2)) kohle2 = 0;
					var kupfer = parseInt(document.getElementsByName('menge_kupfer')[1].value, 10);
					var kupfer2 = parseInt(this.getAttribute('kupfer'), 10);
					if(kupfer < 0 || isNaN(kupfer)) kupfer = 0;
					if(kupfer2 < 0 || isNaN(kupfer2)) kupfer2 = 0;
					var zinn = parseInt(document.getElementsByName('menge_zinn')[1].value, 10);
					var zinn2 = parseInt(this.getAttribute('zinn'), 10);
					if(zinn < 0 || isNaN(zinn)) zinn = 0;
					if(zinn2 < 0 || isNaN(zinn2)) zinn2 = 0;
					var bronze = parseInt(document.getElementsByName('menge_bronze')[1].value, 10);
					var bronze2 = parseInt(this.getAttribute('bronze'), 10);
					if(bronze < 0 || isNaN(bronze)) bronze = 0;
					if(bronze2 < 0 || isNaN(bronze2)) bronze2 = 0;
					if(this.checked) {
						document.getElementsByName('menge_nahrung')[1].value = nahrung+nahrung2;
						document.getElementsByName('menge_wasser')[1].value = wasser+wasser2;
						document.getElementsByName('menge_geld')[1].value = gold+gold2;
						document.getElementsByName('menge_holz')[1].value = holz+holz2;
						document.getElementsByName('menge_stein')[1].value = stein+stein2;
						document.getElementsByName('menge_kohle')[1].value = kohle+kohle2;
						document.getElementsByName('menge_kupfer')[1].value = kupfer+kupfer2;
						document.getElementsByName('menge_zinn')[1].value = zinn+zinn2;
						document.getElementsByName('menge_bronze')[1].value = bronze+bronze2;
					} else {
						document.getElementsByName('menge_nahrung')[1].value = nahrung-nahrung2;
						document.getElementsByName('menge_wasser')[1].value = wasser-wasser2;
						document.getElementsByName('menge_geld')[1].value = gold-gold2;
						document.getElementsByName('menge_holz')[1].value = holz-holz2;
						document.getElementsByName('menge_stein')[1].value = stein-stein2;
						document.getElementsByName('menge_kohle')[1].value = kohle-kohle2;
						document.getElementsByName('menge_kupfer')[1].value = kupfer-kupfer2;
						document.getElementsByName('menge_zinn')[1].value = zinn-zinn2;
						document.getElementsByName('menge_bronze')[1].value = bronze-bronze2;
					}
				}, false);
			}
		}
	}



// Talkampf
	if(document.URL.indexOf('/grtal.php') != -1) {
		// Beschreibung anpassen
		var tkBeschreibung = content.innerHTML.replace(/12:00/, tkEnde+':00').replace(/10:00/g, tkStart+':00');
		if(tkBeschreibung.indexOf('Anmeldung zum Talkampf erst ab 12:05 möglich.') != -1 || tkBeschreibung.indexOf('Hier kannst du dich zum Talkampf eintragen.') != -1) {
			tkBeschreibung += '<br><span class="yellow"><b>TIPP:</b><br> Wenn du dich zw. 12:05 Uhr und '+tkEnde+' Uhr anmeldest, nimmst du am Talkampf teil und kannst nebenbei noch arbeiten, jagen, o.a.</span>';
		}
		content.innerHTML = tkBeschreibung;
		// Teilnahme speichern
		if(tkBeschreibung.indexOf('Du bist für die Kämpfe im Tal angemeldet.') != -1) {
			tkTeilnahme = talkampfDate.getTime().toString();
			GM_setValue("TKTeilnahme", tkTeilnahme);
		}
	}
	if(document.URL.indexOf('/grtal.php?teil=true') != -1 && content.textContent.indexOf('Dafür hast du leider zu wenig Rohstoffe.') == -1) {
		// Teilnahme speichern
			tkTeilnahme = talkampfDate.getTime().toString();
			GM_setValue("TKTeilnahme", tkTeilnahme);
	}


// Stammkampf
	if(document.URL.indexOf('/stamm.php?do=kampfuserauswahl') != -1) {
		if(content.textContent.indexOf('Ihr habt noch keinen Stamm herausgefordert bzw. seid herausgefordert worden.') != -1) {
			window.location.href = 'http://szs.looki.de/stamm.php?do=kampfsuche';
		} else if(content.textContent.indexOf('Du bist unterwegs.') == -1 && content.textContent.indexOf('Der Kampf läuft schon.') == -1) {
			var stammWaffen = GM_getValue("StammWaffen", "");
			// EPs + Waffen
			var gesamtTeilnehmer = 0;
			var gesamtEPs = 0;
			var teilnehmer = content.getElementsByTagName('table')[1].getElementsByTagName('tr');
			teilnehmer[0].innerHTML = teilnehmer[0].innerHTML+'<td>Waffen</td>';
			var strStammkampfTeilnehmer = servertimeDate.getTime().toString()+'#';
			for(i=1; i<teilnehmer.length; i++) {
				gesamtEPs += parseInt(teilnehmer[i].getElementsByTagName('td')[1].textContent, 10);
				teilnehmer[i].getElementsByTagName('td')[1].innerHTML = number_format(parseInt(teilnehmer[i].getElementsByTagName('td')[1].textContent, 10));
				teilnehmer[i].getElementsByTagName('td')[1].setAttribute('class', 'right');
				gesamtTeilnehmer += 1;
				var nick = teilnehmer[i].getElementsByTagName('td')[0].textContent.trim();
				strStammkampfTeilnehmer += nick+'#';
				if(stammWaffen.indexOf(nick) != -1) {
					var waffe = stammWaffen;
					waffe = waffe.slice(waffe.indexOf(nick));
					waffe = waffe.slice(waffe.indexOf(',')+1);
					waffe = waffe.slice(0, waffe.indexOf('#'));
					teilnehmer[i].innerHTML = teilnehmer[i].innerHTML+'<td>'+waffe+'</td>';
				} else {
					teilnehmer[i].innerHTML = teilnehmer[i].innerHTML+'<td></td>';
				}
			}
			teilnehmer[0].getElementsByTagName('td')[0].innerHTML = '<b>Name</b> ('+gesamtTeilnehmer+')';
			teilnehmer[0].getElementsByTagName('td')[1].innerHTML = '<b>Erfahrung</b> ('+number_format(parseFloat(gesamtEPs))+')';
			teilnehmer[0].getElementsByTagName('td')[2].innerHTML = '<b>Optionen</b>';
			teilnehmer[0].getElementsByTagName('td')[3].innerHTML = '<b>in der Hand<span class="red">*</span></b>';
			GM_setValue("StammkampfTeilnehmer", strStammkampfTeilnehmer);
			// Rohstoffsicherung
			var nahrung = ressis_gesamt['Nahrung']-Assi_NahrungRest;
			if(nahrung < 0 || isNaN(nahrung)) nahrung = 0;
			if(Assi_NahrungRund > 0) {
				nahrung -= nahrung%Assi_NahrungRund;
			}
			var gold = ressis_gesamt['Gold']-Assi_GoldRest;
			if(gold < 0 || isNaN(gold)) gold = 0;
			if(Assi_GoldRund > 0) {
				gold -= gold%Assi_GoldRund;
			}
			var holz = ressis_gesamt['Holz']-Assi_HolzRest;
			if(holz < 0 || isNaN(holz)) holz = 0;
			var stein = ressis_gesamt['Steine']-Assi_SteinRest;
			if(stein < 0 || isNaN(stein)) stein = 0;
			content.innerHTML += '<br><br><b>Ressis sichern:</b><br><br>';
			var input = document.createElement('input');
			input.setAttribute('id', 'saveNahrungGoldButton');
			input.setAttribute('type', 'button');
			input.setAttribute('class', 'pointer save');
			input.setAttribute('value', 'Nahrung & Gold ins Lager');
			input.setAttribute('nahrung', nahrung);
			input.setAttribute('gold', gold);
			input.setAttribute('title', number_format(nahrung, 0, ',', '.')+' Nahrung & '+number_format(gold, 0, ',', '.')+' Gold');
			input.addEventListener('click', function() {
				var nahrung = parseInt(this.getAttribute('nahrung'), 10);
				var gold = parseInt(this.getAttribute('gold'), 10);
				GM_xmlhttpRequest({
					method: "POST",
					url: "http://szs.looki.de/stamm.php",
					data: "do=lager_anbiet&menge_nahrung="+nahrung+"&menge_geld="+gold+"&art=anbieten",
					headers: { "Content-Type": "application/x-www-form-urlencoded" },
					onload: function(response) {
						var anfang = response.responseText.indexOf('<!-- INHALT ANFANG -->');
						var ende = response.responseText.indexOf('<!-- INHALT ENDE -->')+20;
						var html = response.responseText.slice(anfang, ende);
						anfang = html.indexOf('</table>')+12;
						ende = html.length-20;
						html = html.slice(anfang, ende).trim();
						if(html == 'Deine ausgewählten Rohstoffe liegen jetzt im Stammlager.') {
							alert(number_format(nahrung)+' Nahrung und '+number_format(gold)+' Gold in das Lager verfrachtet.');
						} else {
							alert('Fehler:\n\n'+html+'\n\nNahrung: '+nahrung+'\nGold: '+gold);
						}
					}
				});
			});
			content.appendChild(input);
			var input = document.createElement('input');
			input.setAttribute('id', 'saveHolzButton');
			input.setAttribute('type', 'button');
			input.setAttribute('class', 'pointer save');
			input.setAttribute('value', 'Holz auf den Markt');
			input.setAttribute('holz', holz);
			input.setAttribute('title', number_format(holz, 0, ',', '.')+' Holz')
			input.addEventListener('click', function() {
				var holz = parseInt(this.getAttribute('holz'), 10);
				GM_xmlhttpRequest({
					method: "POST",
					url: "http://szs.looki.de/markt.php",
					data: "do=rohverkauf&mengeholz="+holz+"&preisholz="+Assi_HolzPreis+"&art=Holz+anbieten",
					headers: { "Content-Type": "application/x-www-form-urlencoded" },
					onload: function(response) {
						var anfang = response.responseText.indexOf('<!-- INHALT ANFANG -->');
						var ende = response.responseText.indexOf('<!-- INHALT ENDE -->')+20;
						var html = response.responseText.slice(anfang, ende);
						anfang = html.indexOf('</table>')+12;
						ende = html.length-20;
						html = html.slice(anfang, ende).trim();
						if(html == 'Dein Rohstoff wird jetzt auf dem Markt angeboten.') {
							alert(number_format(holz)+' Holz zum Preis von '+number_format(Assi_HolzPreis)+' Gold auf den Markt gestellt.');
						} else {
							alert('Fehler:\n\n'+html+'\n\nHolz: '+holz+'\nHolzpreis: '+Assi_HolzPreis);
						}
					}
				});
			});
			content.appendChild(input);
			var input = document.createElement('input');
			input.setAttribute('id', 'saveSteinButton');
			input.setAttribute('type', 'button');
			input.setAttribute('class', 'pointer save');
			input.setAttribute('value', 'Steine auf den Markt');
			input.setAttribute('stein', stein);
			input.setAttribute('title', number_format(stein, 0, ',', '.')+' Steine')
			input.addEventListener('click', function() {
				var stein = parseInt(this.getAttribute('stein'), 10);
				GM_xmlhttpRequest({
					method: "POST",
					url: "http://szs.looki.de/markt.php",
					data: "do=rohverkauf&mengesteine="+stein+"&preissteine="+Assi_SteinPreis+"&art=Stein+anbieten",
					headers: { "Content-Type": "application/x-www-form-urlencoded" },
					onload: function(response) {
						var anfang = response.responseText.indexOf('<!-- INHALT ANFANG -->');
						var ende = response.responseText.indexOf('<!-- INHALT ENDE -->')+20;
						var html = response.responseText.slice(anfang, ende);
						anfang = html.indexOf('</table>')+12;
						ende = html.length-20;
						html = html.slice(anfang, ende).trim();
						if(html == 'Dein Rohstoff wird jetzt auf dem Markt angeboten.') {
							alert(number_format(stein)+' Steine zum Preis von '+number_format(Assi_SteinPreis)+' Gold auf den Markt gestellt.');
						} else {
							alert('Fehler:\n\n'+html+'\n\nSteine: '+stein+'\nSteinpreis: '+Assi_SteinPreis);
						}
					}
				});
			});
			content.appendChild(input);
			// Hinweis ausgeben
			var hinweisDIV = document.createElement('div');
			hinweisDIV.setAttribute('class', 'yellow');
			hinweisDIV.innerHTML = '<br><br><span class="red bold">* Hinweis:</span><br>Daten zuletzt aktualisiert vor ';
			var stammWaffenDate = new Date(parseInt(stammWaffen.split('#')[0], 10));
			var count = Math.floor(servertimeDate.getTime()/1000)-Math.floor(stammWaffenDate.getTime()/1000);
			var seconds = count%60;
			count = Math.floor(count/60);
			var minutes = count%60;
			count = Math.floor(count/60);
			var hours = count%24;
			if(hours > 0) {
				hinweisDIV.innerHTML += hours+':'+format2(minutes)+':'+format2(seconds)+' Std';
			} else if(minutes > 0) {
				hinweisDIV.innerHTML += minutes+':'+format2(seconds)+' Min';
			} else {
				hinweisDIV.innerHTML += seconds+' Sek';
			}
			hinweisDIV.innerHTML += ' ('+format2(stammWaffenDate.getDate())+'.'+format2(stammWaffenDate.getMonth()+1)+'.'+stammWaffenDate.getFullYear()+' - '+format2(stammWaffenDate.getHours())+':'+format2(stammWaffenDate.getMinutes())+':'+format2(stammWaffenDate.getSeconds())+' Uhr)<br>';
			hinweisDIV.innerHTML += '-> via <a href="stamm.php?do=uebersicht">StammÜbersicht</a> aktualisieren<br>';
			content.appendChild(hinweisDIV);
		}
	} else if(document.URL.indexOf('/stamm.php?do=kampfsuche') && content.textContent.indexOf('Ihr habt schon einen Stamm herausgefordert bzw. wurdet herausgefordert.') != -1) {
		window.location.href = 'http://szs.looki.de/stamm.php?do=kampfuserauswahl';
	}
	if(document.URL.indexOf('/stamm.php?do=kampfteilnehmen') != -1) {
		// Teilnahme speichern
		skTeilnahme = nextSK.split(',')[0];
		GM_setValue("SKTeilnahme", skTeilnahme);
	}
	if(document.URL.indexOf('/stamm.php?do=nichtteil') != -1) {
		// Teilnahme löschen
		GM_deleteValue("SKTeilnahme");
	}



// Magierkampf
	if(document.URL.indexOf('/stamm.magierkampf.php') != -1 && content.textContent.indexOf('Du bist jetzt') == -1 && content.textContent.indexOf('Derzeit laufen die Magierkämpfe.') == -1 && content.textContent.indexOf('Du hast nicht genügend Gold um dich zum Magierkampf anzumelden!') == -1 && document.URL.indexOf('action=update') == -1) {
		// Beschreibung anpassen
		content.innerHTML = content.innerHTML.replace('18:00', mkEnde+':00').replace('16:00', mkStart+':00');
		content.innerHTML = content.innerHTML.replace('<b>Teilnehmer:</b>', '');
		// Teilnehmer speichern + Waffen hinzufügen
		var strMagierkampfTeilnehmer = servertimeDate.getTime().toString()+'#';
		if(content.getElementsByTagName('table')[1]) {
			var stammWaffen = GM_getValue("StammWaffen", "");
			var gesamtTeilnehmer = 0;
			content.getElementsByTagName('table')[1].setAttribute('border', '1');
			var teilnehmer = content.getElementsByTagName('table')[1].getElementsByTagName('tr');
			for(i=0; i<teilnehmer.length; i++) {
				gesamtTeilnehmer++;
				var nick = teilnehmer[i].getElementsByTagName('td')[0].textContent.trim();
				strMagierkampfTeilnehmer += nick+'#';
				if(!teilnehmer[i].getElementsByTagName('td')[1]) {
					teilnehmer[i].innerHTML = teilnehmer[i].innerHTML+'<td></td>';
				}
				if(stammWaffen.indexOf(nick) != -1) {
					var waffe = stammWaffen;
					waffe = waffe.slice(waffe.indexOf(nick));
					waffe = waffe.slice(waffe.indexOf(',')+1);
					waffe = waffe.slice(0, waffe.indexOf('#'));
					teilnehmer[i].innerHTML = teilnehmer[i].innerHTML+'<td>'+waffe+'</td>';
				} else {
					teilnehmer[i].innerHTML = teilnehmer[i].innerHTML+'<td></td>';
				}
			}
			var headTD = document.createElement('tr');
			headTD.innerHTML = '<td class="center"><b>Teilnehmer</b> ('+gesamtTeilnehmer+')</td><td class="center bold">Optionen</td><td class="center bold">in der Hand<span class="red">*</span></td>';
			teilnehmer[0].parentNode.insertBefore(headTD, teilnehmer[0]);
		}
		GM_setValue("MagierkampfTeilnehmer", strMagierkampfTeilnehmer);
		var stammWaffenDate = new Date(parseInt(stammWaffen.split('#')[0], 10));
		var hinweis = '<br><br><span class="red bold">* Hinweis:</span><br><span class="yellow">Daten zuletzt aktualisiert vor ';
		var count = Math.floor(servertimeDate.getTime()/1000)-Math.floor(stammWaffenDate.getTime()/1000);
		var seconds = count%60;
		count = Math.floor(count/60);
		var minutes = count%60;
		count = Math.floor(count/60);
		var hours = count%24;
			if(hours > 0) {
				hinweis += hours+':'+format2(minutes)+':'+format2(seconds)+' Std';
			} else if(minutes > 0) {
				hinweis += minutes+':'+format2(seconds)+' Min';
			} else {
				hinweis += seconds+' Sek';
			}
		hinweis += ' ('+format2(stammWaffenDate.getDate())+'.'+format2(stammWaffenDate.getMonth()+1)+'.'+stammWaffenDate.getFullYear()+' - '+format2(stammWaffenDate.getHours())+':'+format2(stammWaffenDate.getMinutes())+':'+format2(stammWaffenDate.getSeconds())+' Uhr)<br>';
		hinweis += '-> via <a href="stamm.php?do=uebersicht">StammÜbersicht</a> aktualisieren</span><br>';
		content.innerHTML += hinweis;
		// Teilnahme speichern
		if(document.URL.indexOf('stamm.magierkampf.php?action=anmelden') != -1 || content.textContent.indexOf('vom Magierkampf austragen') != -1) {
			mkTeilnahme = magierkampfDate.getTime().toString();
			GM_setValue("MKTeilnahme", mkTeilnahme);
		}
	}



// Stammübersicht
	if(document.URL.indexOf('/stamm.php?do=uebersicht') != -1) {
	var stammkampfTeilnehmer = GM_getValue("StammkampfTeilnehmer", "");
	var magierkampfTeilnehmer = GM_getValue("MagierkampfTeilnehmer", "");
		// SK-Datum speichern
		if(content.textContent.indexOf('Nächster Kampf: kein Kampf') == -1) {
			content.textContent.search(/Nächster Kampf: (\d+)\.(\d+)\.(\d+) \- (\d+):(\d+)/);
			var skStartDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), 0);
			i=0;
			while(content.getElementsByTagName('a')[i].getAttribute('href').indexOf('stamminfo.php?stammid=') == -1) {
				i++;
			}
			var skGegner = content.getElementsByTagName('a')[i].textContent.trim();
			content.getElementsByTagName('a')[i].getAttribute('href').search(/stammid=(\d*)/);
			var newSPAN = document.createElement('span');
			newSPAN.innerHTML = ' (<span id="ep_skGegner"></span> EP)';
			content.insertBefore(newSPAN, content.getElementsByTagName('a')[i].nextSibling);
			getClanEPByClanId(RegExp.$1, 'ep_skGegner');
		} else {
			content.innerHTML = content.innerHTML.replace(/Nächster Kampf: kein Kampf/, 'Nächster Kampf: kein Kampf <a href="stamm.php?do=kampfsuche">[Gegnersuche]</a>');
		}
		// EPs etc.
		var gesamtEPs = 0;
		var gesamtHolz = 0;
		var gesamtStein = 0;
		var gesamtGold = 0;
		var gesamtWasser = 0;
		var gesamtNahrung = 0;
		var gesamtOnline = 0;
		var skTeilnehmerEP = 0;
		var starvationCounter = 0;
		var gruender = 0;
		if(content.getElementsByTagName('table')[1].textContent.indexOf('Als Gründer kannst du hier das Passwort ändern:') != -1) gruender = 1;
		var mitglieder = content.getElementsByTagName('table')[1+gruender].getElementsByTagName('tr');
		for(i=1; i<mitglieder.length; i++) {
			var user = mitglieder[i].getElementsByTagName('td')[1].textContent.trim();
			var ep = parseInt(mitglieder[i].getElementsByTagName('td')[2].textContent, 10);
			var holz = parseInt(mitglieder[i].getElementsByTagName('td')[3].textContent, 10);
			var stein = parseInt(mitglieder[i].getElementsByTagName('td')[4].textContent, 10);
			var gold = parseInt(mitglieder[i].getElementsByTagName('td')[5].textContent, 10);
			var wasser = parseInt(mitglieder[i].getElementsByTagName('td')[6].textContent, 10);
			var nahrung = parseInt(mitglieder[i].getElementsByTagName('td')[7].textContent, 10);
			gesamtEPs += ep;
			gesamtHolz += holz;
			gesamtStein += stein;
			gesamtGold += gold;
			gesamtWasser += wasser;
			gesamtNahrung += nahrung;
			mitglieder[i].getElementsByTagName('td')[2].setAttribute('class', 'right');
			mitglieder[i].getElementsByTagName('td')[2].innerHTML = number_format(ep);
			mitglieder[i].getElementsByTagName('td')[3].setAttribute('class', 'right');
			mitglieder[i].getElementsByTagName('td')[3].innerHTML = number_format(holz);
			mitglieder[i].getElementsByTagName('td')[4].setAttribute('class', 'right');
			mitglieder[i].getElementsByTagName('td')[4].innerHTML = number_format(stein);
			mitglieder[i].getElementsByTagName('td')[5].setAttribute('class', 'right');
			mitglieder[i].getElementsByTagName('td')[5].innerHTML = number_format(gold);
			mitglieder[i].getElementsByTagName('td')[6].setAttribute('class', 'right');
			mitglieder[i].getElementsByTagName('td')[6].innerHTML = number_format(wasser);
			if(nahrung < 50) {
				mitglieder[i].getElementsByTagName('td')[7].setAttribute('class', 'right red bold');
				starvationCounter++;
			} else {
				mitglieder[i].getElementsByTagName('td')[7].setAttribute('class', 'right');
			}
			mitglieder[i].getElementsByTagName('td')[7].innerHTML = number_format(nahrung);
			mitglieder[i].getElementsByTagName('td')[8].setAttribute('class', 'right');
			if(mitglieder[i].getElementsByTagName('td')[8].textContent.indexOf('online') != -1) {
				gesamtOnline += 1;
			}
			if(stammkampfTeilnehmer.indexOf(user) != -1) {
				skTeilnehmerEP += ep;
			}
		}
		var gesamtMitglieder = mitglieder.length-1;
		mitglieder[0].innerHTML = 
			'<td class="center bold top">#<br>&Sigma;<br>\u2300</td>' +
			'<td class="center top"><b>Name</b><br><i>'+gesamtMitglieder+'</i><br><br></td>' +
			'<td class="right top"><center><b>EP</b></center><i>'+number_format(gesamtEPs)+'<br>'+number_format(gesamtEPs/gesamtMitglieder)+'</i></td>' +
			'<td class="right top"><center><b>Holz</b></center><i>'+number_format(gesamtHolz)+'<br>'+number_format(gesamtHolz/gesamtMitglieder)+'</i></td>' +
			'<td class="right top"><center><b>Stein</b></center><i>'+number_format(gesamtStein)+'<br>'+number_format(gesamtStein/gesamtMitglieder)+'</i></td>' +
			'<td class="right top"><center><b>Gold</b></center><i>'+number_format(gesamtGold)+'<br>'+number_format(gesamtGold/gesamtMitglieder)+'</i></td>' +
			'<td class="right top"><center><b>Wasser</b></center><i>'+number_format(gesamtWasser)+'<br>'+number_format(gesamtWasser/gesamtMitglieder)+'</i></td>' +
			'<td class="right top"><center><b>Nahrung</b></center><i>'+number_format(gesamtNahrung)+'<br>'+number_format(gesamtNahrung/gesamtMitglieder)+'</i>'+((starvationCounter > 0)? '<br><center class="bold red">'+starvationCounter+' (!)</center>' : '' )+'</td>' +
			'<td class="center top"><b>Status</b><br><i>'+number_format(gesamtOnline)+'</i><br><br></td>';
		if(mitglieder.length-1 > 20) { // wenn >20 Mitglieder
			var newTR = document.createElement('tr');
			newTR.setAttribute('bgcolor', mitglieder[mitglieder.length-2].getAttribute('bgcolor'));
			newTR.innerHTML = '<td class="center bold">#</td><td class="center bold">Name</td><td class="center bold">EP</td><td class="center bold">Holz</td><td class="center bold">Stein</td><td class="center bold">Gold</td><td class="center bold">Wasser</td><td class="center bold">Nahrung</td><td class="center bold">Status</td>';
			mitglieder[0].parentNode.appendChild(newTR);
		}
		// SK+MK-Anmeldungen und StammWaffen für SK+MK
		var skTeilnehmerDate = new Date(parseInt(stammkampfTeilnehmer.split('#')[0], 10));
		var mkTeilnehmerDate = new Date(parseInt(magierkampfTeilnehmer.split('#')[0], 10));
		var isOldSK = (skStartDate && skStartDate.getTime()-86400000 >= skTeilnehmerDate.getTime()) ? true : false; // 86.400.000 = 1d
		var isOldMK = (magierkampfDate.getTime()-604800000 >= mkTeilnehmerDate.getTime()) ? true : false; // 604.800.000 = 7d
		var strStammWaffen = servertimeDate.getTime().toString()+'#';
		mitglieder = content.getElementsByTagName('table')[2+gruender].getElementsByTagName('tr');
		var skTeilnehmer = new Array();
		var skTeilnehmerOhneWaffe = new Array();
		var skNichtTeilnehmerOhneWaffeninfo = new Array();
		var skNichtTeilnehmerMitWaffeninfo = new Array();
		var skCountNichtTeilnehmerOhneWaffe = 0;
		var mkTeilnehmer = new Array();
		var mkTeilnehmerOhneWaffe = new Array();
		var mkNichtTeilnehmerOhneWaffeninfo = new Array();
		var mkNichtTeilnehmerMitWaffeninfo = new Array();
		var mkCountNichtTeilnehmerOhneWaffe = 0;
		for(i=1; i<mitglieder.length; i++) {
			var nick = mitglieder[i].getElementsByTagName('td')[1].textContent.trim();
			var waffe = mitglieder[i].getElementsByTagName('td')[3].textContent.trim();
			var status = mitglieder[i].getElementsByTagName('td')[8].getElementsByTagName('font')[0].getAttribute('color').trim();
			mitglieder[i].getElementsByTagName('td')[0].innerHTML = '<span class="'+status+'">'+i+'</span>';
			mitglieder[i].removeChild(mitglieder[i].getElementsByTagName('td')[8]);
			var skTD = document.createElement('td');
			skTD.setAttribute('class', 'center');
			if(!isOldSK) {
				if(stammkampfTeilnehmer.indexOf(nick) != -1) {
					skTD.innerHTML = '<div class="greenDot"></div>';
					skTeilnehmer.push(nick);
					if(waffe == '' || waffen.indexOf(waffe) == -1) {
						skTeilnehmerOhneWaffe.push(nick);
					}
				} else {
					skTD.innerHTML = '<div class="redDot"></div>';
					skNichtTeilnehmerOhneWaffeninfo.push(nick);
					if(waffe == '' || waffen.indexOf(waffe) == -1) {
						skNichtTeilnehmerMitWaffeninfo.push(nick+"(*)");
						skCountNichtTeilnehmerOhneWaffe++;
					} else {
						skNichtTeilnehmerMitWaffeninfo.push(nick);
					}
				}
			}
			mitglieder[i].insertBefore(skTD, mitglieder[i].getElementsByTagName('td')[4]);
			var mkTD = document.createElement('td');
			mkTD.setAttribute('class', 'center');
			if(!isOldMK) {
				if(magierkampfTeilnehmer.indexOf(nick) != -1) {
					mkTD.innerHTML = '<div class="greenDot"></div>';
					mkTeilnehmer.push(nick);
					if(waffe == '' || waffen.indexOf(waffe) == -1) {
						mkTeilnehmerOhneWaffe.push(nick);
					}
				} else {
					mkTD.innerHTML = '<div class="redDot"></div>';
					mkNichtTeilnehmerOhneWaffeninfo.push(nick);
					if(waffe == '' || waffen.indexOf(waffe) == -1) {
						mkNichtTeilnehmerMitWaffeninfo.push(nick+"(*)");
						mkCountNichtTeilnehmerOhneWaffe++;
					} else {
						mkNichtTeilnehmerMitWaffeninfo.push(nick);
					}
				}
			}
			mitglieder[i].insertBefore(mkTD, mitglieder[i].getElementsByTagName('td')[5]);
			strStammWaffen += nick+','+waffe+'#';
		}
		GM_setValue("StammWaffen", strStammWaffen);
		mitglieder[0].innerHTML = '<td class="center bold">#</td><td class="center bold">Name</td><td class="center bold">Beruf</td><td class="center bold">in der Hand</td><td class="center bold">SK<span class="red">*</span></td><td class="center bold">MK<span class="red">*</span></td><td class="center bold">Kicken</td><td class="center bold" title="Lagerrechte">LR</td><td class="center bold" title="Gründerrechte">GR</td><td class="center bold" title="Forenrechte">FR</td>';
		if(mitglieder.length-1 > 20) { // wenn >20 Mitglieder
			var newTR = document.createElement('tr');
			newTR.setAttribute('bgcolor', mitglieder[mitglieder.length-2].getAttribute('bgcolor'));
			newTR.innerHTML = '<td class="center bold">#</td><td class="center bold">Name</td><td class="center bold">Beruf</td><td class="center bold">in der Hand</td><td class="center bold">SK<span class="red">*</span></td><td class="center bold">MK<span class="red">*</span></td><td class="center bold">Kicken</td><td class="center bold" title="Lagerrechte">LR</td><td class="center bold" title="Gründerrechte">GR</td><td class="center bold" title="Forenrechte">FR</td>';
			mitglieder[0].parentNode.appendChild(newTR);
		}
		var hinweis = '<br><br><span class="red bold">* Hinweis:</span><br><span class="yellow">Teilnehmer-Daten zuletzt aktualisiert<br>';
		hinweis += '- SK: ';
		if(isOldSK) {
			hinweis += '<span class="red bold">Veraltet! Vom letzten SK!</span>';
		} else {
			var count = Math.floor(servertimeDate.getTime()/1000)-Math.floor(skTeilnehmerDate.getTime()/1000);
			var seconds = count%60;
			count = Math.floor(count/60);
			var minutes = count%60;
			count = Math.floor(count/60);
			var hours = count%24;
			if(hours > 0) {
				hinweis += hours+':'+format2(minutes)+':'+format2(seconds)+' Std';
			} else if(minutes > 0) {
				hinweis += minutes+':'+format2(seconds)+' Min';
			} else {
				hinweis += seconds+' Sek';
			}
			hinweis += ' ('+format2(skTeilnehmerDate.getDate())+'.'+format2(skTeilnehmerDate.getMonth()+1)+'.'+skTeilnehmerDate.getFullYear()+' - '+format2(skTeilnehmerDate.getHours())+':'+format2(skTeilnehmerDate.getMinutes())+':'+format2(skTeilnehmerDate.getSeconds())+' Uhr)';
		}
		hinweis += ' -> via <a href="stamm.php?do=kampfuserauswahl">Stammkampf</a> aktualisieren<br>';
		hinweis += '- MK: ';
		if(isOldMK) {
			hinweis += '<span class="red" bold>Veraltet! Vom letzten MK!</span>';
		} else {
			var count = Math.floor(servertimeDate.getTime()/1000)-Math.floor(mkTeilnehmerDate.getTime()/1000);
			var seconds = count%60;
			count = Math.floor(count/60);
			var minutes = count%60;
			count = Math.floor(count/60);
			var hours = count%24;
			if(hours > 0) {
				hinweis += hours+':'+format2(minutes)+':'+format2(seconds)+' Std';
			} else if(minutes > 0) {
				hinweis += minutes+':'+format2(seconds)+' Min';
			} else {
				hinweis += seconds+' Sek';
			}
			hinweis += ' ('+format2(mkTeilnehmerDate.getDate())+'.'+format2(mkTeilnehmerDate.getMonth()+1)+'.'+mkTeilnehmerDate.getFullYear()+' - '+format2(mkTeilnehmerDate.getHours())+':'+format2(mkTeilnehmerDate.getMinutes())+':'+format2(mkTeilnehmerDate.getSeconds())+' Uhr)';
		}
		hinweis += ' -> via <a href="stamm.magierkampf.php">Magierkampf</a> aktualisieren</span><br><br>';
		var skCopyOhneWaffenstand = '';
		var skCopyMitWaffenstand = '';
		if(skStartDate) {
			skCopyOhneWaffenstand = 'Stammkampf: '+format2(skStartDate.getDate())+'.'+format2(skStartDate.getMonth()+1)+'.'+skStartDate.getFullYear()+' - '+format2(skStartDate.getHours())+':'+format2(skStartDate.getMinutes())+' Uhr';
			skCopyOhneWaffenstand += '\nGegner: '+skGegner;
			skCopyMitWaffenstand = skCopyOhneWaffenstand;
			if(isOldSK) {
				skCopyOhneWaffenstand += '\n\nVeraltete Teilnehmer-Daten vom letzten Stammkampf!';
				skCopyMitWaffenstand = skCopyOhneWaffenstand;
			} else {
				skCopyOhneWaffenstand += '\n\nTeilnehmer: '+skTeilnehmer.length+'/'+gesamtMitglieder+' ('+number_format(skTeilnehmerEP)+' EP)';
				skCopyOhneWaffenstand += '\n\nNICHT angemeldet ('+skNichtTeilnehmerOhneWaffeninfo.length+'): '+skNichtTeilnehmerOhneWaffeninfo.join(', ');
				skCopyOhneWaffenstand += '\n\nStand (Teilnehmer): '+format2(skTeilnehmerDate.getDate())+'.'+format2(skTeilnehmerDate.getMonth()+1)+'.'+skTeilnehmerDate.getFullYear()+' - '+format2(skTeilnehmerDate.getHours())+':'+format2(skTeilnehmerDate.getMinutes())+':'+format2(skTeilnehmerDate.getSeconds())+' Uhr';
				skCopyMitWaffenstand += '\n\nTeilnehmer: '+skTeilnehmer.length+'/'+gesamtMitglieder+' ('+number_format(skTeilnehmerEP)+' EP)'+'\ndavon OHNE Waffe: ('+skTeilnehmerOhneWaffe.length+'): '+skTeilnehmerOhneWaffe.join(', ');
				skCopyMitWaffenstand += '\n\nNICHT angemeldet ('+skNichtTeilnehmerMitWaffeninfo.length+'): '+skNichtTeilnehmerMitWaffeninfo.join(', ')+((skCountNichtTeilnehmerOhneWaffe > 0)? '\n(*) = ohne Waffe ('+skCountNichtTeilnehmerOhneWaffe+')':'');
				skCopyMitWaffenstand += '\n\nStand (Teilnehmer): '+format2(skTeilnehmerDate.getDate())+'.'+format2(skTeilnehmerDate.getMonth()+1)+'.'+skTeilnehmerDate.getFullYear()+' - '+format2(skTeilnehmerDate.getHours())+':'+format2(skTeilnehmerDate.getMinutes())+':'+format2(skTeilnehmerDate.getSeconds())+' Uhr';
				skCopyMitWaffenstand += '\nStand (Waffen): '+format2(servertimeDate.getDate())+'.'+format2(servertimeDate.getMonth()+1)+'.'+servertimeDate.getFullYear()+' - '+format2(servertimeDate.getHours())+':'+format2(servertimeDate.getMinutes())+':'+format2(servertimeDate.getSeconds())+' Uhr';
			}
		} else {
			skCopyOhneWaffenstand = 'Derzeit kein Stammkampf!';
			skCopyMitWaffenstand = skCopyOhneWaffenstand;
		}
		var mkCopyOhneWaffenstand = 'Magierkampf: '+format2(magierkampfDate.getDate())+'.'+format2(magierkampfDate.getMonth()+1)+'.'+magierkampfDate.getFullYear()+' - '+format2(magierkampfDate.getHours())+':'+format2(magierkampfDate.getMinutes())+' Uhr';
		var mkCopyMitWaffenstand = mkCopyOhneWaffenstand;
		if(isOldMK) {
			mkCopyOhneWaffenstand += '\n\nVeraltete Teilnehmer-Daten vom letzten Magierkampf!';
			mkCopyMitWaffenstand = mkCopyOhneWaffenstand;
		} else {
			mkCopyOhneWaffenstand += '\n\nTeilnehmer: '+mkTeilnehmer.length+'/'+gesamtMitglieder;
			mkCopyOhneWaffenstand += '\n\nNICHT angemeldet ('+mkNichtTeilnehmerOhneWaffeninfo.length+'): '+mkNichtTeilnehmerOhneWaffeninfo.join(', ');
			mkCopyOhneWaffenstand += '\n\nStand (Teilnehmer): '+format2(mkTeilnehmerDate.getDate())+'.'+format2(mkTeilnehmerDate.getMonth()+1)+'.'+mkTeilnehmerDate.getFullYear()+' - '+format2(mkTeilnehmerDate.getHours())+':'+format2(mkTeilnehmerDate.getMinutes())+':'+format2(mkTeilnehmerDate.getSeconds())+' Uhr';
			mkCopyMitWaffenstand += '\n\nTeilnehmer: '+mkTeilnehmer.length+'/'+gesamtMitglieder+'\ndavon OHNE Waffe ('+mkTeilnehmerOhneWaffe.length+'): '+mkTeilnehmerOhneWaffe.join(', ');
			mkCopyMitWaffenstand += '\n\nNICHT angemeldet ('+mkNichtTeilnehmerMitWaffeninfo.length+'): '+mkNichtTeilnehmerMitWaffeninfo.join(', ')+((mkCountNichtTeilnehmerOhneWaffe > 0)? '\n(*) = ohne Waffe ('+mkCountNichtTeilnehmerOhneWaffe+')':'');
			mkCopyMitWaffenstand += '\n\nStand (Teilnehmer): '+format2(mkTeilnehmerDate.getDate())+'.'+format2(mkTeilnehmerDate.getMonth()+1)+'.'+mkTeilnehmerDate.getFullYear()+' - '+format2(mkTeilnehmerDate.getHours())+':'+format2(mkTeilnehmerDate.getMinutes())+':'+format2(mkTeilnehmerDate.getSeconds())+' Uhr';
			mkCopyMitWaffenstand += '\nStand (Waffen): '+format2(servertimeDate.getDate())+'.'+format2(servertimeDate.getMonth()+1)+'.'+servertimeDate.getFullYear()+' - '+format2(servertimeDate.getHours())+':'+format2(servertimeDate.getMinutes())+':'+format2(servertimeDate.getSeconds())+' Uhr';
		}
		content.innerHTML += hinweis+'<br><b>Stammkampf-Copy:</b> <input id="skcopycheckbox" type="checkbox">mit Waffenstand<br><textarea id="skcopy" class="kampfcopy"></textarea><br><br><br><b>Magierkampf-Copy:</b> <input id="mkcopycheckbox" type="checkbox">mit Waffenstand<br><textarea id="mkcopy" class="kampfcopy"></textarea><br><br><br>';
		document.getElementById('skcopy').innerHTML = skCopyOhneWaffenstand;
		document.getElementById('mkcopy').innerHTML = mkCopyOhneWaffenstand;
		// Event-Listener
		document.getElementById('skcopycheckbox').addEventListener('change', function() {
			if(document.getElementById('skcopycheckbox').checked) {
				document.getElementById('skcopy').innerHTML = skCopyMitWaffenstand;
			} else {
				document.getElementById('skcopy').innerHTML = skCopyOhneWaffenstand;
			}
		}, false);
		document.getElementById('mkcopycheckbox').addEventListener('change', function() {
			if(document.getElementById('mkcopycheckbox').checked) {
				document.getElementById('mkcopy').innerHTML = mkCopyMitWaffenstand;
			} else {
				document.getElementById('mkcopy').innerHTML = mkCopyOhneWaffenstand;
			}
		}, false);
	}



// StammInfo
	if(document.URL.indexOf("/stamminfo.php") != -1) {
		if(content.textContent.indexOf('Hier werden Stammdaten angezeigt:') != -1) {
			var mitglieder = content.getElementsByTagName('table')[3].getElementsByTagName('tr');
			var gesamtEPs = 0;
			var gesamtOnline = 0;
			for(i=1; i<mitglieder.length; i++) {
				var ep = parseInt(mitglieder[i].getElementsByTagName('td')[1].textContent, 10);
				gesamtEPs += ep;
				mitglieder[i].getElementsByTagName('td')[1].innerHTML = number_format(ep);
				mitglieder[i].getElementsByTagName('td')[1].setAttribute('class', 'right');
				mitglieder[i].getElementsByTagName('td')[2].setAttribute('class', 'center');
				if(mitglieder[i].getElementsByTagName('td')[2].textContent.indexOf('online') != -1)
					gesamtOnline++;
			}
			var gesamtMitglieder = mitglieder.length-1;
			mitglieder[0].getElementsByTagName('td')[0].innerHTML = '<b>Name</b> ('+gesamtMitglieder+')';
			mitglieder[0].getElementsByTagName('td')[1].innerHTML = '<b>Erfahrung</b> ('+number_format(gesamtEPs)+')';
			mitglieder[0].getElementsByTagName('td')[2].innerHTML = '<b>Status</b> ('+gesamtOnline+')';
			mitglieder[0].getElementsByTagName('td')[0].setAttribute('class', 'center');
			mitglieder[0].getElementsByTagName('td')[1].setAttribute('class', 'center');
			mitglieder[0].getElementsByTagName('td')[2].setAttribute('class', 'center');
			var gesamtep = document.createElement('tr');
			gesamtep.innerHTML = '<td>Gesamt-EP</td><td>'+number_format(gesamtEPs)+' (\u2300 '+number_format(gesamtEPs/(mitglieder.length-1), 2)+')</td>';
			var mitgliederanzahl = document.createElement('tr');
			mitgliederanzahl.innerHTML = '<td>Mitgliederanzahl</td><td>'+gesamtMitglieder+' ('+gesamtOnline+' online)</td>';
			content.getElementsByTagName('table')[2].getElementsByTagName('tbody')[0].insertBefore(mitgliederanzahl, content.getElementsByTagName('table')[2].getElementsByTagName('tr')[6]);
			content.getElementsByTagName('table')[2].getElementsByTagName('tbody')[0].insertBefore(gesamtep, content.getElementsByTagName('table')[2].getElementsByTagName('tr')[7]);
			content.getElementsByTagName('div')[0].setAttribute('style', 'overflow:auto; width:550px;');
		} else if(content.textContent.indexOf('Hier kannst du nach einem Steinzeit-Stamm suchen:') != -1) {
			if(getURLParameter('s') != null) {
				document.getElementsByName('stammname')[0].value = decodeURI(getURLParameter('s'));
			}
			document.getElementsByName('stammname')[0].focus();
		}
	}



// UserInfo
	if(document.URL.indexOf('/userinfo.php') != -1) {
		if(content.textContent.indexOf('Userdaten:') != -1) {
			i=0;
			while(content.getElementsByTagName('table')[4].getElementsByTagName('tr')[i].textContent.indexOf("Erfahrung:") == -1) {
				i++;
			}
			var ep = parseInt(content.getElementsByTagName('table')[4].getElementsByTagName('tr')[i].getElementsByTagName('td')[1].textContent, 10);
			var realtage = content.getElementsByTagName('table')[4].getElementsByTagName('tr')[i+1].getElementsByTagName('td')[1].textContent.trim();
			realtage = realtage.split(' ');
			realtage = 15*parseInt(realtage[0], 10)+parseInt(realtage[4], 10)-197; // realtage == SZS-Monate, 197 -> Startalter (13J2M)
			if(realtage <= 0) realtage = 1;
			content.getElementsByTagName('table')[4].getElementsByTagName('tr')[i].getElementsByTagName('td')[1].innerHTML = number_format(ep)+' (\u2300 '+number_format(ep/realtage, 2)+') <span class="pointer" onclick="javascript:alert(this.title)" title="Dieser Wert errechnet sich aus Gesamt-EP geteilt durch \'Alter im Spiel\'.\nDa seit einiger Zeit allerdings jeden Tag mehrere Tage vergehen, ist dieser Wert quasi nicht mehr zu gebrauchen.">[?]</span>';
			var beschreibung = content.getElementsByTagName('table')[5].getElementsByTagName('td')[0];
			beschreibung.innerHTML = '<div style="overflow:auto;width:550px;">'+beschreibung.innerHTML+'</div>';
		} else if(content.textContent.indexOf('Hier kannst du nach einem Steinzeitmenschen suchen.') != -1) {
			if(getURLParameter('s') != null) {
				document.getElementsByName('userdatenname')[0].value = decodeURI(getURLParameter('s'));
			}
			document.getElementsByName('userdatenname')[0].focus();
		}
	}



// Aktive Spieler & Stämme
	var resetZeit = 4;
	if(isSommerzeit(servertimeDate)) {
		resetZeit = 6;
	} else {
		resetZeit = 5;
	}
	if(document.URL.indexOf('/aktivespieler.php') != -1) {
		GM_setValue("Assi_UserName", content.getElementsByTagName('table')[1].getElementsByTagName('td')[56].textContent.trim());
		// Beschreibung anpassen
		content.innerHTML = content.innerHTML.replace('4:15 Uhr', resetZeit+':15 Uhr');
	}
	if(document.URL.indexOf('/aktivpunkte.php') != -1) {
		GM_setValue("Assi_StammName", content.getElementsByTagName('table')[1].getElementsByTagName('td')[64].textContent.trim());
		content.innerHTML = content.innerHTML.replace('4:15 Uhr', resetZeit+':15 Uhr');
	}



// Stammnachrichten (Profil-Links, IGM-Icons, SK-, MK-Auswertung)
	// Nachricht löschen, wenn abgeschickt
	if(document.URL.indexOf('/stamm.php') && content.textContent.indexOf('Die Nachricht wurde hinzugefügt.') != -1) {
		GM_deleteValue("Stammnachricht");
	}
	if(document.URL.indexOf('/stamm.php?do=nachricht') != -1) {
		content.getElementsByTagName('table')[1].setAttribute('id', 'stammnachrichteneingabetable');
		content.getElementsByTagName('textarea')[0].setAttribute('id', 'stammnachrichteneingabe');
		document.getElementById('stammnachrichteneingabetable').getElementsByTagName('td')[2].innerHTML += '<br><br><b>SZS-Assistent:</b> Willst du <span class="yellow">gelb</span> schreiben, beginne deine Nachricht mit <b>*gelb*</b> (mit *).<br>';
		document.getElementById('stammnachrichteneingabe').addEventListener('keyup', function() { GM_setValue("Stammnachricht", document.getElementById('stammnachrichteneingabe').value); }, false);
		// Letzte nicht abgeschickte StammNachricht wiederherstellen
		var stammnachricht = GM_getValue("Stammnachricht", "");
		if(stammnachricht != "") {
			var newDIV = document.createElement('div');
			newDIV.setAttribute('class', 'postrecovery');
			newDIV.innerHTML = 'Letzte nicht abgeschickte StammNachricht wiederhergestellt.';
			content.insertBefore(newDIV, content.getElementsByTagName('form')[0]);
			document.getElementById("stammnachrichteneingabe").value = stammnachricht;
		}
		var stammnachrichten = content.getElementsByTagName('table')[2].getElementsByTagName('tr');
		for(i=1; i<stammnachrichten.length; i++) {
			stammnachrichten[i].getElementsByTagName('td')[0].innerHTML.split('<br>')[1].search(/(\d+)\.(\d+)\.(\d+) \- (\d+):(\d+)/);
			var postDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), 0);
			var userID = stammnachrichten[i].getElementsByTagName('a')[0].getAttribute('href').slice(17);
			if(userID != 0) {
				// Profil-Link, PN-Icon
				stammnachrichten[i].getElementsByTagName('a')[0].setAttribute('href', 'userinfo.php?userinfo='+userID);
				var newA = document.createElement('a');
				newA.setAttribute('href', 'message.php?empf='+userID);
				newA.setAttribute('style', 'margin-left: 5px;');
				newA.setAttribute('title', 'Private Nachricht');
				var newSPAN = document.createElement('span');
				newSPAN.setAttribute('class', 'pn-icon');
				newA.appendChild(newSPAN);
				stammnachrichten[i].getElementsByTagName('td')[0].insertBefore(newA, stammnachrichten[i].getElementsByTagName('br')[0]);
				// Textlinks setzen
				stammnachrichten[i].getElementsByTagName('td')[1].innerHTML = stammnachrichten[i].getElementsByTagName('td')[1].innerHTML.replace(/((http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:\/~\+#\(\)]*[\w\-\@?^=%&amp;\/~\+#\(\)])?)/g, '<a class="menu" target="_blank" href="$1">$1</a>');
				// *gelb* Schreiben
				if(stammnachrichten[i].getElementsByTagName('td')[1].textContent.indexOf('*gelb*') == 0) {
					stammnachrichten[i].getElementsByTagName('td')[1].innerHTML = '<div style="width:430px; overflow:auto; color:yellow;">'+stammnachrichten[i].getElementsByTagName('td')[1].innerHTML.slice(6)+'</div>';
				} else {
					stammnachrichten[i].getElementsByTagName('td')[1].innerHTML = '<div style="width:430px; overflow:auto;">'+stammnachrichten[i].getElementsByTagName('td')[1].innerHTML+'</div>';
				}
			} else {
				// Stammkampfauswertung
				if(stammnachrichten[i].getElementsByTagName('td')[1].textContent.indexOf('Der Kampf wurde') != -1) {
					if(!counterGesamtEP) var counterGesamtEP = new Array();
					if(!gesamtEP) var gesamtEP = new Array();
					if(!stammname) var stammname = new Array();
					var input = document.createElement('input');
					input.setAttribute('id', 'skauswertung_'+i);
					input.setAttribute('type', 'button');
					input.setAttribute('class', 'pointer');
					input.setAttribute('value', 'Auswerten');
					input.setAttribute('snnum', i);
					input.addEventListener('click', function() {
						var snnum = this.getAttribute('snnum');
						gesamtEP[snnum+'a'] = 0;
						gesamtEP[snnum+'v'] = 0;
						stammname[snnum+'a'] = new Array();
						stammname[snnum+'v'] = new Array();
						var plotContent = stammnachrichten[snnum].getElementsByTagName('td')[1].getElementsByTagName('font');
						// Angreifer
						var angreifer = stammnachrichten[snnum].getElementsByTagName('td')[1].innerHTML.replace(/.*Für den angreifenden Stamm sind angetreten:\s*/, '').replace(/\s*<br>.*/, '').replace(/<font color="red"><b>/g, '').replace(/<\/b><\/font>/g, '').trim();
						angreifer = angreifer.split(' ');
						for(j=0; j<angreifer.length; j++) {
							addDataForSKresult(angreifer[j], snnum+'a', angreifer, j);
						}
						counterGesamtEP[snnum+'a'] = angreifer.length;
						// Verteidiger
						var verteidiger = stammnachrichten[snnum].getElementsByTagName('td')[1].innerHTML.replace(/.*Für den angegriffenen Stamm sind angetreten:\s*/, '').replace(/\s*\.<br>.*/, '').replace(/<font color="red"><b>/g, '').replace(/<\/b><\/font>/g, '').trim();
						verteidiger = verteidiger.split(' ');
						for(j=0; j<verteidiger.length; j++) {
								addDataForSKresult(verteidiger[j], snnum+'v', verteidiger, j);
						}
						counterGesamtEP[snnum+'v'] = verteidiger.length;
						// Inhalt ausgeben
						var newContent = plotContent[0].outerHTML+'<br>';
						newContent += '<br><b>Für den angreifenden Stamm (<span id="stamm_'+snnum+'a"><span class="yellow">...</span></span>) sind angetreten (<span id="anz_'+snnum+'a">'+angreifer.length+'</span>):</b><br>';
						for(j=0; j<angreifer.length; j++) {
							newContent += '<span id="sk_'+snnum+'a_'+angreifer[j].trim()+'">'+angreifer[j]+'</span> ';
						}
						newContent += '<br><br><b>Für den angegriffenen Stamm (<span id="stamm_'+snnum+'v"><span class="yellow">...</span></span>) sind angetreten (<span id="anz_'+snnum+'v">'+verteidiger.length+'</span>):</b><br>';
						for(j=0; j<verteidiger.length; j++) {
							newContent += '<span id="sk_'+snnum+'v_'+verteidiger[j].trim()+'">'+verteidiger[j]+'</span> ';
						}
						newContent += '<br><br><b>Angreifer-EP:</b> <span id="ep_'+snnum+'a"><span class="yellow">Daten werden geladen...</span></span>';
						newContent += '<br><b>Verteidiger-EP:</b> <span id="ep_'+snnum+'v"><span class="yellow">Daten werden geladen...</span></span>';
						newContent += '<br><br>'+plotContent[plotContent.length-1].outerHTML;
						stammnachrichten[snnum].getElementsByTagName('td')[1].innerHTML = newContent;
						this.parentNode.removeChild(this);
					}, false);
					stammnachrichten[i].getElementsByTagName('td')[0].appendChild(input);
				// MK: Startnachricht
				} else if(stammnachrichten[i].getElementsByTagName('td')[1].textContent.indexOf('Magierkampf') != -1) {
					var startnachricht = stammnachrichten[i].getElementsByTagName('td')[1].innerHTML.split('<br>');
					var teilnehmeranzahl = 0;
					var newContent = '';
					var strMagierkampfTeilnehmer = postDate.getTime().toString()+"#";
					for(j=0; j<startnachricht.length-1; j++) {
						if(startnachricht[j].indexOf('macht sich auf den Weg zum Magierkampf.') != -1) {
							teilnehmeranzahl++;
							newContent += startnachricht[j]+'<br>';
							var nick = startnachricht[j].replace(/<font color="red"><b>/, '').replace(/<\/b><\/font>/, '').trim();
							nick = nick.substring(0, nick.length-40);
							strMagierkampfTeilnehmer += nick+'#';
						} else {
							newContent += '<span class="red">'+startnachricht[j]+'</span><br>';
						}
					}
					if(parseInt(GM_getValue("MagierkampfTeilnehmer", "").split('#')[0], 10) <= postDate.getTime()) {
						GM_setValue("MagierkampfTeilnehmer", strMagierkampfTeilnehmer);
					}
					stammnachrichten[i].getElementsByTagName('td')[0].innerHTML += '<br><br><br><b>Teilnehmer:</b> '+teilnehmeranzahl+'<br>';
					if(document.getElementById('mkTeilnehmeranzahl')) document.getElementById('mkTeilnehmeranzahl').innerHTML = '('+teilnehmeranzahl+' Teilnehmer)';
					stammnachrichten[i].getElementsByTagName('td')[1].innerHTML = newContent;
				// MK: Ergebnisnachricht | MK-Auswertung
				} else if(stammnachrichten[i].getElementsByTagName('td')[1].textContent.indexOf('50 Holz, 50 Stein, 20 Bronze.') != -1) {
					var mkEreignisse = stammnachrichten[i].getElementsByTagName('td')[1].innerHTML.split("<br>");
					mkEreignisse.pop();
					var killer_stamm = new Array(); // USERNAME
					var killer_gegner = new Array(); // USERNAME (STAMMNAME)
					var gekillteStaemme_stamm = new Array(); // STAMMNAME
					var killendeStaemme_gegner = new Array(); // STAMMNAME
					var angreifer_stamm = new Array(); // USERNAME
					var angreifer_gegner = new Array(); // USERNAME (STAMMNAME)
					var angegriffeneUser_stamm = new Array(); // USERNAME
					var angegriffeneUser_gegner = new Array(); // USERNAME (STAMMNAME)
					var angegriffeneStaemme_stamm = new Array(); // STAMMNAME
					var angreifendeStaemme_gegner = new Array(); // STAMMNAME
					var kills_stamm = 0;
					var kills_gegner = 0;
					var angriffe_stamm = 0;
					var angriffe_gegner = 0;
					var newContent = '';
					for(j=0; j<mkEreignisse.length; j++) {
						if(mkEreignisse[j].indexOf('wurde dabei verletzt.') == -1) {
							// aktuelles mkEreignis ist Attacke
							mkEreignisse[j] = mkEreignisse[j].replace(/^<\/font>/, '');
							mkEreignisse[j].search(/(.*) \((.*), \d{1,3}%\) trifft auf (.*) \(((.*), )?\d{1,3}%\) und fügt (ihm )?\d{1,3} (S|s)chaden zu./);
							var user1 = RegExp.$1; // Angreifer
							var stamm1 = RegExp.$2;
							var user2 = RegExp.$3; // Verteidiger
							var stamm2 = RegExp.$5;
							if(user2 == 'Magier') stamm2 = '<span class="orange bold">Magier</span>';
							if(stamm1 == Assi_StammName) {
								// Angriff des eigenen Stammes
								angriffe_stamm++;
								if(angreifer_stamm.indexOf(user1) == -1) {
									angreifer_stamm.push(user1);
									angreifer_stamm[user1] = 1;
								} else {
									angreifer_stamm[user1]++;
								}
								if(angegriffeneUser_gegner.indexOf(user2+' ('+stamm2+')') == -1) {
									angegriffeneUser_gegner.push(user2+' ('+stamm2+')');
									angegriffeneUser_gegner[user2+' ('+stamm2+')'] = 1;
								} else {
									angegriffeneUser_gegner[user2+' ('+stamm2+')']++;
								}
								if(angegriffeneStaemme_stamm.indexOf(stamm2) == -1) {
									angegriffeneStaemme_stamm.push(stamm2);
									angegriffeneStaemme_stamm[stamm2] = 1;
								} else {
									angegriffeneStaemme_stamm[stamm2]++;
								}
							} else {
								// Angriff eines gegnerischen Stammes
								angriffe_gegner++;
								if(angreifer_gegner.indexOf(user1+' ('+stamm1+')') == -1) {
									angreifer_gegner.push(user1+' ('+stamm1+')');
									angreifer_gegner[user1+' ('+stamm1+')'] = 1;
								} else {
									angreifer_gegner[user1+' ('+stamm1+')']++;
								}
								if(angegriffeneUser_stamm.indexOf(user2) == -1) {
									angegriffeneUser_stamm.push(user2);
									angegriffeneUser_stamm[user2] = 1;
								} else {
									angegriffeneUser_stamm[user2]++;
								}
								if(angreifendeStaemme_gegner.indexOf(stamm1) == -1) {
									angreifendeStaemme_gegner.push(stamm1);
									angreifendeStaemme_gegner[stamm1] = 1;
								} else {
									angreifendeStaemme_gegner[stamm1]++;
								}
							}
							if(j+1 < mkEreignisse.length && mkEreignisse[j+1].indexOf('wurde dabei verletzt.') != -1) {
								// aktuelles mkEreignis ist auch Kill
								if(stamm1 == Assi_StammName) {
									// Kill des eigenen Stammes
									if(user2 == 'Magier') {
										mkEreignisse[j+1] = mkEreignisse[j+1].replace(/^<font color="red">/, '<span class="orange">').replace(/<\/font>$/, '</span>');
									} else {
										mkEreignisse[j+1] = mkEreignisse[j+1].replace(/^<font color="red">/, '<span class="green">');
										mkEreignisse[j+1] += '</span>';
									}
									kills_stamm++;
									if(killer_stamm.indexOf(user1) == -1) {
										killer_stamm.push(user1);
										killer_stamm[user1] = 1;
									} else {
										killer_stamm[user1]++;
									}
									if(gekillteStaemme_stamm.indexOf(stamm2) == -1) {
										gekillteStaemme_stamm.push(stamm2);
										gekillteStaemme_stamm[stamm2] = 1;
									} else {
										gekillteStaemme_stamm[stamm2]++;
									}
								} else {
									// Kill eines gegnerischen Stammes
									mkEreignisse[j+1] += '</font>';
									kills_gegner++;
									if(killer_gegner.indexOf(user1+' ('+stamm1+')') == -1) {
										killer_gegner.push(user1+' ('+stamm1+')');
										killer_gegner[user1+' ('+stamm1+')'] = 1;
									} else {
										killer_gegner[user1+' ('+stamm1+')']++;
									}
									if(killendeStaemme_gegner.indexOf(stamm1) == -1) {
										killendeStaemme_gegner.push(stamm1);
										killendeStaemme_gegner[stamm1] = 1;
									} else {
										killendeStaemme_gegner[stamm1]++;
									}
								}
							}
						}
					}
					// Sortiere Arrays
					for(k=0; k<killer_stamm.length; k++) {
						for(l=k+1; l<killer_stamm.length; l++) {
							if(killer_stamm[killer_stamm[k]] < killer_stamm[killer_stamm[l]]) {
								var z = killer_stamm[k];
								killer_stamm[k] = killer_stamm[l];
								killer_stamm[l] = z;
							}
						}
					}
					for(k=0; k<killer_gegner.length; k++) {
						for(l=k+1; l<killer_gegner.length; l++) {
							if(killer_gegner[killer_gegner[k]] < killer_gegner[killer_gegner[l]]) {
								var z = killer_gegner[k];
								killer_gegner[k] = killer_gegner[l];
								killer_gegner[l] = z;
							}
						}
					}
					for(k=0; k<gekillteStaemme_stamm.length; k++) {
						for(l=k+1; l<gekillteStaemme_stamm.length; l++) {
							if(gekillteStaemme_stamm[gekillteStaemme_stamm[k]] < gekillteStaemme_stamm[gekillteStaemme_stamm[l]]) {
								var z = gekillteStaemme_stamm[k];
								gekillteStaemme_stamm[k] = gekillteStaemme_stamm[l];
								gekillteStaemme_stamm[l] = z;
							}
						}
					}
					for(k=0; k<killendeStaemme_gegner.length; k++) {
						for(l=k+1; l<killendeStaemme_gegner.length; l++) {
							if(killendeStaemme_gegner[killendeStaemme_gegner[k]] < killendeStaemme_gegner[killendeStaemme_gegner[l]]) {
								var z = killendeStaemme_gegner[k];
								killendeStaemme_gegner[k] = killendeStaemme_gegner[l];
								killendeStaemme_gegner[l] = z;
							}
						}
					}
					for(k=0; k<angreifer_stamm.length; k++) {
						for(l=k+1; l<angreifer_stamm.length; l++) {
							if(angreifer_stamm[angreifer_stamm[k]] < angreifer_stamm[angreifer_stamm[l]]) {
								var z = angreifer_stamm[k];
								angreifer_stamm[k] = angreifer_stamm[l];
								angreifer_stamm[l] = z;
							}
						}
					}
					for(k=0; k<angreifer_gegner.length; k++) {
						for(l=k+1; l<angreifer_gegner.length; l++) {
							if(angreifer_gegner[angreifer_gegner[k]] < angreifer_gegner[angreifer_gegner[l]]) {
								var z = angreifer_gegner[k];
								angreifer_gegner[k] = angreifer_gegner[l];
								angreifer_gegner[l] = z;
							}
						}
					}
					for(k=0; k<angegriffeneUser_stamm.length; k++) {
						for(l=k+1; l<angegriffeneUser_stamm.length; l++) {
							if(angegriffeneUser_stamm[angegriffeneUser_stamm[k]] < angegriffeneUser_stamm[angegriffeneUser_stamm[l]]) {
								var z = angegriffeneUser_stamm[k];
								angegriffeneUser_stamm[k] = angegriffeneUser_stamm[l];
								angegriffeneUser_stamm[l] = z;
							}
						}
					}
					for(k=0; k<angegriffeneUser_gegner.length; k++) {
						for(l=k+1; l<angegriffeneUser_gegner.length; l++) {
							if(angegriffeneUser_gegner[angegriffeneUser_gegner[k]] < angegriffeneUser_gegner[angegriffeneUser_gegner[l]]) {
								var z = angegriffeneUser_gegner[k];
								angegriffeneUser_gegner[k] = angegriffeneUser_gegner[l];
								angegriffeneUser_gegner[l] = z;
							}
						}
					}
					for(k=0; k<angegriffeneStaemme_stamm.length; k++) {
						for(l=k+1; l<angegriffeneStaemme_stamm.length; l++) {
							if(angegriffeneStaemme_stamm[angegriffeneStaemme_stamm[k]] < angegriffeneStaemme_stamm[angegriffeneStaemme_stamm[l]]) {
								var z = angegriffeneStaemme_stamm[k];
								angegriffeneStaemme_stamm[k] = angegriffeneStaemme_stamm[l];
								angegriffeneStaemme_stamm[l] = z;
							}
						}
					}
					for(k=0; k<angreifendeStaemme_gegner.length; k++) {
						for(l=k+1; l<angreifendeStaemme_gegner.length; l++) {
							if(angreifendeStaemme_gegner[angreifendeStaemme_gegner[k]] < angreifendeStaemme_gegner[angreifendeStaemme_gegner[l]]) {
								var z = angreifendeStaemme_gegner[k];
								angreifendeStaemme_gegner[k] = angreifendeStaemme_gegner[l];
								angreifendeStaemme_gegner[l] = z;
							}
						}
					}
					// Inhalt + Auswertung ausgeben
					var newContent = '<b><u>MK-Ereignisse</u></b><br><br><div id="mkEreignisse" style="height:350px; overflow:auto;">'+mkEreignisse.join('<br>')+'</div>';
					newContent += '<br><br><br><b><u>MK-Auswertung</u></b> <span id="mkTeilnehmeranzahl"></span><br><br><div id="mkAuswertung" style="height:400px; overflow:auto;">';
					newContent += '<b>Killer (Stamm):</b> '+kills_stamm+' Kills<br>';
					for(k=0; k<killer_stamm.length; k++) {
						newContent += killer_stamm[killer_stamm[k]]+'x '+killer_stamm[k]+'<br>';
					}
					newContent += '<br><br><b>Killer (Gegner):</b> '+kills_gegner+' Kills<br>';
					for(k=0; k<killer_gegner.length; k++) {
						newContent += killer_gegner[killer_gegner[k]]+'x '+killer_gegner[k]+'<br>';
					}
					newContent += '<br><br><b>Gekillte Stämme (Stamm):</b><br>';
					for(k=0; k<gekillteStaemme_stamm.length; k++) {
						newContent += gekillteStaemme_stamm[gekillteStaemme_stamm[k]]+'x '+gekillteStaemme_stamm[k]+'<br>';
					}
					newContent += '<br><br><b>Killende Stämme (Gegner):</b><br>';
					for(k=0; k<killendeStaemme_gegner.length; k++) {
						newContent += killendeStaemme_gegner[killendeStaemme_gegner[k]]+'x '+killendeStaemme_gegner[k]+'<br>';
					}
					newContent += '<br><br><b>Angreifer (Stamm):</b> '+angriffe_stamm+' Angriffe<br>';
					for(k=0; k<angreifer_stamm.length; k++) {
						newContent += angreifer_stamm[angreifer_stamm[k]]+'x '+angreifer_stamm[k]+'<br>';
					}
					newContent += '<br><br><b>Angreifer (Gegner):</b> '+angriffe_gegner+' Angriffe<br>';
					for(k=0; k<angreifer_gegner.length; k++) {
						newContent += angreifer_gegner[angreifer_gegner[k]]+'x '+angreifer_gegner[k]+'<br>';
					}
					newContent += '<br><br><b>Angegriffene User (Stamm):</b><br>';
					for(k=0; k<angegriffeneUser_stamm.length; k++) {
						newContent += angegriffeneUser_stamm[angegriffeneUser_stamm[k]]+'x '+angegriffeneUser_stamm[k]+'<br>';
					}
					newContent += '<br><br><b>Angegriffene User (Gegner):</b><br>';
					for(k=0; k<angegriffeneUser_gegner.length; k++) {
						newContent += angegriffeneUser_gegner[angegriffeneUser_gegner[k]]+'x '+angegriffeneUser_gegner[k]+'<br>';
					}
					newContent += '<br><br><b>Angegriffene Stämme (Stamm):</b><br>';
					for(k=0; k<angegriffeneStaemme_stamm.length; k++) {
						newContent += angegriffeneStaemme_stamm[angegriffeneStaemme_stamm[k]]+'x '+angegriffeneStaemme_stamm[k]+'<br>';
					}
					newContent += '<br><br><b>Angreifende Stämme (Gegner):</b><br>';
					for(k=0; k<angreifendeStaemme_gegner.length; k++) {
						newContent += angreifendeStaemme_gegner[angreifendeStaemme_gegner[k]]+'x '+angreifendeStaemme_gegner[k]+'<br>';
					}
					newContent += '<br><br><b>Einnahmen</b><br>- Holz: '+(50*kills_stamm)+'<br>- Stein: '+(50*kills_stamm)+'<br>- Bronze: '+(20*kills_stamm)+'<br></div>';
					stammnachrichten[i].getElementsByTagName("td")[1].innerHTML = newContent;
				}
			}
		}
	}



// StammForum - Forum
	if(document.URL.indexOf('/stammforum.forum.php') != -1) {
		var threads = content.getElementsByTagName('table')[3].getElementsByTagName('tr');
		var data_topics = GM_getValue("topics");
		data_topics = data_topics? data_topics:'';
		for(i=1; i<threads.length; i++) {
			var numPages = Math.ceil((parseInt(threads[i].getElementsByTagName('td')[3].textContent, 10)+1)/25);
			var topicid = threads[i].getElementsByTagName('a')[0].getAttribute('href').slice(29);
			if(data_topics.indexOf('#'+topicid+'.') == -1) {
				threads[i].getElementsByTagName('td')[0].innerHTML = '<a href="http://szs.looki.de/stammforum.post.php?topicid='+topicid+'" title="Antworten"><div class="blueDot"></div></a>';
			} else {
				var postDate = threads[i].getElementsByTagName('td')[4].textContent.trim();
				postDate = new Date(postDate.slice(3,5)+' '+postDate.slice(0,2)+', '+postDate.slice(6,10)+' '+postDate.slice(14,19)+':00');
				var datatime = data_topics.slice(data_topics.indexOf('#'+topicid+'.')+1);
				datatime = parseInt(datatime.slice(datatime.indexOf('.')+1, datatime.indexOf('#')), 10);
				if(postDate.getTime() > datatime) {
					threads[i].getElementsByTagName('td')[0].innerHTML = '<a href="http://szs.looki.de/stammforum.post.php?topicid='+topicid+'" title="Antworten"><div class="redDot"></div></a>';
				} else {
					threads[i].getElementsByTagName('td')[0].innerHTML = '<a href="http://szs.looki.de/stammforum.post.php?topicid='+topicid+'" title="Antworten"><div class="greenDot"></div></a>';
				}
			}
			// Hinzufügen von Seitenzahlen
			if(numPages > 1) {
				threads[i].getElementsByTagName('td')[1].innerHTML += ' (';
				for(j=1; j<=numPages; j++) {
					threads[i].getElementsByTagName('td')[1].innerHTML += '<a href="stammforum.topic.php?topicid='+topicid+'&seite='+j+'">'+j+'</a>';
					if(j != numPages) threads[i].getElementsByTagName('td')[1].innerHTML += ' ';
				}
				threads[i].getElementsByTagName('td')[1].innerHTML += ')';
			}
		}
		//Legende
		var legend = document.createElement('div');
		legend.setAttribute('id', 'forum-legend');
		legend.innerHTML = '<div class="blueDot"></div> = neues Thema<br>';
		legend.innerHTML += '<div class="redDot"></div> = neue Beiträge im Thema<br>';
		legend.innerHTML += '<div class="greenDot"></div> = Thema gelesen<br>';
		content.insertBefore(legend, content.getElementsByTagName('table')[5]);
		// Forendaten löschen-Button
		var input = document.createElement('input');
		content.insertBefore(input, document.getElementById('forum-legend').nextSibling);
		input.setAttribute('id', 'forumDataDel');
		input.setAttribute('type', 'button');
		input.setAttribute('class', 'pointer');
		input.setAttribute('value', 'Forendaten zurücksetzen');
		input.addEventListener('click', function() {
			var really = confirm('Es werden alle Daten zu gelesenen Beiträgen und Themen gelöscht!');
			if(really) {
				GM_deleteValue('topics');
				GM_deleteValue('posts');
			}
		}, false);
	}


// StammForum - Topic
	if(document.URL.indexOf('/stammforum.topic.php?topicid=') != -1 && getURLParameter('topicid') != '') {
		var data_posts = GM_getValue("posts", "#");
		var posts = content.getElementsByTagName('table')[3].getElementsByTagName('tr');
		for(i=1; i<posts.length; i+=3) {
			var postid = posts[i+1].getElementsByTagName('a')[0].getAttribute('href').slice(22)+'.';
			var postDate = posts[i+1].getElementsByTagName('i')[0].textContent.slice(posts[i+1].getElementsByTagName('i')[0].textContent.indexOf('|')+1).trim();
			postDate = new Date(postDate.slice(3,5)+' '+postDate.slice(0,2)+', '+postDate.slice(6,10)+' '+postDate.slice(14,19)+':00');
			postid += postDate.getTime()+'.';
			postid += hashCode(posts[i+2].innerHTML);
			if(posts[i+1].getElementsByTagName('a')[1]) {
				var postid_old = posts[i+1].getElementsByTagName('a')[1].getAttribute('href').slice(29);
			} else {
				var postid_old = '0';
			}
			var hasread = true;
			var newTD = document.createElement('td');
			if(data_posts.indexOf('#'+postid+'#') == -1 && data_posts.indexOf('#'+postid_old+'#') == -1) {
				hasread = false;
				newTD.innerHTML = '<div class="redDot"></div>';
				posts[i+0].getElementsByTagName('td')[0].setAttribute('bgcolor', '#3468a8');
				data_posts += postid+'#';
			} else {
				newTD.innerHTML = '<div class="greenDot"></div>';
				// Speichere neue postid, falls nur alte bisher vorhanden
				if(data_posts.indexOf('#'+postid+'#') == -1 && data_posts.indexOf('#'+postid_old+'#') != -1) {
					data_posts += postid+'#';
				}
			}
			var lastPostDate = postDate;
			posts[i+1].insertBefore(newTD, posts[i+1].getElementsByTagName('td')[0]);
			// Textlinks setzen
			posts[i].getElementsByTagName('td')[4].innerHTML = posts[i].getElementsByTagName('td')[4].innerHTML.replace(/((http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:\/~\+#\(\)]*[\w\-\@?^=%&amp;\/~\+#\(\)])?)/g, '<a class="menu" target="_blank" href="$1">$1</a>');
			var nick = posts[i+1].getElementsByTagName('a')[0].textContent.trim();
			var userid = posts[i+1].getElementsByTagName('a')[0].getAttribute('href').replace(/\D*/, '');
			var privatePostLink = '<a title="Private Nachricht" href="message.php?empf='+userid+'"><span class="pn-icon-s"></span></a>';
			posts[i+1].getElementsByTagName('i')[0].innerHTML = posts[i+1].getElementsByTagName('i')[0].innerHTML.replace('</a>', '</a>&nbsp;&nbsp;'+privatePostLink);
		}
		GM_setValue("posts", data_posts); // #postid#
		var data_topics = GM_getValue('topics');
		data_topics = data_topics? data_topics:'#';
		var topicid = getURLParameter('topicid');
		var isLastPage = (content.getElementsByTagName('table')[1].getElementsByTagName('td')[1].innerHTML.trim().search(/<\/b>$/) != -1)? true : false;
		if(data_topics.indexOf('#'+topicid+'.') == -1) {
			if(isLastPage) {
				data_topics += topicid+'.'+servertimeDate.getTime()+'#';
			} else {
				data_topics += topicid+'.'+lastPostDate.getTime()+'#';
			}
		} else {
			var datatime = data_topics.slice(data_topics.indexOf('#'+topicid+'.')+1);
			datatime = parseInt(datatime.slice(datatime.indexOf('.')+1, datatime.indexOf('#')), 10);
			if(lastPostDate.getTime()>datatime && !isLastPage) {
				data_topics = data_topics.replace(new RegExp('\#'+topicid+'\.([0-9]+)\#'), '#'+topicid+'.'+lastPostDate.getTime()+'#');
			} else if(isLastPage) {
				data_topics = data_topics.replace(new RegExp('\#'+topicid+'\.([0-9]+)\#'), '#'+topicid+'.'+servertimeDate.getTime()+'#');
			}
		}
		GM_setValue("topics", data_topics);
	}



// StammForum - Thread wiederherstellen
	if(document.URL.indexOf('/stammforum.post.php') != -1 && document.URL.indexOf('topicid=') == -1) {
		// Thread löschen, wenn abgeschickt
		if(content.textContent.indexOf('Dein Thema wurde hinzugefügt') != -1) {
			GM_deleteValue("Thread_Topic");
			GM_deleteValue("Thread_Content");
		} else {
			content.getElementsByTagName('input')[0].setAttribute('id', 'topiceingabe');
			content.getElementsByTagName('textarea')[0].setAttribute('id', 'contenteingabe');
			document.getElementById('topiceingabe').addEventListener('keyup', function() { GM_setValue("Thread_Topic", document.getElementById('topiceingabe').value); }, false);
			document.getElementById('contenteingabe').addEventListener('keyup', function() { GM_setValue("Thread_Content", document.getElementById('contenteingabe').value); }, false);
			// Letztes nicht abgeschicktes Thema wiederherstellen
			var thread_topic = GM_getValue("Thread_Topic", "");
			var thread_content = GM_getValue("Thread_Content", "");
			if(thread_topic != "" || thread_content != "") {
				var newDIV = document.createElement('div');
				newDIV.setAttribute('class', 'postrecovery');
				newDIV.innerHTML = 'Letztes nicht abgeschicktes Thema wiederhergestellt.';
				content.insertBefore(newDIV, content.getElementsByTagName('form')[0]);
				document.getElementById("topiceingabe").value = thread_topic;
				document.getElementById("contenteingabe").value = thread_content;
			}
		}
	}



// StammForum - Post wiederherstellen
	if(document.URL.indexOf('/stammforum.post.php?topicid=') != -1 && content.textContent.indexOf('Ein paar Worte solltest du wenigstens schreiben.') == -1) {
		var topicid = getURLParameter('topicid');
		// Post löschen, wenn abgeschickt
		if(content.textContent.indexOf('Dein Post wurde hinzugefügt') != -1) {
			GM_deleteValue("Post_"+topicid);
		} else {
			content.getElementsByTagName('textarea')[0].setAttribute('id', 'posteingabe');
			document.getElementById('posteingabe').addEventListener('keyup', function() { GM_setValue("Post_"+topicid, document.getElementById('posteingabe').value); }, false);
			// Letzten nicht abgeschickten Post wiederherstellen
			var post_content = GM_getValue("Post_"+topicid, "");
			if(post_content != "") {
				var newDIV = document.createElement('div');
				newDIV.setAttribute('class', 'postrecovery');
				newDIV.innerHTML = 'Letzten nicht abgeschickten Post wiederhergestellt.';
				content.insertBefore(newDIV, content.getElementsByTagName('form')[0]);
				document.getElementById("posteingabe").value = post_content;
			}
		}
	}



// UserTop
	if(document.URL.indexOf('/top.php') != -1) {
		var spieler = content.getElementsByTagName('table')[1].getElementsByTagName('tr');
		for(i=1; i<spieler.length; i++) {
			spieler[i].getElementsByTagName('td')[3].innerHTML = number_format(spieler[i].getElementsByTagName('td')[3].textContent.trim());
		}
	}



// StammTop
	if(document.URL.indexOf('/stammtop.php') != -1) {
		var clans = content.getElementsByTagName('table')[1].getElementsByTagName('tr');
		clans[0].innerHTML = '<td class="center bold">Pos.</td><td class="center bold">Stammname</td><td class="center bold">Gründer</td><td class="center bold">Gesamt-EP</td><td class="center bold">Siege</td><td class="center bold">Niederl.</td><td class="center bold">Diff.</td>';
		for(i=1; i<clans.length; i++) {
			clans[i].getElementsByTagName('td')[3].setAttribute('class', 'right');
			clans[i].getElementsByTagName('td')[4].setAttribute('class', 'right');
			clans[i].getElementsByTagName('td')[5].setAttribute('class', 'right');
			clans[i].getElementsByTagName('a')[0].getAttribute('href').search(/stammid=(\d*)/);
			var clanid = RegExp.$1;
			var newTD = document.createElement('td');
			newTD.setAttribute('class', 'right');
			newTD.innerHTML = '<span id="ep_'+i+'"></span>';
			clans[i].insertBefore(newTD, clans[i].getElementsByTagName('td')[3]);
			getClanEPByClanId(clanid, 'ep_'+i);
		}
	}



// OnlineUser
	if(document.URL.indexOf('/useronline.php') != -1) {
		content.getElementsByTagName('table')[1].removeAttribute('width');
		var spieler = content.getElementsByTagName('table')[1].getElementsByTagName('tr');
		for(i=1; i<spieler.length; i++) {
			spieler[i].getElementsByTagName('td')[1].innerHTML = number_format(spieler[i].getElementsByTagName('td')[1].textContent.trim());
			spieler[i].getElementsByTagName('td')[1].setAttribute('class', 'right');
		}
	}



// aktuelle Aktion
	var aktionHTML = aktuelleAktion.textContent;
	var remainActivityMin = 0;
	remindActivity = true;
	sessionStorage.setItem("RemindActivity", true);
	if(aktionHTML.indexOf('Minuten') == -1 && aktionHTML.indexOf('Sekunden') == -1) {
		remindActivity = false;
		sessionStorage.setItem("RemindActivity", false);
	} else if(aktionHTML.indexOf('Minuten') != -1) {
		aktionHTML.search(/Du bist noch (ca\.\s)?(\d+) Minuten/);
		remainActivityMin = parseInt(RegExp.$2, 10);
	}
	if(remindActivity) {
		document.getElementById('aktuelleAktion').innerHTML = 'Du bist noch <span id="countdown"></span>. [<a href="status.php?do=abbrechen"><span class="red">Abbrechen</span></a>]';
	}
	var activityEndDate = new Date(servertimeDate);
	activityEndDate.setMinutes(servertimeDate.getMinutes()+remainActivityMin+1);
	activityEndDate.setSeconds(0);
	activityEndDate.setMilliseconds(0);
	if(aktionHTML.indexOf('verletzt') != -1) {
		GM_setValue("Arbeit", "verletzt");
		GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
	} else if(aktionHTML.indexOf('Kampf') != -1 && GM_getValue("Arbeit", "").indexOf('kampf') == -1) {
		var skEndTime = parseInt(nextSK.split(',')[0], 10)+3660000; // SK-Länge: 61 min
		var differenz = Math.abs(activityEndDate.getTime()-skEndTime);
		if(differenz < 65000) {
			GM_setValue("Ankunftszeit", skEndTime.toString());
			GM_setValue("Arbeit", "im Stammkampf");
		} else {
			if(activityEndDate.getDay() == 1 && activityEndDate.getHours() == mkEnde && (activityEndDate.getMinutes() == 0 || activityEndDate.getMinutes() == 1)) {
				activityEndDate.setMinutes(1);
				GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
				GM_setValue("Arbeit", "im Magierkampf");
			} else if(activityEndDate.getHours() == tkEnde && (activityEndDate.getMinutes() == 0 || activityEndDate.getMinutes() == 1)) {
				activityEndDate.setMinutes(1);
				GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
				GM_setValue("Arbeit", "im Talkampf");
			}
		}
	} else if(aktionHTML.indexOf('vergiftet') != -1) {
		GM_setValue("Arbeit", "vergiftet");
		GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
	} else if(GM_getValue("Arbeit", "") == 'beim Landausbau' && servertimeDate.getTime() < parseInt(GM_getValue("Ankunftszeit", "0"), 10) && parseInt(GM_getValue("Ankunftszeit", "0"), 10) < activityEndDate.getTime()) {
		GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
	} else if(GM_getValue("Arbeit", "") == 'verletzt') {
		GM_setValue("Arbeit", "auf Arbeit");
		GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
	}




// Opferzeit ermitteln
	var waffenopferKleinDate;
	var waffenopferGrossDate;
	var arbeitsopferDate;
	var ringopferDate;
	if(menuRight.textContent.indexOf('opfer') != -1) {
		if(menuRight.textContent.indexOf('kl. Waffenopfer:') != -1) {
			menuRight.innerHTML.search(/kl\. Waffenopfer:<\/td><\/tr><tr><td align="right"><span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
			waffenopferKleinDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
		}
		if(menuRight.textContent.indexOf('gr. Waffenopfer:') != -1) {
			menuRight.innerHTML.search(/gr\. Waffenopfer:<\/td><\/tr><tr><td align="right"><span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
			waffenopferGrossDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
		}
		if(menuRight.textContent.indexOf('Arbeitsopfer:') != -1) {
			menuRight.innerHTML.search(/Arbeitsopfer:<\/td><\/tr><tr><td align="right"><span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
			arbeitsopferDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
		}
		if(menuRight.textContent.indexOf('Ringopfer:') != -1) {
			menuRight.innerHTML.search(/Ringopfer:<\/td><\/tr><tr><td align="right"><span title="noch bis zum (\d+)\.(\d+)\.(\d+) um (\d+):(\d+):(\d+)">/);
			ringopferDate = new Date(RegExp.$3, parseInt(RegExp.$2, 10)-1, parseInt(RegExp.$1, 10), parseInt(RegExp.$4, 10), parseInt(RegExp.$5, 10), parseInt(RegExp.$6, 10));
		}
}



// Arbeit (Focus, Waffen-Warnung, etc.)
	if(document.URL.indexOf('/jagd.php')!=-1 || document.URL.indexOf('/holzfaeller.php')!=-1 || document.URL.indexOf('/koehlern.php')!=-1 || document.URL.indexOf('/steinmetz.php')!=-1 || document.URL.indexOf('/kupferding.php')!=-1 || document.URL.indexOf('/wasser.php')!=-1 || document.URL.indexOf('/wasser2.php')!=-1 || document.URL.indexOf('/bronze.php')!=-1 || document.URL.indexOf('/schamane.php')!=-1 || document.URL.indexOf('/zinnding.php')!=-1 || document.URL.indexOf('/waffenschmied.php')!=-1 || document.URL.indexOf('/werkzeug.php')!=-1 || document.URL.indexOf('/kampf')!=-1 || document.URL.indexOf('/altar.artefakt.php')!=-1 || document.URL.indexOf('/bau.php')!=-1) {
			if(document.getElementsByName('zufallscode')[0]) {
				var str_alert = 'ACHTUNG!\n';
				// Waffenwarnung
				if(Assi_WaffenWerkzeugWarnung) {
					if(document.URL.indexOf('jagd.php')!=-1 || document.URL.indexOf('holzfaeller.php')!=-1 || document.URL.indexOf('koehlern.php')!=-1 || document.URL.indexOf('steinmetz.php')!=-1 || document.URL.indexOf('wasser.php')!=-1 || document.URL.indexOf('wasser2.php')!=-1) {
						if(hand.indexOf('nichts') == -1) {
							str_alert += '- Du hast eine Waffe oder ein falsches Werkzeug in der Hand!\n';
						}
					} else if(document.URL.indexOf('zinnding.php') != -1) {
						if(hand.indexOf('nichts') == -1 && hand.indexOf('Zinn') == -1) {
							str_alert += '- Du hast eine Waffe oder ein falsches Werkzeug in der Hand!\n';
						}
						if(GM_getValue("Zinn-Schaber", false)) {
							if(hand.indexOf('Zinn-Schaber') == -1) {
								str_alert += '- Du hast deinen Zinn-Schaber vergessen!\n';
							}
						} else if(GM_getValue("Zinn-Keil", false)) {
							if(hand.indexOf('Zinn-Keil') == -1) {
								str_alert += '- Du hast deinen Zinn-Keil vergessen!\n';
							}
						}
					} else if(document.URL.indexOf('kupferding.php') != -1) {
						if(hand.indexOf('nichts') == -1 && hand.indexOf('Kupfer') == -1) {
							str_alert += '- Du hast eine Waffe oder ein falsches Werkzeug in der Hand!\n';
						}
						if(GM_getValue("Kupfer-Hacke", false)) {
							if(hand.indexOf('Kupfer-Hacke') == -1) {
								str_alert += '- Du hast deine Kupfer-Hacke vergessen!\n';
							}
						} else if(GM_getValue("Kupfer-Schaber", false)) {
							if(hand.indexOf('Kupfer-Schaber') == -1) {
								str_alert += '- Du hast deinen Kupfer-Schaber vergessen!\n';
							}
						} else if(GM_getValue("Kupfer-Keil", false)) {
							if(hand.indexOf('Kupfer-Keil') == -1) {
								str_alert += '- Du hast deinen Kupfer-Keil vergessen!\n';
							}
						}
					}
				}
				// Fehlender Ring
			if(Assi_RingWarnung) {
				if(document.URL.indexOf('jagd.php')!=-1) {
					if(GM_getValue("Jagdring", false) && finger.indexOf('Jagdring') == -1) {
						str_alert += '- Du hast deinen Jagdring vergessen!\n';
					}
				} else if(document.URL.indexOf('wasser.php')!=-1 || document.URL.indexOf('wasser2.php')!=-1) {
					if(GM_getValue("Wasserring", false) && finger.indexOf('Wasserring') == -1) {
						str_alert += '- Du hast deinen Wasserring vergessen!\n';
					}
				}
			}
				// Bevorstehender SK oder MK
				var activityEndDate2 = new Date(activityEndDate);
				activityEndDate2.setMinutes(parseInt(activityEndDate.getMinutes(), 10)+31);
				var skStartTime = parseInt(nextSK.split(',')[0], 10);
				var diff = Math.floor(skStartTime/60000-servertimeDate.getTime()/60000);
				if(diff >= -1 && diff <= 31) {
					str_alert += '- Du verpasst einen Stammkampf!\n';
					if(skTeilnahme+3600000 < servertimeDate.getTime()) {
						str_alert += '- Du bist noch nicht zum Stammkampf angemeldet!\n';
					}
				}
				if(activityEndDate2.getDay() == 1 && ((activityEndDate2.getHours() == mkStart && activityEndDate2.getMinutes() <= 31) || (activityEndDate2.getHours() == mkStart-1 && activityEndDate2.getMinutes() >= 59))) {
					str_alert += '- Du verpasst den Magierkampf!\n';
					if(mkTeilnahme+7200000 < servertimeDate.getTime()) {
						str_alert += '- Du bist noch nicht zum Magierkampf angemeldet!\n';
					}
				}
				if(str_alert.length > 9 && getURLParameter('szsa') != "codefalsch") {
					alert(str_alert);
				}
				// Fehlendes Arbeitsopfer / Drachenblutartefakt
				if(drachenblutDate.getTime() < servertimeDate.getTime()) {
					drachenblutDate.setTime(0);
				}
				if(getURLParameter('szsa') == "codefalsch") {
					content.innerHTML += '<span class="red">Du hast den Zufallscode leider nicht richtig abgeschrieben und wurdest daher hierher um-/zurückgeleitet.</span><br><br>';
					if(str_alert.length > 9) {
						content.innerHTML += '<span class="yellow">'+str_alert.replace(/\n/g, '<br>')+'<span><br><br>';
					}
				}
				if((arbeitsopferDate == null || arbeitsopferDate.getTime() < (activityEndDate.getTime()+1800000)) && (drachenblutDate.getTime() == 0 || drachenblutDate.getTime() < (activityEndDate.getTime()+1800000))) {
					content.innerHTML += '<span class="yellow">ACHTUNG! Du könntest dich verletzen, da du weder ein aktives Arbeitsopfer noch ein gültiges Artefakt des Drachenbluts hast.<br><br>Direktlink: <a href="altar.php?do=arbeits&auswahl=1&szsa=link&url='+encodeURIComponent(document.URL)+'">Arbeitsopfer</a> (Kosten: 2 Zinn, 2 Wasser und 2 Kupfer)</span><br>';
				}
				// Focus
				document.getElementsByName('zufallscode')[0].focus();
			} else if(content.textContent.indexOf('Du bist für') != -1 || content.textContent.indexOf('Du bist jetzt') != -1 || content.textContent.indexOf('Du machst dich auf') != -1 || content.textContent.indexOf('Du stellst jetzt') != -1 || content.textContent.indexOf('Du weihst jetzt') != -1) {
				remindActivity = true;
				sessionStorage.setItem("RemindActivity", true);
				// Ankunftszeit setzen
				activityEndDate.setMinutes(parseInt(servertimeDate.getMinutes(), 10)+31);
				GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
				// Tätigkeit setzen
				if(document.URL.indexOf('/jagd.php') != -1) {
					GM_setValue("Arbeit", "auf der Jagd");
					if(content.textContent.indexOf('60 Minuten') != -1) {
						activityEndDate.setMinutes(parseInt(servertimeDate.getMinutes(), 10)+61);
						GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
					} else if(content.textContent.indexOf('120 Minuten') != -1) {
						activityEndDate.setMinutes(parseInt(servertimeDate.getMinutes(), 10)+121);
						GM_setValue("Ankunftszeit", activityEndDate.getTime().toString());
					}
				} else if(document.URL.indexOf('/holzfaeller.php') != -1) {
					GM_setValue("Arbeit", "beim Holzfällen");
				} else if(document.URL.indexOf('/koehlern.php') != -1) {
					GM_setValue("Arbeit", "beim Köhlern");
				} else if(document.URL.indexOf('/steinmetz.php') != -1) {
					GM_setValue("Arbeit", "beim Steine metzen");
				} else if(document.URL.indexOf('/kupferding.php') != -1) {
					GM_setValue("Arbeit", "beim Kupfer abbauen");
				} else if(document.URL.indexOf('/wasser.php') != -1 || document.URL.indexOf('wasser2.php') != -1) {
					GM_setValue("Arbeit", "beim Wassersuchen");
				} else if(document.URL.indexOf('/bronze.php') != -1) {
					GM_setValue("Arbeit", "beim Bronze herstellen");
				} else if(document.URL.indexOf('/schamane.php') != -1) {
					GM_setValue("Arbeit", "beim Trank brauen");
				} else if(document.URL.indexOf('/zinnding.php') != -1) {
					GM_setValue("Arbeit", "beim Zinn abbauen");
				} else if(document.URL.indexOf('/waffenschmied.php') != -1) {
					GM_setValue("Arbeit", "beim Waffe bauen");
				} else if(document.URL.indexOf('/werkzeug.php') != -1) {
					GM_setValue("Arbeit", "beim Werkzeug bauen");
				} else if(document.URL.indexOf('/kampf.php') != -1) {
					GM_setValue("Arbeit", "im Einzelkampf");
				} else if(document.URL.indexOf('/altar.artefakt.php') != -1 && content.textContent.indexOf('weihst') != -1) {
					GM_setValue("Arbeit", "beim Artefakt weihen");
				} else if(document.URL.indexOf('/altar.artefakt.php') != -1 && content.textContent.indexOf('stellst') != -1) {
					GM_setValue("Arbeit", "beim Artefakt herstellen");
				} else if(document.URL.indexOf('/bau.php') != -1) {
					GM_setValue("Arbeit", "beim Landausbau");
				} else {
					GM_setValue("Arbeit", "auf Arbeit");
				}
			} else if(content.textContent.indexOf('Du hast den Zufallscode leider nicht richtig abgeschrieben.') != -1) {
				content.innerHTML = content.innerHTML.replace('Du hast den Zufallscode leider nicht richtig abgeschrieben.', '<span class="red">Du hast den Zufallscode leider nicht richtig abgeschrieben.</span>');
			}
	}



// Header-Inlays
	var kopf = document.getElementsByTagName('img')[0].parentNode;
	// Serverzeit
	var strInlay = '<div id="serverzeit"'+((menuLeft.innerHTML.indexOf('color:red') != -1)? ' class="red" title="Lagerfeuer aus\n'+nomadenzeit+'"' : 'title="'+nomadenzeit+'"')+'></div>';
	// Reminder
	strInlay += '<div id="reminder">';
	strInlay += '<div id="reminder_tk"'+((tkTeilnahme+7200000 < servertimeDate.getTime())? ' class="red" title="Nicht angemeldet!"' : '')+'>TK: <span id="tk_inner"></span></div>';
	strInlay += '<div id="reminder_sk"'+((skTeilnahme+3600000 < servertimeDate.getTime() && nextSK != 'kein Kampf')? ' class="red" title="Nicht angemeldet!"' : '')+'>SK: <span id="sk_inner"></span></div>';
	strInlay += '<div id="reminder_mk"'+((mkTeilnahme+7200000 < servertimeDate.getTime())? ' class="red" title="Nicht angemeldet!"' : '')+'>MK: <span id="mk_inner"></span></div>';
	strInlay += '</div>';
	kopf.innerHTML += strInlay;
	// Wetter
	var wetterGrafik = document.getElementsByTagName('img')[0].src.replace('_kopf', '');
	var wetterText = 'Lorem ipsum...';
	switch(wetterGrafik) {
		case 'http://szs.looki.de/static/wetter/1.jpg':
			wetterText = 'Sonne';
			break;
		case 'http://szs.looki.de/static/wetter/2.jpg':
			wetterText = 'Regen';
			break;
		case 'http://szs.looki.de/static/wetter/3.jpg':
			wetterText = 'Schnee';
			break;
		case 'http://szs.looki.de/static/wetter/4.jpg':
			wetterText = 'Nebel';
			break;
		case 'http://szs.looki.de/static/wetter/5.jpg':
			wetterText = 'bewölkt';
			break;
		default:
			wetterText = '<span class="red">Fehler</span>';
			break;
	}
	var wetterDIV = document.createElement('div');
	wetterDIV.setAttribute('id', 'weather');
	wetterDIV.innerHTML = '<a href="wetter.php"><img src="'+wetterGrafik+'" height="40px"></a><br><center><a href="wetter.php">'+wetterText+'</a></center>';
	kopf.appendChild(wetterDIV);



// Linkes Menü
	var lagerfeuerColor = (menuLeft.innerHTML.indexOf('color:lime') != -1)? 'lime' : 'red';
	// Persönliches
	var leftMenuHTML = '';
	// Uhrzeit
	if(Assi_MenuUhrzeit) {
		leftMenuHTML += '<div class="center" style="margin: 10px 0;">'+servertimeDate.getHours()+':'+format2(servertimeDate.getMinutes())+':'+format2(servertimeDate.getSeconds())+' Uhr</div>';
	}
	leftMenuHTML += '<div class="menuHeadline">Persönliches</div><div class="menuItemContainer">';
	leftMenuHTML += '<a class="menu" href="news.php">Logbuch</a> | <a class="menu" href="news.php?alte=1">alte</a><br>';
	leftMenuHTML += '<a class="menu" href="message.php">Nachrichten</a><br>';
	leftMenuHTML += '<a class="menu" href="profil.php">Profil</a><br>';
	leftMenuHTML += '<a class="menu" href="charakter.php">Charakter</a><br>';
	leftMenuHTML += '<a class="menu" href="inventar.php">Inventar</a><br>';
	leftMenuHTML += '<a class="menu" href="artefakt.php">Artefakte</a><br>';
	leftMenuHTML += '<a class="menu" href="beruf.php">Beruf</a><br>';
	leftMenuHTML += '<a class="menu" href="karte.php">Karte</a><br>';
	leftMenuHTML += '<a class="menu" id="landControl" href="deinland.php">Länder</a><br>';
	leftMenuHTML += '<a class="menu" id="guestbook" href="gbuch.php">Gästebuch</a><br>';
	if(isPremiumSpieler) {
		leftMenuHTML += '<a class="menu" href="notizbuch.php">Notizbuch</a><br>';
	}
	leftMenuHTML += '<a id="toggle_configLayer" class="menu pointer" data-szsa-toggle="configLayer">SZS-Assistent</a><br>';
	if(Assi_MenuVersionTip) {
		leftMenuHTML += '<div id="neueVersion" class="center" style="display:none"></div>';
	}
	leftMenuHTML += '</div>';
	//Aktionen
	leftMenuHTML += '<div class="menuHeadline">Aktionen</div><div class="menuItemContainer">';
	if(menuLeft.textContent.indexOf('Köhlern') != -1) {
		leftMenuHTML += '<a class="menu" href="holzfaeller.php">Holz fällen</a><br>';
		leftMenuHTML += '<a class="menu" href="koehlern.php">Köhlern</a><br>';
		leftMenuHTML += '<a class="menu" href="jagd.php">Jagen</a><br>';
		leftMenuHTML += '<a class="menu" href="wasser2.php">Wasser suchen</a><br>';
	} else if(menuLeft.textContent.indexOf('Kupfer') != -1) {
		leftMenuHTML += '<a class="menu" href="steinmetz.php">Steine metzen</a><br>';
		leftMenuHTML += '<a class="menu" href="kupferding.php">Kupfer abbauen</a><br>';
		leftMenuHTML += '<a class="menu" href="jagd.php">Jagen</a><br>';
		leftMenuHTML += '<a class="menu" href="wasser2.php">Wasser suchen</a><br>';
	} else if(menuLeft.textContent.indexOf('Bronze') != -1) {
		leftMenuHTML += '<a class="menu" href="wasser.php">Wasser suchen</a><br>';
		leftMenuHTML += '<a class="menu" href="bronze.php"><nobr>Bronze herstellen</nobr></a><br>';
		leftMenuHTML += '<a class="menu" href="jagd.php">Jagen</a><br>';
	} else if(menuLeft.textContent.indexOf('Zinn') != -1) {
		leftMenuHTML += '<a class="menu" href="zinnding.php">Zinn abbauen</a><br>';
		leftMenuHTML += '<a class="menu" href="schamane.php">Trank brauen</a><br>';
		leftMenuHTML += '<a class="menu" href="altar.artefakt.php">Artefakt weihen</a><br>';
		//leftMenuHTML += '<!--<a class="menu" href="schamane.spenden.php">Opfergaben</a><br>-->';
		leftMenuHTML += '<a class="menu" href="jagd.php">Jagen</a><br>';
		leftMenuHTML += '<a class="menu" href="wasser2.php">Wasser suchen</a><br>';
	} else if(menuLeft.textContent.indexOf('Waffen bauen') != -1) {
		leftMenuHTML += '<a class="menu" href="waffenschmied.php">Waffe bauen</a><br>';
		leftMenuHTML += '<a class="menu" href="werkzeug.php">Werkzeug bauen</a><br>';
		leftMenuHTML += '<a class="menu" href="altar.artefakt.php">Artefakt herstellen</a><br>';
		leftMenuHTML += '<a class="menu" href="jagd.php">Jagen</a><br>';
		leftMenuHTML += '<a class="menu" href="wasser2.php">Wasser suchen</a><br>';
	} else {
		leftMenuHTML += '<a class="menu" href="jagd.php">Jagen</a><br>';
		leftMenuHTML += '<a class="menu" href="wasser2.php">Wasser suchen</a><br>';
	}
	if(menuLeft.innerHTML.indexOf('kochen.php') != -1) {
		leftMenuHTML += '<a class="menu" href="kochen.php">Kochen</a><br>';
	}
	leftMenuHTML += '<a class="menu" href="wandern.php">Wandern</a><br>';
	leftMenuHTML += '<a class="menu" href="schlafen.php">Schlafen</a><br>';
	leftMenuHTML += '<a class="menu" href="magier.php">Weiser Magier</a><br>';
	leftMenuHTML += '</div>';
	// Kämpfe
	leftMenuHTML += '<div class="menuHeadline">Kämpfe</div><div class="menuItemContainer">';
	leftMenuHTML += '<a class="menu" href="kampf.php">Einzelkampf</a><br>';
	leftMenuHTML += '<a class="menu" href="grtal.php">Talkampf</a><br>';
	if(menuLeft.innerHTML.indexOf('stammjoinen.php') == -1) {
		if(parseInt(nextSK.split(',')[0], 10)+3600000 < servertimeDate.getTime() || nextSK == "kein Kampf") {
			leftMenuHTML += '<a class="menu" href="stamm.php?do=kampfsuche">Stammkampf</a><br>';
		} else {
			leftMenuHTML += '<a class="menu" href="stamm.php?do=kampfuserauswahl">Stammkampf</a><br>';
		}
		leftMenuHTML += '<a class="menu" href="stamm.magierkampf.php">Magierkampf</a><br>';
	}
	leftMenuHTML += '</div>';
	// Handel
	leftMenuHTML += '<div class="menuHeadline">Handel</div><div class="menuItemContainer">';
	leftMenuHTML += '<a class="menu" href="markt.php">Markt</a><br>';
	leftMenuHTML += '<a class="menu" href="uebertragen.php">Übertragen</a><br>';
	leftMenuHTML += '<a class="menu" href="http://www.looki.de/forum/tauschforum_f111/" target="_blank">Tauschforum</a><br>';
	leftMenuHTML += '<a class="menu" href="nahrung.php">Händler</a><br>';
	leftMenuHTML += '<a class="menu" href="waffenshop.php">Waffenhöhle</a><br>';
	leftMenuHTML += '<a class="menu" href="nomade.php">Nomade</a><br>';
	leftMenuHTML += '<a class="menu" href="http://www.looki.de/forum/lagerdiebstahl_handelsbetrug_f129/liste_aller_lagerdiebe_und_handelsbetrueger_93131.html" target="_blank">Diebesliste</a><br>';
	leftMenuHTML += '</div>';
	// Stamm
	leftMenuHTML += '<div class="menuHeadline">Stamm</div><div class="menuItemContainer">';
	if(menuLeft.innerHTML.indexOf('stammjoinen.php') == -1) {
		leftMenuHTML += '<a class="menu" href="stamm.php?do=uebersicht">Übersicht</a><br>';
		leftMenuHTML += '<a class="menu" href="stamm.php?do=nachricht">Nachrichten</a><br>';
		leftMenuHTML += '<a class="menu" href="stammforum.forum.php">StammForum</a><br>';
		leftMenuHTML += '<a class="menu" href="stamm.php?do=lager">Lager</a><br>';
		leftMenuHTML += '<a class="menu" href="stamm.php?do=waffenlager">Waffenlager</a><br>';
		leftMenuHTML += '<a class="menu" href="stamm.php?do=tranklager">Tranklager</a><br>';
		leftMenuHTML += '<a class="menu" href="stamm.php?do=werkzeuglager">Werkzeuglager</a><br>';
		leftMenuHTML += '<a class="menu" href="altar.php">Altar</a><br>';
		leftMenuHTML += '<a class="menu" href="weltwunder.php">Weltwunder</a><br>';
		leftMenuHTML += '<a class="menu" href="stamm.php?do=austreten">Austreten</a><br>';
		if(menuLeft.innerHTML.indexOf('stamm.php?do=lagerfeuerbauen') == -1) {
			leftMenuHTML += '<a class="menu" style="color:'+lagerfeuerColor+'" href="stamm.php?do=lagerfeuer">Lagerfeuer</a><br>';
		} else {
			leftMenuHTML += '<a class="menu" href="stamm.php?do=lagerfeuerbauen">Lagerfeuer</a><br>';
		}
	} else if(menuLeft.innerHTML.indexOf('hausbau.php') == -1) {
		leftMenuHTML += '<a class="menu" href="hausbau.php">Haus bauen</a><br>';
		leftMenuHTML += '<a class="menu" href="stammjoinen.php">Stamm joinen</a><br>';
	} else {
		leftMenuHTML += '<a class="menu" href="stammgruenden.php">Stamm gründen</a><br>';
		leftMenuHTML += '<a class="menu" href="stammjoinen.php">Stamm joinen</a><br>';
	}
	leftMenuHTML += '</div>';
	// Toplisten
	leftMenuHTML += '<div class="menuHeadline">Toplisten</div><div class="menuItemContainer">';
	leftMenuHTML += '<a class="menu" href="top.php">UserTop</a><br>';
	leftMenuHTML += '<a class="menu" href="stammtop.php">StammTop</a><br>';
	leftMenuHTML += '<a class="menu" href="aktivespieler.php">Aktive Spieler</a><br>';
	leftMenuHTML += '<a class="menu" href="aktivpunkte.php">Aktive Stämme</a><br>';
	leftMenuHTML += '<a class="menu" href="viptop.php">VIPTop</a><br>';
	leftMenuHTML += '</div>';
		// Sonstiges
	leftMenuHTML += '<div class="menuHeadline">Sonstiges</div><div class="menuItemContainer">';
	leftMenuHTML += '<a class="menu" href="userinfo.php">UserSuche</a><br>';
	leftMenuHTML += '<a class="menu" href="stamminfo.php">StammSuche</a><br>';
	leftMenuHTML += '<a class="menu" href="useronline.php">OnlineUser</a><br>';
	leftMenuHTML += '</div>';
	menuLeft.innerHTML = leftMenuHTML;



// Info-Anzeigen (Ausrüstung, Opfer, Artefakte)
	if(Assi_Infoanzeigen == 'zentriert') {
		var infoanzeigeDIV = document.createElement('div');
		infoanzeigeDIV.setAttribute('id', 'infoanzeige');
		content.insertBefore(infoanzeigeDIV, content.firstChild);
		// Ausrüstung
		var infoanzeigeHEAD = '<th><a class="menu" href="inventar.php">Ausrüstung</a></th>';
		var infoanzeigenBODY = '<td><div>Hand: <span id="hand">'+hand+'</span></div><div>Finger: <span id="finger">'+finger+'</span></div></td>';
		// Opfer
		if(waffenopferKleinDate != null || waffenopferGrossDate != null || arbeitsopferDate != null || ringopferDate != null) {
			infoanzeigeHEAD += '<th></th><th><a class="menu" href="altar.php">Opfer</a></th>';
			infoanzeigenBODY += '<td></td><td>';
			if(waffenopferKleinDate != null) infoanzeigenBODY += '<div title="kleines Waffenopfer bis '+format2(waffenopferKleinDate.getDate())+'.'+format2(waffenopferKleinDate.getMonth()+1)+'.'+waffenopferKleinDate.getFullYear()+' - '+format2(waffenopferKleinDate.getHours())+':'+format2(waffenopferKleinDate.getMinutes())+':'+format2(waffenopferKleinDate.getSeconds())+'">kl. WO: <span id="WaffenopferKleinSpan"></span></div>';
			if(waffenopferGrossDate != null) infoanzeigenBODY += '<div title="großes Waffenopfer bis '+format2(waffenopferGrossDate.getDate())+'.'+format2(waffenopferGrossDate.getMonth()+1)+'.'+waffenopferGrossDate.getFullYear()+' - '+format2(waffenopferGrossDate.getHours())+':'+format2(waffenopferGrossDate.getMinutes())+':'+format2(waffenopferGrossDate.getSeconds())+'">gr. WO: <span id="WaffenopferGrossSpan"></span></div>';
			if(arbeitsopferDate != null) infoanzeigenBODY += '<div title="Arbeitsopfer bis '+format2(arbeitsopferDate.getDate())+'.'+format2(arbeitsopferDate.getMonth()+1)+'.'+arbeitsopferDate.getFullYear()+' - '+format2(arbeitsopferDate.getHours())+':'+format2(arbeitsopferDate.getMinutes())+':'+format2(arbeitsopferDate.getSeconds())+'">AO: <span id="ArbeitsopferSpan"></span></div>';
			if(ringopferDate != null) infoanzeigenBODY += '<div title="Ringopfer bis '+format2(ringopferDate.getDate())+'.'+format2(ringopferDate.getMonth()+1)+'.'+ringopferDate.getFullYear()+' - '+format2(ringopferDate.getHours())+':'+format2(ringopferDate.getMinutes())+':'+format2(ringopferDate.getSeconds())+'">RO: <span id="RingopferSpan"></span></div>';
			infoanzeigenBODY += '</td>';
		}
		// Artefakte
		if(drachenblutDate.getTime() < servertimeDate.getTime()) drachenblutDate = null;
		if(glueckDate.getTime() < servertimeDate.getTime()) glueckDate = null;
		if(meisterschmiedDate.getTime() < servertimeDate.getTime()) meisterschmiedDate = null;
		if(gesundheitDate.getTime() < servertimeDate.getTime()) gesundheitDate = null;
		if(drachenblutDate != null || glueckDate != null || meisterschmiedDate != null || gesundheitDate != null) {
			infoanzeigeHEAD += '<th></th><th><a class="menu" href="artefakt.php">Artefakte</a></th>';
			infoanzeigenBODY += '<td></td><td>';
			if(drachenblutDate != null) infoanzeigenBODY += '<div title="Drachenblut bis '+format2(drachenblutDate.getDate())+'.'+format2(drachenblutDate.getMonth()+1)+'.'+drachenblutDate.getFullYear()+' - '+format2(drachenblutDate.getHours())+':'+format2(drachenblutDate.getMinutes())+':'+format2(drachenblutDate.getSeconds())+'">DB: <span id="DrachenblutSpan"></span></div>';
			if(glueckDate != null) infoanzeigenBODY += '<div title="Glück bis '+format2(glueckDate.getDate())+'.'+format2(glueckDate.getMonth()+1)+'.'+glueckDate.getFullYear()+' - '+format2(glueckDate.getHours())+':'+format2(glueckDate.getMinutes())+':'+format2(glueckDate.getSeconds())+'">Gl: <span id="GlueckSpan"></span></div>';
			if(meisterschmiedDate != null) infoanzeigenBODY += '<div title="Meisterschmied bis '+format2(meisterschmiedDate.getDate())+'.'+format2(meisterschmiedDate.getMonth()+1)+'.'+meisterschmiedDate.getFullYear()+' - '+format2(meisterschmiedDate.getHours())+':'+format2(meisterschmiedDate.getMinutes())+':'+format2(meisterschmiedDate.getSeconds())+'">MS: <span id="MeisterschmiedSpan"></span></div>';
			if(gesundheitDate != null) infoanzeigenBODY += '<div title="Gesundheit bis '+format2(gesundheitDate.getDate())+'.'+format2(gesundheitDate.getMonth()+1)+'.'+gesundheitDate.getFullYear()+' - '+format2(gesundheitDate.getHours())+':'+format2(gesundheitDate.getMinutes())+':'+format2(gesundheitDate.getSeconds())+'">Ge: <span id="GesundheitSpan"></span></div>';
			infoanzeigenBODY += '</td>';
		}
		var infoanzeigeHTML = '<table><thead><tr>'+infoanzeigeHEAD+'</tr></thead><tbody><tr>'+infoanzeigenBODY+'</tr></tbody></table>';
		document.getElementById('infoanzeige').innerHTML = infoanzeigeHTML;
	}



// Rechtes Menü
	i = (isPremiumSpieler)? 1 : 0;
	var muedigkeit = parseInt(menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[21].textContent, 10);
	var muedeColor = menuRight.getElementsByTagName("table")[1+i].getElementsByTagName('td')[21].getElementsByTagName('font')[0].getAttribute('color');
	var muedeUpdateAusgefuehrt = false;
	var muedigkeitNeu = -1;
	var isFreieCP = (menuRight.getElementsByTagName("table")[0+i].textContent.indexOf("Du hast noch Punkte übrig, die du verteilen kannst.") != -1)? true : false;
	var isNeueNachricht = (menuRight.getElementsByTagName("table")[0+i].textContent.indexOf("Du hast eine neue private Nachricht erhalten.") != -1)? true : false;
	if(isNeueNachricht) {
		sessionStorage.setItem("RemindNewMessage", false);
	} else {
		sessionStorage.setItem("RemindNewMessage", true);
	}
	var rightMenuHTML = '';
	// SK-Zeit
	if(Assi_MenuSKZeit && parseInt(nextSK, 10) != 0) {
		rightMenuHTML += '<div id="menu_sk" class="center" style="margin: 10px 0;">';
		if(nextSK == 'kein Kampf') {
			rightMenuHTML += '<a class="menu yellow" href="stamm.php?do=kampfsuche">kein Kampf</a>';
		} else {
			var stammkampfDate = new Date(parseInt(nextSK.split(',')[0], 10));
			if(skTeilnahme+3600000 < servertimeDate.getTime()) {
				rightMenuHTML += '<a class="menu yellow" href="stamm.php?do=kampfuserauswahl">'+format2(stammkampfDate.getDate())+'.'+format2(stammkampfDate.getMonth()+1)+'.'+stammkampfDate.getFullYear().toString().slice(2)+' - '+format2(stammkampfDate.getHours())+':'+format2(stammkampfDate.getMinutes())+'</a>';
			} else {
				rightMenuHTML += '<span class="green">'+format2(stammkampfDate.getDate())+'.'+format2(stammkampfDate.getMonth()+1)+'.'+stammkampfDate.getFullYear().toString().slice(2)+' - '+format2(stammkampfDate.getHours())+':'+format2(stammkampfDate.getMinutes())+'</span>';
			}
			rightMenuHTML += '<br><a class="menu" href="stamminfo.php?stammid='+nextSK.split(',')[1]+'">'+nextSK.split(',')[2]+'</a>';
		}
		rightMenuHTML += '</div>';
	}
	// UserDaten
	rightMenuHTML += '<div class="menuHeadline"><a class="menu" href="charakter.php">UserDaten</a></div><div class="menuItemContainer">';
	rightMenuHTML += '<table id="rohstoffe" width="100%" cellspacing="0" cellpadding="0"><tbody>'
	rightMenuHTML += '<tr><td><img title="Erfahrung" src="/static/rohstoff_icons/erfahrung.gif"></td><td class="right">'+number_format(ep_gesamt, 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Nahrung" src="/static/rohstoff_icons/essen.gif"></td><td class="right">'+number_format(ressis_gesamt['Nahrung'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Wasser" src="/static/rohstoff_icons/wasser.gif"></td><td class="right">'+number_format(ressis_gesamt['Wasser'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Gold" src="/static/rohstoff_icons/gold.gif"></td><td class="right">'+number_format(ressis_gesamt['Gold'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Holz" src="/static/rohstoff_icons/holz.gif"></td><td class="right">'+number_format(ressis_gesamt['Holz'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Steine" src="/static/rohstoff_icons/stein.gif"></td><td class="right">'+number_format(ressis_gesamt['Steine'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Kohle" src="/static/rohstoff_icons/kohle.gif"></td><td class="right">'+number_format(ressis_gesamt['Kohle'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Kupfer" src="/static/rohstoff_icons/kupfer.gif"></td><td class="right">'+number_format(ressis_gesamt['Kupfer'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Zinn" src="/static/rohstoff_icons/zinn.gif"></td><td class="right">'+number_format(ressis_gesamt['Zinn'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Bronze" src="/static/rohstoff_icons/bronze.gif"></td><td class="right">'+number_format(ressis_gesamt['Bronze'], 0, ',', '.')+'</td></tr>';
	rightMenuHTML += '<tr><td><img title="Müdigkeit" src="/static/rohstoff_icons/muedigkeit.gif"></td><td id="muede" class="right">';
	if(muedigkeit < 80) {
		rightMenuHTML += '<span class="'+muedeColor+'">'+muedigkeit+'%</span>';
	} else {
		rightMenuHTML += '<a class="menu '+muedeColor+'" href="http://szs.looki.de/inventar.php?aktion=trinken2&trankid='+starkerWachtrankID+'&szsa=stwach">'+muedigkeit+'%</a>';
	}
	rightMenuHTML += '</td></tr>';
	rightMenuHTML += '</tbody></table>';
	if(Assi_DeinAlter) {
		rightMenuHTML += '<br><div class="center">Dein Alter:<br>'+alter[0]+' Jahre<br>'+alter[1]+' Monate<br></div>';
	}
	if(isFreieCP) rightMenuHTML += '<br><div class="center"><a class="menu red" href="charakter.php">CP verteilen!</a></div>';
	rightMenuHTML += '<div id="neueNachricht" class="center" style="display:'+((isNeueNachricht)? 'block' : 'none')+'"><br><a class="menu yellow" href="news.php">Neue Nachricht erhalten</a></div>';
	rightMenuHTML += '</div>';
	// Info-Anzeigen
	if(Assi_Infoanzeigen == 'menu') {
		// Ausrüstung
		rightMenuHTML += '<div class="menuHeadline"><a class="menu" href="inventar.php">Ausrüstung</a></div><div class="menuItemContainer">';
		rightMenuHTML += '<div>In der Hand:<div id="hand" class="right">'+hand+'</div></div>';
		rightMenuHTML += '<div>Am Finger:<div id="finger" class="right">'+finger+'</div></div>';
		rightMenuHTML += '</div>';
		// Opfer
		if(waffenopferKleinDate != null || waffenopferGrossDate != null || arbeitsopferDate != null || ringopferDate != null) {
			rightMenuHTML += '<div class="menuHeadline"><a class="menu" href="altar.php">Opfer</a></div><div class="menuItemContainer">';
			if(waffenopferKleinDate != null) rightMenuHTML += '<div title="kleines Waffenopfer bis '+format2(waffenopferKleinDate.getDate())+'.'+format2(waffenopferKleinDate.getMonth()+1)+'.'+waffenopferKleinDate.getFullYear()+' - '+format2(waffenopferKleinDate.getHours())+':'+format2(waffenopferKleinDate.getMinutes())+':'+format2(waffenopferKleinDate.getSeconds())+'">kl. Waffenopfer: <div id="WaffenopferKleinSpan" class="right"></div></div>';
			if(waffenopferGrossDate != null) rightMenuHTML += '<div title="großes Waffenopfer bis '+format2(waffenopferGrossDate.getDate())+'.'+format2(waffenopferGrossDate.getMonth()+1)+'.'+waffenopferGrossDate.getFullYear()+' - '+format2(waffenopferGrossDate.getHours())+':'+format2(waffenopferGrossDate.getMinutes())+':'+format2(waffenopferGrossDate.getSeconds())+'">gr. Waffenopfer: <div id="WaffenopferGrossSpan" class="right"></div></div>';
			if(arbeitsopferDate != null) rightMenuHTML += '<div title="Arbeitsopfer bis '+format2(arbeitsopferDate.getDate())+'.'+format2(arbeitsopferDate.getMonth()+1)+'.'+arbeitsopferDate.getFullYear()+' - '+format2(arbeitsopferDate.getHours())+':'+format2(arbeitsopferDate.getMinutes())+':'+format2(arbeitsopferDate.getSeconds())+'">Arbeitsopfer: <div id="ArbeitsopferSpan" class="right"></div></div>';
			if(ringopferDate != null) rightMenuHTML += '<div title="Ringopfer bis '+format2(ringopferDate.getDate())+'.'+format2(ringopferDate.getMonth()+1)+'.'+ringopferDate.getFullYear()+' - '+format2(ringopferDate.getHours())+':'+format2(ringopferDate.getMinutes())+':'+format2(ringopferDate.getSeconds())+'">Ringopfer: <div id="RingopferSpan" class="right"></div></div>';
			rightMenuHTML += '</div>';
		}
		// Artefakte
		if(drachenblutDate.getTime() < servertimeDate.getTime()) drachenblutDate = null;
		if(glueckDate.getTime() < servertimeDate.getTime()) glueckDate = null;
		if(meisterschmiedDate.getTime() < servertimeDate.getTime()) meisterschmiedDate = null;
		if(gesundheitDate.getTime() < servertimeDate.getTime()) gesundheitDate = null;
		if(drachenblutDate != null || glueckDate != null || meisterschmiedDate != null || gesundheitDate != null) {
			rightMenuHTML += '<div class="menuHeadline"><a class="menu" href="artefakt.php">Artefakte</a></div><div class="menuItemContainer">';
			if(drachenblutDate != null) rightMenuHTML += '<div title="Drachenblut bis '+format2(drachenblutDate.getDate())+'.'+format2(drachenblutDate.getMonth()+1)+'.'+drachenblutDate.getFullYear()+' - '+format2(drachenblutDate.getHours())+':'+format2(drachenblutDate.getMinutes())+':'+format2(drachenblutDate.getSeconds())+'">Drachenblut: <div id="DrachenblutSpan" class="right"></div></div>';
			if(glueckDate != null) rightMenuHTML += '<div title="Glück bis '+format2(glueckDate.getDate())+'.'+format2(glueckDate.getMonth()+1)+'.'+glueckDate.getFullYear()+' - '+format2(glueckDate.getHours())+':'+format2(glueckDate.getMinutes())+':'+format2(glueckDate.getSeconds())+'">Glück: <div id="GlueckSpan" class="right"></div></div>';
			if(meisterschmiedDate != null) rightMenuHTML += '<div title="Meisterschmied bis '+format2(meisterschmiedDate.getDate())+'.'+format2(meisterschmiedDate.getMonth()+1)+'.'+meisterschmiedDate.getFullYear()+' - '+format2(meisterschmiedDate.getHours())+':'+format2(meisterschmiedDate.getMinutes())+':'+format2(meisterschmiedDate.getSeconds())+'">Meisterschmied: <div id="MeisterschmiedSpan" class="right"></div></div>';
			if(gesundheitDate != null) rightMenuHTML += '<div title="Gesundheit bis '+format2(gesundheitDate.getDate())+'.'+format2(gesundheitDate.getMonth()+1)+'.'+gesundheitDate.getFullYear()+' - '+format2(gesundheitDate.getHours())+':'+format2(gesundheitDate.getMinutes())+':'+format2(gesundheitDate.getSeconds())+'">Gesundheit: <div id="GesundheitSpan" class="right"></div></div>';
			rightMenuHTML += '</div>';
		}
	}
	// Freundesliste
	i = 1;
	while(menuRight.getElementsByTagName('table')[i+1].innerHTML.indexOf('Freundesliste</td>') == -1) {
		i++
	}
	i++;
	var freunde = menuRight.getElementsByTagName('table')[i].getElementsByTagName('a');
	var freunde2 = new Array();
	rightMenuHTML += '<div class="menuHeadline"><a class="menu" href="friendlist.php">Freunde</a></div><div class="menuItemContainer">';
	for(i=0; i<freunde.length-1; i++) {
		var temp = new Array();
		temp[0] = freunde[i].textContent.trim().toLowerCase();
		temp[1] = freunde[i].textContent.trim();
		temp[2] = freunde[i].getAttribute('href');
		temp[3] = (freunde[i].getElementsByTagName('font')[0].getAttribute('color') == 'lime')? 'green':'red';
		freunde2.push(temp);
	}
	if(Assi_FreundeSortierung) freunde2.sort();
	for(i=0; i<freunde2.length; i++) {
		var userid = freunde2[i][2].replace(/\D*/, '');
		rightMenuHTML += '<nobr><a class="menu '+freunde2[i][3]+'" href="'+freunde2[i][2]+'">'+freunde2[i][1]+'</a> <a href="message.php?empf='+userid+'" title="Private Nachricht"><span class="pn-icon-s"></span></a></nobr><br>';
	}
	rightMenuHTML += '</div>';
	// Hilfe
	rightMenuHTML += '<div class="menuHeadline">Hilfe</div><div class="menuItemContainer">';
	rightMenuHTML += '<a class="menu" href="einsteiger.php">Einsteiger</a><br>';
	rightMenuHTML += '<a class="menu" href="http://www.looki.de/forum/der_rat_der_weisen_fragen_zum_steinzeitspiel_f108/das_1x1_der_steinzeit_230325.html" target="_blank">Das SZS 1x1</a><br>';
	rightMenuHTML += '<a class="menu" href="faq-sys.php">FAQ</a><br>';
	rightMenuHTML += '<a class="menu" href="regeln.php">Regeln</a><br>';
	rightMenuHTML += '</div>';
	// Allgemeines
	rightMenuHTML += '<div class="menuHeadline">Allgemeines</div><div class="menuItemContainer">';
	rightMenuHTML += '<a class="menu" href="http://www.looki.de/forum/das_steinzeitspiel_f89/" target="_blank">Forum</a><br>';
	rightMenuHTML += '<a class="menu" href="http://www.szstool.de" target="_blank">SZS-Tool</a><br>';
	rightMenuHTML += '<a class="menu" href="ipliste.php">IP-Liste</a><br>';
	rightMenuHTML += '<a class="menu" href="statistik.php">Statistiken</a><br>';
	rightMenuHTML += '<a class="menu" href="gamenews.php">Gamenews</a><br>';
	rightMenuHTML += '<a class="menu" href="geworbene.php">Geworbene</a><br>';
	rightMenuHTML += '<a class="menu" target="_blank" href="http://www.galaxy-news.de/?page=charts&op=vote&game_id=97">Vote</a><br>';
	rightMenuHTML += '<a class="menu" href="http://www.looki.de/support.html" target="_blank">Support</a><br>';
	rightMenuHTML += '<a class="menu" href="cheater.php">Cheater melden</a><br>';
	rightMenuHTML += '<a class="menu" href="bug.php">Bug melden</a><br>';
	rightMenuHTML += '<a class="menu" href="impressum.php">Impressum</a><br>';
	rightMenuHTML += '<br><a class="menu" href="logout.php">Logout</a><br>';
	rightMenuHTML += '</div>';
	menuRight.innerHTML = rightMenuHTML;



// Scriptversion-Check
	if(Assi_MenuVersionTip) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "https://greasyfork.org/scripts/3698-szs-assistent/code/SZS-Assistent.meta.js",
			onload: function(response) {
				if(response.responseText.indexOf('// @version') != -1) {
					var html = response.responseText.slice(response.responseText.indexOf('// @version')+11);
					var versionOnline = html.slice(0, html.indexOf('//')).trim();
					var versionOffline = GM_info.script.version;
					var vOn = versionOnline.split(".");
					var vOff = versionOffline.split(".");
					var isNewVersion = 0;
					var i = 0;
					while(typeof vOn[i] != 'undefined' || typeof vOff[i] != 'undefined') {
						if(parseInt(vOn[i], 10) == parseInt(vOff[i], 10)) {
							i++;
							continue;
						} else {
							isNewVersion = (parseInt(vOn[i], 10) > parseInt(vOff[i], 10));
							break;
						}
						i++;
					}
					if(isNewVersion) {
						document.getElementById('neueVersion').innerHTML = '<br><a class="menu yellow" href="https://greasyfork.org/scripts/3698-szs-assistent" target="_blank">Neue Version verfügbar!</a>';
						document.getElementById('neueVersion').style.display = 'block';
					}
				}
			}
		});
	}



// Event-Listener (global)
	if(window.addEventListener) {
		window.addEventListener('resize', pageUpdate, false);
		window.addEventListener('scroll', pageUpdate, false);
	}
	if(document.getElementById('notice') && document.getElementById('notice').addEventListener) {
		document.getElementById('notice').addEventListener('keyup', function() { GM_setValue("notice", document.getElementById('notice').value); }, false);
	}
	if(document.addEventListener) {
		var hotkey = '';
		var hotkeyTime = 0;
		document.addEventListener('keyup', handleHotkey, false);
	}
	if(document.getElementById('button_SaveConfig') && document.getElementById('button_SaveConfig').addEventListener) {
		document.getElementById('button_SaveConfig').addEventListener('click', toggleElement, false);
		document.getElementById('button_SaveConfig').addEventListener('click', saveConfig, true);
	}
	if(document.getElementById('button_ResetConfig') && document.getElementById('button_ResetConfig').addEventListener) {
		document.getElementById('button_ResetConfig').addEventListener('click', resetConfig, false);
	}
	if(document.getElementById('button_DeleteAll') && document.getElementById('button_DeleteAll').addEventListener) {
		document.getElementById('button_DeleteAll').addEventListener('click', deleteAllData, false);
	}
	if(document.getElementById('toggle_configLayer') && document.getElementById('toggle_configLayer').addEventListener) {
		document.getElementById('toggle_configLayer').addEventListener('click', toggleElement, false);
	}


// Scriptlaufzeit
	var scriptendtime = new Date();
	document.getElementById('reminder').innerHTML += '<div id="scriptlaufzeit">Scriptlaufzeit: '+(scriptendtime.getTime()-scriptstarttime.getTime())+' ms</div>';


	pageUpdate();
	sessionStorage.setItem("Ankunftszeit", GM_getValue("Ankunftszeit", "0"));
	sessionStorage.setItem("Arbeit", GM_getValue("Arbeit", "auf Arbeit"));
	countdown();
	setTimeout(checkForNewMessage, 30000);
	checkLandControl();
} // Main-Ende






/* FUNCTIONS */
function countdown() {

	var countdownDate = new Date((new Date()).getTime()-diffServertime);

// serverzeit
	document.getElementById('serverzeit').innerHTML = 'Serverzeit: '+countdownDate.getHours()+':'+format2(countdownDate.getMinutes())+':'+format2(countdownDate.getSeconds())+' Uhr';


// Restarbeitszeit
	var count = Math.floor(activityEndDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
	var nochUnterwegs = false;
	if(count<0) count=0;
	if(count>10) nochUnterwegs=true;
	var seconds = count%60;
	count = Math.floor(count/60);
	var minutes = count;
	var countdownHTML = '';
	if(minutes > 0) {
		countdownHTML = minutes+':'+format2(seconds)+' Minuten (bis '+format2(activityEndDate.getHours())+':'+format2(activityEndDate.getMinutes())+' Uhr) ';
	} else {
		countdownHTML = seconds+' Sekunden (bis '+format2(activityEndDate.getHours())+':'+format2(activityEndDate.getMinutes())+' Uhr) ';
	}
	if(parseInt(sessionStorage.getItem("Ankunftszeit"), 10)+180000 > activityEndDate.getTime()) {
		countdownHTML += sessionStorage.getItem("Arbeit");
	} else {
		countdownHTML += 'unterwegs';
	}
	if(document.getElementById('countdown')) document.getElementById('countdown').innerHTML = countdownHTML;


// Müdigkeit
	var muedeDate = new Date(countdownDate);
	if(muedeDate.getMinutes()%10 == 0) {
		muedeDate.setMinutes(muedeDate.getMinutes()+10);
	}
	muedeDate.setSeconds(0);
	muedeDate.setMilliseconds(0);
	while(muedeDate.getMinutes()%10 != 0) {
		muedeDate.setMinutes(muedeDate.getMinutes()+1);
	}
	count = Math.floor(muedeDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
	if(muedigkeitNeu == -1) muedigkeitNeu=muedigkeit;
	if(count<0) count=0;
	var seconds = count%60;
	count = Math.floor(count/60);
	var minutes = count%60;
	if (minutes > 0) {
		if(minutes == 10) {
			if(!muedeUpdateAusgefuehrt) {
				if(nochUnterwegs) {
					 muedigkeitNeu += 2;
				} else {
					 muedigkeitNeu -= 1;
				}
				var color = 'green';
				if(muedigkeitNeu >= 100) {
					 muedigkeitNeu = 100;
				} else if(muedigkeitNeu <= 0) {
					 muedigkeitNeu = 0;
				}
				if(muedigkeitNeu >= 80) {
					 color = 'red';
				} else if(muedigkeitNeu > 60) {
					 color = 'yellow';
				}
				var muedehtml = '<span class="'+color+'">'+muedigkeitNeu+'%</span>';
				if(muedigkeitNeu >= 80) {
					muedehtml = '<a class="menu '+color+'" href="http://szs.looki.de/inventar.php?aktion=trinken2&trankid='+starkerWachtrankID+'&szsa=stwach">'+muedigkeitNeu+'%</a>';
				}
				document.getElementById('muede').innerHTML = muedehtml;
				muedeUpdateAusgefuehrt = true;
			}
		} else {
			muedeUpdateAusgefuehrt = false;
		}
	}


// Artefaktzeit
	if(drachenblutDate != null) {
		count = Math.floor(drachenblutDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'DrachenblutSpan');
	}
	if(glueckDate != null) {
		count = Math.floor(glueckDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'GlueckSpan');
	}
	if(meisterschmiedDate != null) {
		count = Math.floor(meisterschmiedDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'MeisterschmiedSpan');
	}
	if(gesundheitDate != null) {
		count = Math.floor(gesundheitDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'GesundheitSpan');
	}


// Opferzeit
	if(waffenopferKleinDate != null) {
		count = Math.floor(waffenopferKleinDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'WaffenopferKleinSpan');
	}
	if(waffenopferGrossDate != null) {
		count = Math.floor(waffenopferGrossDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'WaffenopferGrossSpan');
	}
	if(arbeitsopferDate != null) {
		count = Math.floor(arbeitsopferDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'ArbeitsopferSpan');
	}
	if(ringopferDate != null) {
		count = Math.floor(ringopferDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		printCountdownZeit(count, 'RingopferSpan');
	}


// Activity-Reminder
	if(countdownDate >= activityEndDate && Assi_ActivityReminder && remindActivity && sessionStorage.getItem("RemindActivity")) {
		remindActivity = false;
		sessionStorage.setItem("RemindActivity", false);
		var volume = parseFloat(Assi_ReminderSoundVolume.replace(',', '.')/100);
		if(volume<0) volume=0;
		if(volume>1) volume=1;
		switch(Assi_Remindersound) {
			case 'SoundA':
				audioA.volume = volume;
				audioA.play();
				break;
			case 'SoundB':
				audioB.volume = volume;
				audioB.play();
				break;
			case 'SoundC':
				audioC.volume = volume;
				audioC.play();
				break;
			case 'SoundD':
				audioD.volume = volume;
				audioD.play();
				break;
			default:
				break;
		}
		if(Assi_Standardtaetigkeit == "") {
			alert('Du bist wieder verfügbar!');
		} else {
			if(confirm('Du bist wieder verfügbar!\n\nStandardtätigkeit aufrufen?')) {
				var url = '';
				switch(Assi_Standardtaetigkeit) {
					case 'Jagen':
						url = 'http://szs.looki.de/jagd.php';
						break;
					case 'Wasser':
						url = 'http://szs.looki.de/wasser.php';
						break;
					case 'Holz':
						url = 'http://szs.looki.de/holzfaeller.php';
						break;
					case 'Stein':
						url = 'http://szs.looki.de/steinmetz.php';
						break;
					case 'Kohle':
						url = 'http://szs.looki.de/koehlern.php';
						break;
					case 'Kupfer':
						url = 'http://szs.looki.de/kupferding.php';
						break;
					case 'Zinn':
						url = 'http://szs.looki.de/zinnding.php';
						break;
					case 'Bronze':
						url = 'http://szs.looki.de/bronze.php';
						break;
					case 'Trank':
						url = 'http://szs.looki.de/schamane.php';
						break;
					case 'Waffe':
						url = 'http://szs.looki.de/waffenschmied.php';
						break;
					case 'Werkzeug':
						url = 'http://szs.looki.de/werkzeug.php';
						break;
					case 'Artefakt':
						url = 'http://szs.looki.de/altar.artefakt.php';
						break;
					default:
						url = '';
						break;
				}
				if(url.indexOf('http://szs.looki.de/wasser.php') == 0 && main.innerHTML.indexOf('<a class="menu" href="wasser2.php">Wasser suchen</a>') != -1) {
					url = 'http://szs.looki.de/wasser2.php';
				}
				if(url != '') window.location.href = url;
			}
		}
	}


// Talkampf-Reminder
	var tk_inner = document.getElementById('tk_inner');
	if(talkampfDate.getTime()-countdownDate.getTime() >= 0) {
		var count = Math.floor(talkampfDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		if(count<0) count=0;
		var seconds = count%60;
		count = Math.floor(count/60);
		var minutes = count%60;
		count = Math.floor(count/60);
		var hours = count%24;
		if(hours >=5) {
			tk_inner.setAttribute('class', 'green');
		} else if(hours >=2) {
			tk_inner.setAttribute('class', 'yellow');
		} else if(hours >=1) {
			tk_inner.setAttribute('class', 'orange');
		} else {
			tk_inner.setAttribute('class', 'red');
		}
		tk_inner.innerHTML = hours+':'+format2(minutes)+':'+format2(seconds);
	} else {
		tk_inner.setAttribute('class', 'green');
		tk_inner.innerHTML = 'TK läuft';
	}


// Stammkampf-Reminder
	var sk_inner = document.getElementById('sk_inner');
	if(parseInt(nextSK, 10) != 0) {
		if(nextSK != 'kein Kampf') {
			var stammkampfDate = new Date(parseInt(nextSK.split(',')[0], 10));
			if(stammkampfDate.getTime()-countdownDate.getTime() >= 0) {
				var count = Math.floor(stammkampfDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
				if(count<0) count=0;
				var seconds = count%60;
				count = Math.floor(count/60);
				var minutes = count%60;
				count = Math.floor(count/60);
				var hours = count%24;
				var sk_inner = document.getElementById('sk_inner');
				if(hours >=5) {
					sk_inner.setAttribute('class', 'green');
				} else if(hours >=2) {
					sk_inner.setAttribute('class', 'yellow');
				} else if(hours >=1) {
					sk_inner.setAttribute('class', 'orange');
				} else {
					sk_inner.setAttribute('class', 'red');
				}
				sk_inner.innerHTML = hours+':'+format2(minutes)+':'+format2(seconds);
			} else if(stammkampfDate.getTime()-countdownDate.getTime() >= -3600000) { // == 1h
				sk_inner.setAttribute('class', 'green');
				sk_inner.innerHTML = 'SK läuft';
			} else {
				sk_inner.setAttribute('class', 'red');
				sk_inner.innerHTML = 'old data';
			}
		} else {
			sk_inner.setAttribute('class', 'yellow');
			sk_inner.innerHTML = 'kein Kampf';
		}
	} else {
		sk_inner.setAttribute('class', 'orange');
		sk_inner.innerHTML = 'no data';
	}


// Magierkampf-Reminder
	var mk_inner = document.getElementById('mk_inner');
	if(magierkampfDate.getTime()-countdownDate.getTime() >= 0) {
		var count = Math.floor(magierkampfDate.getTime()/1000)-Math.floor(countdownDate.getTime()/1000);
		if(count<0) count=0;
		var seconds = count%60;
		count = Math.floor(count/60);
		var minutes = count%60;
		count = Math.floor(count/60);
		var hours = count%24;
		count = Math.floor(count/24);
		hours = hours+24*count;
		if(hours >=5) {
			mk_inner.setAttribute('class', 'green');
		} else if(hours >=2) {
			mk_inner.setAttribute('class', 'yellow');
		} else if(hours >=1) {
			mk_inner.setAttribute('class', 'orange');
		} else {
			mk_inner.setAttribute('class', 'red');
		}
		mk_inner.innerHTML = hours+':'+format2(minutes)+':'+format2(seconds);
	} else {
		mk_inner.setAttribute('class', 'green');
		mk_inner.innerHTML = 'MK läuft';
	}


	setTimeout(countdown, 500);
}



function checkForNewMessage() {
	if(document.getElementById('neueNachricht').style.display == 'none') {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/statistik.php",
			onload: function(response) {
				if(response.responseText.indexOf('Du hast eine neue private Nachricht erhalten.') != -1) {
					document.getElementById('neueNachricht').style.display = 'block';
					if(sessionStorage.getItem("RemindNewMessage")) {
						sessionStorage.setItem("RemindNewMessage", false);
						var volume = parseFloat(Assi_MessageSoundVolume.replace(',', '.')/100);
						if(volume<0) volume=0;
						if(volume>1) volume=1;
						switch(Assi_Messagesound) {
							case 'SoundA':
								audioA.volume = volume;
								audioA.play();
								break;
							case 'SoundB':
								audioB.volume = volume;
								audioB.play();
								break;
							case 'SoundC':
								audioC.volume = volume;
								audioC.play();
								break;
							case 'SoundD':
								audioD.volume = volume;
								audioD.play();
								break;
							default:
								break;
						}
						if(Assi_MessageReminder) {
							alert('Du hast eine neue Nachricht erhalten!');
						}
					}
				}
			}
		});
	}
	setTimeout(checkForNewMessage, 20000);
}



function checkLandControl() {
	var landControlData = GM_getValue("LandControlData", "#").split('#');
	var landids = new Array();
	var landControlData2 = new Array();
	for(var i=1; i<landControlData.length-1; i++) {
		var temp = landControlData[i].split(',');
		landids.push(temp[0]);
		landControlData2[temp[0]] = new Object();
		landControlData2[temp[0]]["Holz"] = temp[1];
		landControlData2[temp[0]]["Stein"] = temp[2];
		landControlData2[temp[0]]["Kupfer"] = temp[3];
		landControlData2[temp[0]]["Zinn"] = temp[4];
	}
	for(var i=0; i<landids.length; i++) {
		GM_xmlhttpRequest({
			method: "GET",
			url: "http://szs.looki.de/landinfo.php?id="+landids[i],
			onload: function(response) {
				var id = response.finalUrl.replace(/\D*/, '');
				response.responseText.search(/Holz:\s*(\d*)<br>\s*Stein:\s*(\d*)<br>\s*Kupfer:\s*(\d*)<br>\s*Zinn:\s*(\d*)<br>/);
				var holz = parseInt(RegExp.$1, 10);
				var stein = parseInt(RegExp.$2, 10);
				var kupfer = parseInt(RegExp.$3, 10);
				var zinn = parseInt(RegExp.$4, 10);
				if((landControlData2[id]["Holz"] != "" && holz <= landControlData2[id]["Holz"]) || (landControlData2[id]["Stein"] != "" && stein <= landControlData2[id]["Stein"]) || (landControlData2[id]["Kupfer"] != "" && kupfer <= landControlData2[id]["Kupfer"]) || (landControlData2[id]["Zinn"] != "" && zinn <= landControlData2[id]["Zinn"])) {
					if(document.getElementById('landControl')) document.getElementById('landControl').setAttribute('class', 'menu bold '+landControlColor);
				}
			}
		});
	}
}



function printCountdownZeit(count, spanId) {
	if(document.getElementById(spanId)) {
		if(count<0) count=0;
		var seconds = count%60;
		count = Math.floor(count/60);
		var minutes = count%60;
		count = Math.floor(count/60);
		var hours = count%24;
		count = Math.floor(count/24);
		var days = Math.floor(count);
		document.getElementById(spanId).setAttribute('style', 'color:lime');
		var restZeitString = '';
		if(days > 0) {
			 restZeitString = days+'T '+format2(hours)+':'+format2(minutes)+':'+format2(seconds)+' Std';
		} else if (hours > 0) {
			 restZeitString = hours+':'+format2(minutes)+':'+format2(seconds)+' Std';
		} else if (minutes > 0) {
			 restZeitString = minutes+':'+format2(seconds)+' Min';
			 document.getElementById(spanId).setAttribute('style','color:yellow');
		} else {
			 restZeitString = seconds+' Sek';
			 document.getElementById(spanId).setAttribute('style','color:red');
		}
		document.getElementById(spanId).innerHTML = restZeitString;
	}
}



function handleHotkey(e) {
	if(String(e.target).indexOf('[object HTMLBodyElement]') != -1) {
		var keyCode = e.keyCode ? e.keyCode : (e.charCode ? e.charCode : e.which);
		var hotkeyTime2 = (new Date).getTime();
		if(hotkey == '') {
			hotkeyTime = (new Date).getTime();
		}
		if(keyCode == 27 || hotkeyTime2-hotkeyTime > Assi_HotkeyTimeout) {
			hotkey = '';
		} else {
			hotkey += keyCodeToChar(keyCode);
			if(hotkey != '') {
				var url = '';
				for(var i=0; i<hotkeys.length; i++) {
					if(hotkey == hotkeys[i][2] && e.altKey == false && e.ctrlKey == false && e.shiftKey == false) {
						url = hotkeys[i][1];
						break;
					}
				}
				if(url.indexOf('http://szs.looki.de/wasser.php') == 0 && main.innerHTML.indexOf('<a class="menu" href="wasser2.php">Wasser suchen</a>') != -1) {
					url = 'http://szs.looki.de/wasser2.php';
				} else if(url.indexOf('http://szs.looki.de/stamm.php?do=kampfsuche') == 0 && main.innerHTML.indexOf('<a class="menu" href="stamm.php?do=kampfuserauswahl">Stammkampf</a>') != -1) {
					url = 'http://szs.looki.de/stamm.php?do=kampfuserauswahl';
				}
				if(url != '') window.location.href = url;
			}
		}
	}
}



function keyCodeToChar(key) {
	var i, keys, c;
	if(key>=48 && key<=57) {
		i = 48;
		keys = '0123456789';
		c = keys.charAt(key-i);
	} else if(key>=96 && key<=105) {
		i = 96;
		keys = '0123456789';
		c = keys.charAt(key-i);
	} else if(key>=65 && key<=90) {
		i = 65;
		keys = 'abcdefghijklmnopqrstuvwxyz';
		c = keys.charAt(key-i);
	} else {
		switch(key) {
		case 37:
			c = 'LEFT';
			break;
		case 38:
			c = 'UP';
			break;
		case 39:
			c = 'RIGHT';
			break;
		case 40:
			c = 'DOWN';
			break;
		case 60:
			c = '<';
		case 160:
			c = '^';
			break;
		case 163:
			c = '#';
			break;
		case 171:
			c = '+';
			break;
		case 173:
			c = '-';
			break;
		case 188:
			c = ',';
			break;
		case 190:
			c = '.';
			break;
		default:
			c = ''; // ehem. false
			break;
		}
	}
	return c;
}



function pageUpdate() {
	var sp = (Assi_Notizen)? 0 : window.innerWidth/2-390;
	if(document.getElementById('serverzeit'))
		document.getElementById('serverzeit').setAttribute('style', 'left: '+(sp+300)+'px');
	if(document.getElementById('reminder'))
		document.getElementById('reminder').setAttribute('style', 'left: '+(sp+550)+'px');
	if(document.getElementById('weather'))
		document.getElementById('weather').setAttribute('style', 'left: '+(sp+730)+'px');
	if(document.getElementById('notice'))
		document.getElementById('notice').setAttribute('style', 'height: '+(window.innerHeight-document.getElementById('notice').offsetTop-25)+'px');
	if(document.getElementById('configLayer')) {
		if(document.getElementById('configLayer').getAttribute('style') && document.getElementById('configLayer').getAttribute('style').indexOf('display: block') != -1) {
			document.getElementById('configLayer').setAttribute('style', 'display: block; left: '+(sp+160)+'px; height: '+(window.innerHeight-150)+'px');
		} else {
			document.getElementById('configLayer').setAttribute('style', 'display: none; left: '+(sp+160)+'px; height: '+(window.innerHeight-150)+'px');
		}
	}
	if(document.getElementById('config-content'))
		document.getElementById('config-content').setAttribute('style', 'height: '+(window.innerHeight-150-75)+'px');
}



function addDataForSKresult(username, id, teilnehmer, n) {
	username = username.trim();
	GM_xmlhttpRequest({
		method: "POST",
		url: "http://szs.looki.de/userinfo.php",
		data: "userdatenname="+escape(username),
		headers: { "Content-Type": "application/x-www-form-urlencoded" },
		onload: function(response) {
			var anfang = response.responseText.indexOf('Stamm:');
			var ende = response.responseText.indexOf('Erfahrung:');
			if(anfang != -1 && ende != -1) {
				var html = response.responseText.slice(anfang, ende);
				html.search(/<a href="stamminfo.php\?stammid=\d+">(.+)<\/a>/);
				var stamm = RegExp.$1.trim();
				if(typeof stammname[id][stamm] == 'undefined') {
					stammname[id].push(stamm);
					stammname[id][stamm] = 1;
				} else {
					stammname[id][stamm]++;
				}
				anfang = response.responseText.indexOf('Erfahrung:');
				ende = response.responseText.indexOf('Alter (im Spiel):');
				html = response.responseText.slice(anfang, ende);
				html.search(/<td>\s*(\d*)\s*<\/td>/);
				var ep = parseInt(RegExp.$1, 10);
				if(ep < 0 || isNaN(ep)) ep = 0;
				gesamtEP[id] += ep;
				counterGesamtEP[id]--;
				if(Assi_SKAuswertung && document.getElementById('sk_'+id+'_'+username.replace(/\s/g, ''))) {
					document.getElementById('sk_'+id+'_'+username.replace(/\s/g, '')).innerHTML += ' ('+number_format(ep)+')';
				}
				if(document.getElementById('ep_'+id) && document.getElementById('stamm_'+id)) {
					document.getElementById('ep_'+id).innerHTML = number_format(gesamtEP[id]);
					if(counterGesamtEP[id] != 0) {
						document.getElementById('ep_'+id).innerHTML += ' (noch '+counterGesamtEP[id]+')';
					}
					// Sortiere Stammnamen
					if(stammname[id].length > 1) {
						for(var i=0; i<stammname[id].length; i++) {
							for(var j=i+1; j<stammname[id].length; j++) {
								if(stammname[id][stammname[id][i]] < stammname[id][stammname[id][j]]) {
									var z = stammname[id][i];
									stammname[id][i] = stammname[id][j];
									stammname[id][j] = z;
								}
							}
						}
					}
					if(document.getElementById('stamm_'+id).innerHTML != stammname[id][0]) {
						document.getElementById('stamm_'+id).innerHTML = stammname[id][0];
					}
				}
			} else {
				var anfang = response.responseText.indexOf('<!-- INHALT ANFANG -->');
				var ende = response.responseText.indexOf('<!-- INHALT ENDE -->');
				var html = response.responseText.slice(anfang, ende);
				if(html.indexOf('Diesen Steinzeitmenschen habe ich nicht gefunden.') == -1) {
					html.search(new RegExp('href=userinfo.php\\?userinfo=(\\d+)>'+username+'<\\/a>'));
					var userid = parseInt(RegExp.$1, 10);
					if(document.getElementById('sk_'+id+'_'+username.replace(/\s/g, ''))) {
						document.getElementById('sk_'+id+'_'+username.replace(/\s/g, '')).setAttribute('id', 'sk_'+id+'_'+userid);
					}
					addDataForSKresult2(userid, id);
				} else {
					// Steinzeitmensch konnte nicht gefunden werden
					if(typeof teilnehmer[n+1] != 'undefined' && (username+' '+teilnehmer[n+1]).length <= 20) {
						counterGesamtEP[id]--;
						if(document.getElementById('anz_'+id)) {
							document.getElementById('anz_'+id).innerHTML = parseInt(document.getElementById('anz_'+id).textContent, 10)-1;
						}
						if(document.getElementById('sk_'+id+'_'+username) && document.getElementById('sk_'+id+'_'+teilnehmer[n+1])) {
							document.getElementById('sk_'+id+'_'+username).setAttribute('id', 'sk_'+id+'_'+username+teilnehmer[n+1]);
							document.getElementById('sk_'+id+'_'+username+teilnehmer[n+1]).innerHTML += ' '+teilnehmer[n+1];
							document.getElementById('sk_'+id+'_'+teilnehmer[n+1]).parentNode.removeChild(document.getElementById('sk_'+id+'_'+teilnehmer[n+1]));
						}
						addDataForSKresult(username+' '+teilnehmer[n+1], id, teilnehmer, n+1);
					}
				}
			}
		}
	});
}

function addDataForSKresult2(userid, id) {
	GM_xmlhttpRequest({
		method: "GET",
		url: "http://szs.looki.de/userinfo.php?userinfo="+userid,
		onload: function(response) {
			var anfang = response.responseText.indexOf('Stamm:');
			var ende = response.responseText.indexOf('Erfahrung:');
			if(anfang != -1 && ende != -1) {
				var html = response.responseText.slice(anfang, ende);
				html.search(/<a href="stamminfo.php\?stammid=\d+">(.+)<\/a>/);
				var stamm = RegExp.$1.trim();
				if(typeof stammname[id][stamm] == 'undefined') {
					stammname[id].push(stamm);
					stammname[id][stamm] = 1;
				} else {
					stammname[id][stamm]++;
				}
				anfang = response.responseText.indexOf('Erfahrung:');
				ende = response.responseText.indexOf('Alter (im Spiel):');
				html = response.responseText.slice(anfang, ende);
				html.search(/<td>\s*(\d*)\s*<\/td>/);
				var ep = parseInt(RegExp.$1, 10);
				if(ep < 0 || isNaN(ep)) ep = 0;
				gesamtEP[id] += ep;
				counterGesamtEP[id]--;
				if(Assi_SKAuswertung && document.getElementById('sk_'+id+'_'+userid)) {
					document.getElementById('sk_'+id+'_'+userid).innerHTML += ' ('+number_format(ep)+')';
				}
				if(document.getElementById('ep_'+id) && document.getElementById('stamm_'+id)) {
					document.getElementById('ep_'+id).innerHTML = number_format(gesamtEP[id]);
					if(counterGesamtEP[id] != 0) {
						document.getElementById('ep_'+id).innerHTML += ' (noch '+counterGesamtEP[id]+')';
					}
					// Sortiere Stammnamen
					if(stammname[id].length > 1) {
						for(var i=0; i<stammname[id].length; i++) {
							for(var j=i+1; j<stammname[id].length; j++) {
								if(stammname[id][stammname[id][i]] < stammname[id][stammname[id][j]]) {
									var z = stammname[id][i];
									stammname[id][i] = stammname[id][j];
									stammname[id][j] = z;
								}
							}
						}
					}
					if(document.getElementById('stamm_'+id).innerHTML != stammname[id][0]) {
						document.getElementById('stamm_'+id).innerHTML = stammname[id][0];
					}
				}
			} else {
				GM_log('Fehler in addDataForSKresult2 | '+anfang+'/'+ende+' | userid='+userid+' | id='+id+'\n'+response.responseText);
				if(Assi_SKAuswertung && document.getElementById('sk_'+id+'_'+userid)) {
					document.getElementById('sk_'+id+'_'+userid).innerHTML += ' (Fehler, siehe Konsole)';
				}
			}
		}
	});
}



function getClanEPByClanId(clanid, id) {
	GM_xmlhttpRequest({
		method: "GET",
		url: "http://szs.looki.de/extern/memberstamm.php?stammid="+clanid,
		onload: function(response) {
			var anfang = response.responseText.indexOf('("');
			var html = response.responseText.slice(anfang);
			var users = html.split('document.write');
			var gesamtEP = 0;
			for(var i=1; i<users.length-1; i++) {
				users[i].search(/ffffff\s>(\d*)<\/font>/);
				var ep = parseInt(RegExp.$1, 10);
				if(ep < 0 || isNaN(ep)) ep = 0;
				gesamtEP += ep;
			}
			if(document.getElementById(id)) document.getElementById(id).innerHTML = number_format(gesamtEP);
		}
	});
}



function addLinksToLogbuch(username, id) {
	username = username.trim();
	GM_xmlhttpRequest({
		method: "POST",
		url: "http://szs.looki.de/userinfo.php",
		data: "userdatenname="+escape(username),
		headers: { "Content-Type": "application/x-www-form-urlencoded" },
		onload: function(response) {
			var anfang = response.responseText.indexOf('ID:');
			var ende = response.responseText.indexOf('Username:');
			if(anfang != -1 && ende != -1) {
				html = response.responseText.slice(anfang, ende);
				html.search(/<td>\s*(\d*)\s*<\/td>/);
				var userid = parseInt(RegExp.$1, 10);
			} else {
				var anfang = response.responseText.indexOf('<!-- INHALT ANFANG -->');
				var ende = response.responseText.indexOf('<!-- INHALT ENDE -->');
				var html = response.responseText.slice(anfang, ende);
				if(html.indexOf('Diesen Steinzeitmenschen habe ich nicht gefunden.') == -1) {
					html.search(new RegExp('href=userinfo.php\\?userinfo=(\\d+)>'+username+'<\\/a>'));
					var userid = parseInt(RegExp.$1, 10);
				} else {
					var userid = 0;
				}
			}
			if(userid > 0 && document.getElementById(id)) {
				if(id.indexOf('tk') == 0) {
					document.getElementById(id).innerHTML = '<a href="userinfo.php?userinfo='+userid+'">'+htmlspecialchars(username)+'</a>';
				} else if(id.indexOf('transfer') == 0 || id.indexOf('pn') == 0 || id.indexOf('market') == 0) {
					document.getElementById(id).innerHTML = '<a href="userinfo.php?userinfo='+userid+'">'+htmlspecialchars(username)+'</a>';
					document.getElementById(id+'-2').innerHTML = '<a href="message.php?empf='+userid+'">Nachricht</a><br><a href="uebertragen.php?anrohstoffe='+htmlspecialchars(username)+'">Übertragen</a>';
				}
			}
		}
	});
}



function number_format(number, laenge, sep, th_sep, fix) {
/*
	out: String
	in:	number as float
			laenge as integer (optional)
			sep as String (optional)
			th_sep as String (optional)
			fix as boolean (optional)
*/
	if(!laenge) laenge = 0;
	if(!sep) sep = ',';
	if(!th_sep) th_sep = '.';
	number = Math.round(number*Math.pow(10, laenge))/Math.pow(10, laenge);
	str_number = number+'';
	var arr_int = str_number.split('.');
	if(!arr_int[0]) arr_int[0] = '0';
	if(!arr_int[1]) arr_int[1] = '';
	if(arr_int[1].length < laenge && fix) {
		var nachkomma = arr_int[1];
		for(var i=arr_int[1].length+1; i<=laenge; i++) {
			nachkomma += '0';
		}
		arr_int[1] = nachkomma;
	}
	if(th_sep != '' && arr_int[0].length > 3) {
		var Begriff = arr_int[0];
		arr_int[0] = '';
		for(var j=3; j<Begriff.length; j+=3) {
			var extrakt = Begriff.slice(Begriff.length-j, Begriff.length-j+3);
			arr_int[0] = th_sep+extrakt+arr_int[0]+'';
		}
		var str_first = Begriff.substr(0, (Begriff.length%3 == 0)? 3 : (Begriff.length%3));
		arr_int[0] = str_first+arr_int[0];
	}
	return arr_int[0]+((arr_int[1].length>0)? sep : '')+arr_int[1];
}



function format2(n) {
	if(n<10) n = '0'+n;
	return n.toString();
}



function isSommerzeit(d) {
	return (((new Date(1).getTimezoneOffset()) != (d.getTimezoneOffset()))? true : false);
}



function getURLParameter(name) {
	if(location.search) {
		var params = location.search.substring(1).split('&');
		for(var i=0; i<params.length; i++) {
			var param = params[i].split('=');
			if(param[0] == name) {
				return param[1];
			}
		}
		return null;
	} else {
		return null;
	}
}



function htmlspecialchars(str) {
	return str.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;') ;
}



function nickSort(a, b) {
	a = a.toLowerCase();
	b = b.toLowerCase();
	if(a > b) {
		return 1;
	} else if(a < b) {
		return -1;
	} else {
		return 0;
	}
}



function hashCode(str) {
	var hash = 0, chr;
	str += '';
	if(str.length == 0) return hash;
	for(var i=0; i < str.length; i++) {
		chr = str.charCodeAt(i);
		hash = ((hash << 5) - hash) + chr;
		hash |= 0; // Convert to 32bit integer
	}
	return hash;
}



function getRadioValue(rObj) {
	for(var i=0; i<rObj.length; i++) {
		if(rObj[i].checked)
			return rObj[i].value;
	}
	return false;
}



function toggleElement(e) {
	var el = this.getAttribute('data-szsa-toggle');
	if(document.getElementById(el).style.display == 'block') {
		document.getElementById(el).style.display = 'none';
		this.setAttribute('class', this.getAttribute('class').replace(' opened', ''));
		if(this.getAttribute('data-szsa-status') == 'save') {
			GM_setValue("StatusToggle_"+el, "none");
		}
	} else {
		document.getElementById(el).style.display = 'block';
		this.setAttribute('class', this.getAttribute('class')+' opened');
		if(this.getAttribute('data-szsa-status') == 'save') {
			GM_setValue("StatusToggle_"+el, "block");
			}
	}
}



function playSound(e) {
	var data = this.getAttribute('data-szsa-sound').split(' ');
	var volume = parseFloat(parseFloat(document.getElementsByName(data[0])[0].value.trim())/100);
	if(volume < 0) {
		volume = 0;
	}
	if(volume > 1) {
		volume = 1;
	}
	document.getElementById(data[1]).volume = volume;
	document.getElementById(data[1]).play();
}



function saveConfig() {
	GM_setValue("Assi_UserName", document.getElementsByName('Assi_UserName')[0].value.trim());
	GM_setValue("Assi_StammName", document.getElementsByName('Assi_StammName')[0].value.trim());
	GM_setValue("Assi_Infoanzeigen", getRadioValue(document.getElementsByName('Assi_Infoanzeigen')));
	GM_setValue("Assi_DeinAlter", document.getElementsByName('Assi_DeinAlter')[0].checked);
	GM_setValue("Assi_FreundeSortierung", document.getElementsByName('Assi_FreundeSortierung')[0].checked);
	GM_setValue("Assi_Notizen", document.getElementsByName('Assi_Notizen')[0].checked);
	GM_setValue("Assi_HotkeyTimeout", document.getElementsByName('Assi_HotkeyTimeout')[0].value.trim());
	GM_setValue("Assi_InventarIMGheight", document.getElementsByName('Assi_InventarIMGheight')[0].value.trim());
	GM_setValue("Assi_InventarTrankreihenfolge", document.getElementsByName('Assi_InventarTrankreihenfolge')[0].value.trim());
	GM_setValue("Assi_Lagerauszahlungen", getRadioValue(document.getElementsByName('Assi_Lagerauszahlungen')));
	GM_setValue("Assi_LagerauszahlungenNicks", document.getElementsByName('Assi_LagerauszahlungenNicks')[0].value.trim().replace(/\s?,\s?/g, ','));
	GM_setValue("Assi_MenuUhrzeit", document.getElementsByName('Assi_MenuUhrzeit')[0].checked);
	GM_setValue("Assi_MenuSKZeit", document.getElementsByName('Assi_MenuSKZeit')[0].checked);
	GM_setValue("Assi_MenuVersionTip", document.getElementsByName('Assi_MenuVersionTip')[0].checked);
	GM_setValue("Assi_SKAuswertung", document.getElementsByName('Assi_SKAuswertung')[0].checked);
	GM_setValue("Assi_ActivityReminder", document.getElementsByName('Assi_ActivityReminder')[0].checked);
	GM_setValue("Assi_Remindersound", getRadioValue(document.getElementsByName('Assi_Remindersound')));
	GM_setValue("Assi_ReminderSoundVolume", document.getElementsByName('Assi_ReminderSoundVolume')[0].value.trim());
	GM_setValue("Assi_Standardtaetigkeit", getRadioValue(document.getElementsByName('Assi_Standardtaetigkeit')));
	GM_setValue("Assi_MessageReminder", document.getElementsByName('Assi_MessageReminder')[0].checked);
	GM_setValue("Assi_Messagesound", getRadioValue(document.getElementsByName('Assi_Messagesound')));
	GM_setValue("Assi_MessageSoundVolume", document.getElementsByName('Assi_MessageSoundVolume')[0].value.trim());
	GM_setValue("Assi_WaffenWerkzeugWarnung", document.getElementsByName('Assi_WaffenWerkzeugWarnung')[0].checked);
	GM_setValue("Assi_RingWarnung", document.getElementsByName('Assi_RingWarnung')[0].checked);
	GM_setValue("Assi_Gaestebucheintrag", document.getElementsByName('Assi_Gaestebucheintrag')[0].checked);
	GM_setValue("Assi_Kraft", document.getElementsByName('Assi_Kraft')[0].value.trim());
	GM_setValue("Assi_Intelligenz", document.getElementsByName('Assi_Intelligenz')[0].value.trim());
	GM_setValue("Assi_Geschwindigkeit", document.getElementsByName('Assi_Geschwindigkeit')[0].value.trim());
	GM_setValue("Assi_List", document.getElementsByName('Assi_List')[0].value.trim());
	GM_setValue("Assi_Ausdauer", document.getElementsByName('Assi_Ausdauer')[0].value.trim());
	GM_setValue("Assi_Geschick", document.getElementsByName('Assi_Geschick')[0].value.trim());
	GM_setValue("Assi_NahrungRest", document.getElementsByName('Assi_NahrungRest')[0].value.trim());
	GM_setValue("Assi_GoldRest", document.getElementsByName('Assi_GoldRest')[0].value.trim());
	GM_setValue("Assi_HolzRest", document.getElementsByName('Assi_HolzRest')[0].value.trim());
	GM_setValue("Assi_SteinRest", document.getElementsByName('Assi_SteinRest')[0].value.trim());
	GM_setValue("Assi_NahrungRund", document.getElementsByName('Assi_NahrungRund')[0].value.trim());
	GM_setValue("Assi_GoldRund", document.getElementsByName('Assi_GoldRund')[0].value.trim());
	GM_setValue("Assi_HolzPreis", document.getElementsByName('Assi_HolzPreis')[0].value.trim());
	GM_setValue("Assi_SteinPreis", document.getElementsByName('Assi_SteinPreis')[0].value.trim());
	GM_setValue("Assi_Preishervorhebung", getRadioValue(document.getElementsByName('Assi_Preishervorhebung')));
	GM_setValue("Assi_MarktWasserPreis", document.getElementsByName('Assi_MarktWasserPreis')[0].value.trim());
	GM_setValue("Assi_MarktHolzPreis", document.getElementsByName('Assi_MarktHolzPreis')[0].value.trim());
	GM_setValue("Assi_MarktSteinPreis", document.getElementsByName('Assi_MarktSteinPreis')[0].value.trim());
	GM_setValue("Assi_MarktKohlePreis", document.getElementsByName('Assi_MarktKohlePreis')[0].value.trim());
	GM_setValue("Assi_MarktKupferPreis", document.getElementsByName('Assi_MarktKupferPreis')[0].value.trim());
	GM_setValue("Assi_MarktZinnPreis", document.getElementsByName('Assi_MarktZinnPreis')[0].value.trim());
	GM_setValue("Assi_MarktBronzePreis", document.getElementsByName('Assi_MarktBronzePreis')[0].value.trim());
	GM_setValue("Assi_MarktWasserverkaufsmenge", document.getElementsByName('Assi_MarktWasserverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktHolzverkaufsmenge", document.getElementsByName('Assi_MarktHolzverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktSteinverkaufsmenge", document.getElementsByName('Assi_MarktSteinverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktKohleverkaufsmenge", document.getElementsByName('Assi_MarktKohleverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktKupferverkaufsmenge", document.getElementsByName('Assi_MarktKupferverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktZinnverkaufsmenge", document.getElementsByName('Assi_MarktZinnverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktBronzeverkaufsmenge", document.getElementsByName('Assi_MarktBronzeverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktkleinerHeiltrankverkaufsmenge", document.getElementsByName('Assi_MarktkleinerHeiltrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktmittlererHeiltrankverkaufsmenge", document.getElementsByName('Assi_MarktmittlererHeiltrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktstarkerHeiltrankverkaufsmenge", document.getElementsByName('Assi_MarktstarkerHeiltrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktWachtrankverkaufsmenge", document.getElementsByName('Assi_MarktWachtrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktstarkerWachtrankverkaufsmenge", document.getElementsByName('Assi_MarktstarkerWachtrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktHolztrankverkaufsmenge", document.getElementsByName('Assi_MarktHolztrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktSteintrankverkaufsmenge", document.getElementsByName('Assi_MarktSteintrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktZinntrankverkaufsmenge", document.getElementsByName('Assi_MarktZinntrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktKupfertrankverkaufsmenge", document.getElementsByName('Assi_MarktKupfertrankverkaufsmenge')[0].value.trim());
	GM_setValue("Assi_MarktWasserverkaufspreis", document.getElementsByName('Assi_MarktWasserverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktHolzverkaufspreis", document.getElementsByName('Assi_MarktHolzverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktSteinverkaufspreis", document.getElementsByName('Assi_MarktSteinverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktKohleverkaufspreis", document.getElementsByName('Assi_MarktKohleverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktKupferverkaufspreis", document.getElementsByName('Assi_MarktKupferverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktZinnverkaufspreis", document.getElementsByName('Assi_MarktZinnverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktBronzeverkaufspreis", document.getElementsByName('Assi_MarktBronzeverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktkleinerHeiltrankverkaufspreis", document.getElementsByName('Assi_MarktkleinerHeiltrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktmittlererHeiltrankverkaufspreis", document.getElementsByName('Assi_MarktmittlererHeiltrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktstarkerHeiltrankverkaufspreis", document.getElementsByName('Assi_MarktstarkerHeiltrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktWachtrankverkaufspreis", document.getElementsByName('Assi_MarktWachtrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktstarkerWachtrankverkaufspreis", document.getElementsByName('Assi_MarktstarkerWachtrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktHolztrankverkaufspreis", document.getElementsByName('Assi_MarktHolztrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktSteintrankverkaufspreis", document.getElementsByName('Assi_MarktSteintrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktZinntrankverkaufspreis", document.getElementsByName('Assi_MarktZinntrankverkaufspreis')[0].value.trim());
	GM_setValue("Assi_MarktKupfertrankverkaufspreis", document.getElementsByName('Assi_MarktKupfertrankverkaufspreis')[0].value.trim());
	var strHotkeys = '';
	for(var i=0; i<hotkeys.length; i++) {
		strHotkeys += document.getElementsByName('Assi_Hotkeys['+i+']')[0].value.trim()+'|';
	}
	GM_setValue("Assi_Hotkeys", strHotkeys);
	alert('Einstellungen gespeichert!\n\nSeite neu laden, damit Änderungen wirksam werden.');
	document.getElementById('configLayer').style.display = 'none';
}



function resetConfig() {
	var really = confirm('Es werden alle Einstellungen zurückgesetzt/gelöscht!');
	if(really) {
		GM_deleteValue("Assi_UserName");
		GM_deleteValue("Assi_StammName");
		GM_deleteValue("Assi_Infoanzeigen");
		GM_deleteValue("Assi_DeinAlter");
		GM_deleteValue("Assi_FreundeSortierung");
		GM_deleteValue("Assi_Notizen");
		GM_deleteValue("Assi_HotkeyTimeout");
		GM_deleteValue("Assi_InventarIMGheight");
		GM_deleteValue("Assi_InventarTrankreihenfolge");
		GM_deleteValue("Assi_Lagerauszahlungen");
		GM_deleteValue("Assi_LagerauszahlungenNicks");
		GM_deleteValue("Assi_MenuUhrzeit");
		GM_deleteValue("Assi_MenuSKZeit");
		GM_deleteValue("Assi_MenuVersionTip");
		GM_deleteValue("Assi_SKAuswertung");
		GM_deleteValue("Assi_ActivityReminder");
		GM_deleteValue("Assi_Remindersound");
		GM_deleteValue("Assi_ReminderSoundVolume");
		GM_deleteValue("Assi_Standardtaetigkeit");
		GM_deleteValue("Assi_MessageReminder");
		GM_deleteValue("Assi_Messagesound");
		GM_deleteValue("Assi_MessageSoundVolume");
		GM_deleteValue("Assi_WaffenWerkzeugWarnung");
		GM_deleteValue("Assi_RingWarnung");
		GM_deleteValue("Assi_Gaestebucheintrag");
		GM_deleteValue("Assi_Kraft");
		GM_deleteValue("Assi_Intelligenz");
		GM_deleteValue("Assi_Geschwindigkeit");
		GM_deleteValue("Assi_List");
		GM_deleteValue("Assi_Ausdauer");
		GM_deleteValue("Assi_Geschick");
		GM_deleteValue("Assi_NahrungRest");
		GM_deleteValue("Assi_GoldRest");
		GM_deleteValue("Assi_HolzRest");
		GM_deleteValue("Assi_SteinRest");
		GM_deleteValue("Assi_NahrungRund");
		GM_deleteValue("Assi_GoldRund");
		GM_deleteValue("Assi_HolzPreis");
		GM_deleteValue("Assi_SteinPreis");
		GM_deleteValue("Assi_Preishervorhebung");
		GM_deleteValue("Assi_MarktWasserPreis");
		GM_deleteValue("Assi_MarktHolzPreis");
		GM_deleteValue("Assi_MarktSteinPreis");
		GM_deleteValue("Assi_MarktKohlePreis");
		GM_deleteValue("Assi_MarktKupferPreis");
		GM_deleteValue("Assi_MarktZinnPreis");
		GM_deleteValue("Assi_MarktBronzePreis");
		GM_deleteValue("Assi_Hotkeys");
		GM_deleteValue("Assi_MarktWasserverkaufsmenge");
		GM_deleteValue("Assi_MarktHolzverkaufsmenge");
		GM_deleteValue("Assi_MarktSteinverkaufsmenge");
		GM_deleteValue("Assi_MarktKohleverkaufsmenge");
		GM_deleteValue("Assi_MarktKupferverkaufsmenge");
		GM_deleteValue("Assi_MarktZinnverkaufsmenge");
		GM_deleteValue("Assi_MarktBronzeverkaufsmenge");
		GM_deleteValue("Assi_MarktkleinerHeiltrankverkaufsmenge");
		GM_deleteValue("Assi_MarktmittlererHeiltrankverkaufsmenge");
		GM_deleteValue("Assi_MarktstarkerHeiltrankverkaufsmenge");
		GM_deleteValue("Assi_MarktWachtrankverkaufsmenge");
		GM_deleteValue("Assi_MarktstarkerWachtrankverkaufsmenge");
		GM_deleteValue("Assi_MarktHolztrankverkaufsmenge");
		GM_deleteValue("Assi_MarktSteintrankverkaufsmenge");
		GM_deleteValue("Assi_MarktZinntrankverkaufsmenge");
		GM_deleteValue("Assi_MarktKupfertrankverkaufsmenge");
		GM_deleteValue("Assi_MarktWasserverkaufspreis");
		GM_deleteValue("Assi_MarktHolzverkaufspreis");
		GM_deleteValue("Assi_MarktSteinverkaufspreis");
		GM_deleteValue("Assi_MarktKohleverkaufspreis");
		GM_deleteValue("Assi_MarktKupferverkaufspreis");
		GM_deleteValue("Assi_MarktZinnverkaufspreis");
		GM_deleteValue("Assi_MarktBronzeverkaufspreis");
		GM_deleteValue("Assi_MarktkleinerHeiltrankverkaufspreis");
		GM_deleteValue("Assi_MarktmittlererHeiltrankverkaufspreis");
		GM_deleteValue("Assi_MarktstarkerHeiltrankverkaufspreis");
		GM_deleteValue("Assi_MarktWachtrankverkaufspreis");
		GM_deleteValue("Assi_MarktstarkerWachtrankverkaufspreis");
		GM_deleteValue("Assi_MarktHolztrankverkaufspreis");
		GM_deleteValue("Assi_MarktSteintrankverkaufspreis");
		GM_deleteValue("Assi_MarktZinntrankverkaufspreis");
		GM_deleteValue("Assi_MarktKupfertrankverkaufspreis");
	}
}



function deleteAllData() {
	var really = confirm('Es werden ALLE Daten des SZS-Assistenten gelöscht!\n- Einstellungen\n- Notizen\n- Forendaten\n- Landüberwachung');
	if(really) {
		var keys = GM_listValues();
		for(var i=0; i<key.length(); i++) {
			GM_deleteValue(keys[i]);
		}
	}
}