// Gibt den Gegenstandstypen als Schriftzug zurück
function id_gegenstand_typ(id){
  switch(id){
    case 1 :  return "Helm";
    case 2 :  return "R&uuml;stung";
    case 3 :  return "Handschuhe";
    case 4 :  return "Beinschienen";
    case 5 :  return "Talisman";
    case 6 :  return "Ring";
    case 7 :  return "Einhandwaffe";
    case 8 :  return "Schild";
    case 9 :  return "Bogen";
    case 10 : return "Stab / Speer";
  }
  return "";
}

// Gibt den Gegenstandstypid als Zahl zurück
function typ_gegenstand_id(typ){
  switch(typ){
    case "helm":    return 1;
    case "rues":    return 2;
    case "hand":    return 3;
    case "hose":    return 4;
    case "talis":   return 5;
    case "ring":    return 6;
    case "waffe1":
    case "waffe2":  return 7;
  }
  return 0;
}

// Gegenstand als PopUp beim Hoovern anzeigen
function geg_anzeigen(gegenstand){
  // gegenstand besteht aus folgenden Feldern
  // ["vorsilbe"]["name"]["nachsilbe"]
  // ["besonderheit"]["besonderheitvor"]["besonderheitnach"]
  // ["type"]["effektivwert"]
  // ["staerke"]["geschick"]["leben"]
  // ["schaden"]["verteidigung"]["kritisch"]["ausweichen"]
  // ["spuersinn"]["herstellung"]["zeit"]["stufe"]
  // ["schmiedbar"]
  var geg_array = new Array();
  geg_array = gegenstand;
	var infofenster = document.getElementById("gegfenster");	
	var infomenue = document.getElementById("gegmenue");	
	var besonderheit = parseInt(geg_array[3]);
	var besonderheitvor = parseInt(geg_array[4]);
	var besonderheitnach = parseInt(geg_array[5]);
	var schmiedbar = parseInt(geg_array[19]);
  var itemseltenheit = "";
  
	var text = "<div class='pergagross' nowrap='nowrap'>";
	
	// Normal	: 1
	// Selten	: selten 2
	// Limitiert : zerfllt 3
	switch(besonderheit){
    case 1: text = text+"<span class='itemschwarz'>"; break;
    case 2: itemseltenheit+="selten"; text = text+"<span class='itembraun'>"; break;
    case 3: itemseltenheit+="zerf&auml;llt"; text = text+"<span class='itemlila'>"; break;
    default: text = text+"<span class='itemschwarz'>"; break;
  }
  
	// Normal :	1 Nur Bonus
	// Set : kombinierbar	2
	// Einzigartig	: einzigartig 5
	// Selten	: 6
	// Limitiert : 7
	switch(besonderheitvor){
    case 2: if(itemseltenheit.length>0) itemseltenheit += ", "; itemseltenheit += "kombinierbar"; break;
    case 5: if(itemseltenheit.length>0) itemseltenheit += ", "; itemseltenheit += "einzigartig"; break;
  }
  if(besonderheitvor!=besonderheitnach){
  	switch(besonderheitnach){
      case 2: if(itemseltenheit.length>0) itemseltenheit += ", "; itemseltenheit += "kombinierbar"; break;
      case 5: if(itemseltenheit.length>0) itemseltenheit += ", "; itemseltenheit += "einzigartig"; break;
    }
  }
  if(schmiedbar==1){
    if(itemseltenheit.length>0) itemseltenheit += ", "; itemseltenheit += "veredelbar";
  }
  
	// Namen anzeigen
	if(geg_array[0].length>'0'){ text = text+geg_array[0]+"<br/>"; }
	text = text+geg_array[1];
	if(geg_array[2].length>'0'){ text = text+"<br/>"+geg_array[2]; }
  	
  text = text+"<\/span><\/div>";
  text = text+"<div class='hr'><\/div>";
  text = text+"<div class='pergamittel itemgrau'>";

  text = text+"Typ: "+id_gegenstand_typ(parseInt(geg_array[6]))+"<br/>";
  text = text+"Stufe: "+geg_array[18]+"<br/>";
	if(geg_array[16]!='0' && geg_array[3]=='3'){ 
    text=text+"<span class='itemlila'>Zerfallzeitpunkt: "+geg_array[16]+"<\/span><br/>";
  } else if (parseInt(geg_array[17])>0){
    text=text+"Haltbarkeit: "+geg_array[17]+"<br/>";
  }
  
  // Grundwertbestimmung - Schaden, Verteidigung, Barriere
  // 1 : Helm
  // 2 : Rüstung
  // 3 : Handschuhe
  // 4 : Beinschienen
  // 5 : Talisman
  // 6 : Ring
  // 7 : Einhandwaffe
  // 8 : Schild
  // 9 : Bogen
  // 10 : Stab 
	if(geg_array[6]=='1' || geg_array[6]=='2' || geg_array[6]=='3' || geg_array[6]=='4')
		text = text+"Verteidigung: "+geg_array[7]; 
	else if(geg_array[6]=='5' || geg_array[6]=='6' || geg_array[6]=='8') 
		text=text+"Barriere: "+geg_array[7]; 
	else  
		text=text+"Schaden: "+geg_array[7]; 
	
  if(itemseltenheit.length>'0')
    text = text+"<br/>Besonderheit:&nbsp;"+itemseltenheit;

  text = text+"<\/div>";

  // Bonis anzeigen
	if(geg_array[8]>0 || geg_array[9]>0 || geg_array[10]>0 || geg_array[11]>0 
    || geg_array[12]>0 || geg_array[13]>0 || geg_array[14]>0 || geg_array[15]>0
    || geg_array[16]>0){

    text = text+"<div class='hr'><\/div>";

		text=text+"<table class='bonustabelle itemgruen' cellspacing='0' cellpadding='0' border='0'>";
		if(geg_array[8]>0){ text = text+"<tr><td style='width:125px;' align='left'>St&auml;rke:</td><td>+"+geg_array[8]+"</td><td style='width:20px;'></td></tr>"; }	
		if(geg_array[9]>0){ text = text+"<tr><td style='width:125px;' align='left'>Geschick:</td><td>+"+geg_array[9]+"</td><td style='width:20px;'></td></tr>"; }	
		if(geg_array[10]>0){ text = text+"<tr><td style='width:125px;' align='left'>Leben:</td><td>+"+geg_array[10]+"</td><td style='width:20px;'></td></tr>"; }	
		if(geg_array[11]>0){ text = text+"<tr><td style='width:125px;' align='left'>Schaden:</td><td>+"+geg_array[11]+"</td><td style='width:20px;'>%</td></tr>"; }	
		if(geg_array[12]>0){ text = text+"<tr><td style='width:125px;' align='left'>Verteidigung:</td><td>+"+geg_array[12]+"</td><td style='width:20px;'>%</td></tr>"; }	
		if(geg_array[13]>0){ text = text+"<tr><td style='width:125px;' align='left'>Kritisch:</td><td>+"+geg_array[13]+"</td><td style='width:20px;'>%</td></tr>"; }
		if(geg_array[14]>0){ text = text+"<tr><td style='width:125px;' align='left'>Ausweichen:</td><td>+"+geg_array[14]+"</td><td style='width:20px;'>%</td></tr>"; }
		if(geg_array[15]>0){ text = text+"<tr><td style='width:125px;' align='left'>Sp&uuml;rsinn:</td><td>+"+geg_array[15]+"</td><td style='width:20px;'>%</td></tr>"; }
		if(geg_array[16]>0){ text = text+"<tr><td style='width:125px;' align='left'>Wirtschaft:</td><td>+"+geg_array[16]+"</td><td style='width:20px;'>%</td></tr>"; }
		text = text+"</table>";
	}
	
	infomenue.innerHTML = text;
	infofenster.style.width = "300px";
	infofenster.style.display="block";
}

// Material als PopUp beim Hoovern anzeigen
function material_anzeigen(material){
  // material besteht aus folgenden Feldern
  // ["name"]["beschreibung"]

  var mat_array = new Array();
  mat_array = material;
	var infofenster = document.getElementById("gegfenster");
	var infomenue = document.getElementById("gegmenue");

	var text = "<div class='pergagross' nowrap='nowrap'>"+mat_array[0]+"<\/div>";
  text += "<div class='hr'><\/div>";
	text += "<div class='pergamittel'>"+mat_array[1]+"<\/div>";

	infomenue.innerHTML = text;
	infofenster.style.width = "300px";
	infofenster.style.display="block";
}

// Bestätigungsanfrage
// link : Anschließend ausführender Link
// key : Bestätigungsmenü identifikation
function geg_zerstoer_anfrage(link, gold, schrott){
  // Verdunkeln
	var objOverlay = document.getElementById("Overlay");	
	objOverlay.style.display="block";

  gold = parseInt(gold);
  schrott = parseInt(schrott);
  
	// Infofenster und Menü laden
	var infofenster = document.getElementById("infofenster");
	var infomenue = document.getElementById("infomenue");	
  infofenster.style.width = "400px";
  // Infofenster mittig positionieren
	infofenster.style.top = (100+getScrollBarY())+"px";
	infofenster.style.left = (getWindowWidth()/2-400/2+getScrollBarX())+"px";
  // Inhalt des Fensters
  var inhalt = "";

  // Inventar und Gildenlager
	inhalt += "<div class='pergagross' style='text-align:center;'>Gegenstand zerst&ouml;ren<\/div>";
	inhalt += "<div class='pergamittel' style='text-align:center;'>Soll dieser Gegenstand<br/>tats&auml;chlich zerst&ouml;rt werden?<\/div>";
  inhalt += "<div class='pergamittel' style='text-align:center;'>Einnahmen: "+gold+"<img class='icons' src='./icons/pgold.gif' alt='G' title='Gold' /> ";
  if(schrott>0) inhalt += schrott+"<img class='icons' src='./icons/pschrott.gif' alt='S' title='Schrott' />";
  inhalt += "<\/div>";
	
  // Anklickoptionen anzeigen
  inhalt += "<div style='text-align:center; margin-bottom:10px;'><a class='pergamittel' href='"+link+"'><img class='icons' src='icons/phand.gif' alt='' title='Gegenstand zerst&ouml;ren'>ja</a> ";
  inhalt += " <span class='pergamittel' onClick='doAusblenden(\"infofenster\"); doAusblenden(\"Overlay\");' style='cursor:pointer;'><img class='icons' src='icons/px.gif' alt='' title='Abbrechen'>nein<\/span><\/div>";
  // Feenster sichtbar stellen
	infomenue.innerHTML = inhalt;
 	infofenster.style.display="block";
}

