Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /*Basic database settings*/
- $DB=[
- "host"=>"localhost",/*=== MySQL host/ip ===*/
- "database"=>"gccombat",/*=== MySQL database name ===*/
- "username"=>"iamdave",/*=== MySQL username ===*/
- "password"=>"P4sSw0rD!"/*=== MySQL password ===*/
- ];
- /*Advanced database settings*/
- $ADVANCED=[
- "levelsTable"=>"levels",/*=== MySQL Players table name ===*/
- "playersTable"=>"player"/*=== MySQL Players table name ===*/
- ];
- /*
- https://exampele.com/gccombat.php?&cmd=
- => Parameter 'cmd' as GET or POST
- */
- /*DO NOT EDIT BELOW THIS LINE*/
- header("Content-Type:text/plain");
- setlocale(LC_MONETARY,"en_US");
- date_default_timezone_set("America/Los_Angeles");
- function is($S){return(isset($_GET[$S]));}
- function PUSH($K,$S){global$R;$R[$K]=$S;}
- function isp($S){return(isset($_POST[$S]));}
- function ToSqlArray($A){return"('".implode("','",$A)."')";}
- function val($S){global$CON;return($CON->real_escape_string(stripslashes($_GET[$S])));}
- function str_contains($src,$who){if(strpos($src,$who)!==false){return true;}return false;}
- function valp($S){global$CON;return($CON->real_escape_string(stripslashes($_POST[$S])));}
- function generatePIN($digits=4){$i=0;$pin="";while($i<$digits){$pin.=mt_rand(0,9);$i++;}return$pin;}
- function multi_unique($src,$key){$tempArr=array_unique(array_column($src,$key));return array_intersect_key($src,$tempArr);}
- function RandomString($length=9){$characters='0123456789abcdefghijklmnopqrstuvwxyz';$charactersLength=strlen($characters);$randomString='';for($i=0;$i<$length;$i++){$randomString.=$characters[rand(0,$charactersLength-1)];}return$randomString;}
- function money($S)
- {
- $S=money_format("%i",$S);
- $S=str_ireplace("USD","",$S);
- $S=str_replace(".00","",$S);
- $S=trim($S);
- return$S;
- }
- function StringToMultiTable($STR)
- {
- $END=[];
- $STR=trim($STR);
- if($STR=="")return$END;
- $ROOT=explode("|",$STR);
- for($X=0;$X<count($ROOT);$X++){
- $CHILD=explode("=",$ROOT[$X]);
- if(count($CHILD)==2)$END[$CHILD[0]]=$CHILD[1];
- }
- return$END;
- }
- function MultiTableToString($ARR)
- {
- $END=[];
- foreach($ARR as $KEY=>$VAL){array_push($END,"$KEY=$VAL");}
- if($END==[])return"";
- return(implode("|",$END));
- }
- function ProfilePicture($USR)
- {
- $R=$NULL_KEY;
- $F=file_get_contents("http://world.secondlife.com/resident/"+val("userkey"));
- if($F!=""){
- $F=explode("<meta name=\"imageid\" content=\"",$F)[1];
- $F=explode("\"",$F)[0];
- $R=$F;
- }
- return$R;
- }
- function logs($VAR,$VAL,$U=null,$N=null)
- {
- global$CON,$D,$USR,$UNM,$SLURL,$ACCOUNT;
- if($ACCOUNT==null){
- if($U==null)$U=$USR;
- if($N==null)$N=$UNM;
- }else{
- if($U==null)$U=$ACCOUNT["userkey"];
- if($N==null)$N=$ACCOUNT["username"];
- }
- $Q="INSERT INTO logs(userkey,username,slurl,variable,value,log)VALUES('$USR','$UNM','$SLURL','$VAR','$VAL',$D)";
- $C=$CON->query($Q);
- if(!$C)return(0);
- return$CON->insert_id;
- }
- function getCombatUser($USR,$isNAME=false)
- {
- $R=[];
- global$CON,$NULL_KEY;
- if($USR==$NULL_KEY)return(null);
- $X=$isNAME?"LCASE(name)='".strtolower(trim($USR))."'":"id='$USR'";
- $Q="SELECT * FROM ".$ADVANCED["playersTable"]." WHERE $X LIMIT 1";
- if($RES=$CON->query($Q)){while($ROW=$RES->fetch_assoc()){$R=$ROW;}$RES->free();}
- if($R==[])return(null);
- foreach($R as $KEY=>$VAL){if(is_numeric($VAL)){$R[$KEY]=intval($R[$KEY]);}}
- return$R;
- }
- function updateCombatUser($ACCOUNT)
- {
- $TMP=[];
- global$CON,$NULL_KEY;
- if($ACCOUNT==null||(is_array($ACCOUNT)&&$ACCOUNT==[]))return(false);
- if($ACCOUNT["id"]==$NULL_KEY)return(false);
- unset($ACCOUNT["id"]);
- foreach($ACCOUNT as $KEY=>$VAL){
- $_=is_numeric($VAL)?"":"'";
- array_push($TMP,"$KEY=$_".$VAL."$_");
- }
- if($TMP==[])return(false);
- $R=implode(",",$TMP);
- $Q="UPDATE ".$ADVANCED["playersTable"]." SET $R WHERE id='".$ACCOUNT["userkey"]."' LIMIT 1";
- return$CON->query($Q);
- }
- $R=0;
- $D=time();
- $ACCOUNT=null;
- ///$HEADERS=apache_response_headers();
- $NULL_KEY="00000000-0000-0000-0000-000000000000";
- $CON=new mysqli($DB["host"],$DB["username"],$DB["password"],$DB["database"]);
- if(!isp("cmd")){if(is("cmd")){$CMD=strtoupper(stripslashes($_GET["cmd"]));}else{echo$R;exit();}}else{$CMD=strtoupper(stripslashes($_POST["cmd"]));}
- if($CON->connect_errno){echo$R;exit();}
- $USR=$NULL_KEY;
- $SLURL="None";
- $UNM="None";
- if(is("slurl"))$SLURL=val("slurl");
- $R="Player did not register!";
- $CMD=str_replace("/","",$CMD);
- $CMD=str_replace(".PHP","",$CMD);
- if($CMD=="PLAYER-ATTRIBUTES-GET"&&isp("playerKey")){
- $ID=valp("playerKey");
- $Q="SELECT health,energy,hunger,thirst,blood,tired,sick FROM ".$ADVANCED["playersTable"]." WHERE id=$ID LIMIT 1";
- if($RES=$CON->query($Q)){while($ROW=$RES->fetch_assoc()){$R=$ROW["health"].":".$ROW["energy"].":".$ROW["hunger"].":".$ROW["thirst"].":".$ROW["blood"].":".$ROW["tired"].":".$ROW["sick"];}}
- }else
- if($CMD=="PLAYER-ATTRIBUTES-SET"&&isp("playerKey")&&isp("playerHealth")&&isp("playerEnergy")&&isp("playerHunger")&&isp("playerThirst")&&isp("playerBlood")&&isp("playerTired")&&isp("playerSick")){
- $ID=valp("playerKey");
- $health=valp("playerHealth");
- $energy=valp("playerEnergy");
- $hunger=valp("playerHunger");
- $thirst=valp("playerThirst");
- $blood=valp("playerBlood");
- $tired=valp("playerTired");
- $sick=valp("playerSick");
- $ACCOUNT=getCombatUser($ID);
- if($ACCOUNT!=null){
- $Q="UPDATE ".$ADVANCED["playersTable"]." SET health=$health,energy=$energy,hunger=$hunger,thirst=$thirst,blood=$blood,tired=$tired,sick=$sick WHERE id='$ID' LIMIT 1";
- if($CON->query($Q)===TRUE)$R="";
- }
- }else
- if($CMD=="PLAYER-CURRENCY-ATM-BALANCE"&&isp("toucherKey")){
- $ID=valp("toucherKey");
- $ACCOUNT=getCombatUser($ID);
- if($ACCOUNT!=null)$R="dollars:".$ACCOUNT["dollars"];
- }else
- if($CMD=="PLAYER-CURRENCY-ATM-BUY"&&isp("playerKey")&&isp("dollarsAmount")){
- $ID=valp("playerKey");
- $ACCOUNT=getCombatUser($ID);
- $AMOUNT=valp("dollarsAmount");
- if($ACCOUNT!=null){
- $Q="UPDATE ".$ADVANCED["playersTable"]." SET dollars=dollars+$AMOUNT WHERE id='$ID' LIMIT 1";
- if($CON->query($Q)===TRUE)$R="Successful";
- }
- }else
- if($CMD=="PLAYER-CURRENCY-ATM-SEND"&&isp("ID")&&isp("name")&&isp("amount")){
- $senderID=valp("ID");
- $R="Player Doesn't Exist!";
- $targetName=valp("name");
- $AMOUNT=intval(valp("amount"));
- $ACCOUNT=getCombatUser($senderID);
- if($ACCOUNT!=null){
- $R="You don't have enough!";
- if($ACCOUNT["dollars"]>=$AMOUNT){
- $R="Player Doesn't Exist!";
- $TARGET=getCombatUser($targetName,true);
- if($TARGET!=null){
- $TARGET["dollars"]+=$AMOUNT;
- $ACCOUNT["dollars"]-=$AMOUNT;
- if(updateCombatUser($ACCOUNT)&&updateCombatUser($TARGET))$R="dollars:".$TARGET["id"].":$senderID:$AMOUNT";
- }
- }
- }
- }else
- if($CMD=="PLAYER-CURRENCY-GET"&&isp("playerKey")){
- $ID=valp("playerKey");
- $ACCOUNT=getCombatUser($ID);
- if($ACCOUNT!=null)$R=$ACCOUNT["dollars"];
- }else
- if($CMD=="PLAYER-GENDER-SET"&&isp("playerKey")&&isp("playerGender")){
- $ID=valp("playerKey");
- $ACCOUNT=getCombatUser($ID);
- $GENDER=ucwords(valp("playerGender"));
- if($ACCOUNT!=null){
- $ACCOUNT["gender"]=$GENDER;
- if(updateCombatUser($ACCOUNT))$R=$GENDER;
- }
- }else
- if($CMD=="PLAYER-LEVEL-SET"&&isp("playerKey")){
- $ID=valp("playerKey");
- $ACCOUNT=getCombatUser($ID);
- if($ACCOUNT!=null){
- $LVL=null;
- $ACCOUNT["xp"]+=1;
- $T="You have earned 1xp, total: ".$ACCOUNT["xp"]."xp\n";
- $Q="SELECT * FROM ".$ADVANCED["levelsTable"]." WHERE level=".$ACCOUNT["level"]." LIMIT 1";
- if($RES=$CON->query($Q)){while($ROW=$RES->fetch_assoc()){$LVL=$ROW;}}
- if($LVL!=null){
- if($ACCOUNT["level"]==intval($LVL["level"])&&$ACCOUNT["xp"]>intval($LVL["xp"])){
- $ACCOUNT["dollars"]+=5;
- $ACCOUNT["level"]+=1;
- $T=$LVL["text"];
- }
- }
- if($ACCOUNT["level"]>=20)$T="You have reached the max level!";
- if(updateCombatUser($ACCOUNT))$R=$T;
- }
- }else
- if($CMD=="PLAYER-CURRENCY-SEND"&&isp("ID")&&isp("stat")&&isp("name")&&isp("amount")){
- $STAT=valp("stat");
- $senderID=valp("ID");
- $R="Player Doesn't Exist!";
- $targetName=valp("name");
- $AMOUNT=intval(valp("amount"));
- $ACCOUNT=getCombatUser($senderID);
- if($ACCOUNT!=null){
- $R="You don't have enough!";
- if($ACCOUNT[$STAT]>=$AMOUNT){
- $R="Player Doesn't Exist!";
- $TARGET=getCombatUser($targetName,true);
- if($TARGET!=null){
- $TARGET[$STAT]+=$AMOUNT;
- $ACCOUNT[$STAT]-=$AMOUNT;
- if(updateCombatUser($ACCOUNT)&&updateCombatUser($TARGET))$R="send:".$TARGET["id"].":$AMOUNT:$STAT";
- }
- }
- }
- }else
- if($CMD=="PLAYER-REG"&&isp("playerKey")&&isp("playerName")){
- $R="";
- $ID=valp("playerKey");
- $NAME=valp("playerName");
- $ACCOUNT=getCombatUser($ID);
- if($ACCOUNT==null){
- $Q="INSERT INTO ".$ADVANCED["playersTable"]." (id,name)VALUES('$ID','$NAME')";
- if($CON->query($Q)===TRUE)echo "Thank you $NAME for using Reckless: Combat, enjoy the game!";
- }
- }else
- if($CMD=="PLAYER-STATISTICS-GET"&&isp("playerKey")){
- $ID=valp("playerKey");
- $Q="SELECT dollars,xp,level FROM ".$ADVANCED["playersTable"]." WHERE id=$ID LIMIT 1";
- if($RES=$CON->query($Q)){while($ROW=$RES->fetch_assoc()){$R=$ROW["dollars"].":".$ROW["xp"].":".$ROW["level"];}}
- }
- echo$R;
- $CON->close();
- ?>
Add Comment
Please, Sign In to add comment