[外掛](2.08)重生館

版主: 涅魂, 簫哥

頭像
~木林森~
 
文章: 446
註冊時間: 2005-01-20 12:28 pm
來自: 澎湖的某一處

[外掛](2.08)重生館

文章~木林森~ » 2006-02-11 11:44 pm

請大家幫忙測試看看...謝謝 (切記要改檔案前先備份...) :)
如果是人氣很旺的WOG請不要貿然嘗試 (怕有BUG...) :cry:

如有BUG,請記得在此回報(回覆),或PM我

簡介 寫:外掛名稱:重生館
外掛作者:~木林森~
外掛描述:使玩家可以利用重生系統重新由擁有較強能力的1等角色遊玩WOG。


在資料庫中輸入下列語法 寫:ALTER TABLE wog_player ADD p_rebirth smallint(10) DEFAULT '0' NOT NULL


編輯wog_act.php 寫:尋找
代碼: 選擇全部
case "bank":

前面加上
代碼: 選擇全部
      case "rebirth":
   include("./class/wog_act_rebirth.php");
      switch ($_POST["act"])
      {
         case "rebirth_confirm":
         rebirth_confirm($HTTP_COOKIE_VARS["wog_cookie"]);
         break;
         case "rebirth":
          rebirth($HTTP_COOKIE_VARS["wog_cookie"]);
         break;
      }
   break;

尋找
代碼: 選擇全部
//##########################  kill begin #################

前面加上
代碼: 選擇全部
//##########################  rebirth_confirm begin #################

function rebirth_confirm($user_id)
{
   $wog_act_class = new wog_act_rebirth;
   $wog_act_class->rebirth_confirm($user_id);
}

//##########################  rebirth begin #################

function rebirth($user_id)
{
   $wog_act_class = new wog_act_rebirth;
   $wog_act_class->rebirth($user_id);
}