// Auswirkungen der Attribute anzeigen
// key : Bestätigungsmenü identifikation
function attribute_info_anzeigen(key) {
	// Infofenster und Menü laden
	var infofenster = document.getElementById("infofenster");
	var infomenue = document.getElementById("infomenue");	
  infofenster.style.width = "300px";

  // Inhalt des Fensters
  var inhalt = "";
  if(key == "char_attribute_staerke"){
    inhalt += "<div class='pergagross' style='text-align:center;'>St&auml;rke erh&ouml;hen<\/div>";
    inhalt += "<div class='pergamittel' style='text-align:center;'>Die St&auml;rke steigert den Schaden Eures Charakters. Beachtet das der Schaden von der Waffe abh&auml;ngig ist.<\/div>";
    inhalt += "<div class='pergamittel' style='text-align:center;'>Pro investierten Punkt steigert sich die St&auml;rke um 1.<\/div>";
  } else if(key == "char_attribute_geschick"){
    inhalt += "<div class='pergagross' style='text-align:center;'>Geschick erh&ouml;hen<\/div>";
    inhalt += "<div class='pergamittel' style='text-align:center;'>Das Geschick bestimmt die Schlagrate im Kampf.<\/div>";
    inhalt += "<div class='pergamittel' style='text-align:center;'>Pro investierten Punkt steigert sich das Geschick um 1.<\/div>";
  } else if(key == "char_attribute_vitalitaet"){
    inhalt += "<div class='pergagross' style='text-align:center;'>Leben erh&ouml;hen<\/div>";
    inhalt += "<div class='pergamittel' style='text-align:center;'>Je mehr Leben, desto l&auml;nger haltet Ihr den Schl&auml;gen Eures Gegners stand.<\/div>";
    inhalt += "<div class='pergamittel' style='text-align:center;'>Pro investierten Punkt steigern sich die Leben um 10.<\/div>";
  }
  // Feenster sichtbar stellen
	infomenue.innerHTML = inhalt;
 	infofenster.style.display="block";
}

// Auswirkungen der Attribute anzeigen
// key : Bestätigungsmenü identifikation
function scraper_buttons_info_anzeigen(key) {
	// Infofenster und Menü laden
	var infofenster = document.getElementById("infofenster");
	var infomenue = document.getElementById("infomenue");
  infofenster.style.width = "300px";

  // Inhalt des Fensters
  var inhalt = "";
  if(key == "aushang"){
    inhalt += "<div class='pergagross'>Aushang<\/div>";
    inhalt += "<div class='pergamittel'>";
    inhalt += "Der Aushang wird von den Dorfbewohnern genutzt um deren Not mitzuteieln. ";
    inhalt += "Hier findet Ihr dessen und die Auftr&auml;ge zur Einf&uuml;hrung. ";
    inhalt += "Helft den Dorfbewohnern und Ihr werdet f&uuml;r Eure Taten reichlich entlohnt.";
    inhalt += "<\/div>";
  } else if(key == "account"){
    inhalt += "<div class='pergagross'>Account<\/div>";
    inhalt += "<div class='pergamittel'>";
    inhalt += "Hier k&ouml;nnt Ihr &Auml;nderungen an Eurem Account vornehmen. ";
    inhalt += "Ihr k&ouml;nnt eine Charakterbeschreibung angeben und einen Urlaubsvertreter bestimmen.";
    inhalt += "<\/div>";
  } else if(key == "diamanten"){
    inhalt += "<div class='pergagross'>Diamanten<\/div>";
    inhalt += "<div class='pergamittel'>";
    inhalt += "Hier findet Ihr eine Auflistung Eurer geworbenen Spieler und k&ouml;nnt f&uuml;r diese Diamaneten abheben. ";
    inhalt += "Eine umfangreiche Charakterstatistik zeigt Euch Euren bisherigen Spielverlauf in Zahlen.";
    inhalt += "<\/div>";
  } else if(key == "hilfe"){
    inhalt += "<div class='pergagross'>Hilfe<\/div>";
    inhalt += "<div class='pergamittel'>";
    inhalt += "Hier gelangt Ihr zur Hilfe, dort findet Ihr alle Informationen zum Spiel.";
    inhalt += "<\/div>";
  }
  // Feenster sichtbar stellen
	infomenue.innerHTML = inhalt;
 	infofenster.style.display="block";
}

function marktgebuehr(element, id){
	var textfeld = document.getElementById(id);
	var preis = Math.round(parseInt(element.value)*const_verkaufssteuer_gold,0);
	if(isNaN(preis))
	  textfeld.innerHTML="Falsche Eingabe";
  else
    textfeld.innerHTML=preis;
}

function zeichenzaehler(id, grenze){
	grenze = parseInt(grenze);
	var textfeld = document.getElementById(id);
	var textlaenge = textfeld.value.length;
	var zeichenfeld = document.getElementById("zeichenanzahl");
	zeichenfeld.innerHTML=textlaenge;
	if(textlaenge>grenze){ zeichenfeld.className="rot"; }
	if(textlaenge<=grenze){ zeichenfeld.className=""; }
}

function dateicheck(value){
	endung = /[jpg|jpeg|JPG|JPEG]$/;
	result = endung.test(value);
	if(result == 0){ 
		var infofenster = document.getElementById("charavatendung");
		infofenster.className="rot";
	}
}

// Tausender Trennzeichen einfügen "."
function tausender_trennzeichen(zahl){
  var wert = new String(zahl);
  var return_string = "";
  while(wert.length>3){
    return_string = "." + wert.slice(-3) + return_string;
    wert = wert.slice(0, wert.length-3);
  }
  return wert + return_string;
}

// Klasse und Wert ändern
function change_color_value(color, value, id){
	var infofenster = document.getElementById(id);
	if(infofenster){
    infofenster.innerHTML = value;
	 infofenster.style.color = color;
  }
}

