SZS-Assistent

Assistent für das SteinZeitSpiel

// ==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]);
		}
	}
}