Jump to content

Recommended Posts

[quote]<?php
include_once('top_html.php');
?>
<TD bgcolor=#000000 style="border: 1px solid #363636">
<?php
       
        //NPC Battle
        if ($step == 'npc')
        {
        //NPC Battle
        if ($action == 'normal')
        {
        //Query For NPC Stats
        $query2="select npc_name, npc_power, npc_level, npc_speed, npc_dexterity, npc_health, npc_max_health, npc_gold from npcs where npc_id='$search'";
        $result2=mysql_query($query2);
        if (!$result2)
        {
        die (mysql_error());
        }

        $num_rows=mysql_num_rows($result2);
        $row=mysql_fetch_array($result2);

        $npc_name=($row['npc_name']);
        $npc_power=($row['npc_power']);
        $npc_speed=($row['npc_speed']);
        $npc_dexterity=($row['npc_dexterity']);
        $npc_health=($row['npc_health']);
        $npc_max_health=($row['npc_max_health']);
        $npc_gold=($row['npc_gold']);
        $npc_level=($row['npc_level']);
        //Query For NPC Stats End
       
        //information for the battle formula
        //power is determined by *ing it by 5 then taking it away from dex.
        //dexterity is determined by *inf it by a random number.
        //the random number is between 1 and 10 and then divided by 10.
        //both players will have a chance to attack randomly throughout the battle
        //this is determined by their speed.
        //that will be divided by the oponents dexterity and then *sed by 100 to give a percent.
        //that percent will be the chance they have of hitting more often.
        //however they will never have more than 80% chance of hitting more.
        //if the npc class is Necromancer they will have a chance of a skeleton attacking.
        //this will be determined by overall level of npc that will be turned into a percent.
        //if npc class is Mage they will have a chance of casting a spell.
        //if class fire mage - fire ball, frost mage - ice blast, white mage - heal, black mage - destruction.
        //the chance of casting magic will be determined by overall level
        //if class is thief they will have a chance of stealing extra gold during the battle.
        //if class is warrior they will have the chance of doing battle charge during battle and hitting for extra damage.
       
        //THIS IS NOT THE ACTUAL BATTLE, THESE WILL NEED PLACING IN THE WHILE LOOP.
                                                                       
        //NPC's Formula
        //$npc_power_1 = ($npc_power*2);
        //$npc_rand_1 = rand(1,10);
        //$npc_rand_2 = ($npc_rand_1/10);
        //$npc_dexterity_1 = ($npc_dexterity*$rand_2);
        ////$npc_speed_1 = (($npc_speed/$npc_dexterity)*100);
        //$npc_damage = ($npc_dexterit_1-$npc_power_1);
        //if ($npc_damage < '0') {$npc_damage = '0';}
        //Necro Class random numbers
        //$npc_necro_rand = rand(1,100);
        //mage class random numbers
        //$npc_mage_rand =  rand(1,100);
        //thief class random numbers
        //$npc_thief_rand = rand(1,100);
        //warrior class random numbers
        //$npc_warrior_rand = rand(1,100);
        //end NPC formula
       
       
        //Player's Formula
        //$player_power_1 = ($power*5);
        //$player_rand_1 = rand(1,10);
        //$player_rand_2 = ($player_rand_1/10);
        //$player_dexterity_1 = ($dexterit/$rand_2);
        //$player_speed_1 = (($speed/$dexterity)*100);
        //$player_damage = ($player_dexterit_1-$player_power_1);
        //if ($player_damage < '0') {$player_damage = '0';}
        //Necro Class random numbers
        //$player_necro_rand = rand(1,100);
        //mage class random numbers
        //$player_mage_rand =  rand(1,100);
        //thief class random numbers
        //$player_thief_rand = rand(1,100);
        //warrior class random numbers
        //$player_warrior_rand = rand(1,100);
        //end Players formula 
       
        //If Win and check if level.
        //if ($npc_health < '1')
        //{
        //$gold_gain = rand(10,25);
        //$exp_gain_rand = rand(90,100);
        //$level_difference = ($npc_level-$level);
        //if ($level_difference < 0){$level_difference = '0';}
        //$exp_gain = ($exp_gain_rand*$level_difference);
       
       
        //$sql2="UPDATE accounts SET gold=gold+$gold_gain, level_exp=level_exp+$exp_gain, npc_wins=npc_wins+1 WHERE char_id='$char_id'";
        //if(mysql_query($sql2))
       
        //echo "You won $npc_name. You gain $gold_gain gold and $exp_gain exp.<br>";
       
        //if ($level_exp > $level_exp_need)
        //{
       
        //$sql2="UPDATE accounts SET exp='0', level_exp_need=$exp_need_1, battle_points=battle_points+3, level=level+1 WHERE char_id='$char_id'";
        //if(mysql_query($sql2))
       
        //echo "You also gained a level. You recieve 3 Battle points.";
       
      // }
       
       
        //die(include_once('bottom_html.php'));
        //}
        //End If Win
       
        //If Lose
        //if ($npc_health < '1')
        //{
        //$gold_lose = rand(10,25);

        //$sql2="UPDATE accounts SET gold=gold+$gold_lose, npc_wins=npc_wins-1 WHERE char_id='$char_id'";
        //if(mysql_query($sql2))
       
        //echo "You lost to $npc_name. You lose $gold_lose gold..<br>";
       
       
        //die(include_once('bottom_html.php'));
        //}
        //End If Lose   
       
        //END ALL NOTES.
       
        //THIS IS THE BATTLE.
       
       
        while ($health > 0 AND $npc_health > 0)
        {
        //Formula's In The Loop
       
        //NPC's Formula
        $npc_power_1 = ($npc_power*2);
        $npc_rand_1 = rand(1,10);
        $npc_rand_2 = ($npc_rand_1/10);
        $npc_dexterity_1 = ($npc_dexterity*$npc_rand_2);
        $npc_speed_1 = (($npc_speed/$dexterity)*100);
        $npc_damage = ($npc_power_1-$player_dexterity_1);
        $npc_damage = round($npc_damage);
        if ($npc_damage < '0') {$npc_damage = '0';}
        //Necro Class random numbers
        $npc_necro_rand = rand(1,100);
        //mage class random numbers
        $npc_mage_rand =  rand(1,100);
        //thief class random numbers
        $npc_thief_rand = rand(1,100);
        //warrior class random numbers
        $npc_warrior_rand = rand(1,100);
        //end NPC formula
       
       
        //Player's Formula
        $player_power_1 = ($power*2);
        $player_rand_1 = rand(1,10);
        $player_rand_2 = ($player_rand_1/10);
        $player_dexterity_1 = ($dexterity/$player_rand_2);
        $player_speed_1 = (($speed/$npc_dexterity)*100);
        $player_damage = ($player_power_1-$npc_dexterity_1);
        $player_damage = round($player_damage);
        if ($player_damage < '0') {$player_damage = '0';}
        //Necro Class random numbers
        $player_necro_rand = rand(1,100);
        //mage class random numbers
        $player_mage_rand =  rand(1,100);
        //thief class random numbers
        $player_thief_rand = rand(1,100);
        //warrior class random numbers
        $player_warrior_rand = rand(1,100);
        //end Playersformula
       
        //End In Loop Formula's
       
        //determine who strikes first using the speed.
        if($player_speed_1 > $npc_speed_1)
        {
       
        $sql2="UPDATE npcs SET npc_health=npc_health-$player_damage WHERE npc_id='$search'";
        if(mysql_query($sql2))
       
        echo "<font color=\"Green\">You Attacked $npc_name for $player_damage life.</font><br>";
       
        $npc_health_1=($npc_health-$player_damage);
       
        if($npc_health_1 < 1)
        {
        $gold_gain = rand(10,25);
        $exp_gain_rand = rand(90,100);
        $level_difference = ($npc_level-$level);
        if ($level_difference < 0){$level_difference = '0';}
        $exp_gain = ($exp_gain_rand*$level_difference);
       
       
        $sql2="UPDATE accounts SET gold=gold+$gold_gain, level_exp=level_exp+$exp_gain, npc_wins=npc_wins+1 WHERE char_id='$char_id'";
        if(mysql_query($sql2))
       
        echo "You won $npc_name. You gain $gold_gain gold and $exp_gain exp.<br>";
       
        if ($level_exp > $level_exp_need)
        {
       
        $sql2="UPDATE accounts SET exp='0', level_exp_need=$exp_need_1, battle_points=battle_points+3, level=level+1 WHERE char_id='$char_id'";
        if(mysql_query($sql2))
       
        echo "You also gained a level. You recieve 3 Battle points.";
       
        }
       
       
        die(include_once('bottom_html.php'));
        }
       
        }
        //End the first attack.
       
        //into the battle
        //Player gets first hit
        echo "<font color=\"Green\">You Attacked $npc_name for $player_damage life.</font><br>";
        //update npc life
        $sql2="UPDATE npcs SET npc_health=npc_health-$player_damage WHERE npc_id='$search'";
        if(mysql_query($sql2))
        //if npc dead update player wins etc.
       
        $npc_health_1=($npc_health-$player_damage);
       
        if ($npc_health_1 < 1)
        {
        $gold_gain = rand(10,25);
        $exp_gain_rand = rand(90,100);
        $level_difference = ($npc_level-$level);
        if ($level_difference < 0){$level_difference = '0';}
        $exp_gain = ($exp_gain_rand*$level_difference);
       
       
        $sql2="UPDATE accounts SET gold=gold+$gold_gain, level_exp=level_exp+$exp_gain, npc_wins=npc_wins+1 WHERE char_id='$char_id'";
        if(mysql_query($sql2))
       
        echo "You won $npc_name. You gain $gold_gain gold and $exp_gain exp.<br>";
       
        if ($level_exp > $level_exp_need)
        {
       
        $sql2="UPDATE accounts SET exp='0', level_exp_need=$exp_need_1, battle_points=battle_points+3, level=level+1 WHERE char_id='$char_id'";
        if(mysql_query($sql2))
       
        echo "You also gained a level. You recieve 3 Battle points.";
       
        }
       
       
        die(include_once('bottom_html.php'));
        }
       
        echo "<font color=\"Red\">$npc_name attacked you for $npc_damage life.</font><br>";
        //update player health.
        $sql2="UPDATE accounts SET health=health-$npc_damage WHERE char_id='$char_id'";
        if(mysql_query($sql2))
       
        $health_1=($health-$npc_damage);
     
        //If Lose
        if ($health_1 < 1)
        {
        $gold_lose = rand(10,25);

        $sql2="UPDATE accounts SET gold=gold-$gold_lose, npc_losses=npc_losses+1, health='0' WHERE char_id='$char_id'";
        if(mysql_query($sql2))
       
        echo "You lost to $npc_name. You lose $gold_lose gold.<br>";
       
       
        die(include_once('bottom_html.php'));
        }
        //End If Lose 
       
        }
        }
        //NPC Battle End
       
       
       
       
        //quest NPC Battle
       
        //Normal NPC Battle End
       
       
       
        //NPC Battles End
       
        //PVP Battle
       
        //PVP Battle End
       
       
       
       
       
        ?>
        </TD>
<?php
include_once('bottom_html.php');
?>
[/quote]

thats the code i am using

[quote]Parse error: syntax error, unexpected $end in /home/twottk/public_html/battle.php on line 315[/quote]

and thats the error i am gettin, i have checked all my {}'s and i dont know what else to look for.
Link to comment
https://forums.phpfreaks.com/topic/33898-parse-errors/
Share on other sites

[code]  $sql2="UPDATE accounts SET gold=gold-$gold_lose, npc_losses=npc_losses+1, health='0' WHERE char_id='$char_id'";
        if(mysql_query($sql2))
     
        echo "You lost to $npc_name. You lose $gold_lose gold.
";
     
     
        die(include_once('bottom_html.php'));
        }
        //End If Lose 
     
        }
        }
        //NPC Battle End
     
     
     
     
        //quest NPC Battle
     
        //Normal NPC Battle End
     
     
     
        //NPC Battles End
     
        //PVP Battle
     
        //PVP Battle End
     
     
     
     
     
        ?>
        </TD>
<?php
include_once('bottom_html.php');[/code]

I think you're missing a  { after the first if


edit::
nevermind. you only have one statement after that
Link to comment
https://forums.phpfreaks.com/topic/33898-parse-errors/#findComment-159128
Share on other sites

try indending your code a little better and checking again. i had a little go but got lost very easily....
when the code enclosed between two brackets is quite long, i always find it useful to put a comment after the closing bracket, such as "// end for" or "// end if" etc, sometimes even more descriptive so i know exactly what for/if/while, etc, i'm closing. in this case, it'd help you out alot.

i've never come across that error before, other than a missing bracket.
Link to comment
https://forums.phpfreaks.com/topic/33898-parse-errors/#findComment-159131
Share on other sites

your missing a } at the very very end...

[code]<?php
include_once('top_html.php');
?>
<TD bgcolor=#000000 style="border: 1px solid #363636">
<?php
if($step == 'npc'){
//NPC Battle
if($action == 'normal'){
  //Query For NPC Stats
  $query2="select npc_name, npc_power, npc_level, npc_speed, npc_dexterity, npc_health, npc_max_health, npc_gold from npcs where npc_id='$search'";
  $result2=mysql_query($query2) or die (mysql_error());
  $num_rows=mysql_num_rows($result2);
  $row=mysql_fetch_array($result2);
  $npc_name=($row['npc_name']);
  $npc_power=($row['npc_power']);
  $npc_speed=($row['npc_speed']);
  $npc_dexterity=($row['npc_dexterity']);
  $npc_health=($row['npc_health']);
  $npc_max_health=($row['npc_max_health']);
  $npc_gold=($row['npc_gold']);
  $npc_level=($row['npc_level']);
  //Query For NPC Stats End

  //information for the battle formula
  //power is determined by *ing it by 5 then taking it away from dex.
  //dexterity is determined by *inf it by a random number.
  //the random number is between 1 and 10 and then divided by 10.
  //both players will have a chance to attack randomly throughout the battle
  //this is determined by their speed.
  //that will be divided by the oponents dexterity and then *sed by 100 to give a percent.
  //that percent will be the chance they have of hitting more often.
  //however they will never have more than 80% chance of hitting more.
  //if the npc class is Necromancer they will have a chance of a skeleton attacking.
  //this will be determined by overall level of npc that will be turned into a percent.
  //if npc class is Mage they will have a chance of casting a spell.
  //if class fire mage - fire ball, frost mage - ice blast, white mage - heal, black mage - destruction.
  //the chance of casting magic will be determined by overall level
  //if class is thief they will have a chance of stealing extra gold during the battle.
  //if class is warrior they will have the chance of doing battle charge during battle and hitting for extra damage.
  //THIS IS NOT THE ACTUAL BATTLE, THESE WILL NEED PLACING IN THE WHILE LOOP.

  //NPC's Formula
  //$npc_power_1 = ($npc_power*2);
  //$npc_rand_1 = rand(1,10);
  //$npc_rand_2 = ($npc_rand_1/10);
  //$npc_dexterity_1 = ($npc_dexterity*$rand_2);
  //$npc_speed_1 = (($npc_speed/$npc_dexterity)*100);
  //$npc_damage = ($npc_dexterit_1-$npc_power_1);
  //if ($npc_damage < '0') {$npc_damage = '0';}
  //Necro Class random numbers
  //$npc_necro_rand = rand(1,100);
  //mage class random numbers
  //$npc_mage_rand =  rand(1,100);
  //thief class random numbers
  //$npc_thief_rand = rand(1,100);
  //warrior class random numbers
  //$npc_warrior_rand = rand(1,100);
  //end NPC formula

  //Player's Formula
  //$player_power_1 = ($power*5);
  //$player_rand_1 = rand(1,10);
  //$player_rand_2 = ($player_rand_1/10);
  //$player_dexterity_1 = ($dexterit/$rand_2);
  //$player_speed_1 = (($speed/$dexterity)*100);
  //$player_damage = ($player_dexterit_1-$player_power_1);
  //if ($player_damage < '0') {$player_damage = '0';}
  //Necro Class random numbers
  //$player_necro_rand = rand(1,100);
  //mage class random numbers
  //$player_mage_rand =  rand(1,100);
  //thief class random numbers
  //$player_thief_rand = rand(1,100);
  //warrior class random numbers
  //$player_warrior_rand = rand(1,100);
  //end Players formula 

  //If Win and check if level.
  //if ($npc_health < '1')
  //{
  //$gold_gain = rand(10,25);
  //$exp_gain_rand = rand(90,100);
  //$level_difference = ($npc_level-$level);
  //if ($level_difference < 0){$level_difference = '0';}
  //$exp_gain = ($exp_gain_rand*$level_difference);
  //$sql2="UPDATE accounts SET gold=gold+$gold_gain, level_exp=level_exp+$exp_gain, npc_wins=npc_wins+1 WHERE char_id='$char_id'";
  //if(mysql_query($sql2))
  //echo "You won $npc_name. You gain $gold_gain gold and $exp_gain exp.
";
  //if ($level_exp > $level_exp_need)
  //{
  //$sql2="UPDATE accounts SET exp='0', level_exp_need=$exp_need_1, battle_points=battle_points+3, level=level+1 WHERE char_id='$char_id'";
  //if(mysql_query($sql2))
  //echo "You also gained a level. You recieve 3 Battle points.";
  // }
  //die(include_once('bottom_html.php'));
  //}
  //End If Win
  //If Lose
  //if ($npc_health < '1')
  //{
  //$gold_lose = rand(10,25);
  //$sql2="UPDATE accounts SET gold=gold+$gold_lose, npc_wins=npc_wins-1 WHERE char_id='$char_id'";
  //if(mysql_query($sql2))
  //echo "You lost to $npc_name. You lose $gold_lose gold..";
  //die(include_once('bottom_html.php'));
  //}
  //End If Lose   
  //END ALL NOTES.
  //THIS IS THE BATTLE.

  while($health>0 && $npc_health>0){
  //Formula's In The Loop
  //NPC's Formula
  $npc_power_1 = ($npc_power*2);
  $npc_rand_1 = rand(1,10);
  $npc_rand_2 = ($npc_rand_1/10);
  $npc_dexterity_1 = ($npc_dexterity*$npc_rand_2);
  $npc_speed_1 = (($npc_speed/$dexterity)*100);
  $npc_damage = ($npc_power_1-$player_dexterity_1);
  $npc_damage = round($npc_damage);
  if($npc_damage < '0'){ $npc_damage='0'; }
  //Necro Class random numbers
  $npc_necro_rand = rand(1,100);
  //mage class random numbers
  $npc_mage_rand =  rand(1,100);
  //thief class random numbers
  $npc_thief_rand = rand(1,100);
  //warrior class random numbers
  $npc_warrior_rand = rand(1,100);
  //end NPC formula

  //Player's Formula
  $player_power_1 = ($power*2);
  $player_rand_1 = rand(1,10);
  $player_rand_2 = ($player_rand_1/10);
  $player_dexterity_1 = ($dexterity/$player_rand_2);
  $player_speed_1 = (($speed/$npc_dexterity)*100);
  $player_damage = ($player_power_1-$npc_dexterity_1);
  $player_damage = round($player_damage);
  if($player_damage<'0'){ $player_damage='0'; }
  //Necro Class random numbers
  $player_necro_rand = rand(1,100);
  //mage class random numbers
  $player_mage_rand =  rand(1,100);
  //thief class random numbers
  $player_thief_rand = rand(1,100);
  //warrior class random numbers
  $player_warrior_rand = rand(1,100);
  //end Playersformula
  //End In Loop Formula's
  //determine who strikes first using the speed.
  if($player_speed_1 > $npc_speed_1){
    $sql2="UPDATE npcs SET npc_health=npc_health-$player_damage WHERE npc_id='$search'";
    if(mysql_query($sql2)) echo "<font color=\"Green\">You Attacked $npc_name for $player_damage life.</font>";
    $npc_health_1=($npc_health-$player_damage);
    if($npc_health_1 < 1){
    $gold_gain = rand(10,25);
    $exp_gain_rand = rand(90,100);
    $level_difference = ($npc_level-$level);
    if($level_difference<0){ $level_difference='0'; }
    $exp_gain = ($exp_gain_rand*$level_difference);
    $sql2="UPDATE accounts SET gold=gold+$gold_gain, level_exp=level_exp+$exp_gain, npc_wins=npc_wins+1 WHERE char_id='$char_id'";
    if(mysql_query($sql2))
    echo "You won $npc_name. You gain $gold_gain gold and $exp_gain exp.";
    if($level_exp > $level_exp_need){
      $sql2="UPDATE accounts SET exp='0', level_exp_need=$exp_need_1, battle_points=battle_points+3, level=level+1 WHERE char_id='$char_id'";
      if(mysql_query($sql2)) echo "You also gained a level. You recieve 3 Battle points.";
    }
    die(include_once('bottom_html.php'));
    }
  }
  //End the first attack.
  //into the battle
  //Player gets first hit
  echo "<font color=\"Green\">You Attacked $npc_name for $player_damage life.</font>";
  //update npc life
  $sql2="UPDATE npcs SET npc_health=npc_health-$player_damage WHERE npc_id='$search'";
  if(mysql_query($sql2)) $npc_health_1=($npc_health-$player_damage);
  if($npc_health_1 < 1){
    $gold_gain = rand(10,25);
    $exp_gain_rand = rand(90,100);
    $level_difference = ($npc_level-$level);
    if($level_difference<0){ $level_difference='0'; }
    $exp_gain = ($exp_gain_rand*$level_difference);
    $sql2="UPDATE accounts SET gold=gold+$gold_gain, level_exp=level_exp+$exp_gain, npc_wins=npc_wins+1 WHERE char_id='$char_id'";
    if(mysql_query($sql2))
    echo "You won $npc_name. You gain $gold_gain gold and $exp_gain exp.";
    if($level_exp > $level_exp_need){
    $sql2="UPDATE accounts SET exp='0', level_exp_need=$exp_need_1, battle_points=battle_points+3, level=level+1 WHERE char_id='$char_id'";
    if(mysql_query($sql2)) echo "You also gained a level. You recieve 3 Battle points.";
    }
    die(include_once('bottom_html.php'));
  }
  echo "<font color=\"Red\">$npc_name attacked you for $npc_damage life.</font>";
  //update player health.
  $sql2="UPDATE accounts SET health=health-$npc_damage WHERE char_id='$char_id'";
  if(mysql_query($sql2)) $health_1=($health-$npc_damage);
  //If Lose
  if($health_1<1){
    $gold_lose = rand(10,25);
    $sql2="UPDATE accounts SET gold=gold-$gold_lose, npc_losses=npc_losses+1, health='0' WHERE char_id='$char_id'";
    if(mysql_query($sql2)) echo "You lost to $npc_name. You lose $gold_lose gold.";
    die(include_once('bottom_html.php'));
  }
  //End If Lose 
  }
}
}
?>
</TD>
<?php
include_once('bottom_html.php');
?>[/code]
Link to comment
https://forums.phpfreaks.com/topic/33898-parse-errors/#findComment-159138
Share on other sites

i check that at several point, always after they have been hit for some damage.

[code]<?php
    $npc_health_1=($npc_health-$player_damage);
    if($npc_health_1 < 1){}

  $npc_health_1=($npc_health-$player_damage);
  if($npc_health_1 < 1){}
 
  $health_1=($health-$npc_damage);
  if($health_1<1){} 
?>[/code]

they are the three times i check and each time there is a DIE(); in there somewhere.
Link to comment
https://forums.phpfreaks.com/topic/33898-parse-errors/#findComment-159847
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.