All pastes #928509 Raw Edit

Someone

public text v1 · immutable
·published 2008-03-05 02:56 UTC
rendered paste body
<?php

class IHateThis {
	function loadchats() {
		Global $CFG;
		$f=fopen("pcb_chats.cfg", "r");
		$x=1;
		$messages=array();
		while($x<=$CFG['Text-Lines']) {
			$c = fgets($f, 128);
			$messages[]=rtrim($c);
			$x++;
		}
		fclose($f);
		Return $messages;
	}
	function LoadSmilies() {
		Global $CFG;
		
		$Sm=explode(" ", $CFG['Smileys']);
		$Sf=explode(" ", $CFG['Smileyf']);
		$SmSpacing=explode(",", $CFG['SmileySpacing']);
		$smimages=array();
		foreach($Sf as $key=>$value) {
			$temp=imageCreateFromPNG("images/$value.png");
			$sbg = imageColorAllocate ($temp, 255, 0, 255);
			$sbg = imageColorTransparent($temp,$sbg);
			$smimages[$Sm[$key]]=$temp;
			$CFG['SRFSpace'][$Sm[$key]]=$SmSpacing[$key];
			
		}
		return $smimages;
		
	}
	function hex2int($hex) {
	        return array( 'r' => hexdec(substr($hex, 0, 2)),
	                      'g' => hexdec(substr($hex, 2, 2)),
	                      'b' => hexdec(substr($hex, 4, 2))
	                    );
	}
	function ImageItUp() {
		Global $CFG, $images, $Messages;
		$images['main']=imageCreateTrueColor($CFG['ImageInfo'][0], $CFG['ImageInfo'][1]);
		$images['them']=imageCreateFromPNG( $CFG['BackGround'] );
		imageCopy($images['main'], $images['them'], 0, 0, 0, 0, $CFG['ImageInfo'][0], $CFG['ImageInfo'][1]);
		$Color1=str_replace("#", "", $CFG['C1']);
		$Color2=str_replace("#", "", $CFG['C2']);
		$Color1=$this->hex2int($Color1);
		$Color2=$this->hex2int($Color2);		
		$Color1=imageColorAllocate($images['main'], $Color1['r'], $Color1['g'], $Color1['b']);
		$Color2=imageColorAllocate($images['main'], $Color2['r'], $Color2['g'], $Color2['b']);
		$Smilies= $this->LoadSmilies();
		$x=$CFG['Text-Offset-Left'];
		$y=$CFG['Text-Offset-Top'];
		$iPos=$CFG['Text-Height'];
		foreach($Messages as $key=>$value) {
			$NowY=$key*$iPos + $y + ($key*$CFG['ExtraSpacing']);
			foreach($Smilies as $SMkey=>$SFV) {	
				while(Substr_count($value, $SMkey)>=1) {
					$value=explode($SMkey, $value, 2);
					$smileypos=$CFG['Text-Width']*strlen($value[0])+1+$CFG['Text-Offset-Left'];
					imageCopyMerge($images['main'], $Smilies[$SMkey], $smileypos, $NowY-1, 0, 0, 15, 15, 100);
					$value=implode($CFG['SRFSpace'][$SMkey], $value);
				}
			}
			if($CFG['Text-Mode']=="gdf") {
				imagestring($images['main'], $CFG['Text-Font'], $x+1, $NowY, $value, $Color2);
				imagestring($images['main'], $CFG['Text-Font'], $x, $NowY, $value, $Color1);	
			} else if($CFG['Text-Mode']="freetype") {
				ImageTTFText($images['main'], $CFG['Text-Height'], 0, $x+1, $NowY+$CFG['Text-Height'], $Color2, $CFG['Text-Font'], $value);
				ImageTTFText($images['main'], $CFG['Text-Height'], 0, $x, $NowY+$CFG['Text-Height'], $Color1, $CFG['Text-Font'], $value);
			}
		
		
		}
		return($images['main']);
	}
	function LoadConfig() {
		Global $CFG;
		$Prefs=file_get_contents($CFG['CFGFile']);
		$Prefs=explode("\n", $Prefs);
		$CFGC="";
		foreach($Prefs as $value) {
		if($value[0]!="#") { $CFGC.=$value."\n"; }
		}
		preg_match('/Main_Color="((\#?[A-Fa-f0-9]){6})"/', $CFGC, $Match);
		$CFG['C1']=$Match[1];
		preg_match('/Shadow_Color="((\#?[A-Fa-f0-9]){6})"/', $CFGC, $Match);
		$CFG['C2']=$Match[1];
		preg_match('/Background_Image="(([A-Za-z0-9\.])+)"/', $CFGC, $Match);
		$CFG['BackGround']=$Match[1];
		preg_match('/Output_Format="(([A-Za-z])*)"/', $CFGC, $Match);
		$CFG['Format']=$Match[1];
		preg_match('/Text_Mode="((gdf|freetype)+)"/', $CFGC, $Match);
		$CFG['Text-Mode']=$Match[1];
		preg_match('/Text_Font="(.*[^"])"/', $CFGC, $Match);
		$CFG['Text-Font']=$Match[1];
		preg_match('/Text_Height="([0-9]+)"/', $CFGC, $Match);
		$CFG['Text-Height']=$Match[1];
		preg_match('/Font_Extra_Spacing="([0-9]+)"/', $CFGC, $Match);
		$CFG['ExtraSpacing']=$Match[1];
		preg_match('/Font_Char_Width="([0-9]+)"/', $CFGC, $Match);
		$CFG['Text-Width']=$Match[1];
		preg_match('/Num_Text_Lines="([0-9]+)"/', $CFGC, $Match);
		$CFG['Text-Lines']=$Match[1];
		preg_match('/Text_Offset_Top="([0-9]+)"/', $CFGC, $Match);
		$CFG['Text-Offset-Top']=$Match[1];
		preg_match('/Text_Offset_Left="([0-9]+)"/', $CFGC, $Match);
		$CFG['Text-Offset-Left']=$Match[1];
		preg_match('/Chat_File="(.*[^"])"/', $CFGC, $Match);
		$CFG['Chats-File']=$Match[1];
		preg_match('/Smiley_List=<string>(.*[^"])<\/string>/', $CFGC, $Match);
		$CFG['Smileys']=$Match[1];
		preg_match('/Smiley_Files=<string>(.*[^"])<\/string>/', $CFGC, $Match);
		$CFG['Smileyf']=$Match[1];
		preg_match('/Smiley_Spacing="([ , ]*)"/', $CFGC, $Match);
		$CFG['SmileySpacing']=$Match[1];
	}
	function HeadUpA() {
		Global $CFG;
		if($CFG['Format']=="PNG") { header("Content-type: Image/PNG"); }
	}
	function PrintYoJunk() {
		Global $CFG, $im;
		if($CFG['Format']=="PNG") { imagePNG( $im );}
	}
	function SelfDestruct() {
		Global $images, $im;
		ImageDestroy($images['main']);
		ImageDestroy($images['them']);
		ImageDestroy($im);
	}
}

?>