I'm going to have lots of free time the next week or two and I want to try and get some stuff WBR-wide done for everyone, this includes updaters for all of the projects, either public or private (password-protected for backroom use only). Currently, PC updaters have SDHC checkers, so people who insert SDHC cards will get the notifications that the stuff they're downloading will not work.
If you want one for your project made, post here with:
- if you want it for PC, Homebrew* or both,
- Options (pre-made pack, Gecko OS, Snapshot method, Without Homebrew),
- File host (either can be your own website, or even Dropbox if you don't have one)
- Team textures or extras (yes/no) (PC one only)
- Anything custom you'd like (PC one only)
* I don't have any Photoshop or image editing skills, so if you opt for the homebrew one, you're gonna have to do the images yourself
<hr noshade />
Brawl+ [done]
PC and Homebrew.
Current Options:
-- Pre-made pack
-- Gecko OS method
-- Snapshot method
-- Without Homebrew
-- GCT & PAC only
-- Team Textures (Yes)
Download hub: http://brawlplus.net/dl.php
Downloads from: http://brawlplus.net/downloads/
Brawl- [in progress]
PC updater. Requested by Budget Player Cadet.
Progress: 40%; still need to re-code server-side hub, downloads up
Current Options:
-- Gecko OS method
-- Snapshot method
-- Option for NTSC/PAL
Download hub: http://brawlminus.com/sdcard/index.php [isn't up yet]
Downloads from: http://brawlminus.com/sdcard/
Balanced Brawl
Waiting on Amazing Ampharos if he wants one.
Project: M
Waiting on shanus if he wants one.
<hr noshade />
Source Code (PHP)
updater.php [Updater Program]
dl.php [Download Hub]
If you want one for your project made, post here with:
- if you want it for PC, Homebrew* or both,
- Options (pre-made pack, Gecko OS, Snapshot method, Without Homebrew),
- File host (either can be your own website, or even Dropbox if you don't have one)
- Team textures or extras (yes/no) (PC one only)
- Anything custom you'd like (PC one only)
* I don't have any Photoshop or image editing skills, so if you opt for the homebrew one, you're gonna have to do the images yourself
<hr noshade />
Brawl+ [done]
PC and Homebrew.
Current Options:
-- Pre-made pack
-- Gecko OS method
-- Snapshot method
-- Without Homebrew
-- GCT & PAC only
-- Team Textures (Yes)
Download hub: http://brawlplus.net/dl.php
Downloads from: http://brawlplus.net/downloads/
Brawl- [in progress]
PC updater. Requested by Budget Player Cadet.
Progress: 40%; still need to re-code server-side hub, downloads up
Current Options:
-- Gecko OS method
-- Snapshot method
-- Option for NTSC/PAL
Download hub: http://brawlminus.com/sdcard/index.php [isn't up yet]
Downloads from: http://brawlminus.com/sdcard/
Balanced Brawl
Waiting on Amazing Ampharos if he wants one.
Project: M
Waiting on shanus if he wants one.
<hr noshade />
Source Code (PHP)
updater.php [Updater Program]
PHP:
<?php
//Prerequisites so it doesn't crash on me
@set_time_limit(0);
@error_reporting(0);
$unix = false; if(!isset($_SERVER["windir"])) $unix = true;
//read(): Read STDIN (input) from user
function read($l=255) {
if(!isset($GLOBALS['StdinPointer'])) {
$GLOBALS['StdinPointer'] = fopen("php://stdin","r");
}
$line = fgets($GLOBALS['StdinPointer'], $l);
return trim($line);
}
//di(): Directory conversion to Windows if needed
function di($text) {
global $_SERVER;
if(isset($_SERVER["windir"])) {
return str_replace("/", "\\", $text);
} else {
return $text;
}
}
//sdcard(): Download files directly to SD & exit
function sdcard($sd, $dl, $f=0) {
if($f == 1) {
if(!is_dir(di($sd."/apps"))) @mkdir(di($sd."/apps"));
if(!is_dir(di($sd."/apps/Gecko191"))) @mkdir(di($sd."/apps/Gecko191"));
if(!is_dir(di($sd."/apps/homebrew_browser"))) @mkdir(di($sd."/apps/homebrew_browser"));
if(!is_dir(di($sd."/apps/updatifier"))) @mkdir(di($sd."/apps/updatifier"));
}
echo "\nDownloading latest list and hashchecks... ";
$list = @file($dl);
if(trim($list[0]) != "+") {
spaceit(); echo "\rError: You need to be connected to the internet to install this.\n";
echo "Close or disable any firewalls you may have and try again.\n";
echo "Press enter to close.";
$a = read();
exit;
}
echo "Done!\n\n";
for($i=1; $i < count($list); $i++) {
$dl = explode(":", trim($list[$i]));
$lol = explode("/", $dl[0]);
$c = count($lol) - 1;
$name = $lol[$c];
$directory = str_replace($name, "", trim($dl[1]));
$directory = str_replace("RSBE01.gct", "", $directory);
if(file_exists($sd."/".$dl[1])) {
$hash = md5(@file_get_contents($sd."/".$dl[1]));
if($hash == trim($dl[2])) {
continue;
}
}
echo $name.": Downloading... ";
$fp = @fopen("http://brawlplus.net/downloads/".$dl[0], "r");
if(!$fp) {
@fclose($fp);
echo "Error!\n\nPlease check that you're connected to to the internet.\n\n";
echo "Press enter to close.";
$a = read();
exit;
}
$fq = @fopen(di($sd."/".trim($dl[1])), "w");
if(!$fq) {
echo "Error!\n\nCould not open ".di($sd."/".trim($dl[1]))." for writing.\n\n";
echo "Press enter to close.";
$a = read();
exit;
}
if($fp) {
while(!feof($fp)) {
fwrite($fq, fread($fp, 8192));
}
}
fclose($fq);
fclose($fp);
echo "Done!\n";
}
}
//spaceit(): clear current line
function spaceit() { echo "\r "; }
//clearit(): Linux/Mac-only command to clear the console and continue
function clearit(){
global $_SERVER;
if(!isset($_SERVER["windir"])){
system("clear");
echo "======================== Brawl+ Installer and Updater ========================\n";
echo "\n";
}
}
clearit();
echo "======================== Brawl+ Installer and Updater ========================\n";
echo "\n";
echo "What do you want to do?\n\n";
echo "1: Download the pre-made pack for Brawl+ [recommended for first-time users]\n";
echo "2: Download the Brawl+ files for Gecko OS [if you don't want the pre-made pack]\n";
echo "3: Download Snapshots for Brawl+ [for those using a DVD/USB backup launcher]\n";
echo "4: Download Brawl+ without Homebrew [Homebrew Channel is not needed at all]\n";
echo "5: Download Fighter PAC & B+ GCT only [Advanced Users only]\n\n\n";
echo "Please enter a number: "; $opt = read();
if(!is_numeric($opt)) {
echo "\nPlease enter a valid number option. If you don't know, type 1.\n\nPress enter to close."; $a=read(); exit;
}
clearit();
echo ($unix) ? "Path to SD card? " : "SD card drive letter (E, F, G, etc)? ";
$sd = read();
if(!$unix) $sd = str_replace("/", "", $sd);
if(!$unix) $sd = str_replace("\\", "", $sd);
if(strlen($sd) == 1) $sd=strtoupper($sd.":");
if(disk_total_space($sd) > 2160960640 && !$unix) {
echo "\nWe have detected your SD card may be an SDHC. SDHC cards (over 3GB) will\n";
echo "NOT work with Brawl+, but 2GB or lower SD cards will. Continue Anyway? (Y/N) ";
$yn = read();
if(strtolower($yn) == "n") {
echo "\nPress enter to close.";
$a = read(); exit;
} else {
echo "\n";
}
}
if(file_exists(di($sd."/codes/RSBE01.gct"))) {
echo "Overwrite your current codes file? (Y/N) "; $yn = read();
if($yn != "Y" && $yn != "y") {
@unlink(di($sd."/codes/vbrawl.gct"));
@rename(di($sd."/codes/RSBE01.gct"), di($sd."/codes/vbrawl.gct"));
}
}
if($opt == "2" || $opt == "3" || $opt == "4") {
echo "Download team textures, portraits and extras? (Y/N) "; $teams = read();
if(strtolower($teams) == "y" || strtolower($teams) == "yes") {
$team = "team=1";
} else {
$team = "";
}
}
if(!is_dir(di($sd."/codes"))) @mkdir(di($sd."/codes"));
if(!is_dir(di($sd."/private"))) @mkdir(di($sd."/private"));
if(!is_dir(di($sd."/private/wii"))) @mkdir(di($sd."/private/wii"));
if(!is_dir(di($sd."/private/wii/app"))) @mkdir(di($sd."/private/wii/app"));
if(!is_dir(di($sd."/private/wii/app/RSBE"))) @mkdir(di($sd."/private/wii/app/RSBE"));
if(!is_dir(di($sd."/private/wii/app/RSBE/al"))) @mkdir(di($sd."/private/wii/app/RSBE/al"));
if(!is_dir(di($sd."/private/wii/app/RSBE/st"))) @mkdir(di($sd."/private/wii/app/RSBE/st"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf"))) @mkdir(di($sd."/private/wii/app/RSBE/pf"));
if(!is_dir(di($sd."/private/wii/app/RSBE/rp"))) @mkdir(di($sd."/private/wii/app/RSBE/rp"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/captain"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/captain"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/dedede"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/dedede"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/diddy"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/diddy"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/donkey"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/donkey"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/falco"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/falco"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/fox"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/fox"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/gamewatch"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/gamewatch"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/ganon"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/ganon"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/ike"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/ike"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/kirby"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/kirby"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/koopa"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/koopa"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/link"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/link"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/lucario"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/lucario"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/lucas"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/lucas"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/luigi"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/luigi"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/mario"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/mario"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/marth"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/marth"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/metaknight"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/metaknight"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/ness"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/ness"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/peach"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/peach"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/pikachu"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/pikachu"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/pikmin"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/pikmin"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/pit"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/pit"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/pokefushigisou"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/pokefushigisou"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/pokelizardon"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/pokelizardon"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/pokezenigame"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/pokezenigame"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/poketrainer"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/poketrainer"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/popo"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/popo"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/purin"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/purin"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/robot"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/robot"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/samus"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/samus"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/sheik"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/sheik"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/snake"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/snake"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/sonic"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/sonic"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/szerosuit"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/szerosuit"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/toonlink"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/toonlink"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/wario"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/wario"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/wolf"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/wolf"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/yoshi"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/yoshi"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/fighter/zelda"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/fighter/zelda"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/menu"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/menu"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/menu/common"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/menu/common"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/menu/common/char_bust_tex"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/menu/common/char_bust_tex"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/menu/controller"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/menu/controller"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/menu/strap"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/menu/strap"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/menu2"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/menu2"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/info"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/info"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/info/portrite"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/info/portrite"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/info2"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/info2"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/sound"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/sound"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/sound/strm"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/sound/strm"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/stage"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/stage"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/stage/melee"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/stage/melee"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/system"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/system"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pfmenu2"))) @mkdir(di($sd."/private/wii/app/RSBE/pfmenu2"));
if(!is_dir(di($sd."/private/wii/app/RSBE/pf/module"))) @mkdir(di($sd."/private/wii/app/RSBE/pf/module"));
clearit();
if($opt == "1") {
sdcard($sd, "http://brawlplus.net/dl.php?premade=1", 1);
echo "\nAll of the files to play Brawl+ are now downloaded onto your SD.\n";
echo "Insert your SD card into your Wii, load Gecko OS, and play!\n";
echo "Press enter to close."; $a=read(); exit;
} elseif($opt == "2") {
sdcard($sd, "http://brawlplus.net/dl.php?".$team);
echo "\nAll of the files to play Brawl+ are now downloaded onto your SD.\n";
echo "Insert your SD card into your Wii, load Gecko OS, and play!\n";
echo "Press enter to close."; $a=read(); exit;
} elseif($opt == "3") {
sdcard($sd, "http://brawlplus.net/dl.php?s=1&".$team);
echo "\nAll of the files to play Brawl+ are now downloaded onto your SD.\n";
echo "Insert your SD card into your Wii, load a backup launcher, and play!\n";
echo "Press enter to close."; $a=read(); exit;
} elseif($opt == "4") {
sdcard($sd, "http://brawlplus.net/dl.php?com=1&".$team);
echo "\nAll of the files to play Brawl+ are now downloaded onto your SD.\n";
echo "Delete all of your custom stages off of the Wii, hit \"Reset\" on the\n";
echo "Wii, insert your SD card, go to \"Stage Builder\" and enjoy Brawl!\n";
echo "Press enter to close."; $a=read(); exit;
} elseif($opt == "5") {
sdcard($sd, "http://brawlplus.net/dl.php?fighteronly=1");
echo "\nDone. Press enter to close."; $a=read(); exit;
} else {
echo "\nInvalid option specified! If you don't know what to enter, type 1.\n\nPress enter to close."; $a=read(); exit;
}
?>
PHP:
<?php
function getFiles($directory) {
if($dir = opendir($directory)) {
$tmp = array();
while($file = readdir($dir)) {
if($file != "." && $file != ".." && $file[0] != '.') {
if(is_dir($directory . "/" . $file)) {
$tmp2 = getFiles($directory . "/" . $file);
if(is_array($tmp2)) {
$tmp = array_merge($tmp, $tmp2);
}
} else {
array_push($tmp, $directory . "/" . $file);
}
}
}
closedir($dir);
return $tmp;
}
}
if($_REQUEST["maclinux"] == "1") {
$out = @file_get_contents("./downloads/updater.phps");
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private", false);
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=\"updater.php\";");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".strlen($out));
die($out);
}
$pf = (isset($_REQUEST["altdir"])) ? $_REQUEST["altdir"] : "pf";
header("Content-Type: text/plain");
echo "+\r\n"; //beacon
if(!isset($_GET["s"])) {
echo "gameconfig.txt:gameconfig.txt:".md5(@file_get_contents("./downloads/gameconfig.txt"));
echo "\r\nRSBE01.gct:codes/RSBE01.gct:".md5(@file_get_contents("./downloads/RSBE01.gct"));
} else {
echo "SnapshotLoaderRSBE01.gct:codes/RSBE01.gct:".md5(@file_get_contents("./downloads/SnapshotLoaderRSBE01.gct"));
echo "\r\n"."al_5-0.bin:private/wii/app/RSBE/al/al_5-0.bin:".md5(@file_get_contents("./downloads/al_5-0.bin"));
}
if(isset($_GET["com"])) {
echo "\r\nboot.elf:boot.elf:".md5(@file_get_contents("./downloads/boot.elf"));
echo "\r\nst_exploit.bin:private/wii/app/RSBE/st/st_exploit.bin:".md5(@file_get_contents("./downloads/st_exploit.bin"));
}
if(!isset($_GET["fighteronly"])) {
echo "\r\nStrapEn.pac:private/wii/app/RSBE/".$pf."/menu/strap/StrapEn.pac:".md5(@file_get_contents("./downloads/StrapEn.pac"));
echo "\r\nsc_title.pac:private/wii/app/RSBE/".$pf."menu2/sc_title.pac:".md5(@file_get_contents("./downloads/sc_title.pac"));
}
if(isset($_GET["premade"])) {
echo "\r\nbackground.png:background.png:".md5(@file_get_contents("./downloads/background.png"));
$apps = getFiles("./downloads/apps");
for($i=0; $i < count($apps); $i++) {
$name = explode("/", $apps[$i]);
$dirname = $name[3];
$filename = $name[4];
echo "\r\n";
echo "apps/".$dirname."/".$filename.":apps/".$dirname."/".$filename.":";
echo md5(@file_get_contents("./downloads/apps/".$dirname."/".$filename));
}
}
$fighter = getFiles("./downloads/fighter");
for($i=0; $i < count($fighter); $i++) {
$name = explode("/", $fighter[$i]);
$dirname = $name[3];
$filename = $name[4];
echo "\r\n";
echo "fighter/".$dirname."/".$filename.":";
echo "private/wii/app/RSBE/".$pf."/fighter/".$dirname."/".$filename.":";
echo md5(@file_get_contents("./downloads/fighter/".$dirname."/".$filename));
}
$stage = getFiles("./downloads/stage");
for($i=0; $i < count($stage); $i++) {
$name = explode("/", $stage[$i]);
$filename = $name[4];
echo "\r\n";
echo "stage/melee/".$filename.":";
echo "private/wii/app/RSBE/".$pf."/stage/melee/".$filename.":";
echo md5(@file_get_contents("./downloads/stage/melee/".$filename));
}
$system = getFiles("./downloads/system");
for($i=0; $i < count($system); $i++) {
$name = explode("/", $system[$i]);
$filename = $name[3];
if($_GET["team"] != "1" && $filename == "common5.pac") continue;
echo "\r\n";
echo "system/".$filename.":";
echo "private/wii/app/RSBE/".$pf."/system/".$filename.":";
echo md5(@file_get_contents("./downloads/system/".$filename));
}
if(isset($_GET["team"])) {
$fighter = getFiles("./downloads/textures/fighter");
for($i=0; $i < count($fighter); $i++) {
$name = explode("/", $fighter[$i]);
$dirname = $name[4];
$filename = $name[5];
echo "\r\n";
echo "textures/fighter/".$dirname."/".$filename.":";
echo "private/wii/app/RSBE/".$pf."/fighter/".$dirname."/".$filename.":";
echo md5(@file_get_contents("./downloads/textures/".$dirname."/".$filename));
}
$info = getFiles("./downloads/textures/info/portrite");
for($i=0; $i < count($info); $i++) {
$name = explode("/", $info[$i]);
$file = $name[5];
echo "\r\n";
echo "textures/info/portrite/".$file.":";
echo "private/wii/app/RSBE/".$pf."/info/portrite/".$file.":";
echo md5(@file_get_contents("./downloads/textures/info/portrite/".$file));
}
$menu = getFiles("./downloads/textures/menu/common/char_bust_tex");
for($i=0; $i < count($menu); $i++) {
$name = explode("/", $menu[$i]);
$file = $name[6];
echo "\r\n";
echo "textures/menu/common/char_bust_tex/".$file.":";
echo "private/wii/app/RSBE/".$pf."/menu/common/char_bust_tex/".$file.":";
echo md5(@file_get_contents("./downloads/textures/menu/common/char_bust_tex/".$file));
}
}
?>