// Userpanal, Wertänderung Animation
function show_panelwerte(string){
  var args = arguments;
	var zeit = 0;
	var infofenster;
	
	var userpanel_ap_akt = parseInt(args[0]);
	var userpanel_ap = parseInt(args[1]);
	var userpanel_apgesammelt_akt = parseInt(args[2]);
	var userpanel_apgesammelt = parseInt(args[3]);
	var userpanel_apgilde_akt = parseInt(args[4]);
	var userpanel_apgilde = parseInt(args[5]);

	var userpanel_gold_akt = parseInt(args[6]);
	var userpanel_gold = parseInt(args[7]);
	var userpanel_diamanten_akt = parseInt(args[8]);
	var userpanel_diamanten = parseInt(args[9]);
	var userpanel_stufe_akt = parseInt(args[10]);
	var userpanel_stufe = parseInt(args[11]);
	var userpanel_ep_akt = parseInt(args[12]);
	var userpanel_ep = parseInt(args[13]);
	var userpanel_rangpunkte_akt = parseInt(args[14]);
	var userpanel_rangpunkte = parseInt(args[15]);
	var userpanel_platzierung_akt = parseInt(args[16]);
	var userpanel_platzierung = parseInt(args[17]);

	var gildepanel_verteidigung_akt = (args[18]==null) ? 0 : parseInt(args[18]);
	var gildepanel_verteidigung = (args[19]==null) ? 0 : parseInt(args[19]);
	var gildepanel_angriff_akt = (args[20]==null) ? 0 : parseInt(args[20]);
	var gildepanel_angriff = (args[21]==null) ? 0 : parseInt(args[21]);
	var gildepanel_diamanten_akt = (args[22]==null) ? 0 : parseInt(args[22]);
	var gildepanel_diamanten = (args[23]==null) ? 0 : parseInt(args[23]);
	var gildepanel_gold_akt = (args[24]==null) ? 0 : parseInt(args[24]);
	var gildepanel_gold = (args[25]==null) ? 0 : parseInt(args[25]);
	var gildepanel_rangpunkte_akt = (args[26]==null) ? 0 : parseInt(args[26]);
	var gildepanel_rangpunkte = (args[27]==null) ? 0 : parseInt(args[27]);
	var gildepanel_platzierung_akt = (args[28]==null) ? 0 : parseInt(args[28]);
	var gildepanel_platzierung = (args[29]==null) ? 0 : parseInt(args[29]);
  var gildepanel_mitglieder_akt = (args[30]==null) ? 0 : parseInt(args[30]);
  var gildepanel_mitglieder = (args[31]==null) ? 0 : parseInt(args[31]);

  // Erfahrungspunkte
	if(userpanel_ep >= 100 && userpanel_ep_akt != userpanel_ep){
		userpanel_ep = 0;
    zeit = 10;
		infofenster = document.getElementById('userpanel_ep');
		infofenster.style.width = "0%";
	}

	// Aktionspunkte Coldis
	if(userpanel_apgesammelt_akt < userpanel_apgesammelt){
		userpanel_apgesammelt--;
    zeit = 1000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(userpanel_apgesammelt), 'userpanel_apgesammelt');
	} else if(userpanel_apgesammelt_akt > userpanel_apgesammelt){
		userpanel_apgesammelt++;
    zeit = 1000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_apgesammelt), 'userpanel_apgesammelt');

  // Aktionspunkte Gildencoldis
	} else if(userpanel_apgilde_akt < userpanel_apgilde){
		userpanel_apgilde--;
    zeit = 1000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(userpanel_apgilde), 'userpanel_apgilde');
	} else if(userpanel_apgilde_akt > userpanel_apgilde){
		userpanel_apgilde++;
    zeit = 1000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_apgilde), 'userpanel_apgilde');

  // Aktionspunkte
	} else if(userpanel_ap_akt < userpanel_ap){
		userpanel_ap--;
    zeit = 1000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(userpanel_ap), 'userpanel_ap');
	} else if(userpanel_ap_akt > userpanel_ap){
		userpanel_ap++;
    zeit = 1000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_ap), 'userpanel_ap');

  // User Gold
	} else if(userpanel_gold_akt < userpanel_gold){
		userpanel_gold--;
    zeit = 10;
    change_color_value(const_farbe_rot, tausender_trennzeichen(userpanel_gold), 'userpanel_gold');
	} else if(userpanel_gold_akt > userpanel_gold){
		userpanel_gold++;
    zeit = 10;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_gold), 'userpanel_gold');

  // User Diamanten
	} else if(userpanel_diamanten_akt < userpanel_diamanten){
		userpanel_diamanten--;
    zeit = 500;
    change_color_value(const_farbe_rot, tausender_trennzeichen(userpanel_diamanten), 'userpanel_diamanten');
	} else if(userpanel_diamanten_akt > userpanel_diamanten){
		userpanel_diamanten++;
    zeit = 500;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_diamanten), 'userpanel_diamanten');

  // Erfahrungspunkte
	} else if(userpanel_ep_akt != userpanel_ep){
		userpanel_ep++;
    zeit = 500;
		var infofenster = document.getElementById('userpanel_ep');
		infofenster.style.width = userpanel_ep + "%";

  // Stufe
	} else if(userpanel_stufe_akt > userpanel_stufe){
		userpanel_stufe++;
    zeit = 2000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_stufe), 'userpanel_stufe');

  // User Rangpunkte
	} else if(userpanel_rangpunkte_akt < userpanel_rangpunkte){
		userpanel_rangpunkte--;
    zeit = 100;
    change_color_value(const_farbe_rot, tausender_trennzeichen(userpanel_rangpunkte), 'userpanel_rangpunkte');
	} else if(userpanel_rangpunkte_akt > userpanel_rangpunkte){
		userpanel_rangpunkte++;
    zeit = 100;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_rangpunkte), 'userpanel_rangpunkte');

  // User Platzierung
  } else if(userpanel_platzierung_akt < userpanel_platzierung){
		userpanel_platzierung--;
    zeit = 2000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(userpanel_platzierung), 'userpanel_platzierung');
	} else if(userpanel_platzierung_akt > userpanel_platzierung){
		userpanel_platzierung++;
    zeit = 2000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(userpanel_platzierung), 'userpanel_platzierung');

  // Gilde Gold
	} else if(gildepanel_gold_akt < gildepanel_gold){
		gildepanel_gold--;
    zeit = 10;
    change_color_value(const_farbe_rot, tausender_trennzeichen(gildepanel_gold), 'gildepanel_gold');
	} else if(gildepanel_gold_akt > gildepanel_gold){
		gildepanel_gold++;
    zeit = 10;
    change_color_value(const_farbe_blau, tausender_trennzeichen(gildepanel_gold), 'gildepanel_gold');

  // Gilde Diamanten
	} else if(gildepanel_diamanten_akt < gildepanel_diamanten){
		gildepanel_diamanten--;
    zeit = 500;
    change_color_value(const_farbe_rot, tausender_trennzeichen(gildepanel_diamanten), 'gildepanel_diamanten');
	} else if(gildepanel_diamanten_akt > gildepanel_diamanten){
		gildepanel_diamanten++;
    zeit = 500;
    change_color_value(const_farbe_blau, tausender_trennzeichen(gildepanel_diamanten), 'gildepanel_diamanten');

  // Gilde Rangpunkte
	} else if(gildepanel_rangpunkte_akt < gildepanel_rangpunkte){
		gildepanel_rangpunkte--;
    zeit = 100;
    change_color_value(const_farbe_rot, tausender_trennzeichen(gildepanel_rangpunkte), 'gildepanel_rangpunkte');
	} else if(gildepanel_rangpunkte_akt > gildepanel_rangpunkte){
		gildepanel_rangpunkte++;
    zeit = 100;
    change_color_value(const_farbe_blau, tausender_trennzeichen(gildepanel_rangpunkte), 'gildepanel_rangpunkte');

  // Gilde Platzierung
  } else if(gildepanel_platzierung_akt < gildepanel_platzierung){
		gildepanel_platzierung--;
    zeit = 2000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(gildepanel_platzierung), 'gildepanel_platzierung');
	} else if(gildepanel_platzierung_akt > gildepanel_platzierung){
		gildepanel_platzierung++;
    zeit = 2000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(gildepanel_platzierung), 'gildepanel_platzierung');

  // Gilde Mitglieder
  } else if(gildepanel_mitglieder_akt < gildepanel_mitglieder){
		gildepanel_mitglieder--;
    zeit = 2000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(gildepanel_mitglieder), 'gildepanel_mitglieder');
	} else if(gildepanel_mitglieder_akt > gildepanel_mitglieder){
		gildepanel_mitglieder++;
    zeit = 2000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(gildepanel_mitglieder), 'gildepanel_mitglieder');

  // Gilde Verteidigung
  } else if(gildepanel_verteidigung_akt < gildepanel_verteidigung){
		gildepanel_verteidigung--;
    zeit = 2000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(gildepanel_verteidigung), 'gildepanel_verteidigung');
	} else if(gildepanel_platzierung_akt > gildepanel_platzierung){
		gildepanel_verteidigung++;
    zeit = 2000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(gildepanel_verteidigung), 'gildepanel_verteidigung');

  // Gilde Angriff
  } else if(gildepanel_angriff_akt < gildepanel_angriff){
		gildepanel_angriff--;
    zeit = 2000;
    change_color_value(const_farbe_blau, tausender_trennzeichen(gildepanel_angriff), 'gildepanel_angriff');
	} else if(gildepanel_angriff_akt > gildepanel_angriff){
		gildepanel_angriff++;
    zeit = 2000;
    change_color_value(const_farbe_rot, tausender_trennzeichen(gildepanel_angriff), 'gildepanel_angriff');
  }

	if(zeit > 0){
    var funktionsuafruf = "show_panelwerte(";
    funktionsuafruf += "'"+userpanel_ap_akt+"','"+userpanel_ap+"'";
    funktionsuafruf += ",'"+userpanel_apgesammelt_akt+"','"+userpanel_apgesammelt+"'";
    funktionsuafruf += ",'"+userpanel_apgilde_akt+"','"+userpanel_apgilde+"'";
    funktionsuafruf += ",'"+userpanel_gold_akt+"','"+userpanel_gold+"'";
    funktionsuafruf += ",'"+userpanel_diamanten_akt+"','"+userpanel_diamanten+"'";
    funktionsuafruf += ",'"+userpanel_stufe_akt+"','"+userpanel_stufe+"'";
    funktionsuafruf += ",'"+userpanel_ep_akt+"','"+userpanel_ep+"'";
    funktionsuafruf += ",'"+userpanel_rangpunkte_akt+"','"+userpanel_rangpunkte+"'";
    funktionsuafruf += ",'"+userpanel_platzierung_akt+"','"+userpanel_platzierung+"'";
    funktionsuafruf += ",'"+gildepanel_verteidigung_akt+"','"+gildepanel_verteidigung+"'";
    funktionsuafruf += ",'"+gildepanel_angriff_akt+"','"+gildepanel_angriff+"'";
    funktionsuafruf += ",'"+gildepanel_diamanten_akt+"','"+gildepanel_diamanten+"'";
    funktionsuafruf += ",'"+gildepanel_gold_akt+"','"+gildepanel_gold+"'";
    funktionsuafruf += ",'"+gildepanel_rangpunkte_akt+"','"+gildepanel_rangpunkte+"'";
    funktionsuafruf += ",'"+gildepanel_platzierung_akt+"','"+gildepanel_platzierung+"'";
    funktionsuafruf += ",'"+gildepanel_mitglieder_akt+"','"+gildepanel_mitglieder+"'";
    funktionsuafruf += ");"
    
		setTimeout(funktionsuafruf, zeit);

	} else {
    // Standard herstellen
    
		if(userpanel_ap_akt < 12){
		  infofenster = document.getElementById('userpanel_ap');
			infofenster.style.color = '';
		} else {
			infofenster = document.getElementById('userpanel_ap');
			infofenster.style.color = const_farbe_rot;
		}
		if(userpanel_apgesammelt_akt < 12){
			infofenster = document.getElementById('userpanel_apgesammelt');
			infofenster.style.color = '';
		} else {
			infofenster = document.getElementById('userpanel_apgesammelt');
			infofenster.style.color = const_farbe_rot;
		}
		if(userpanel_apgilde_akt < 12){
			infofenster = document.getElementById('userpanel_apgilde');
			if(infofenster) infofenster.style.color = '';
		} else {
			infofenster = document.getElementById('userpanel_apgilde');
			if(infofenster) infofenster.style.color = const_farbe_rot;
		}

		infofenster = document.getElementById('userpanel_gold');
		infofenster.style.color = '';
		infofenster = document.getElementById('userpanel_diamanten');
		infofenster.style.color = '';
		infofenster = document.getElementById('userpanel_rangpunkte');
		infofenster.style.color = '';
		infofenster = document.getElementById('userpanel_platzierung');
		infofenster.style.color = '';
		infofenster = document.getElementById('userpanel_stufe');
		infofenster.style.color = '';

    infofenster = document.getElementById('gildepanel_verteidigung');
		if(infofenster) infofenster.style.color = '';
		infofenster = document.getElementById('gildepanel_angriff');
		if(infofenster) infofenster.style.color = '';
		infofenster = document.getElementById('gildepanel_diamanten');
		if(infofenster) infofenster.style.color = '';
		infofenster = document.getElementById('gildepanel_gold');
		if(infofenster) infofenster.style.color = '';
		infofenster = document.getElementById('gildepanel_rangpunkte');
		if(infofenster) infofenster.style.color = '';
		infofenster = document.getElementById('gildepanel_platzierung');
		if(infofenster) infofenster.style.color = '';
		infofenster = document.getElementById('gildepanel_mitglieder');
		if(infofenster) infofenster.style.color = '';
	}
}

