Advertisement
AndiW85

Uthgard dynamic signature

Oct 11th, 2018
502
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 8.44 KB | None | 0 0
  1. <?php
  2.  
  3. /**
  4. Orginal is von Duke, ich hab nur dran rumgepfuscht ;)
  5. --Rector
  6. **/
  7.  
  8.  
  9.   $herald_link = "http://herald.uthgard.net/daoc/sig.php?txt=on&name=";
  10.   $schriftart = "./Fertigo_PRO.otf";
  11.   $spieler_reichsrang = "";
  12.   $link = "tiny_brown.jpg";
  13.   $stop = true;
  14.   $startpunkt=300;
  15.   $text="Herald down!?!";
  16.  
  17. // Gedöns initialisieren
  18. $spieler_name1=$spieler_lastname1=$spieler_class1=$spieler_reichsrang1=$spieler_lvl1=$spieler_name2=$spieler_lastname2=$spieler_class2=$spieler_reichsrang2=$spieler_lvl2=$spieler_name3=$spieler_lastname3=$spieler_class3=$spieler_reichsrang3=$spieler_lvl3=$spieler_name4=$spieler_lastname4=$spieler_class4=$spieler_reichsrang4=$spieler_lvl4=$spieler_name5=$spieler_lastname5=$spieler_class5=$spieler_reichsrang5=$spieler_lvl5=0;
  19.  
  20.   error_reporting(E_ALL);
  21.  
  22. //Querystring einlesen und in 5 Variablen speichern  
  23.  
  24. $chars = explode("+", $_SERVER['QUERY_STRING']);
  25.  
  26.    
  27. //Daten ausm Herald ziehen und speichern
  28.    
  29.   if(!empty($chars[0])) {
  30.     $schnittstelle1 = file_get_contents($herald_link . htmlspecialchars($chars[0]));
  31.     $schnittstelle_array1 = explode("\n", $schnittstelle1);
  32.  {    //if((substr(trim($schnittstelle_array1[5]),6)) != "Blutrausch"){echo "Error or wrong guild: "; echo (substr(trim($schnittstelle_array1[5]),6)); exit;}
  33.       $spieler_reichsrang1 = substr(trim($schnittstelle_array1[9]), 11);
  34.       $spieler_name1 = substr(trim($schnittstelle_array1[1]), 5);
  35.       $spieler_lastname1 = substr(trim($schnittstelle_array1[2]), 9);
  36.       $spieler_class1 = substr(trim($schnittstelle_array1[3]), 6);
  37.       $spieler_lvl1 = substr(trim($schnittstelle_array1[6]), 6);
  38.  }}
  39.  
  40.  
  41.    if(!empty($chars[1])) {
  42.     $schnittstelle2 = file_get_contents($herald_link . htmlspecialchars($chars[1]));
  43.     $schnittstelle_array2 = explode("\n", $schnittstelle2);
  44.  {    
  45.       //if((substr(trim($schnittstelle_array2[5]),6)) != "Blutrausch"){echo "Error or wrong guild: "; echo (substr(trim($schnittstelle_array2[5]),6)); exit;}
  46.       $spieler_reichsrang2 = substr(trim($schnittstelle_array2[9]), 11);
  47.       $spieler_name2 = substr(trim($schnittstelle_array2[1]), 5);
  48.       $spieler_lastname2 = substr(trim($schnittstelle_array2[2]), 9);
  49.       $spieler_class2 = substr(trim($schnittstelle_array2[3]), 6);
  50.       $spieler_lvl2 = substr(trim($schnittstelle_array2[6]), 6);
  51.  } }
  52.  
  53.  
  54.    if(!empty($chars[2])) {
  55.     $schnittstelle3 = file_get_contents($herald_link . htmlspecialchars($chars[2]));
  56.     $schnittstelle_array3 = explode("\n", $schnittstelle3);
  57.  {    
  58.       //if((substr(trim($schnittstelle_array3[5]),6)) != "Blutrausch"){echo "Error or wrong guild: "; echo (substr(trim($schnittstelle_array3[5]),6)); exit;}
  59.       $spieler_reichsrang3 = substr(trim($schnittstelle_array3[9]), 11);
  60.       $spieler_name3 = substr(trim($schnittstelle_array3[1]), 5);
  61.       $spieler_lastname3 = substr(trim($schnittstelle_array3[2]), 9);
  62.       $spieler_class3 = substr(trim($schnittstelle_array3[3]), 6);
  63.       $spieler_lvl3 = substr(trim($schnittstelle_array3[6]), 6);  
  64.  } }
  65.  
  66.  
  67.    if(!empty($chars[3])) {
  68.     $schnittstelle4 = file_get_contents($herald_link . htmlspecialchars($chars[3]));
  69.     $schnittstelle_array4 = explode("\n", $schnittstelle4);
  70.  {    
  71.       //if((substr(trim($schnittstelle_array4[5]),6)) != "Blutrausch"){echo "Error or wrong guild: "; echo (substr(trim($schnittstelle_array4[5]),6)); exit;}
  72.       $spieler_reichsrang4 = substr(trim($schnittstelle_array4[9]), 11);
  73.       $spieler_name4 = substr(trim($schnittstelle_array4[1]), 5);
  74.       $spieler_lastname4 = substr(trim($schnittstelle_array4[2]), 9);
  75.       $spieler_class4 = substr(trim($schnittstelle_array4[3]), 6);
  76.       $spieler_lvl4 = substr(trim($schnittstelle_array4[6]), 6);
  77.  } }
  78.  
  79.    if(!empty($chars[4])) {
  80.     $schnittstelle5 = file_get_contents($herald_link . htmlspecialchars($chars[4]));
  81.     $schnittstelle_array5 = explode("\n", $schnittstelle5);
  82.  {    
  83.       //if((substr(trim($schnittstelle_array5[5]),6)) != "Blutrausch"){echo "Error or wrong guild: "; echo (substr(trim($schnittstelle_array5[5]),6)); exit;}
  84.       $spieler_reichsrang5 = substr(trim($schnittstelle_array5[9]), 11);
  85.       $spieler_name5 = substr(trim($schnittstelle_array5[1]), 5);
  86.       $spieler_lastname5 = substr(trim($schnittstelle_array5[2]), 9);
  87.       $spieler_class5 = substr(trim($schnittstelle_array5[3]), 6);
  88.       $spieler_lvl5 = substr(trim($schnittstelle_array5[6]), 6);
  89.  } }
  90.  
  91.  
  92.  
  93. //Zusammenfügen in Array und sortieren nach RR
  94. function vergleich($wert_a, $wert_b)
  95. {
  96.       // Sortierung nach dem vierten Wert des Array (Index: 3)
  97.       $a = $wert_a[3];
  98.       $b = $wert_b[3];
  99.  
  100.       if ($a == $b) {
  101.           return 0;
  102.         }
  103.  
  104.      return ($a > $b) ? -1 : +1;
  105. }
  106.  
  107.  // zu sortierendes, multidimensionales Array
  108.  $daten = array(
  109.      array($spieler_name1,  $spieler_lastname1, $spieler_class1, $spieler_reichsrang1, $spieler_lvl1),
  110.      array($spieler_name2,  $spieler_lastname2, $spieler_class2, $spieler_reichsrang2, $spieler_lvl2),
  111.      array($spieler_name3,  $spieler_lastname3, $spieler_class3, $spieler_reichsrang3, $spieler_lvl3),
  112.      array($spieler_name4,  $spieler_lastname4, $spieler_class4, $spieler_reichsrang4, $spieler_lvl4),
  113.      array($spieler_name5,  $spieler_lastname5, $spieler_class5, $spieler_reichsrang5, $spieler_lvl5),
  114.    
  115. );
  116.  
  117. //Aufruf von usort() mit dem Array, das sortiert werden soll und dem Namen der Vergleichsfunktion
  118. usort($daten, 'vergleich');
  119.  
  120.  
  121. //RR oder LVL?
  122. if($daten[0][4]<50) {$rechts1 = $daten[0][2]." ".$daten[0][4];}
  123. else                {$rechts1 = $daten[0][2]." ".(str_replace(".", "L", $daten[0][3]));}
  124. if($daten[1][4]<50) {$rechts2 = $daten[1][2]." ".$daten[1][4];}
  125. else                {$rechts2 = $daten[1][2]." ".(str_replace(".", "L", $daten[1][3]));}
  126. if($daten[2][4]<50) {$rechts3 = $daten[2][2]." ".$daten[2][4];}
  127. else                {$rechts3 = $daten[2][2]." ".(str_replace(".", "L", $daten[2][3]));}
  128. if($daten[3][4]<50) {$rechts4 = $daten[3][2]." ".$daten[3][4];}
  129. else                {$rechts4 = $daten[3][2]." ".(str_replace(".", "L", $daten[3][3]));}
  130. if($daten[4][4]<50) {$rechts5 = $daten[4][2]." ".$daten[4][4];}
  131. else                {$rechts5 = $daten[4][2]." ".(str_replace(".", "L", $daten[4][3]));}
  132.  
  133. //Strings zusammenfassen
  134. $text1 = $daten[0][0]." ".$rechts1;
  135. $text2 = $daten[1][0]." ".$rechts2;
  136. $text3 = $daten[2][0]." ".$rechts3;
  137. $text4 = $daten[3][0]." ".$rechts4;
  138. $text5 = $daten[4][0]." ".$rechts5;
  139.  
  140.  
  141.    
  142.     // Bild erstellen
  143.     {
  144.   header('Pragma: public');
  145.   header('Cache-Control: max-age=3000');
  146.   header('Expires: '. gmdate('D, d M Y H:i:s \G\M\T', time() + 300));
  147.   header('Content-Type: image/png');
  148.       $im = @ImageCreate (600, 20);
  149.       $stop = false;
  150.     }
  151.     {
  152.       if(file_exists($link)) {
  153.         // Bild auf ein Hintergrundbild erstellen
  154.   header('Pragma: public');
  155.   header('Cache-Control: max-age=3000');
  156.   header('Expires: '. gmdate('D, d M Y H:i:s \G\M\T', time() + 300));
  157.   header('Content-Type: image/png');
  158.         $im = @ImageCreateFromJPEG ($link);
  159.         $stop = false;
  160.       }
  161.       else{
  162.         die("Bild nicht vorhanden");
  163.       }
  164.     }
  165.    
  166.     if($stop!=true) {
  167.      
  168.       $background_color = ImageColorAllocate ($im, 255, 0, 0);
  169.      
  170.       // Farbe
  171.       $gold = ImageColorAllocate ($im, 211, 199, 174);
  172.  
  173.   if(!empty($chars[0])) {      
  174.       $text = $text1;
  175.       $arr = imagettfbbox(9, 0, $schriftart, $text);
  176.       $start =$startpunkt - ($arr[2])/2;
  177.       }
  178.      
  179.   if(!empty($chars[1])) {
  180.       $text = $text1." + ".$text2;
  181.       $arr = imagettfbbox(9, 0, $schriftart, $text);
  182.       $start =$startpunkt - ($arr[2])/2;
  183.       }
  184.      
  185.   if(!empty($chars[2])) {      
  186.       $text = $text1." + ".$text2." + ".$text3;
  187.       $arr = imagettfbbox(9, 0, $schriftart, $text);
  188.       $start =$startpunkt - ($arr[2])/2;
  189.       }
  190.            
  191.   if(!empty($chars[3])) {
  192.       $text = $text1." + ".$text2." + ".$text3." + ".$text4;
  193.       $arr = imagettfbbox(9, 0, $schriftart, $text);
  194.       $start =$startpunkt - ($arr[2])/2;
  195.       }
  196.      
  197.   if(!empty($chars[4])) {      
  198.       $text = $text1." + ".$text2." + ".$text3." + ".$text4." + ".$text5;
  199.       $arr = imagettfbbox(9, 0, $schriftart, $text);
  200.       $start =$startpunkt - ($arr[2])/2;
  201.       }
  202.      
  203.  
  204.          
  205.       ImageTTFText ($im, 9, 0, $start, 14, $gold, $schriftart, $text);
  206.       // Bild zeichnen
  207.       ImagePNG ($im);
  208.     }
  209.  
  210.   else {
  211.     echo "Schnittstelle defekt - spammt Metty zu!!:-D";
  212.   }
  213. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement