2016-02-14 20 views
0

我的公式来计算需要一个新的水平获取上一级

function getplayernextlevel($exp) { 

$nextlevel = -1; 
$level = 0; 

while($nextlevel < $exp){ 
    $nextlevel += pow(($level+1),3)+30*pow(($level+1),2)+30*($level+1)-50; 
    $level++; 
} 
return $nextlevel; } 

的XP,但我想不出我如何能得到所需要的上一级XP,因为我想计算的百分比您需要多少百分比才能进入下一级并进入进度条。

回答

0

这会为你工作吗?这是一个快速的方法来计算你需要的所有位,并将它们作为一个数组而不是单个值来计算:

<?php 

function getplayernextlevel($exp) { 

    $prevlevel = -1; 
    $nextlevel = -1; 
    $level = 0; 

    while($nextlevel < $exp){ 
     $prevlevel = $nextlevel; 
     $nextlevel += pow(($level+1),3)+30*pow(($level+1),2)+30*($level+1)-50; 
     $level++; 
    } 

    return array($level, $prevlevel, $nextlevel); 
} 


$sample_result = getplayernextlevel(50); 
echo var_dump($sample_result); 

echo '<br /> Current Level: ' . $sample_result[0]; 
echo '<br /> Previous level EXP: ' . $sample_result[1]; 
echo '<br /> Next level EXP: ' . $sample_result[1]; 

?> 
+0

谢谢你,它工作。 –