// Zeigt die Kosten bei Ausführung an
//  : kosten : Array das die Kosten definiert
//  : title  : Überschrift falls gegeben
//  : text   : Beschreibung falls gegeben
function kosten_anzeigen(kosten, title, text) {
  var divinhalt = "";
  var width = 220;

  // Kosten gesetzt?
  if(kosten){
    if(typeof(kosten) == "object"){
      if(kosten["ap"] && parseInt(kosten["ap"])>0)
        divinhalt += kosten["ap"]+" <img class='icons' src='.\/icons\/pap.gif' title='Aktionspunkte' alt='AP' \/>";
      if(kosten["diamant"] && parseInt(kosten["diamant"])>0)
        divinhalt += kosten["diamant"]+" <img class='icons' src='.\/icons\/pdiamant.gif' title='Diamant' alt='DIA' \/>";
      if(kosten["begabungspunkt"] && parseInt(kosten["begabungspunkt"])>0)
        divinhalt += kosten["begabungspunkt"]+" <img class='icons' src='.\/icons\/pbpmini.gif' title='Begabungspunkte' alt='BGP' \/>";
      if(kosten["gold"] && parseInt(kosten["gold"])>0)
        divinhalt += kosten["gold"]+" <img class='icons' src='.\/icons\/pgold.gif' title='Gold' alt='GLD' \/>";
    }
  }
  
  if(divinhalt.length > 0)
    var divinhalt =  "<div class='pergamittel' style='text-align:center;'>Kosten: "+divinhalt+"<\/div>";

  if(text)
    if(text.length > 0)
      divinhalt = "<div class='pergamittel' style='text-align:center;'>"+text+"<\/div>"+divinhalt;

  if(title){
    if(title.length > 0){
      divinhalt = "<div class='pergagross' style='text-align:center;'>"+title+"<\/div>"+divinhalt;
      width = title.length*10;
    }
  }
  
  var infofenster = document.getElementById("infofenster");
  var inhalt = document.getElementById("infomenue");

  if(divinhalt.length>0){
    inhalt.innerHTML = divinhalt;
  } else {
    inhalt.innerHTML = "<div class='pergamittel'>keine Kosten<\/div>";
  }
  
  infofenster.style.width = width+"px";
  infofenster.style.display="block";
}

