dekdong.com โพสต์ 2010-4-15 21:23:25

แถบ EXP MP HP 7.2 ไม่ต้องใช้ปลั๊กอิน ง่ายๆ

จาก http://www.discuzthai.com/viewthread.php?tid=7036 Discuz 7.0ของคุณ acaz ครับ



1. เปิดไฟลล์ viewthread.php ใน root ของ discuz
ค้นหาif($post['username']) {เพิ่มด้านบน      $time = time();
      $daysreg = ($time - $post['regdate']) / (24*3600);
      $ppd =$post['posts'] / $daysreg;
      $post['exp_mp_hp'] = exp_mp_hp($post['posts'],$ppd,$daysreg);2. เปิดไฟลล์ include/forum.func.php
ไปล่างสุด เพิ่มโค๊ดด้านบน ?>function exp_mp_hp($credits,$postsperday,$daysreg){
      $hp_img_dir = "./images/fxpic";
      $credits = $credits < 1 ? 1 : $credits;
      $level = pow(log10 ($credits), 2);
      $ep = floor(100*($level - floor($level)));
      $showlevel = floor($level + 1);
                if ($showlevel>=1 && $showlevel<2) {$textlevel='Lushan via Kaya';}
                elseif ($showlevel>=2 && $showlevel<3) {$textlevel='Little';}
                elseif ($showlevel>=3 && $showlevel<4) {$textlevel='So-so';}
                elseif ($showlevel>=4 && $showlevel<5) {$textlevel='Slightly Xiaocheng';}
                elseif ($showlevel>=5 && $showlevel<10) {$textlevel='Familiar';}
                elseif ($showlevel>=10 && $showlevel<14) {$textlevel='Outstanding';}
                elseif ($showlevel>=14 && $showlevel<18) {$textlevel='Together';}
                elseif ($showlevel>=18 && $showlevel<22) {$textlevel='Have Dacheng';}
                elseif ($showlevel>=22 && $showlevel<26) {$textlevel='High degree of technical proficiency';}
                elseif ($showlevel>=26 && $showlevel<30) {$textlevel='God out of turn';}
                elseif ($showlevel>=30 && $showlevel<34) {$textlevel='Unparalleled';}
                elseif ($showlevel>=34 && $showlevel<38) {$textlevel='Harmony between man and nature';}
                elseif ($showlevel>=38 && $showlevel<50) {$textlevel='Tenno-class final';}
                else{$textlevel='';}
      $hpmulti =round($postsperday / 6, 1);
      $hpmulti = $hpmulti > 1.5 ? 1.5 : $hpmulti;
      $hpmulti = $hpmulti < 1 ? 1 : $hpmulti;
      $maxhp = $level * 10 * $hpmulti;
      $hp= $postsperday/10;
      $hp= $hp >= 1 ? $maxhp : floor($hp * $maxhp);
      $hp= floor($hp);
      $maxhp= floor($maxhp);
      $zhp = $maxhp <= 0 ? 1 : $maxhp;
      $hpf= floor(100 * ($hp / $zhp));
      $maxmp= ($daysreg * $level) / 10;
      $mp= $credits / 3;
      $mp = $mp >= $maxmp ? $maxmp : $mp;
      $maxmp = floor($maxmp);
      $mp = floor($mp);
      $zmp = $maxmp <= 0 ? 1 : $maxmp;
      $mpf= floor(100 * ($mp / $zmp)) ;
      $exp_mp_hp ='<p>Rank: '.$showlevel.' - '.$textlevel.'</p><p>HP: '.$hp.' / '.$maxhp.'</p><div class="showchart"><img src="'.$hp_img_dir.'/img_fill2.gif" width="'.$hpf.'%" height="13" alt="Life values" title="Life values" /></div><p>MP: '.$mp.' / '.$zmp.' </p><div class="showchart"><img src="'.$hp_img_dir.'/img_fill.gif" width="'.$mpf.'%" height="13" alt="Magic value" title="Magic value" /></div><p>EXP: '.$ep.'% </p><div class="showchart"><img src="'.$hp_img_dir.'/img_fill1.gif" width="'.$ep.'%" height="13" alt="Experience" title="Experience" /></div>';
      return $exp_mp_hp;
}3. เปิดไฟลล์ templates viewthread_node.htm
ค้นหา<p>{eval showstars($post['stars']);}</p>เพิ่มด้านล่าง<p>$post</p>4. เปิดไฟลล์ templates css_viewthread.htm ( สำหรับ 7.0 )
เปิดไฟลล์ templates css_append.htm ( สำหรับ 7.2 )
ส่วน 7.1 อาจจะเหมือนกับ 7.2 นะครับ ลองหาดู

เพิ่มโค๊ดนี้ในล่างสุด.showchart { border: 1px solid #000; width:130px; height:13px; background:#FFF; margin:-4px 0 0 20px;}5. หลังจากทำการแก้ไขทั้งหมดบันทึก ดาวน์โหลดไฟลล์และอัพโหลดขึ้นไปยังตำแหน่งต้นฉบับ


6. ทำการอัพเดทแคชไฟลล์

gravity99 โพสต์ 2010-4-16 00:47:23

ขอบคุนครับ ต้องลอง

jaideejung007 โพสต์ 2010-4-16 09:39:26

ครับ ถึงไม่ใช้ปลั๊กอิน

แต่มันมีผลเสี่ยงต่อการอัพเกรดระบบดิสคัสในอนาคต

เพราะว่าคุณได้ แก้ไขไฟล์ที่สำคัญของระบบไปแล้ว

หากมีการอัพเกรดระบบในอนาคต ไฟล์ที่คุณแก้ไขไปก็ต้องถูกเปลี่ยน

ซึ่งต้องมาทำการแก้ไขใหม่ และไม่สามารถที่จะถอนการติดตั้งออกได้ นอกจากเสียว่า ต้องกลับไปลบโค๊ดที่คุณได้เพิ่มลงไปในแต่ล่ะไฟล์ครับ

หากคุณใช้การติดตั้งด้วยปลั๊กอิน

มันจะดีต่อระบบในอนาคต เพราะว่าปลั๊กอิน EXP MP HP ไม่ได้ทำการแก้ไขไฟล์ใดๆ ทั้งสิ้น หากต้องการที่จะยกเลิกการใช้งาน หรือต้องการถอนการติดตั้งปลั๊กอิน EXP MP HP ก็ง่ายเพียงแค่คลิกเดียว ก็เสร็จแล้ว

แต่ตอนนี้ยังไม่มีปลั๊กอินสำหรับ 7.2

เด๋ยวผมไปเอามาปล่อยดีกว่า

mrboomba.net โพสต์ 2010-4-16 10:23:29

จริงด้วย ครับ เสียดาย จัง T^T

dekdong.com โพสต์ 2010-4-16 11:59:34

ตอบกลับ 3# jaideejung007

ก็เพราะมันไม่มีปลั๊กอินไงครับ แล้วก็ผมลองเอาของ 7.1 มาลงแล้ว ไม่เกิดค่าอะไรขึ้นมาเลย มีแต่ INF ตลอด เลยครับ

unisexx โพสต์ 2010-4-16 12:03:28

ไฟล์ต่างๆที่อยู่ในโพลเดอร์ default เราสามารถ นำมาโมแล้วเอามาใส่ในโฟล์เดอร์สกินที่เราใช้ได้นะครับ

ก็จะส่งผลให้สกินที่เราใช้สกินนั้นแสดงผลที่ของไฟล์ที่เราโมได้

โดยไม่กระทบกระเทือนต่อไฟล์ออริจินอลที่อยู่ในโฟลเดอร์ default เลยแม้แต่น้อย...

dekdong.com โพสต์ 2010-4-16 12:05:47

ตอบกลับ 6# unisexx


    ถูกต้องครับ

dekdong.com โพสต์ 2010-4-16 12:07:42

แต่อาจจะมี include/forum.func.php กับ viewthread.php หน่อยนึง ซึ่งก็ไม่ใช่ปัญหาครับ เพราะเราใส่ง่ายๆ
แต่ผมว่ามันน่าใช้ดีนะครับ ไม่ค่อยดึง Server เท่าไหร่

sanboy02 โพสต์ 2010-4-20 18:28:23

ขอบคุณมากคับพี่
หน้า: [1]
ดูในรูปแบบกติ: แถบ EXP MP HP 7.2 ไม่ต้องใช้ปลั๊กอิน ง่ายๆ