編輯wog.js 寫:尋找
代碼: 選擇全部
<input type="button" value="復活房" onClick=parent.act_click(\'chara\',\'revive\')>

後面加上
代碼: 選擇全部
 <input type="button" value="重生館" onClick=parent.act_click("rebirth","rebirth_confirm")>

尋找
代碼: 選擇全部
function p1()
{
   parent.peolist.document.location.reload();
   window.setTimeout("p1()",120000); 
}
window.setTimeout("p1()",120000);

後面加上
代碼: 選擇全部
function rebirth_confirm(rebirth_money,rebirth_lv,basic,total_point)
{
   message_cls();
   temp_st=new Array("str","smart","life","agl");
   var view_name=parent.wog_view;
   view_name.document.write('<form method="POST" action="wog_act.php">');
   view_name.document.write('<INPUT TYPE="hidden" NAME="act" VALUE="rebirth"><INPUT TYPE="hidden" NAME="f" VALUE="rebirth">');
   view_name.document.write('<p align="center"><font face="新細明體" color="#FF0000"><b>轉生需付'+rebirth_money+'元,等級須達到'+rebirth_lv+'等!!</b></font></p>');
   view_name.document.write('<p align="center"><font face="新細明體" color="#FF0000"><b>如果裝備欄已滿,身上裝備將被遺棄!!</b></font></p>');
   view_name.document.write('<p align="center"><tr><td class="b1">重設角色屬性:<input type="radio" name="s" value="1">地 <input type="radio" name="s" value="2">水 <input type="radio" name="s" value="3">火 <input type="radio" name="s" value="4">木 <input type="radio" name="s" value="5">風 <input type="radio" name="s" value="6">毒</td></tr></p>');
view_name.document.write('<p align="center"><tr><td class="b1">重設角色能力: 基本值 '+basic+'<table border="1" cellspacing="0" cellpadding="0"><tr><td class="b2" width="70">力量 '+basic+'</td><td class="b2" width="70">智力 '+basic+'</td><td class="b2" width="70">體力 '+basic+'</td><td class="b2" width="70">敏捷 '+basic+'</td></tr>');
   view_name.document.write('<tr>');
   for(var j=0;j<4;j++)
   {
      view_name.document.write('<td class="b1"><select name='+temp_st[j]+'>');
      for(var i=1;i<16;i++)
      {
         view_name.document.write('<option value="'+i+'">+'+i);
      }
      view_name.document.write('</select></td>');
   }
   view_name.document.write('</tr></table></p>');
   view_name.document.write('<p align="center"><tr><td class="b1">★你共有「<font color="#FF0000"><b>'+total_point+'</b></font>」點的加分點數可增加能力值,請自行分配。分配總和超出<font color="#FF0000"><b>'+total_point+'</b></font>以上則無法註冊。</td></tr></p>');
   view_name.document.write('<p align="center"><font face="新細明體" color="#FF0000"><b>按下確認鈕確認重生,若不重生請勿點選!!</b></font></p>');
     view_name.document.write('<p align="center"><input type="submit" value="確認重生"></p>');
   view_name.document.write('</form>');
}

function rebirth_end(a)
{
   message_cls();
   var view_name=parent.wog_view;
   var s=new Array;
   s[1]="您未達到指定等級";
   s[2]="金錢不足";
   s[3]="這次的重生失敗了";   
   s[4]="您已經重獲新生了";
   view_name.document.write(temp_table1);
   view_name.document.write('<tr><td >'+s[a]+'!!</td></tr>')
   view_name.document.write(temp_table2);
}

編輯wog_act_config.php 寫:尋找
代碼: 選擇全部
?>

前面加上
代碼: 選擇全部
$wog_arry["rebirth_money"]=10000000;//重生費用
$wog_arry["rebirth_lv"]=1000;//重生所需等級
$wog_arry["rebirth_vip"]=0;//是否須為VIP會員 1開 0關
$wog_arry["rebirth_fail"]=1;//是否會失敗 1開 0關
$wog_arry["rebirth_fail_max"]=20;//重生失敗機率 預設值20,表示機率1/20

新增class/wog_act_rebirth.php 寫:<?
/***************************************************************************
外掛名稱: Rebirth MOD
外掛作者: ~木林森~ <http://holyfun.no-ip.org/holyfunbbs/>
外掛描述: 使玩家可以利用重生系統重新由擁有較強能力的1等角色遊玩WOG。
外掛版本: 1.0.0
***************************************************************************/
class wog_act_rebirth{
function rebirth_confirm($user_id)
{
global $DB_site,$wog_arry;
$p=$DB_site->query_first("select * from wog_player where p_id = '".$user_id."'");
if($p[p_userlv]==0 && $wog_arry["rebirth_vip"]==1){
alertWindowMsg("重生系統為VIP會員專用!");
}
if($p[p_rebirth]<1){
$basic=30;
}else{
$basic=$p[p_rebirth]*50;
}
showscript("parent.rebirth_confirm(".$wog_arry['rebirth_money'].",".$wog_arry['rebirth_lv'].",".$basic.",".$wog_arry['total_point'].")");
}

function rebirth($user_id)
{
global $DB_site,$_POST,$lang,$wog_arry;
$p=$DB_site->query_first("select * from wog_player where p_id=".$user_id."");
if($p[p_rebirth]<1){
$basic=30;
}else{
$basic=$p[p_rebirth]*50;
}
$luck=rand(10,20);
if($p[p_lv]<$wog_arry["rebirth_lv"]){
showscript("parent.rebirth_end(1)");
}elseif(!isset($_POST[s]) || empty($_POST[s])){
alertWindowMsg("您沒有選擇新的屬性!","javascript:history.go(-1)");
}elseif($p[p_money]<$wog_arry["rebirth_money"]){
showscript("parent.rebirth_end(2)");
}elseif( ((int)$_POST["str"]+(int)$_POST["smart"]+(int)$_POST["agl"]+(int)$_POST["life"]) > $wog_arry["total_point"] ){
alertWindowMsg("加分點數超過".$wog_arry["total_point"],"javascript:history.go(-1)");
}elseif($wog_arry["rebirth_fail"]==1 && rand(1,$wog_arry["rebirth_fail_max"])==1){
showscript("parent.rebirth_end(3)");
}else{
$d=$DB_site->query_first("select a_id,d_body_id,d_head_id,d_hand_id,d_foot_id,d_item_id from wog_player where p_id=".$user_id."");
for($i=0;$i<6;$i++){
if($d[$i]<>0){
switch($i)
{
case "0":
$a_id="a_id";
break;
case "1":
$a_id="d_body_id";
break;
case "2":
$a_id="d_head_id";
break;
case "3":
$a_id="d_hand_id";
break;
case "4":
$a_id="d_foot_id";
break;
case "5":
$a_id="d_item_id";
break;
}
$x=$DB_site->query_first("SELECT a.$a_id,b.$a_id,c.d_at,c.d_mat,c.d_df,c.d_mdf,c.d_agl FROM wog_item a,wog_player b,wog_df c WHERE a.p_id=$user_id AND b.p_id=$user_id AND c.d_id=b.$a_id");
$item=explode(",",$x[0]);
if(count($item)<10){
$x[0].=($x[0] == "")?$x[1]:",".$x[1];
$DB_site->query("update wog_item set $a_id='$x[0]' where p_id=$user_id");
}
$DB_site->query("UPDATE wog_player SET $a_id='',p_at=p_at-$x[d_at],p_mat=p_mat-$x[d_mat],p_df=p_df-$x[d_df],p_mdf=p_mdf-$x[d_mdf],p_agl=p_agl-$x[d_agl] WHERE p_id=$user_id");
}
}
$DB_site->query("INSERT INTO wog_message SET p_id=".$user_id.",title='收到來自系統的訊息:<br><table width=80% border=1 bordercolor=#999999 bgcolor=#333333 cellspacing=0 cellpadding=10><tr><td style=text-align:left><p align="center">順利重生!這是您第".($p[p_rebirth]+1)."次重生!</p></td></tr></table>',dateline=".time());
if($p[p_rebirth]==0){
$p[p_rebirth]=1;
}
$DB_site->query("update wog_player set p_lv=1,p_exp=0,p_nextexp=1000,p_at=".rand($p[p_rebirth]*2,$p[p_rebirth]*10)."+".($_POST["str"]+$basic).",
p_df=".rand($p[p_rebirth]*2,$p[p_rebirth]*10)."+".($_POST["str"]+$basic).",p_mat=".rand($p[p_rebirth]*2,$p[p_rebirth]*10)."+".($_POST["smart"]+$basic).",
p_mdf=".rand($p[p_rebirth]*2,$p[p_rebirth]*10)."+".($_POST["smart"]+$basic).", p_str=".rand($p[p_rebirth],$p[p_rebirth]*5)."+".($_POST["str"]+$basic).",p_life=".rand($p[p_rebirth],$p[p_rebirth]*5)."+".($_POST["life"]+$basic).",
p_smart=".rand($p[p_rebirth],$p[p_rebirth]*5)."+".($_POST["smart"]+$basic).",p_agl=".rand($p[p_rebirth],$p[p_rebirth]*5)."+".($_POST["agl"]+$basic).",p_au=".rand($p[p_rebirth]*2,$p[p_rebirth]*6)."+$basic/2,p_be=".rand($p[p_rebirth],$p[p_rebirth]*5)."+$basic/2,p_hp=".($_POST["life"]*2+$basic).",
p_hpmax=".($_POST["life"]*2+$basic).", p_luck=".$luck.",p_s=".$_POST[s].",ch_id=6,p_ch_s_id=0,
p_money=p_money-".$wog_arry["rebirth_money"].",p_rebirth=p_rebirth+1 where p_id=".$user_id);
showscript("parent.rebirth_end(4)");
}
}
}
?>


備註 寫:因為有修改到wog.js,所以記得要重新整理...





最後由 ~木林森~ 於 2006-03-02 1:05 am 編輯,總共編輯了 15 次。
龜速吸收PHP知識中...
"新"[團結就是力量論壇]登場!歡迎大家加入
WOG Only v2.08 + else Mod (簡單的架設結合許多優秀外掛的WOG)

頭像
edwin
 
文章: 371
註冊時間: 2005-10-09 2:59 pm
來自: 你的家

文章edwin » 2006-02-12 8:37 pm

按了無反應 o_0


圖檔

頭像
~木林森~
 
文章: 446
註冊時間: 2005-01-20 12:28 pm
來自: 澎湖的某一處

文章~木林森~ » 2006-02-12 8:46 pm

測試過沒問題... :roll:
檢查一下有沒有哪個步驟漏掉
或是"前面加上"加到後面去...等
PS.記得改完wog.js要按重新整理


最後由 ~木林森~ 於 2006-02-12 10:15 pm 編輯,總共編輯了 2 次。
龜速吸收PHP知識中...
"新"[團結就是力量論壇]登場!歡迎大家加入
WOG Only v2.08 + else Mod (簡單的架設結合許多優秀外掛的WOG)

頭像
~木林森~
 
文章: 446
註冊時間: 2005-01-20 12:28 pm
來自: 澎湖的某一處

[分享]重生專用區域

文章~木林森~ » 2006-02-12 9:47 pm

這邊提供一個"重生專用區域"

編輯class/wog_fight_select.php 寫:尋找
代碼: 選擇全部
a.d_item_id ,a.i_img

後面加上
代碼: 選擇全部
,a.p_rebirth

尋找
代碼: 選擇全部
      if($p=$DB_site->query_first($sql))//check act_timt benig
      {

後面加上
代碼: 選擇全部
         if($_POST["act"]=="[color=red]地區代碼[/color]" && $p[p_rebirth]==0){
            alertWindowMsg("您尚未重生過!這個地區只有重生過的人才能使用!");
         }

也可以限制要重生過幾次
代碼: 選擇全部
         if($_POST["act"]=="[color=red]地區代碼[/color]" && $p[p_rebirth]<[color=red]所需重生次數[/color]){
            alertWindowMsg("您尚未重生過!這個地區只有重生過[color=red]某次[/color]的人才能使用!");
         }

如有BUG,請記得在此回報(回覆),或PM我


龜速吸收PHP知識中...
"新"[團結就是力量論壇]登場!歡迎大家加入
WOG Only v2.08 + else Mod (簡單的架設結合許多優秀外掛的WOG)

lts
 
文章: 126
註冊時間: 2005-04-23 9:51 am
來自: 緣份

文章lts » 2006-02-12 10:32 pm

測試中
...能否增加一樣:能夠顯示他已重生x次


http://lts.sytes.net

失敗的我..................

頭像
~木林森~
 
文章: 446
註冊時間: 2005-01-20 12:28 pm
來自: 澎湖的某一處

文章~木林森~ » 2006-02-12 10:38 pm

希望增加在哪個地方?


龜速吸收PHP知識中...
"新"[團結就是力量論壇]登場!歡迎大家加入
WOG Only v2.08 + else Mod (簡單的架設結合許多優秀外掛的WOG)

lts
 
文章: 126
註冊時間: 2005-04-23 9:51 am
來自: 緣份

文章lts » 2006-02-12 10:44 pm

~木林森~ 寫:希望增加在哪個地方?


英 雄 檔 案,,冠軍
&線上名單

不知森@@能否這樣設@@這樣做易玩家觀看人家的轉生次數@w@"
-----------------------------------------

感謝森=v=寫這個系統@@


最後由 lts 於 2006-02-13 9:34 am 編輯,總共編輯了 1 次。
http://lts.sytes.net

失敗的我..................

頭像
~木林森~
 
文章: 446
註冊時間: 2005-01-20 12:28 pm
來自: 澎湖的某一處

[分享]線上名單顯示重生次數

文章~木林森~ » 2006-02-13 12:18 am

線上名單顯示重生次數
預覽圖

V2改法:
編輯class\wog_etc_peo.php 寫:尋找
代碼: 選擇全部
p_place

後面加上
代碼: 選擇全部
,p_rebirth

尋找
代碼: 選擇全部
$onlines[7]

後面加上
代碼: 選擇全部
.",".$onlines[8]

編輯wog.js 寫:尋找
代碼: 選擇全部
<td  >LV</td>

後面加上
代碼: 選擇全部
<td>重生</td>

尋找
代碼: 選擇全部
<font color=green>'+s2[0]+'</font></b></a></td><td >'+s2[2]+'</td>

後面加上
代碼: 選擇全部
<td >'+s2[7]+'</td>

尋找
代碼: 選擇全部
<font color="'+fcolor+'">'+s2[0]+'</font></b></a></td><td >'+s2[2]+'</td>

後面加上
代碼: 選擇全部
<td >'+s2[7]+'</td>

function onlinelist中
尋找所有的
代碼: 選擇全部
colspan="3"

全部替換成
代碼: 選擇全部
colspan="4"



V3改法:
編輯class\wog_etc_peo.php 寫:尋找
代碼: 選擇全部
p_place

後面加上
代碼: 選擇全部
,p_rebirth

尋找
代碼: 選擇全部
$onlines[5]

後面加上
代碼: 選擇全部
.",".$onlines[6]

編輯wog.js 寫:尋找
代碼: 選擇全部
<td  >LV</td>

後面加上
代碼: 選擇全部
<td>重生</td>

尋找
代碼: 選擇全部
<font color="'+fcolor+'">'+s2[0]+'</font></b></a></td><td >'+s2[2]+'</td>

後面加上
代碼: 選擇全部
<td >'+s2[6]+'</td>

function onlinelist中
尋找所有的
代碼: 選擇全部
colspan="3"

全部替換成
代碼: 選擇全部
colspan="4"




最後由 ~木林森~ 於 2006-08-28 1:02 am 編輯,總共編輯了 1 次。
龜速吸收PHP知識中...
"新"[團結就是力量論壇]登場!歡迎大家加入
WOG Only v2.08 + else Mod (簡單的架設結合許多優秀外掛的WOG)


涅魂
 
文章: 4463
註冊時間: 2004-01-04 11:17 am
來自: Taiwan
性別: 男生

文章涅魂 » 2006-02-14 6:54 pm

lts 寫:這個為測試站
1級便可轉生 $10重生費用 歡迎試用=o="


版規:文章管理部分第二點 寫:非發表於[公告]WOG官方聯盟中的廣告性文章直接砍除



圖檔

lts
 
文章: 126
註冊時間: 2005-04-23 9:51 am
來自: 緣份

文章lts » 2006-02-14 7:49 pm

=o="喔..對不起-w-"

我只想著給人試=w="......沒想過...會這樣...對不起喔=w="


http://lts.sytes.net

失敗的我..................


涅魂
 
文章: 4463
註冊時間: 2004-01-04 11:17 am
來自: Taiwan
性別: 男生

文章涅魂 » 2006-02-14 7:51 pm

下次要放上略有廣告性質的網址時可以用有技巧的方式來放...= =+(注意,是"略為",純廣告性質直接刪除)

可以將網址放在簽名檔中,然後在文章中著名即可~ :o


圖檔

頭像
edwin
 
文章: 371
註冊時間: 2005-10-09 2:59 pm
來自: 你的家

文章edwin » 2006-02-14 9:32 pm

我成功了,
還不錯呀 :o
給大家看看效果
圖檔


圖檔

lts
 
文章: 126
註冊時間: 2005-04-23 9:51 am
來自: 緣份

文章lts » 2006-02-14 10:14 pm

我發現重生後=o="
勝利 0戰敗 0..會被清0
好像沒玩過似的..有方法不清0嘛?


http://lts.sytes.net

失敗的我..................

頭像
~木林森~
 
文章: 446
註冊時間: 2005-01-20 12:28 pm
來自: 澎湖的某一處

文章~木林森~ » 2006-02-14 10:17 pm

在wog_act_rebirth.php尋找下面這段把它刪除
代碼: 選擇全部
p_win=0,p_lost=0,p_pk_win=0,p_pk_lost=0,

原文已更新


龜速吸收PHP知識中...
"新"[團結就是力量論壇]登場!歡迎大家加入
WOG Only v2.08 + else Mod (簡單的架設結合許多優秀外掛的WOG)

頭像
~木林森~
 
文章: 446
註冊時間: 2005-01-20 12:28 pm
來自: 澎湖的某一處

[分享]個人&冠軍狀態顯示重生次數

文章~木林森~ » 2006-02-14 10:54 pm

個人&冠軍狀態顯示重生次數
首頁預覽圖
個人狀態預覽圖
冠軍狀態預覽圖

V3版改法請點此

修改前請先備份...

在資料庫中輸入下列語法 寫:ALTER TABLE wog_cp ADD p_rebirth smallint(10) DEFAULT '0' NOT NULL


編輯class/wog_act_chara.php 寫:尋找
代碼: 選擇全部
wog_player.p_sat_name

後面加上
代碼: 選擇全部
,wog_player.p_rebirth

尋找
代碼: 選擇全部
'$bbs_id'

後面加上
代碼: 選擇全部
,'$p[p_rebirth]'

尋找
代碼: 選擇全部
'$p[p_sat_name]');\n

取代
代碼: 選擇全部
'$p[p_sat_name]','$p[p_rebirth]');\n

尋找
代碼: 選擇全部
wog_cp.p_win_total

後面加上
代碼: 選擇全部
,wog_cp.p_rebirth

尋找
代碼: 選擇全部
'$temp_s'

後面加上
代碼: 選擇全部
,'$p[p_rebirth]'


編輯class/wog_etc_well.php 寫:尋找
代碼: 選擇全部
wog_cp.p_win_total

後面加上
代碼: 選擇全部
,wog_cp.p_rebirth

尋找
代碼: 選擇全部
'$temp_s'

後面加上
代碼: 選擇全部
,'$p[p_rebirth]'


編輯class/wog_fight_select.php 寫:在function fire_cp中尋找
代碼: 選擇全部
a.p_ch_s_id

後面加上
代碼: 選擇全部
,a.p_rebirth

尋找
代碼: 選擇全部
p_ch_s_id=$p[p_ch_s_id]

後面加上
代碼: 選擇全部
,p_rebirth=$p[p_rebirth]

尋找
代碼: 選擇全部
p_be,p_ch_s_id

後面加上
代碼: 選擇全部
,p_rebirth

尋找
代碼: 選擇全部
$p[p_be],$p[p_ch_s_id]

後面加上
代碼: 選擇全部
,$p[p_rebirth]


編輯wog.js 寫:下面這部分比較麻煩...請仔細修改
尋找

代碼: 選擇全部
,bbsid

後面加上
代碼: 選擇全部
,p_rebirth

尋找(function login_view()中)
代碼: 選擇全部
s_ch_name);