// Zeigt die Kosten bei Ausführung an
//  : ap        : Aktionspunkte
//  : diamant   : Diamanten
//  : gold      : Gold
function kosten_anzeigen_allgemein(ap, diamant, gold){
  ap = parseInt(ap);
  diamant = parseInt(diamant);
  gold = parseInt(gold);
  
  var kosten = new Array();
  if(ap>0) kosten["ap"] = ap;
  if(diamant>0) kosten["diamant"] = diamant;
  if(gold>0) kosten["gold"] = gold;

  kosten_anzeigen(kosten, null, null);
}


function mobanzeigen(bild,name,stufe,ep) {

	var infofenster = document.getElementById("infofenster");
	var inhalt = document.getElementById("infomenue");

	infofenster.style.width="250px";
	inhalt.innerHTML = "<div style='text-align:center; padding-left:10px; padding-right:10px; padding-top:10px; background-image:url(mobs/"+name+bild+"); height:217px;'><span class='pergagross' style='padding-left:0px; padding-right:0px; margin-left:0px; margin-right:0px;'>"+unescape(name)+"<\/span><br/><span class='pergamittel'>Stufe: "+stufe+"<\/span><br/><span class='pergamittel'>Erfahrung: "+ep+"<\/span><\/div>";

	infofenster.style.display="block";
}
				
