|
hp為生命值
exp為經驗值
mp為魔法值
關於「生命值、魔法值、經驗值」
// exp為經驗值,mp為魔法值,hp為生命值
// $credits為總積分,$postsperday為平均每日積分數,$daysreg為注冊天數
首先是等級,它和總積分有關,這個你們自己可以看的,
經驗值每從1%到達100%後就提升一個級別,至於多少積分,看下等級計算公式.
等級計算公式:
$level = pow(log10 ($credits), 3);
等級 = pow(log10(總積分),3 ) [pow的意思是次方]
也就是說如果一個用戶的總積分是1000,那它的等級就是 pow( log10(1000), 3 ) 即3的3次方就是27級。
$showlevel = floor ($level + 1);
這個的意思就是……
顯示出來的等級為比計算出來的$level的數值+1以後的值小的最大整數
例如算出來為值在2~3之間,例如2.5,則取2為現有的等級
用戶生命力 (HP)
$hpmulti =round($postsperday / 6, 1);
if ($hpmulti > 1.5) {
$hpmulti = 1.5;
}
if ($hpmulti < 1) {
$hpmulti = 1;
}
$maxhp = $level * 10 * $hpmulti;
$hp= $postsperday/10;
if ($hp >= 1) {
$hp= $maxhp;
} else {
$hp= floor($hp * $maxhp);
}
$hp= floor($hp);
$maxhp= floor($maxhp);
if ($maxhp <= 0) {
$zhp = 1;
} else {
$zhp = $maxhp;
hpmulti是生命值的計算因子=每日積分/6
生命最大值=等級*10*計算因子
生命值=(每天積分/10)*生命最大值 [floor的意思是取整]
不足1 按1計算
超過,按最大值計算……
用戶魔法力 ( MP)
$maxmp= ($daysreg * $level) / 10;
$mp= $credits / 3;
if ($mp >= $maxmp) {
$mp = $maxmp;
}
$maxmp = floor($maxmp);
$mp = floor($mp);
if ($maxmp <= 0) {
$zmp = 1;
} else {
$zmp = $maxmp; 你的最大魔力=(你注冊至今的時間×你的等級)/10
你的現有魔力=你的總積分/3 取整(前提是必須擁有最大魔法值)
不足1 按1計算
超過,按最大值計算……
用戶經驗值 (EXP)
用戶每次發布帖子將獲得一定的經驗值,經驗值每從1%到達100%後就提升一個級別 |
|