New ShoutBox ~ Beta Code
** YOU MIGHT WANT TO GO THROUGH THIS CODE AND REPLACE THE CLASSES/SQL WITH YOUR SITES CURRENT ONES **
All Themes & Mods will be based on u232 v1 if you want upgraded then you pay me $15.
Please Remember:
this is a beta code and is still under development so please use at own risk.
I created this chat system because I really just wanted to push my luck with u-232 code and see so I could intergrate it into my own projects in the future.
Created:
September 05, 2014, 12:54:56 AM
Source Information:
This code does not include the default buttons like Commands, Smilies, Custom Smilies Uploader etc so if you want to add them you may but I wont be coding them into it using CSS3 but the PHP/HTML/MYSQLi code is still on the given template.
Glitter Image:
http://dark-asylum.me/bitbucket/BamBam_glitter.gif
Text:
Add this over your Index Shoutbox System
Code:
PHP Code:
$HTMLOUT .= "<br /> <form action='shoutbox.php' method='get' target='sbox' name='shbox' onsubmit='mysubmit()'> <div style='margin-top: -45px;margin-left: 17px;'>"; $HTMLOUT .= " <div style='background: #121212;border: 1px solid #000000;margin-top: 6px;width: 683px;padding: 7px;margin-left: 13px;box-shadow: 0 0px 5px 0 rgba(0,0,0,0.8);'> <input style='margin-left: -2px;font-weight: bold;color: #474747; padding: 5px;background: #2b2b2b;border: 1px #373737 solid;border-top-left-radius: 5px;border-top-right-radius: 5px;border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;' type='text' maxlength='680' name='shbox_text' size='93' placeholder='{$CURUSER['username']} Type Here...' /> <input type='hidden' name='sent' value='yes' /></div> <div style='margin-left: 14px;'><iframe src='{$TBDEV['baseurl']}/shoutbox.php' width='695px' height='300' frameborder='0' name='sbox' marginwidth='0' marginheight='0'></iframe></div>
</div> </form><br /><br />\n";
Text:
Replace ShoutBox.php
Code:
PHP Code:
<?php require_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'include'.DIRECTORY_SEPARATOR.'bittorrent.php'); require_once(INCL_DIR.'user_functions.php'); require_once(INCL_DIR.'bbcode_functions.php'); dbconn( false ); loggedinorreturn();
$HTMLOUT ="";
// === added turn on / off shoutbox - sir snuggs if ( ( isset( $_GET['show_shout'] ) ) && ( ( $show_shout = $_GET['show'] ) !== $CURUSER['show_shout'] ) ) { sql_query( "UPDATE users SET show_shout = " . sqlesc( $_GET['show'] ) . " WHERE id = $CURUSER[id]" ); header( "Location: " . $_SERVER['HTTP_REFERER'] ); }
unset( $insert ); $insert = false; $query = ""; $sb = array('charset' => 'UTF-8'); // Delete single shout if ( isset( $_GET['del'] ) && $CURUSER['class'] >= UC_STAFF && is_valid_id( $_GET['del'] ) ) sql_query( "DELETE FROM shoutbox WHERE id=" . sqlesc( $_GET['del'] ) ); // Empty shout - sysop if ( isset( $_GET['delall'] ) && $CURUSER['class'] == UC_SYSOP ) $query = "TRUNCATE TABLE shoutbox"; sql_query( $query ); unset($query);
// Staff edit if (isset($_GET['edit']) && $CURUSER['class'] >= UC_STAFF && is_valid_id($_GET['edit'])) { $sql = sql_query('SELECT id, text FROM shoutbox WHERE id='.sqlesc($_GET['edit'])); $res = mysql_fetch_assoc($sql); unset($sql);
$HTMLOUT .="<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml'> <head> <meta http-equiv='Pragma' content='no-cache' /> <meta http-equiv='expires' content='-1' /> <html xmlns='http://www.w3.org/1999/xhtml'> <meta http-equiv='Content-Type' content='text/html; charset={$sb['charset']}' /> <script type='text/javascript' src='./scripts/shout.js'></script> <style type='text/css'> #specialbox{ border: 1px solid gray; width: 600px; background: #2F2F2F; font: 11px verdana, sans-serif; color: white; padding: 3px; outline: none; } #specialbox:focus{ border: 1px solid black; } .btn { cursor:pointer; border:outset 1px #ccc; background:#999; color:#666; font-weight:bold; padding: 1px 2px; background: #000000 repeat-x left top; } </style> </head> <body bgcolor='#2F2F2F' class='date'> <form method='post' action='./shoutbox.php'> <input type='hidden' name='id' value='".(int)$res['id']."' /> <textarea name='text' rows='3' id='specialbox'>".htmlspecialchars($res['text'])."</textarea> <input type='submit' name='save' value='save' class='btn' /> </form></body></html>"; print $HTMLOUT; die; }
// Power Users+ can edit anyones single shouts //== pdq if (isset($_GET['edit']) && ($_GET['user'] == $CURUSER['id']) && ($CURUSER['class'] >= UC_POWER_USER && $CURUSER['class'] <= UC_STAFF) && is_valid_id($_GET['edit'])) { $sql = sql_query('SELECT id, text, userid FROM shoutbox WHERE userid ='.sqlesc($_GET['user']).' AND id='.sqlesc($_GET['edit'])); $res = mysql_fetch_array($sql); $HTMLOUT .="<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml'> <head> <meta http-equiv='Pragma' content='no-cache' /> <meta http-equiv='expires' content='-1' /> <html xmlns='http://www.w3.org/1999/xhtml'> <meta http-equiv='Content-Type' content='text/html; charset={$sb['charset']}' /> <script type='text/javascript' src='./scripts/shout.js'></script> <style type='text/css'> .specialbox{ border: 1px solid gray; width: 600px; background: #FBFCFA; font: 11px verdana, sans-serif; color: #000000; padding: 3px; outline: none; } .specialbox:focus{ border: 1px solid black; } .btn { cursor:pointer; border:outset 1px #ccc; background:#999; color:#666; font-weight:bold; padding: 1px 2px; background: #000000 repeat-x left top; } </style> </head> <body bgcolor='#F5F4EA' class='date'> <form method='post' action='./shoutbox.php'> <input type='hidden' name='id' value='".(int)$res['id']."' /> <input type='hidden' name='user' value='".(int)$res['userid']."' /> <textarea name='text' rows='3' id='specialbox'>".htmlspecialchars($res['text'])."</textarea> <input type='submit' name='save' value='save' class='btn' /> </form></body></html>"; print $HTMLOUT; die; }
// Staff shout edit if (isset($_POST['text']) && $CURUSER['class'] >= UC_STAFF && is_valid_id($_POST['id'])) { require_once(INCL_DIR.'bbcode_functions.php'); $text = trim($_POST['text']); $text_parsed = format_comment($text); sql_query('UPDATE shoutbox SET text = '.sqlesc($text).', text_parsed = '.sqlesc($text_parsed).' WHERE id='.sqlesc($_POST['id'])); unset($text, $text_parsed); } // Power User+ shout edit //==pdq if (isset($_POST['text']) && (isset($_POST['user']) == $CURUSER['id']) && ($CURUSER['class'] >= UC_POWER_USER && $CURUSER['class'] < UC_STAFF) && is_valid_id($_POST['id'])) { require_once(INCL_DIR.'bbcode_functions.php'); $text = trim($_POST['text']); $text_parsed = format_comment($text); sql_query('UPDATE shoutbox SET text = '.sqlesc($text).', text_parsed = '.sqlesc($text_parsed).' WHERE userid='.sqlesc($_POST['user']).' AND id='.sqlesc($_POST['id'])); unset($text, $text_parsed); }
//== begin main output $HTMLOUT .="<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml'> <head> <title>ShoutBox</title> <meta http-equiv='REFRESH' content='10; URL=./shoutbox.php' /> <script type='text/javascript' src='./scripts/shout.js'></script> <meta http-equiv='Content-Type' content='text/html; charset={$sb['charset']}' /> <style type='text/css'> A {color: #356AA0; font-weight: bold; font-size: 9pt; } A:hover {color: #FF0000;} .small {color: #ff0000; font-size: 9pt; font-family: arial; } .date {color: #ff0000; font-size: 9pt;} .error { color: #990000; background-color: #FFF0F0; padding: 7px; margin-top: 5px; margin-bottom: 10px; border: 1px dashed #990000; } A {color: #FFFFFF; font-weight: bold; } A:hover {color: #FFFFFF;} .small {font-size: 10pt; font-family: arial; } .date {font-size: 8pt;} span.size1 { font-size:0.75em; } span.size2 { font-size:1em; } span.size3 { font-size:1.25em; } span.size4 { font-size:1.5em; } span.size5 { font-size:1.75em; } span.size6 { font-size:2em; } span.size7 { font-size:2.25em; } </style>"; // == Black if ( $CURUSER['shoutboxbg'] == 3 ) { $HTMLOUT .="<style type='text/css'> A {color: #FFFFFF; font-weight: bold; ; } A:hover {color: #FFFFFF;} .small {font-size: 10pt; font-family: arial; } .date {font-size: 8pt;} </style>"; $bg = '#121212'; $border = '#000000'; $fontcolor = '#3b3232'; $dtcolor = '#FFFFFF'; } $HTMLOUT .="</head><body>"; //== Banned from shout ?? if ($CURUSER['chatpost'] == 0|| $CURUSER['chatpost'] > 1) { $HTMLOUT .="<div class='error' align='center'><br /><font color='red'>Sorry, you are not authorized to Shout.</font> (<a href=\"./rules.php\" target=\"_blank\"><font color='red'>Contact Site Admin For The Reason Why</font></a>)<br /><br /></div></body></html>"; print $HTMLOUT; exit; } //=End if ( isset( $_GET['sent'] ) && ( $_GET['sent'] == "yes" ) ) { require_once(INCL_DIR.'bbcode_functions.php'); $limit = 5; $userid = $CURUSER["id"]; $date = sqlesc( time() ); $text = (trim( $_GET["shbox_text"] )); $text_parsed = format_comment($text); $system_pattern = '/(^\/system)\s([\w\W\s]+)/is'; if(preg_match($system_pattern,$text,$out) && $CURUSER["class"] >= UC_STAFF) { $userid = $TBDEV['bot_id']; $text = $out[2]; $text_parsed = format_comment($text); } // ///////////////////////shoutbox command system by putyn ///////////////////////////// $commands = array( "\/EMPTY", "\/GAG", "\/UNGAG", "\/WARN", "\/UNWARN", "\/DISABLE", "\/ENABLE" ); // this / was replaced with \/ to work with the regex $pattern = "/(" . implode( "|", $commands ) . "\w+)\s([a-zA-Z0-9_:\s(?i)]+)/"; //== private mode by putyn $private_pattern = "/(^\/private)\s([a-zA-Z0-9]+)\s([\w\W\s]+)/"; if (preg_match( $pattern, $text, $vars ) && $CURUSER["class"] >= UC_STAFF) { $command = $vars[1]; $user = $vars[2]; $c = sql_query( "SELECT id, class, modcomment FROM users where username=" . sqlesc( $user ) ) or sqlerr(); $a = mysql_fetch_row( $c ); if ( mysql_num_rows( $c ) == 1 && $CURUSER["class"] > $a[1] ) { switch ( $command ) { case "/EMPTY" : $what = 'deleted all shouts'; $msg = "" . $user . "'s shouts have been deleted by Cortana"; $query = "DELETE FROM shoutbox where userid = " . $a[0]; break; case "/GAG" : $what = 'gagged'; $modcomment = get_date( time(), 'DATE', 1 ) . " - [ShoutBox] User has been gagged by " . $CURUSER["username"] . "\n" . $a[2]; $msg = "" . $user . " - has been gagged by Cortana"; $query = "UPDATE users SET chatpost='0', modcomment = concat(" . sqlesc( $modcomment ) . ", modcomment) WHERE id = " . $a[0]; break; case "/UNGAG" : $what = 'ungagged'; $modcomment = get_date( time(), 'DATE', 1 ) . " - [ShoutBox] User has been ungagged by " . $CURUSER["username"] . "\n" . $a[2]; $msg = "" . $user . " - has been ungagged by Cortana"; $query = "UPDATE users SET chatpost='1', modcomment = concat(" . sqlesc( $modcomment ) . ", modcomment) WHERE id = " . $a[0]; break; case "/WARN" : $what = 'warned'; $modcomment = get_date( time(), 'DATE', 1 ) . " - [ShoutBox] User has been warned by " . $CURUSER["username"] . "\n" . $a[2]; $msg = "" . $user . " - has been warned by Cortana"; $query = "UPDATE users SET warned='1', modcomment = concat(" . sqlesc( $modcomment ) . ", modcomment) WHERE id = " . $a[0]; break; case "/UNWARN" : $what = 'unwarned'; $modcomment = get_date( time(), 'DATE', 1 ) . " - [ShoutBox] User has been unwarned by " . $CURUSER["username"] . "\n" . $a[2]; $msg = "" . $user . " - warning removed by Cortana"; $query = "UPDATE users SET warned='0', modcomment = concat(" . sqlesc( $modcomment ) . ", modcomment) WHERE id = " . $a[0]; break; case "/DISABLE" : $what = 'disabled'; $modcomment = get_date( time(), 'DATE', 1 ) . " - [ShoutBox] User has been disabled by " . $CURUSER["username"] . "\n" . $a[2]; $msg = "" . $user . " - has been disabled by " . $CURUSER["username"]; $query = "UPDATE users SET enabled='no', modcomment = concat(" . sqlesc( $modcomment ) . ", modcomment) WHERE id = " . $a[0]; break; case "/ENABLE" : $what = 'enabled'; $modcomment = get_date( time(), 'DATE', 1 ) . " - [ShoutBox] User has been enabled by " . $CURUSER["username"] . "\n" . $a[2]; $msg = "" . $user . " - has been enabled by Cortana"; $query = "UPDATE users SET enabled='yes', modcomment = concat(" . sqlesc( $modcomment ) . ", modcomment) WHERE id = " . $a[0]; break; } if ( sql_query( $query ) ) autoshout($msg); $HTMLOUT .="<script type=\"text/javascript\">parent.document.forms[0].shbox_text.value='';</script>"; write_log("Shoutbox user " . $user . " has been " . $what . " by Cortana"); unset($text, $text_parsed, $query, $date, $modcomment, $what, $msg, $commands); } } elseif(preg_match($private_pattern,$text,$vars)) { $to_user = mysql_result(sql_query('select id from users WHERE username = '.sqlesc($vars[34])),0) or exit(mysql_error()); if($to_user != 0 && $to_user != $CURUSER['id']) { $text = $vars[34]." - ".$vars[3]; $text_parsed = format_comment($text); sql_query( "INSERT INTO shoutbox (userid, date, text, text_parsed,to_user) VALUES (".sqlesc($userid).", $date, " . sqlesc( $text ) . ",".sqlesc( $text_parsed) .",".sqlesc($to_user).")") or sqlerr( __FILE__, __LINE__ ); } $HTMLOUT .="<script type=\"text/javascript\">parent.document.forms[0].shbox_text.value='';</script>"; } else { $a = mysql_fetch_row( sql_query( "SELECT userid,date FROM shoutbox ORDER by id DESC LIMIT 1 " ) ); if ( empty( $text ) || strlen( $text ) == 1 ) $HTMLOUT .=""; elseif ( $a[0] == $userid && ( time() - $a[1] ) < $limit && $CURUSER['class'] < UC_STAFF ) $HTMLOUT .="<font class=\"small\" color=\"red\">$limit seconds between shouts <font class=\"small\">Seconds Remaining : (" . ( $limit - ( time() - $a[1] ) ) . ")</font></font>"; else { mysql_query( "INSERT INTO shoutbox (id, userid, date, text, text_parsed) VALUES ('id'," . sqlesc( $userid ) . ", $date, " . sqlesc( $text ) . ",".sqlesc( $text_parsed ) .")" ) or sqlerr( __FILE__, __LINE__ ); $HTMLOUT .="<script type=\"text/javascript\">parent.document.forms[0].shbox_text.value='';</script>"; if ($CURUSER["class"] >= UC_ADMINISTATOR) $trigger_words = array( //Bot '@BamBam Yo' => array( 'What can I help you with ' .$CURUSER['username'] .'?' ) , 'Games Room Active?' => array( 'Game Room is currently under development' ) , 'Good Morning Felix' => array( 'Good Morning ' .$CURUSER['username'] .' :bow:' ) ,
'Good Night Felix' => array( 'Good Night ' .$CURUSER['username'] .' :rose:' ) , 'help me' => array( 'Help with what?', 'If it is real important you can hit up the FLS on staff page..', 'Cant help you if you dont say what you need help for..', 'Somebody help that guy!! Im to busy atm.. Got a hot girl over.. :P' ) , 'im back' => array( 'You were gone ?', 'Who are you anyway ?', 'Welcome home :-P' ) , ':finger:' => array( ':finger:' ) ); if (preg_match('/('.join('|', array_keys($trigger_words)).')/iU', $text, $trigger_key) && isset($trigger_words[$trigger_key[0]])) { shuffle($trigger_words[$trigger_key[0]]); $message = $trigger_words[$trigger_key[0]][0]; sleep(1); autoshout($message); } } } } // //////////////////////
$res = sql_query( "SELECT s.id, s.userid, s.date , s.text,s.to_user, u.username, u.avatar, u.pirate, u.king, u.banned, u.class, u.donor, u.staff, u.canabis, u.warned, u.leechwarn, u.enabled, u.chatpost, (SELECT count(id) FROM messages WHERE receiver = ".$CURUSER['id']." AND unread = 'yes') as pms FROM shoutbox as s LEFT JOIN users as u ON s.userid=u.id ORDER BY s.date DESC LIMIT 30" ) or sqlerr( __FILE__, __LINE__ );
if ( mysql_num_rows( $res ) == 0 ) $HTMLOUT .=""; else { $HTMLOUT .="<table border='0' cellspacing='0' cellpadding='2' width='100%' align='left' class='small'>\n"; while ( $arr = mysql_fetch_assoc( $res ) ) { # BamBam0077 - New Shoutbox Mod ;) - 2014 if ($arr["avatar"]) { $avatar['shoutbox'] = "<div style='margin-top: 3px;margin-left: 3px;width: 60px;box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.8);height:58px;border:1px solid #000000;border-top-left-radius: 5px;border-top-right-radius: 5px;border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;'><img style='border:1px solid #111111;border-top-left-radius: 5px;border-top-right-radius: 5px;border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;margin-left: 4px;margin-top: 3px;' width='50' height='50' src='" . htmlspecialchars($arr["avatar"]) . "'/></div>"; } else { $avatar['shoutbox'] = "<div style='margin-top: 5px;margin-left: 3px;width: 60px;box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.8);height:55px;border:1px solid #000000;border-top-left-radius: 5px;border-top-right-radius: 5px;border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;'><img style='border:1px solid #111111;border-top-left-radius: 5px;border-top-right-radius: 5px;border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;margin-left: 4px;margin-top: 3px;' width='50' src='pic/default_avatar.gif'/></div>"; } $edit = ($CURUSER['class'] >= UC_STAFF || ($arr['userid'] == $CURUSER['id']) && ($CURUSER['class'] >= UC_USER && $CURUSER['class'] <= UC_STAFF) ? "<a href='{$TBDEV['baseurl']}/shoutbox.php?edit=" . $arr['id'] . "&user=".$arr['userid']."'><img src='{$TBDEV['pic_base_url']}shout_edit.png' border='0' alt=\"Edit Shout\" title=\"Edit Shout\" /></a> " : "" ); $delete = ( $CURUSER['class'] >= UC_STAFF ? "<a href='./shoutbox.php?del=" . $arr['id'] . "'><img src='{$TBDEV['pic_base_url']}delete.png' width='16' height='14' border='0' alt=\"Delete Single Shout\" title=\"Delete Single Shout\" /></a> " : "" ); $pm = "<span class='date' style=\"color:$dtcolor\"><a target='_blank' href='./sendmessage.php?receiver=$arr[userid]'><img src='{$TBDEV['pic_base_url']}button_pm2.gif' border='0' alt=\"Pm User\" title=\"Pm User\" /></a></span>\n"; $reply = "<a href='javascript:window.top.SmileIT(\"@ [color=#".get_user_class_color($arr['class']) . "]".htmlspecialchars($arr['username'])."[/color] \",\"shbox\",\"shbox_text\")'><img height='10' src='{$TBDEV['pic_base_url']}reply.gif' title='Reply' alt='Reply' style='border:none;' /></a>"; $date = get_date($arr["date"], 0,1); $user_stuff = $arr; $user_stuff['id'] = $arr['userid']; if ($arr["avatar"]) { $HTMLOUT .="<div style='margin-top: -5px;'><tr style='background-color:$bg;'><td><div style='padding: 3px;'></div>\n{$avatar['shoutbox']}<div style='margin-top: -35px;'><div style='margin-top: 20px;'><span class='size1' style='margin-left: 70px;color:$fontcolor; '><u>$date</u></span></div>\n<div style='margin-top: -30px;margin-left: 70px;'> $reply $edit $delete $pm $private</div> <div style='margin-top: -49px;margin-left: 70px;'><span style='background: url(pic/glitter.gif);'>".format_username($user_stuff, true)."</span></div></div>\n<div style='margin-top: -33px;margin-left: 70px;'><font color='".get_user_class_color($arr['class'])."'>".get_user_class_name($arr['class'])."</font></div><div style='margin-left: 1px;margin-top: 33px;padding: 1px;text-align: left;border-top-left-radius: 2px;border-top-right-radius: 2px;border-bottom-left-radius: 2px;border-bottom-right-radius: 2px;'><span class='size2' style='margin-left: 1px;color:$fontcolor;'> " . format_comment( $arr["text"] ) . "\n</span></div><div style='padding: 1px;'></div><div style='margin-left: -2px;width: 100.6%;height: 5px;box-shadow: 0 0px 5px 0 rgba(0,0,0,0.8);'><br /></td></tr></div>"; } else { $HTMLOUT .="<div style='margin-top: -5px;'><tr style='background-color:$bg;'><td><div style='margin-left: -2px;width: 100.6%;height: 5px;box-shadow: 0 0px 5px 0 rgba(0,0,0,0.8);'></div>\n{$avatar['shoutbox']}<div style='margin-top: -33px;'><div style='margin-top: 20px;'><span class='size1' style='margin-left: 70px;color:$fontcolor; '><u>$date</u></span></div>\n<div style='margin-top: -30px;margin-left: 70px;'> $reply $edit $delete $pm $private</div> <div style='margin-top: -49px;margin-left: 70px;'><span style='background: url(pic/glitter.gif);'>".format_username($user_stuff, true)."</span></div></div>\n<div style='margin-top: -33px;margin-left: 70px;'><font color='".get_user_class_color($arr['class'])."'>".get_user_class_name($arr['class'])."</font></div><div style='margin-left: 1px;margin-top: 33px;padding: 1px;text-align: left;border-top-left-radius: 2px;border-top-right-radius: 2px;border-bottom-left-radius: 2px;border-bottom-right-radius: 2px;'><span class='size2' style='margin-left: 1px;color:$fontcolor;'> " . format_comment( $arr["text"] ) . "\n</span></div><div style='padding: 1px;'></div><div style='margin-left: -2px;width: 100.6%;height: 5px;box-shadow: 0 0px 5px 0 rgba(0,0,0,0.8);'><br /></td></tr></div>"; } } $HTMLOUT .="</table>"; } $HTMLOUT .="</body></html>"; ?>
Bashing/Insulting my post/code work will not be tolerated!
If you run into any problems I am sure I can help you out just send me the files you need editing via pm or simply post for all to join in and help you get a faster patch up.
Open Source
*** NEXT UPDATE - I will do the editing side so it looks appealing ***
Last edited by BamBam0077; 23rd October 2014 at 12:47.
|