function verbergen() {

	var infofenster = document.getElementById("infofenster");
	infofenster.style.display="none";
}

function verbergen_id(id) {
	var infofenster = document.getElementById(id);
	infofenster.style.display="none";
}

function anzeigen_id(id) {
	var infofenster = document.getElementById(id);
	infofenster.style.display="block";
}

function mobbossanzeigen(bild,name,leben,lebenakt) {

	var infofenster = document.getElementById("infofenster");
	var inhalt = document.getElementById("infomenue");

	infofenster.style.width="250px";
	inhalt.innerHTML = "<div style='text-align:center; margin-left:5px; margin-right:5px; padding-left:10px; padding-right:10px; padding-top:10px; background-image:url(mobs/"+name+bild+"); height:217px;'><span class='pergagross' style='padding-left:0px; padding-right:0px; margin-left:0px; margin-right:0px;'>"+unescape(name)+"<\/span><div style='border:3px double #000000; width:155px; height:16px; margin-left:10px;'><div style='width:"+(Math.round(100*lebenakt/leben))+"%; height:16px; background-image:url(./style/balken.gif); background-repeat:repeat-x;'><\/div><\/div><span class='pergamittel' style='position:relative; top:-18px;'>"+lebenakt+" / "+leben+"<\/span><\/div>";

	infofenster.style.display="block";
}


var fortschritt=0;
var anzahl=0;

function farmanimation(array){

	var mobs = array.length;

	if(fortschritt<mobs){

		if(fortschritt%4==0){
			
			if(anzahl%2==0 && anzahl<3){

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/lupe.gif' alt='Lupe' title='suche'>";
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "Ihr Charakter sucht nach MOBs";
				anzahl++;

			} else if(anzahl%2==1 && anzahl<3){

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/busch.gif' alt='Busch' title='suche'>";			
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "Ihr Charakter sucht nach MOBs";
				anzahl++;

			} else if(array[fortschritt]==0 && anzahl>2){ 

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/busch.gif' alt='Busch' title='nichts gefunden'>";
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "kein MOB gefunden";

				if(anzahl==3){ document.getElementById('farmenmobsn').innerHTML=parseInt(document.getElementById('farmenmobsn').innerHTML)+1; }

				anzahl++;

				if(anzahl>4){ anzahl=0; fortschritt=fortschritt+4; }

			} else if(anzahl>2) {

				if(anzahl<5){

					var infofenster = document.getElementById("farmenaktionbild");
					infofenster.innerHTML = "<img src='icons/mob.gif' alt='MOB' title='MOB gefunden'>";
					var infofenster = document.getElementById("farmenaktiontxt");
					infofenster.innerHTML = "ein MOB wurde gefunden";

					if(anzahl==3){ document.getElementById('farmenmobs').innerHTML=parseInt(document.getElementById('farmenmobs').innerHTML)+1; }

					anzahl++;

				} else if(anzahl%2==0 && anzahl<9){

					var infofenster = document.getElementById("farmenaktionbild");
					infofenster.innerHTML = "<img src='./icons/schlag.gif' alt='Schlag' title='k&auml;mpft' />";
					var infofenster = document.getElementById("farmenaktiontxt");
					infofenster.innerHTML = "MOB wird attackiert";
					anzahl++;

				} else if(anzahl%2==1 && anzahl<9){

					var infofenster = document.getElementById("farmenaktionbild");
					infofenster.innerHTML = "<img src='icons/mob.gif' alt='MOB' title='k&auml;mpft'>";			
					var infofenster = document.getElementById("farmenaktiontxt");
					infofenster.innerHTML = "MOB wird attackiert";
					anzahl++;

				} else if(array[fortschritt]==1 && anzahl>8) {

					var infofenster = document.getElementById("farmenaktionbild");
					infofenster.innerHTML = "<img src='icons/mobg.gif' alt='MOBg' title='MOB geflohen'>";
					var infofenster = document.getElementById("farmenaktiontxt");
					infofenster.innerHTML = "MOB ist geflohen";

					if(anzahl==9){ document.getElementById('farmenmobsg').innerHTML=parseInt(document.getElementById('farmenmobsg').innerHTML)+1; }

					anzahl++;

					if(anzahl>10){ anzahl=0; fortschritt=fortschritt+4; }

				} else if(anzahl>8) {

					if(anzahl<11){

						var infofenster = document.getElementById("farmenaktionbild");
						infofenster.innerHTML = "<img src='icons/mobt.gif' alt='MOBt' title='MOB besiegt'>";
						var infofenster = document.getElementById("farmenaktiontxt");
						infofenster.innerHTML = "MOB wurde besiegt";

						if(anzahl==9){ document.getElementById('farmenmobst').innerHTML=parseInt(document.getElementById('farmenmobst').innerHTML)+1; }
						if(anzahl==9){ document.getElementById('farmenep').innerHTML=parseInt(document.getElementById('farmenep').innerHTML)+parseInt(document.getElementById('farmenepmob').innerHTML); }

						anzahl++;

					} else {

						anzahl=0; fortschritt++;

					}
				}	
 			}
		}

		if(fortschritt%4==1 || fortschritt%4==2){

			if(anzahl%2==0 && anzahl<3){

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/lupe.gif' alt='Lupe' title='durchsuchen'>";
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "MOB wird durchsucht";
				anzahl++;

			} else if(anzahl%2==1 && anzahl<3){

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/mobt.gif' alt='MOBt' title='durchsuchen'>";			
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "MOB wird durchsucht";
				anzahl++;

			} else if(array[fortschritt]==1 && fortschritt%4==1 && anzahl>2){ 

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/rune.gif' alt='Rune' title='Rune gefunden'>";
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "Rune gefunden";

				if(anzahl==3){ document.getElementById('farmencharrune').innerHTML=parseInt(document.getElementById('farmencharrune').innerHTML)+1; }

				anzahl++; 

				if(anzahl>4){ anzahl=3; fortschritt++; }

			} else if(array[fortschritt]==0 && fortschritt%4==1 && anzahl>2){ 

				fortschritt++;

			} else if(array[fortschritt]==1 && fortschritt%4==2 && anzahl>2){

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/rune.gif' alt='Rune' title='Rune gebunden'>";
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "Farmrune gebunden";

				if(anzahl==3){ document.getElementById('farmenfarmrune').innerHTML=parseInt(document.getElementById('farmenfarmrune').innerHTML)+1; }

				anzahl++;

				if(anzahl>4){ anzahl=0; fortschritt++; }

			} else if(array[fortschritt]==0 && anzahl<5){ 

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/mobt.gif' alt='MOBt' title='nichts gefunden'>";
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "nichts mehr gefunden";
				anzahl++;

			} else {

				anzahl=0; fortschritt++;
			}
		}

		if(fortschritt%4==3){

			if(array[fortschritt]==1){ 

				var infofenster = document.getElementById("farmenaktionbild");
				infofenster.innerHTML = "<img src='icons/koffer.gif' alt='Item' title='Item gefunden'>";
				var infofenster = document.getElementById("farmenaktiontxt");
				infofenster.innerHTML = "Item wurde gefunden";

				document.getElementById('farmenitem').innerHTML=parseInt(document.getElementById('farmenitem').innerHTML)+1;

			}

			anzahl=0; fortschritt++;
		}

		setTimeout("farmanimation(new Array("+array+"));",1000);

	} else {

		var infofenster = document.getElementById("farmenaktionbild");
		infofenster.innerHTML = "<img src='icons/busch.gif' alt='Busch' title='Busch'>";
		var infofenster = document.getElementById("farmenaktiontxt");
		infofenster.innerHTML = "Ihre Farmaktion ist beendet";
	}
}