取代
代碼: 選擇全部
s_ch_name,p_rebirth);

尋找(function systeam_view2()中)
代碼: 選擇全部
p_sat_name)

取代
代碼: 選擇全部
p_sat_name,p_rebirth)

尋找(function systeam_view2()中)
代碼: 選擇全部
s_ch_name);

取代
代碼: 選擇全部
s_ch_name,p_rebirth);

尋找(function well_view()中)
代碼: 選擇全部
,a_win

後面加上
代碼: 選擇全部
,p_rebirth

尋找(function well_view()中)
代碼: 選擇全部
win_num);

前面加上
代碼: 選擇全部
p_rebirth,

尋找(function cp_view()中)
代碼: 選擇全部
,a_win

後面加上
代碼: 選擇全部
,p_rebirth

尋找(function cp_view()中)
代碼: 選擇全部
win_num);

前面加上
代碼: 選擇全部
p_rebirth,

尋找
代碼: 選擇全部
function status_view(......[color=red]win_num[/color])

win_num前面加上
代碼: 選擇全部
p_rebirth,

尋找
代碼: 選擇全部
      if(s_ch_name != '')
      {
         view_name.document.write('<br>'+s_ch_name+'奧義');
      }

後面加上
代碼: 選擇全部
      if(p_rebirth != '0')
      {
         view_name.document.write('<br>重生 <b>'+p_rebirth+'</b> 次');
      }


完...記得重新整理


最後由 ~木林森~ 於 2006-08-03 2:39 pm 編輯,總共編輯了 7 次。
龜速吸收PHP知識中...
"新"[團結就是力量論壇]登場!歡迎大家加入
WOG Only v2.08 + else Mod (簡單的架設結合許多優秀外掛的WOG)

下一頁

回到 外掛區

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron