Still got battleproblems? ... :(

Need help with an engine or coding not on the list? Need help with a game or the website and forums here? Direct all questions here.
Post Reply
Andrew
Posts: 16
Joined: Mon Aug 15, 2011 12:57 pm

Still got battleproblems? ... :(

Post by Andrew »

Hey got problems with my battle thing it sys. No creature selected. Go back... Something wrong in the attack.php I think, don't know really :P

attack.php

Code: Select all

<?php
include_once 'connect.php';
  session_start();
  include_once 'logo.php';
?>
  
  <link href="style.css" rel="stylesheet" type="text/css" />
<div id="login2" div align="center">

<?php
if (isset($_SESSION['player']))
{
  $player=$_SESSION['player'];
}
else
{
  echo "Not Logged in <br><br><a href='index.php'>Login</a>";
  exit;
}
?>
<?php
$playerinfo="SELECT * from players where name='$player'";
$playerinfo2=mysql_query($playerinfo) or die("could not get player stats!");
$playerinfo3=mysql_fetch_array($playerinfo2);
include_once 'statpanel.php';
$pid = $playerinfo3['id'];
?>
</div>
<div id="table">
<?php

$creature = isset($_POST['creature'])? $_POST['creature'] : "";
if ($creature  = 0)
{
$creatureinfo="SELECT * from creatures where name='$creature'";
$creatureinfo2=mysql_query($creatureinfo) or die("Could not get the creature you were fighting!");
$creatureinfo3=mysql_fetch_array($creatureinfo2);

}
else
{
  echo "<a href='battle.php'>No Creature selected. Go Back!</a>";
  exit;
}

$playersm = $playerinfo3['stamina'];
$playerattack = $playerinfo3['attack'];
$playerdefense = $playerinfo3['defense'];
$playerpass = 0;

$creature = $_POST['creature'];
$creaturesm = $creatureinfo3['stamina'];
$creatureattack = $creatureinfo3['attack'];
$creaturedefense = $creatureinfo3['defense'];
$creaturegold = $creatureinfo3['gold'];
$creatureloot = $creatureinfo3['loot'];
$hasloot = $creatureinfo3['isloot'];


?>
</div>

<div id="player">
<?php
///////////////////////players turn////////////////////
  
echo "<center>";
if (isset($_GET['sid']))
{
   $sid=$_GET['sid'];
   $spellinfo="SELECT * from playermagic where sid='$sid' AND pid='$pid'";
$spellinfo2=mysql_query( $spellinfo) or die("could not get spell!");
$spellinfo3=mysql_fetch_array( $spellinfo2);
$sname = $spellinfo3['name'];
if ($spellinfo3['type'] == "combat")
   {
   if ($spellinfo3['scost'] > $playerinfo3['spoints'])
   {
   echo "You do not have enough Spell Points for this spell.<br>";
    echo "<a href='battle.php'>Go Back";
   exit;
   }
   else
   {
   $spoints = $spellinfo3['scost'];
   $moddamage = $spellinfo3['svalue'] / 10;
   $moddamage = (int)$moddamage;
   $sdamage =  $spellinfo3['svalue'];
   $randdamage = rand(0, $sdamage);
   $sdamage = $randdamage + $moddamage;

   echo " You Cast " . $sname . " and do " . $sdamage . " points of damage";
   $playerpass = 1;
     $updateplayer="update players set spoints=spoints-'$spoints' where name='$player'";
  mysql_query($updateplayer) or die("Could not update player");
   }}
}




if ($playerpass != 1)
{

$weaponinfo="SELECT * from playerweapons where equip=1 AND pid='$pid'";
$weaponinfo2=mysql_query( $weaponinfo) or die("could not get player weapon!");
$weaponinfo3=mysql_fetch_array( $weaponinfo2);

$playerattack = rand(1,20) + $playerattack + $weaponinfo3['rating'];
//////////////////////////////////////////////////////
$creaturedefense = rand(1,20) + $creaturedefense;

if ($playerattack  > $creaturedefense)
{
  //echo  $playerinfo3['name'] . " " . $weaponinfo3['hittext'] . " and hits!<br>"; if you want to display weapon hitting//


  $weapdamage = $weaponinfo3['damage'];
  $halfdamage = $weaponinfo3['damage'] / 2;
  $playerdamage = $playerattack + $halfdamage + $weapdamage;
  $playerdamage = intval($playerdamage);
  $newcreaturesm = $creaturesm - $playerdamage;
      echo "You hit " . $creature . " for " . $english_format_number = number_format($playerdamage) . " <br>";
   
   if ($newcreaturesm < 1)
   {
     echo "You have slain " . $creature . "!";

   $crmaxhp=$creatureinfo3['maxsm'];
       $updatecreature="update creatures set stamina='$crmaxsm' where name='$creature' limit 1";
   mysql_query($updatecreature) or die("Could not update creature");

        if ($playerinfo3['level'] > $creatureinfo3['level'])
        {
         $firstmod = $playerinfo3['level'] - $creatureinfo3['level'];
         $secondmod = $firstmod * 10 ;
         if ($secondmod > 90){$secondmod = 90;}
         $thirdmod = ($secondmod / 100) * $creatureinfo3['exper'];
         $totalexper =$creatureinfo3['exper'] - $thirdmod;
        }
        else
        {
         $firstmod = $creatureinfo3['level'] - $playerinfo3['level'];
         $secondmod = $firstmod * 10 ;
         if ($secondmod > 90){$secondmod = 90;}
         $thirdmod = ($secondmod / 100) * $creatureinfo3['exper'];
         $totalexper =$creatureinfo3['exper'] + $thirdmod;
        }
          $totalexper = (int)$totalexper;

           echo "<br><b><i>" . $totalexper . " experience earned.</b></i><br>";
      $updateplayer="update players set exper=exper+'$totalexper',creature=0 where name='$player'";
      mysql_query($updateplayer) or die("Could not update player");



      echo "<a href='battle.php'>Go Back</a>";
      exit;
   }

  $updatecreature="update creatures set stamina='$newcreaturesm' where name='$creature' limit 1";
  mysql_query($updatecreature) or die("Could not update creature");
}
else
{
  echo  "The enemy dodges your attack!"; 
}}
?>

<?php
//////////////////////creatures turn //////////////////

echo "</center><center>";



///////hit location//////////////////////////////////////
      $randlocation = rand(0,100);
      if ($randlocation <= 15)
      {$location = "arms";}
      elseif ($randlocation <= 70)
      {$location = "chest";} 
      elseif ($randlocation <= 90)
      {$location = "legs";}
      elseif ($randlocation <= 100)
      {$location  = "head";}
      
   $playerarmor="SELECT * from playerarmor where pid='$pid' AND location='$location' AND equip=1";
   $playerarmor2=mysql_query($playerarmor) or die("Could not get player armmor");
   $playerarmor3=mysql_fetch_array($playerarmor2);
   
   $noarmor = 0;
   
   if(is_null($playerarmor3['rating']))
   {
   $playerarmor3['rating'] = 0;
   $noarmor = 1;
   } 
  
  
   ////////////////////////////////////
$creatureattack = rand(1,20) + $creatureattack;
$playerdefense = rand(1,20) + $playerdefense + $playerarmor3['rating'];

if ($creatureattack  > $playerdefense)
{

  echo $creature . " hits for a strike to the " . $location . "<br>";
   $creaturedamage = rand(1,6);
   $newplayersm = $playersm - $creaturedamage;
   echo "For " . $creaturedamage . " points of damage. <br>";
  if ($noarmor == 1)
  {
  //echo "You are not wearing armor on your " . $location . ".<br>"; //
   $extradamage = rand(1,3);
   echo "You take an additional " . $extradamage . " points of damage.<br>";
  $newplayersm = $newplayersm - $extradamage;
  }
     if ($newplayersm < 1)
   {
     echo " You have been slain in your attack on " . $creature . "<br>";
      echo "<a href='game.php'>Revive</a>";
      $maxhp = $playerinfo3['maxsm'];
      $maxspoints= $playerinfo3['maxspoints'];
      $updateplayer="update players set hpoints='$maxsm' where name='$player'";
      mysql_query($updateplayer) or die("Could not update player");
      $updateplayer="update players set spoints='$maxspoints' where name='$player'";
      mysql_query($updateplayer) or die("Could not update player");
      exit;
   }
  $updateplayer="update players set stamina='$newplayersm' where name='$player'";
  mysql_query($updateplayer) or die("Could not update player");
}
else
{
  echo $creature . " misses!";
}
echo "<br><br><a href='battle.php?creature=$creature'>Battle Again!</a>";
?>
</div>
and here's battle.php

Code: Select all

<?php
include_once 'connect.php';
session_start();

include_once 'logo.php';
?>
<link href="style.css" rel="stylesheet" type="text/css" />
<div id="login2" div align="center">


<?php




if (isset($_SESSION['player']))
{
  $player=$_SESSION['player'];
}
else
{
  echo "Not Logged in <br><br> <A href='login.php'>Login</a>";
  exit;
}
?>
</div>
<?php
$playerinfo="SELECT * from players where name='$player'";
$playerinfo2=mysql_query($playerinfo) or die("Could not get player stats!");
$playerinfo3=mysql_fetch_array($playerinfo2);

include_once 'statpanel.php';

$pid = $playerinfo3['id'];
$name = $playerinfo3['name'];
$playerlevel = $playerinfo3['level'];
$playerstamina = $playerinfo3['stamina'];
$playerattack = $playerinfo3['attack'];
$playerdefense = $playerinfo3['defense'];

?>
<div id="table">
<?php

if (isset($_GET['randid']))
{
   $randid=$_GET['randid'];
   $iteminfo="SELECT * from inventory where randid='$randid' AND id ='$pid'";
$iteminfo2=mysql_query($iteminfo) or die("Could not get item stats!");
$iteminfo3=mysql_fetch_array($iteminfo2);

if (!$iteminfo3['name'])
{
}
else
{

$iname = $iteminfo3['name'];
$stats = $iteminfo3['stats'];
$statadd = $iteminfo3['statadd'];
$type = $iteminfo3['type'];

if ($type == "healing")
{
   $newstamina = $statadd + $playerstamina;
   if ($newstamina > $playerinfo3['maxsm'])
   {
    $newstamina = $playerinfo3['maxsm'];
   }
    $updateplayer="update players set stamina='$newstamina' where id='$pid'";
  mysql_query($updateplayer) or die("Could not update player");

    $updateitem="DELETE from inventory where id='$pid' AND randid='$randid' limit 1";
  mysql_query($updateitem) or die("Could not delete item");
   
   $playerstamina = $newstamina;
  
  echo "Used " . $iname . " and recovered " . $statadd . ".<br>";
}

}}


$creature = $playerinfo3['creature'];
    if ($creature = 0)
    {
    $creatureinfo="SELECT * from creatures where id='$creature'";
    $creatureinfo2=mysql_query($creatureinfo) or die("Could not get the creature you were fighting!");
    $creatureinfo3=mysql_fetch_array($creatureinfo2);
    }
    else
    {
    ////////////////////new for video 20
    if (isset($_GET['pllocation']))
{

    $playerinfo3=$_GET['pllocation'];
    $arenainfo="SELECT * from locations where location='$pllocation' AND type='arena'";
    $arenainfo2=mysql_query($arenainfo) or die("Could not get arena");
    $arenainfo3=mysql_fetch_array($arenainfo2);
 $arenalevel = $arenainfo3['level'];
        $creatureinfo="SELECT * from creatures where level <= '$arenalevel' order by rand() limit 1";
        }else{
        $creatureinfo="SELECT * from creatures order by rand() limit 1";
        }      
        $creatureinfo2=mysql_query($creatureinfo) or die("Could not get a creature!");
        $creatureinfo3=mysql_fetch_array($creatureinfo2);
        $cid = $creatureinfo3['id'];
        $updateplayer="update players set creature='$cid' where name='$name'";
           mysql_query($updateplayer) or die("Could not update player");
    }

    $creature = $creatureinfo3['name'];
    $creature = $creatureinfo3['level'];
	$creaturestamina = $creatureinfo3['stamina'];
    $creatureattack = $creatureinfo3['attack'];
    $creaturedefense = $creatureinfo3['defense'];
	$creaturelocation = $creatureinfo3['location'];



?>
</div>
<div id="player">
<?php
/////player info
echo "<u> " . $playerinfo3['name'] . "</u><br>";
echo "Level = " . $playerlevel . "<br><br>";
echo "Stamina = " . $playerstamina . "<br>";
echo "Attack = " . $playerattack . "<br>";
echo "Defense = " . $playerdefense . "<br><br><br>";
?>
</div>
<div id="creature">
<?php
///////creature info
echo "<u> " . $creatureinfo3['name'] . "</u><br>";
echo "Level " . $creatureinfo3['level'] . "<br><br>";
echo "Stamina  =  " . $creaturestamina . "<br>";
echo "Attack  =  " . $creatureattack . "<br>";
echo "Defense  =  " . $creaturedefense . "<br><br><br>";

echo "<a href='attack.php'>Attack</a>";
echo "<br><a href='usemagic.php'>Use Magic</a>";
echo "<br><a href='useitem.php'>Use Item</a>";
echo "<br><a href='index.php'>Exit Arena</a>";


?>
</div>
<div id="logout">
<?php
echo "<br><a href='logout.php'><img src='images/logout.gif'>";
?>
</div>
when I press attack it says that... :(,

Thanks
Andrew
Xaleph
Posts: 897
Joined: Mon Feb 07, 2011 2:55 am

Re: Still got battleproblems? ... :(

Post by Xaleph »

Add this to your script:

error_reporting(E_ALL);
ini_set("display_errors", true);

Come back if no errors were found.
User avatar
Ark
Posts: 427
Joined: Wed Jun 01, 2011 10:25 pm

Re: Still got battleproblems? ... :(

Post by Ark »

Well it seems that the problem relies on lines 32-39

which is:
$creature = isset($_POST['creature'])? $_POST['creature'] : ""; ---> I really dont know wth this is trying to do. (if someone could tell me please)
if ($creature = 0)
{
$creatureinfo="SELECT * from creatures where name='$creature'";
$creatureinfo2=mysql_query($creatureinfo) or die("Could not get the creature you were fighting!");
$creatureinfo3=mysql_fetch_array($creatureinfo2);
}

So try this:

Code: Select all

if (isset($_POST['creature']))
{
$creature = $_POST['creature'];
$creatureinfo="SELECT * from creatures where name='$creature'";
$creatureinfo2=mysql_query($creatureinfo) or die("Could not get the creature you were fighting!");
$creatureinfo3=mysql_fetch_array($creatureinfo2);
}
that's line 32-39 uhmm attack.php I think.
Orgullo Catracho
Winawer
Posts: 180
Joined: Wed Aug 17, 2011 5:53 am

Re: Still got battleproblems? ... :(

Post by Winawer »

Andrew wrote:...

Code: Select all

if ($creature  = 0) //this is wrong
Ark wrote: $creature = isset($_POST['creature'])? $_POST['creature'] : ""; ---> I really dont know wth this is trying to do. (if someone could tell me please)
That's the same as

Code: Select all

if(isset($_POST['creature'])) {
   $creature = $_POST['creature'];
} else {
   $creature = "";
}
Andrew
Posts: 16
Joined: Mon Aug 15, 2011 12:57 pm

Re: Still got battleproblems? ... :(

Post by Andrew »

Well, I can't get it right anyway ... Sorry

any idea?, still got the same problems

Andrew
User avatar
hallsofvallhalla
Site Admin
Posts: 12026
Joined: Wed Apr 22, 2009 11:29 pm

Re: Still got battleproblems? ... :(

Post by hallsofvallhalla »

Code: Select all


if (isset($_POST['creature']))
{
$creature = $_POST['creature'] ;
$creatureinfo="SELECT * from creatures where name='$creature'";
$creatureinfo2=mysql_query($creatureinfo) or die("Could not get the creature you were fighting!");
$creatureinfo3=mysql_fetch_array($creatureinfo2);

}
else
Post Reply

Return to “Advanced Help and Support”