1. Соблюдайте Правила форума и проявляйте уважение к другим участникам беседы.

Возжелайте, и да будет вам дано

Тема в разделе 'Кодинг/Собственные решения', создана пользователем Synth (LM), 29 мар 2011.

  1. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Я жду

    На счет картинок - норм. Тока можно парочку сделать с отчетливыми краями, тоесть с рамкой.
  2. D-MiLIR Ньюфаг

    Сообщения:
    109
    Спасибы:
    0
    LongMan

    А когда мы увидим код "Юзер баров" и "Самый лучший реалм"? :bIbIbIblya:
  3. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Я тут подумал, и понял, что только у меня после фф, причина лива меняется на другую, только после окончания игры, причина лива меняется на другую. А считать методом play ratio займет очень много ресурсов проца и нервов.
    Ну я потом доберусь до диаграмм: сейчас - юзербары.
  4. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
    на страничке user.php спрятать "график" под спойлер (я бы спрятал).
    _________________________________________________________________

    при создании юзер-бара игроками у которых в нике присутствуют знаки [ ] , пример: [[-svetle4ek-]] [seduction] [svc]oka.
    bb-code таких юзер-баров на форум не поставишь. возножноли что бы при создании юзербаров оно как-то заменало ети символы на другие?...
    _________________________________________________________________

    Измени на страничке Games.php цвет игр
    цвета не совпадают.
    _________________________________________________________________

    может в bans.php в поиск вставть капчу?
    _________________________________________________________________

    выложи код на 2-а юзербара (хотя я смотрю ты ещё что-то делаешь)
    _________________________________________________________________

    цвет рамок темнее?... так как розмытость краёв не стоит :spy:
    _________________________________________________________________

    а на игры у которые меньше чем N минут у тебя статистика не начисляется?
    пс как ето зделать....
  5. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    http://rwc.mine.nu/signature.php
  6. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Ты о чем?
    Пока не стоит.
    Забудь)
  7. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
    [IMG]
    код в студию...
    ________________________
    [IMG]
    ________________________

    а по-поводу других вопросов...
  8. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    signature.php
    Код:
    <?php
    /*********************************************
    <!-- 
    *   	DOTA OPENSTATS
    *   
    *	Developers: Ivan.
    *	Contact: ivan.anta@gmail.com - Ivan
    *
    *	
    *	Please see http://openstats.iz.rs
    *	and post your webpage there, so I know who's using it.
    *
    *	Files downloaded from http://openstats.iz.rs
    *
    *	Copyright (C) 2010  Ivan
    *
    *
    *	This file is part of DOTA OPENSTATS.
    *
    * 
    *	 DOTA OPENSTATS is free software: you can redistribute it and/or modify
    *    it under the terms of the GNU General Public License as published by
    *    the Free Software Foundation, either version 3 of the License, or
    *    (at your option) any later version.
    *
    *    DOTA OPEN STATS is distributed in the hope that it will be useful,
    *    but WITHOUT ANY WARRANTY; without even the implied warranty of
    *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    *    GNU General Public License for more details.
    *
    *    You should have received a copy of the GNU General Public License
    *    along with DOTA OPEN STATS.  If not, see <http://www.gnu.org/licenses/>
    *
    -->
    **********************************************/
      include('header.php');
      $pageTitle = "Юзер-бары";
      
      if ($enableSignatures == 1)
      {
      //SUBMIT NICKNAME
      if ( $_SERVER['REQUEST_METHOD'] != 'POST') {
      
      ?>
    
      <form name="myForm" method="post" action="signature.php"/>
      <div align="center">
      <table class="ItemInfo"><tr><th><div align="center"><?=$lang["create_sig"]?>
          <tr>
           <td><br />Юзер-бар это ваша базовая статистика ввиде изображения для вставки на форумах и сайтах.<br>Пример:<br><a href="http://rwc.mine.nu/user.php?u=13aby.dr"><img alt="RwC UserBars" src="http://rwc.mine.nu/sig.php/<?=rand(1,23)?>/13aby.dr.gif" /></a><br /><br /></td>
       </tr>
      <br />
      <table class="ItemInfo"><tr><th><?=$lang["enter_name"]?>:</th></tr>
       <tr>
           <td><br />&nbsp;<input name="nick" class="inputSearch" size="30" maxlength="30" type="text"> <br /><br /></td>
       </tr>
           <tr>
           <td><br />&nbsp;<input type="submit" type="button" value="<?=$lang["create_sig"]?>" class="inputButton"> 
    	   <br /><br /></td>
    	   </tr>
      </table>
      </div>
      </form>
      <br />
      <?
      }
      else
      {
      if (!isset($_SERVER['REQUEST_URI']) AND $_SERVER['REQUEST_METHOD'] != 'POST') {echo "Unknown username!";die;}
      
      if (!extension_loaded('gd') && !function_exists('gd_info')) {
      echo "GD is not installed!"; die;}
    
          if ($_SERVER['REQUEST_METHOD'] == 'POST') 
          {$username = trim(strtolower(safeEscape($_POST["nick"])));}
    	  else
    	  {	 $username=strtolower(safeEscape($_SERVER['REQUEST_URI']));
    	 $username = str_replace ("-41826", "[", $username);
    	 $username = str_replace ("-95023", "]", $username);
    	 $username = str_replace ("/sig.php/", "", $username);
    	  $username = str_replace (".gif", "", $username);}
    	  
    	  
    	  
      //Check if username exists	  
      $sql = "SELECT gp.name FROM gameplayers as gp
      WHERE LOWER(gp.name) = LOWER('$username') LIMIT 1";
      $result = $db->query($sql);
      if ($db->num_rows($result) <=0) {echo $lang["err_user"]."<br /><br /> <A href='signature.php'>Back to previous page</a>" ; die;}
    	  
      $this_url = "http://".$_SERVER['SERVER_NAME']."/"; // root URL
      
      
    echo '<div align="center"><table class="tableA"><tr>';
    /********/
    $inc=1;
    while($inc<24)
    {
    echo' 		<div align="center"><table class="tableA"><b><th>Дизайн №'.$inc.'</th><tr><td><h6>(Нажмите на картинку, чтобы получить код вставки)</h6><a href="#open" name="info" class="poplink" onclick="showhide(\'div'.$inc.'\');return false;" id="link"><img alt=" " border=0 src="'.$this_url.'sig.php/'.$inc.'/'.$username.'.gif" /></a></b>
    		</tr></table></div>
    		<div id="div'.$inc.'" style="display: none;">
    
    <br />
    <div style="display:none;">
    <div id="divActivities2"></div>
    </div>
       <div align="center">
     <table class="tableHeroPageTop">
     <th>BBCode - для вставки на форумах</th></tr><tr>
       <td align="left">
       <textarea style="width:720px;height:65px;">[url='.$this_url.'user.php?u='.$username.'][img]'.$this_url.'sig.php/'.$inc.'/'.$username.'.gif[/img][/url]</textarea></td><td align="left">
       </tr>
       <tr><th>HTML - для вставки на своем сайте</th></tr><tr>
       <td align="left">
       <textarea style="width:720px;height:65px;"><a href="'.$this_url.'user.php?u='.$username.'"><img alt="RwC UserBars" src="'.$this_url.'sig.php/'.$inc.'/'.$username.'.gif" /></a></textarea>
        </tr>
       <th>Прямая ссылка</th></tr><tr>
       <td align="left"><a title="" target="_blank" href="'.$this_url.'sig.php/'.$inc.'/'.$username.'.gif">'.$this_url.'sig.php/'.$inc.'/'.$username.'.gif</a></td>
       </table>
       
    
       
      </div></div>
    ';
    $inc++;
    }
    
    /*********/
    echo '</table></td><br>';
       }
    }   
       include('footer.php');
      $pageContents = ob_get_contents();
      ob_end_clean();
      echo str_replace('<!--TITLE-->', $pageTitle, $pageContents);
    
    ?>
    sig.php

    Код:
    <?php
      if (!isset($_SERVER['REQUEST_URI'])) {echo "Unknown username!";die;}
      
      if (!extension_loaded('gd') && !function_exists('gd_info')) {
        echo "GD is not installed!"; die;
        }
    	
    	function get_data($url)
          {
    	$ch = curl_init();
    	$timeout = 5;
    	curl_setopt($ch,CURLOPT_URL,$url);
    	curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    	curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
    	$data = curl_exec($ch);
    	curl_close($ch);
    	return $data;
          }
    	
    	  
    	  if (!function_exists("safeEscape"))
    {
         require_once ('config.php');
    	 require_once("./lang/english.php");
    	 require_once('./includes/class.database.php');
    	 require_once('./includes/common.php');
    	 require_once('./includes/db_connect.php');
    }
    	 $username=strtolower(safeEscape($_SERVER['REQUEST_URI']));
    	 $username = str_replace ("-41826", "[", $username);
    	 $username = str_replace ("-95023", "]", $username);
    	 $inc=1;
    	 while($inc<24)
    {
    	if (preg_match("/\/sig.php\/$inc\//i", $username))
    	 {
    	 $username = str_replace ("/sig.php/$inc/", "", $username);
    	 $variant = "$inc";
    	 }
    	 $inc++;
    }
    	 $username = str_replace ("/sig.php/", "", $username);
    	 $username = str_replace (".gif", "", $username);
    
    	 if($_SERVER['REQUEST_URI'])
    	 {
    
    	 //USE CACHED IMAGE
    	 if (file_exists("./img/sig/$variant/$username.jpg") AND time() - $sigCacheTime*60 < filemtime("./img/sig/$variant/$username.jpg"))
    	 {  $NewImage =imagecreatefromjpeg("img/sig/$variant/$username.jpg");//image create by existing image
             header("Content-type: image/jpeg");// out out the image 
             echo file_get_contents("img/sig/$variant/".$username.".jpg"); exit;}
    		 else 
    		 {
    		 
    		 
    
      
      $BANNED =  "";
      $COLOR = "";
      
      $sql = "
      SELECT 
      gp.name AS name, bans.name AS banname, bans.reason AS banreason, count(1) AS counttimes, gp.ip AS ip
      FROM 
      gameplayers gp 
      JOIN dotaplayers dp ON dp.colour = gp.colour 
      AND 
      dp.gameid = gp.gameid 
      LEFT JOIN bans ON bans.name = gp.name
      WHERE 
      LOWER(gp.name) = LOWER('$username') GROUP BY gp.name 
      ORDER BY 
      counttimes DESC, gp.name ASC";
      
      $result = $db->query($sql);
      
      if ($db->num_rows($result) <=0) {echo "Юзер не найден" ; die;}
    
      $list = $db->fetch_array($result,'assoc'); 
      
      if (strtolower("$list[name]") == strtolower($list['banname'])) {$BANNED =  "(Banned) $list[banreason]"; $COLOR = "style='color:#DC0000;'";}
    
      $realname = $list['name'];
      $myFlag = "";
      $IPaddress = $list["ip"];
      
      if ($CountryFlags == 1 AND file_exists("./includes/ip_files/countries.php") AND $IPaddress!="" )
    		{
    		$two_letter_country_code=iptocountry($IPaddress);
    		include("./includes/ip_files/countries.php");
    		$three_letter_country_code=$countries[$two_letter_country_code][0];
            $country_name=convEnt2($countries[$two_letter_country_code][1]);
    		$file_to_check="./includes/flags/$two_letter_country_code.gif";
    		if (file_exists($file_to_check)){
    		        $flagIMG = "<img src=$file_to_check>";
                    $flag = "<img onMouseout='hidetooltip()' onMouseover='tooltip(\"".$flagIMG." $country_name\",100); return false' src='$file_to_check' width='20' height='13'>";
                    }else{
                    $flag =  "<img title='$country_name' src='./includes/flags/noflag.gif' width='20' height='13'>";
                    }	
    		$myFlag = $flag;
    		}
      
      /////////////////////////////////// HERO STATS ///////////////////////////////////
    	
    	
    	//////////////////////////////
    	//Get hero you have played most with
    	
    	$sql = "SELECT SUM(`left`) AS timeplayed, original, description, 
    	COUNT(*) AS played 
    	FROM gameplayers 
    	LEFT JOIN games ON games.id=gameplayers.gameid 
    	LEFT JOIN dotaplayers ON dotaplayers.gameid=games.id 
    	AND dotaplayers.colour=gameplayers.colour  
    	LEFT JOIN dotagames ON games.id=dotagames.gameid 
        JOIN heroes on hero = heroid 
    	WHERE LOWER(name)=LOWER('$username')
    	GROUP BY original 
    	ORDER BY played DESC LIMIT 1";
    	
    	    $result = $db->query($sql);
    	    $list = $db->fetch_array($result,'assoc'); 
    		$mostplayedhero=strtoupper($list["original"]);
    		$mostplayedheroname=$list["description"];
    		$mostplayedcount=$list["played"];
    		$mostplayedtime=secondsToTime($list["timeplayed"]);
    
    	//////////////////////////////
    	//Using score table
    	if ($DBScore != 1) {
    	
    	$sql = "SELECT 
    	($scoreFormula) as score 
    	FROM(SELECT *, (kills/deaths) as killdeathratio 
    	   FROM (
    		SELECT avg(dp.courierkills) as courierkills, 
    	    avg(dp.raxkills) as raxkills,
    		avg(dp.towerkills) as towerkills, 
    		avg(dp.assists) as assists, 
    		avg(dp.creepdenies) as creepdenies, 
    		avg(dp.creepkills) as creepkills,
    		avg(dp.neutralkills) as neutralkills, 
    		avg(dp.deaths) as deaths, 
    		avg(dp.kills) as kills,
    		COUNT(*) as totgames, 
    		SUM(case when(((dg.winner = 1 and dp.newcolour < 6) 
    		or (dg.winner = 2 and dp.newcolour > 6)) 
    		AND gp.`left`/ga.duration >= 0.8) then 1 else 0 end) as wins, 
    		SUM(case when(((dg.winner = 2 and dp.newcolour < 6) 
    		or (dg.winner = 1 and dp.newcolour > 6)) 
    		AND gp.`left`/ga.duration >= 0.8) then 1 else 0 end) as losses
    		FROM gameplayers as gp 
    		LEFT JOIN dotagames as dg ON gp.gameid = dg.gameid 
    		LEFT JOIN games as ga ON ga.id = dg.gameid 
    		LEFT JOIN dotaplayers as dp on dp.gameid = dg.gameid 
    		and gp.colour = dp.colour where dg.winner <> 0 
    		and gp.name = '$username') as h) as i LIMIT 1";} else
    		{$sql = "SELECT scores.score from scores WHERE LOWER(name) = LOWER('$username')";}
    		
    	$result = $db->query($sql);
    	$list = $db->fetch_array($result,'assoc');
    	$score=$list["score"];
    	
    	
    	
    	//FINAL STEP
    	$result = $db->query("SELECT 
    	COUNT(dp.id), 
    	SUM(kills), 
    	SUM(deaths), 
    	SUM(creepkills), 
    	SUM(creepdenies), 
    	SUM(assists), 
    	SUM(neutralkills), 
    	SUM(towerkills), 
    	SUM(raxkills), 
    	SUM(courierkills), name 
    	FROM dotaplayers AS dp 
    	LEFT JOIN gameplayers AS b ON b.gameid = dp.gameid 
    	and dp.colour = b.colour 
    	WHERE name= '$username' 
    	GROUP BY name 
    	ORDER BY sum(kills) desc 
    	LIMIT 1");
    	
    	$row = $db->fetch_array($result,'assoc');
    
    	$kills=number_format($row["SUM(kills)"],"0",".",",");
    	$kills2=$row["SUM(kills)"];
    	$death=number_format($row["SUM(deaths)"],"0",".",",");
    	$death2=$row["SUM(deaths)"];
        $assists=number_format($row["SUM(assists)"],"0",".",",");
    	$assists2=$row["SUM(assists)"];
    	$creepkills=number_format($row["SUM(creepkills)"],"0",".",",");
    	$creepkills2=$row["SUM(creepkills)"];
    	$creepdenies=number_format($row["SUM(creepdenies)"],"0",".",",");
    	$creepdenies2=$row["SUM(creepdenies)"];
    	$neutralkills=number_format($row["SUM(neutralkills)"],"0",".",",");
    	$neutralkills2=$row["SUM(neutralkills)"];
    	$towerkills=number_format($row["SUM(towerkills)"],"0",".",",");
    	$towerkills2=$row["SUM(towerkills)"];
    	$raxkills=number_format($row["SUM(raxkills)"],"0",".",",");
    	$courierkills=number_format($row["SUM(courierkills)"],"0",".",",");
    	$courierkills2=$row["SUM(courierkills)"];
    	$name=$row["name"];
    	//$totgames=number_format($row["COUNT(dp.id)"],"0",".",",");
        //$totgames2=$row["COUNT(dp.id)"];
    	
    	//calculate wins
        $wins=$db->getUserWins($username);
        //calculate losses
        $losses=$db->getUserLosses($username);
    
    	if ($death2 >=1)
    	{$kdratio = ROUND($kills2/$death2,1);} else {$kdratio =0;}
    	
    	$totgames = number_format($wins+$losses,"0",".",",");
    	$totgames2 = $wins+$losses;
    	$totscore = ROUND($score,2);
    	
    	if($wins == 0 and $wins+$losses == 0)
    	{$winloose = 0;}
    	else
    	{$winloose = round($wins/($wins+$losses), 3)*100;}
    	
    	if ($totgames2 <$sigMinGames)
    	{echo "You must have at least $sigMinGames games played to create signature!"; die;}
    
    	   
       $sql = "SELECT 
       SUM(`left`) 
       FROM gameplayers 
       WHERE LOWER(name)=LOWER('$username') LIMIT 1";
    	
    	$result = $db->query($sql);
    	
    	$row = $db->fetch_array($result,'assoc');
    	//$db->close($result);
    
    		$totalDuration=secondsToTime($row["SUM(`left`)"]);
    		
    		$totalHours=ROUND($row["SUM(`left`)"]/ 3600,1);
    		$totalMinutes=ROUND($row["SUM(`left`)"]/ 3600*60,1);
      
    		if ($totalMinutes>0)
    		{$killsPerMin = ROUND($kills2/$totalMinutes,2);
    		if ($totalHours>0)
    		$killsPerHour = ROUND($kills2/$totalHours,2);
    		else
    		$killsPerHour = 0;
    		$deathsPerMin = ROUND($death2/$totalMinutes,2);
    		$creepsPerMin = ROUND($creepkills2/$totalMinutes,2);
    		}  
    		    else 
    		    {
    		    $killsPerMin = 0; 
    		    $deathsPerMin = 0; 
    		    $killsPerHour = 0; 
    		    $creepsPerMin =0;
    			}
    
    		
    	if ($displayUsersDisconnects == 1 OR $ScoreMethod == 2)	
    	{
    	$sql = "SELECT 
       SUM(
    	 (gp.`leftreason` LIKE ('%has lost the connection%'))  
    	 OR (gp.`leftreason` LIKE ('%was dropped%')) 
    	 OR (gp.`leftreason` LIKE ('%Lagged out%')) 
    	 OR (gp.`leftreason` LIKE ('%Dropped due to%'))
    	 OR (gp.`leftreason` LIKE ('%Lost the connection%'))
    	 ) as disc 
       FROM gameplayers as gp 
       LEFT JOIN games ON games.id=gp.gameid 
       LEFT JOIN dotaplayers ON dotaplayers.gameid=games.id 
       AND dotaplayers.colour=gp.colour 
       LEFT JOIN dotagames ON games.id=dotagames.gameid 
       WHERE LOWER(gp.name)=LOWER('$username') 
       AND dotagames.winner <>0 
       LIMIT 1";
    	
    	$sql2222 = " SELECT COUNT(*) 
        FROM `gameplayers`
        WHERE 
    	(
    	   `leftreason` LIKE('%has lost the connection%') 
    	OR `leftreason` LIKE('%was dropped%') 
    	OR `leftreason` LIKE('%Lagged out%') 
    	OR `leftreason` LIKE('%Dropped due to%')
    	OR (gp.`leftreason` LIKE ('%Lost the connection%'))
    	) 
    	AND name= '$username' LIMIT 1";
    	
    	$result = $db->query($sql);
    	$row = $db->fetch_array($result,'assoc');
        $disc = $row["disc"]; }
    	
    		if ($totgames2>0)
    		{
    		$killsPerGame = ROUND($kills2/$totgames2,1);	
    		$deathsPerGame = ROUND($death2/$totgames2,2);
    		} 
    		else {$killsPerGame = 0; $DiscPercent = 0; $deathsPerGame =0;}
    		
    		if ($kills2 >0)
    	    {$KillsPercent = ROUND($kills2/($kills2+$death2), 4)*100; } else {$KillsPercent = 0;}
    		
    		if ($totgames2 >0)
    		{$AssistsPerGame = ROUND($assists2/$totgames2,2);} else {$AssistsPerGame = 0;}
    		
    		if ($ScoreMethod == 2 AND $DBScore == 0)
    		{$totscore = number_format($ScoreStart + ($wins * $ScoreWins) + ($losses * $ScoreLosses) + ($disc*$ScoreDisc),"0",".",",") ; 
    		//$totscore = ROUND( $ScoreStart+(($wins * 5) - ($losses * 3)) , 2) ; 
    		if ($BANNED !="") {$totscore  = $ScoreStart + ($ScoreDisc*10);}
    		}
    	
      $this_url = "http://".$_SERVER["SERVER_NAME"].dirname($_SERVER["PHP_SELF"]); // root URL
      
      $last = $this_url[strlen($this_url)-1];
      if ($last != "/") {$this_url.="/";}
      
      
    $player = $realname;
    $deaths = $death;
    $games = $totgames;
    $duration = $totalDuration;
    $score = $totscore;
    $wins = $winloose;
    $kpg = $killsPerGame;
    
    //Remove seconds??? Uncomment below if you want to remove seconds
    //$duration = substr($duration,0,-3);
    
    //Player name | website name
    $ResultStr = "$player | RwC Private League";
    //or Player: player name
    $ResultStr = "Player: $player";
    //or player name
    $ResultStr = "$player";
    
    $NewImage =imagecreatefromjpeg("./img/sig$variant.jpg");//image create by existing image
    
    //$LineColor = imagecolorallocate($NewImage,255,55,55);//line color 
    //$LineColor2 = imagecolorallocate($NewImage,55,55,255);//line color 
    $TextColor = imagecolorallocate($NewImage, 255, 168, 0);//text color
    $TextColor2 = imagecolorallocate($NewImage, 255, 255, 255);//text color
    $TextColor3 = imagecolorallocate($NewImage, 0, 255, 0);//text color
    $TextColor4 = imagecolorallocate($NewImage, 255, 50, 50);//text color
    
    // :
    //imagestring(IMG_SOURCE, FONT_SIZE, X, Y, TEXT, COLOR);
    
    imagestring($NewImage, 5, 10, 1, $ResultStr, $TextColor);
    
    //score
    imagestring($NewImage, 2, 10, 26,"PTS:", $TextColor2);
    imagestring($NewImage, 2, 68, 26,$score, $TextColor2);
    
    //games
    imagestring($NewImage, 2, 10, 42,"Games:", $TextColor2);
    imagestring($NewImage, 2, 68, 42,$games, $TextColor2);
    
    //wins
    imagestring($NewImage, 2, 10, 58,"Wins:", $TextColor2);
    imagestring($NewImage, 2, 68, 58,$wins."%", $TextColor2);
    
    
    //Kills Per Game
    imagestring($NewImage, 2, 10, 82,"$kpg kills per game", $TextColor2);
    //imagestring($NewImage, 2, 102, 82,$kpg, $TextColor2);
    
    //Creep Kills
    imagestring($NewImage, 2, 10, 98,"Creeps kills:", $TextColor2);
    imagestring($NewImage, 2, 102, 98,$creepkills, $TextColor2);
    
    //Creep Denies
    imagestring($NewImage, 2, 10, 114,"Creeps denies:", $TextColor2);
    imagestring($NewImage, 2, 102, 114,$creepdenies, $TextColor2);
    
    //duration
    imagestring($NewImage, 2, 10, 130,"Time:", $TextColor2);
    imagestring($NewImage, 2, 52, 130,$duration, $TextColor2);
    
    	
    
    
    //kills
    imagestring($NewImage, 2, 165, 26,"Kills:", $TextColor2);
    imagestring($NewImage, 2, 225, 26,$kills, $TextColor2);
    
    //deaths
    imagestring($NewImage, 2, 165, 42,"Deaths:", $TextColor2);
    imagestring($NewImage, 2, 225, 42,$deaths, $TextColor2);
    
    //assists
    imagestring($NewImage, 2, 165, 58,"Assists:", $TextColor2);
    imagestring($NewImage, 2, 225, 58,$assists, $TextColor2);
    
    
    
    //FAVORITE HERO
            $NewImage2 = imagecreatefromgif("./img/heroes/$mostplayedhero.gif");
    		imagecopyresized($NewImage,$NewImage2,280,44,0,0,28,28,64,64);
    		imagedestroy ($NewImage2); 
    		
    		imagestring($NewImage, 2, 280, 20, "Favorite Hero", $TextColor2);
    		imagestring($NewImage, 1, 280, 34, $mostplayedheroname, $TextColor2);
    //sig
    //imagestring($NewImage, 1, 190, 128, "Generated by OpenStats", $TextColor);
    
    //CACHE IMAGE
    //COUNTRY FLAGS ADDON
    $NewImage2 = imagecreatefromgif($file_to_check);//image create by existing image
    imagecopy($NewImage,$NewImage2,330,2,0,0,imagesx($NewImage2),imagesy($NewImage2));
    imagedestroy ($NewImage2); 
    imagestring($NewImage, 2, 355, 2,$two_letter_country_code, $TextColor2);
    header("Content-type: cache");// out out the image 
    imagejpeg($NewImage, "./img/sig/$variant/$username.jpg", $sigImageQuality);//Output image to browser 
    imagedestroy($NewImage);
    
    //OUTPUT IMAGE TO BROWSER
             $NewImage =imagecreatefromjpeg("img/sig/$variant/$username.jpg");//image create by existing image
             header("Content-type: image/jpeg");// out out the image 
             imagejpeg($NewImage);//Output image to browser 
             imagedestroy($NewImage); exit;
              }
       }
    ?>
    Теперь в папке ./img/sig/ создать папки, где имя первой "1" и дальше инкримирируя имя создать 22 штуки. Поместить все изображения sigX.jpg в папку ./img/

    Внимание! Адрес прежних юзербаров станет нерабочим!
  9. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
    понял, вникаю...
    зделал.
    а как увеличить общее количество юзербаров?
  10. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Код:
     while($inc<24)
    to
    Код:
     while($inc<X+1)
  11. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Small fix:
    Найди в signature.php
    Код:
    echo '<div align="center"><table class="tableA"><tr>';
    /********/
    Вставь ниже
    Код:
    	 $username1 = str_replace ("[", "-41826", $username);
    	 $username1 = str_replace ("]", "-95023", $username1);
    Затем найди
    Код:
    <textarea style="width:720px;height:65px;">[url='.$this_url.'user.php?u='.$username.'][img]'.$this_url.'sig.php/'.$inc.'/'.$username.'.gif[/img][/url]</textarea>
    Замени на
    Код:
    <textarea style="width:720px;height:65px;">[url='.$this_url.'user.php?u='.$username1.'][img]'.$this_url.'sig.php/'.$inc.'/'.$username1.'.gif[/img][/url]</textarea>
  12. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    И еще фикс:

    includes/get_user_stats.php

    Найти
    Код:
    $username=strtolower(safeEscape($_GET["u"]));
    Вставить ниже
    Код:
         	 $username = str_replace ("-41826", "[", $username);
    	 $username = str_replace ("-95023", "]", $username);
  13. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
    ето наверно не как не исправить?


    пс: надпись "фаворите херо" опусти на 1-2 пикселя в низ (у себя на сайте)
  14. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    А фиксы я для чего выложил?
  15. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
  16. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
    aaa, всё всё. :facepalm:
  17. D-MiLIR Ньюфаг

    Сообщения:
    109
    Спасибы:
    0
    Не хотят юзер бары создаваться :nea:
  18. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Ошибку допустил значит.
  19. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
    у меня всё получилсь [IMG]

    по-поводу "поиска игр", у меня не получается поставить.


    пс:
  20. D-MiLIR Ньюфаг

    Сообщения:
    109
    Спасибы:
    0
    Правильно все сделал. Да же переделывал. У меня так было со старым кодом "юзер баром" он не создавался, а потом через какой то промежуток времени стал создаться o_O