function auftraganimation(){

	var balken = document.getElementById('auftragbalken');
	balken.style.width=fortschritt+"%";

	if(fortschritt==100){

		var balken = document.getElementById('auftraglohn');
		balken.style.display="block";

	} else { setTimeout("auftraganimation();",100); }

	fortschritt++;
}

// ------------ ---------- ------------ //
// ------------ Nützliches ------------ //
// ------------ ---------- ------------ //
function change_class(obj, klasse){
  // Sonderwurst für scheiss IE
	if(browserId=="IE")
	 obj.className = klasse;
	else
	 obj.setAttribute("class",klasse);
}

// ------------ ---- ------------ //
// ------------ AJAX ------------ //
// ------------ ---- ------------ //
var XMLHTTP = null;

function initXMLHTTP(){
  if(window.XMLHttpRequest){
    XMLHTTP = new XMLHttpRequest();

  } else if(window.ActiveXObject) {
    try {
      XMLHTTP = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(ex){
      try {
        XMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(ex) { }
    }
  }
}

initXMLHTTP();
function startWebServices(parameter,funktion){
  XMLHTTP.open("POST","webservices.php",true);
  XMLHTTP.onreadystatechange = function() { WebServices(funktion); }
  XMLHTTP.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  XMLHTTP.send(parameter);
}

function WebServices(funktion){
  if(XMLHTTP.readyState == 4){
    if(typeof funktion == 'function') funktion();
  }
}

function replacer(key, value) {
    if (typeof value === 'number' && !isFinite(value)) {
        return String(value);
    }
    return value;
}

// ------------ ------- --------- //
// ------------ COOKIES --------- //
// ------------ ------- --------- //

function SetCookie (name, value, timestamp) {

  var expires = new Date(parseFloat(timestamp));
  var argv = SetCookie.arguments;
  var argc = SetCookie.arguments.length;
  var expires = (argc > 2) ? argv[2] : null;
  var path = (argc > 3) ? argv[3] : null;
  var domain = (argc > 4) ? argv[4] : null;
  var secure = (argc > 5) ? argv[5] : false;
  document.cookie = name + "=" + escape (value) +
    ((expires == null) ? "" : ("; expires=" + expires)) +
    ((path == null) ? "" : ("; path=" + path)) +
    ((domain == null) ? "" : ("; domain=" + domain)) +
    ((secure == true) ? "; secure" : "");
}

function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie (name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
    return getCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break;
  }
  return null;
}

// ------------ ------- --------- //
// --------- FEHLERHANDLING ----- //
// ------------ ------- --------- //

// Fehlermeldung neu setzen
function set_error_message(fehlermeldung){
  var obj = document.getElementById('fehlermeldung');
  obj.style.display = "block";
  obj.innerHTML = fehlermeldung;
}

// Fehlermeldung auslesen
function get_error_message(){
  var obj = document.getElementById('fehlermeldung');
  return obj.innerHTML;
}

// Fehlermeldungen aufreihen
function add_error_message(neu_fehlermeldung){
  if(neu_fehlermeldung){
    if(neu_fehlermeldung.length>0){
      var fehlermeldung = get_error_message();
      if(fehlermeldung){
        if(fehlermeldung.length>0)
          fehlermeldung += "<br/>"+neu_fehlermeldung;
        else
          fehlermeldung = neu_fehlermeldung;
      } else
        fehlermeldung = neu_fehlermeldung;
      set_error_message(fehlermeldung);
    }
  }
}

// Fehlermeldung loeschen
function reset_error_message(){
  var obj = document.getElementById('fehlermeldung');
  obj.innerHTML = "";
  obj.style.display = "none";
}


