[分享](V3)雙向訊息紀錄

版主: 涅魂, 簫哥


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

[分享](V3)雙向訊息紀錄

文章涅魂 » 2005-05-29 11:29 am

標題看起來有點文謅謅的,簡單來講就是在紀錄訊息到情報中心的時候可以讓發出方與接收方同時接收到訊息
EXAMPLE
發出方把 木刀 送出給接收方,則雙方所得到的訊息如下

發出方得到的訊息
代碼: 選擇全部
你將 木刀 傳送給 接收方

接收方得到的訊息
代碼: 選擇全部
從 發出方 收到 木刀


以下總共有三個修改,分別是 工會,銀行,與道具 的雙向訊息紀錄

1.工會瓦解雙向紀錄(會長處理用&尋仇用XD) 寫:開啟檔案wog/class/wog_fight_select.php
尋找
代碼: 選擇全部
$DB_site->query("insert into wog_group_event(g_b_id,g_b_body,g_b_dateline)values(".$p_group[p_g_id].",'".$de_name." 瓦解',".$time.")");

覆蓋為
代碼: 選擇全部
$DB_site->query("insert into wog_group_event(g_b_id,g_b_body,g_b_dateline)values(".$p_group[p_g_id].",'".$de_name." 被 ".$p_group[g_name]." 的 ".$p_group[p_name]." 瓦解',".$time.")");


尋找
代碼: 選擇全部
$DB_site->query("insert into wog_message(p_id,title,dateline)values(".$ps["p_id"].",'".$de_name." 瓦解',".$time.")");

覆蓋為
代碼: 選擇全部
$DB_site->query("insert into wog_message(p_id,title,dateline)values(".$ps["p_id"].",'".$de_name."  瓦解 攻擊者:".$p_group[g_name]." 的 ".$p_group[p_name]."',".$time.")");

儲存,關閉所有檔案


2.銀行匯款雙向紀錄(追查匯款流向用XD) 寫:
開啟檔案wog/class/wog_act_store.php
尋找
代碼: 選擇全部
   function bank_save($user_id,$pay_id,$money)
   {
      global $DB_site,$lang,$forum_message;

覆蓋為
代碼: 選擇全部
   function bank_save($user_id,$pay_id,$money)
   {
      global $DB_site,$lang,$forum_message,$_POST;

尋找
代碼: 選擇全部
$DB_site->query("insert into wog_message(p_id,title,dateline)values(".$pay_id.",'".$have_price[p_name]." 匯入 ".$money."元 到你的銀行 ',".time().")");

後面,加上
代碼: 選擇全部
$DB_site->query("insert into wog_message(p_id,title,dateline)values(".$user_id.",'你匯出 ".$money." 元 到 ".$_POST["pay_id"]." 的戶頭 ',".time().")");


3.道具雙向紀錄(追查道具流向用XD) 寫:開啟檔案wog/class/wog_act_arm.php
尋找
代碼: 選擇全部
$_POST["pay_id"]=trim($_POST["pay_id"]);

前面,加上
代碼: 選擇全部
$pay_name=$_POST["pay_id"];

尋找
代碼: 選擇全部
$DB_site->query("insert into wog_message(p_id,title,dateline)values(".$pay_id[0].",'從 ".$p_name." 收到 ".$d_name." ',".time().")");

後面,加上
代碼: 選擇全部
$DB_site->query("insert into wog_message(p_id,title,dateline)values(".$user_id.",'你將 ".$d_name." 傳送給 ".$pay_name."',".time().")");

儲存,關閉所有檔案
完畢。 :wink:


最後由 涅魂 於 2006-06-03 9:03 pm 編輯,總共編輯了 3 次。

chuwk00
 
文章: 21
註冊時間: 2004-08-07 11:42 am

文章chuwk00 » 2005-05-29 2:18 pm

1.登入 & 登出 雙向紀錄 呢?
2.幸運撿到...呢?



大頭公仔
 
文章: 1
註冊時間: 2005-01-23 8:10 pm

文章大頭公仔 » 2005-05-29 3:01 pm

存銀行也有喔!!真不賴!




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

文章涅魂 » 2005-05-29 8:49 pm

chuwk00 寫:1.登入 & 登出 雙向紀錄 呢?
2.幸運撿到...呢?

這篇文章所強調的主要是碰上一些大白小白時可以有方向地追查
那些大白小白們所作的事情不外乎就是偷滅別人工會,偷道具或偷錢
所以安裝了這個外掛之後,那些大白小白們就無所遁形了 :twisted:
而且除了防白以外,還可以更加詳盡地紀錄玩家們所作的某些重要行動

而登出&登入...每天都有很多人登出登入遊戲,如果這個也有紀錄的話會對資料庫造成部分不必要的負擔..
幸運撿到的理由同上..
不過還是謝謝您的建議 :wink:


圖檔

GYM
 
文章: 12
註冊時間: 2004-05-05 12:12 am
來自: YLL

文章GYM » 2005-05-29 9:55 pm

幸運撿到感覺沒必要--"
打到什麼寶自己可以看裝備欄吧…SO~




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

文章涅魂 » 2005-05-30 10:58 pm

額外追加一個功能~~
將[玩家訊息]分成[接收訊息]與[傳送訊息]兩部分。
沒有裝[管理員&GM訊息]也適用


開啟檔案wog/class/wog_act_message.php
尋找
代碼: 選擇全部
$s=$s.";".$packs[title].",".date("Y/m/d  g:i a",$packs[dateline]);

覆蓋為
代碼: 選擇全部
if(eregi("匯入",$packs[title]) || eregi("收到",$packs[title]) || eregi("瓦解",$packs[title])){$sec=1;}else{$sec=2;}
         $s=$s.";".$packs[title].",".date("Y/m/d  g:i a",$packs[dateline]).",".$sec;


開啟檔案wog/wog.js
以下"尋找"步驟依照有無安裝[管理員&GM訊息]而尋找內容有所不同
尋找(沒安裝[管理員&GM訊息])
代碼: 選擇全部
   view_name.document.write(temp_table1);
   view_name.document.write('<tr><td>內容</td><td>發生時間</td></tr>');
   if(s!="")
   {
      var s1=s.split(";");
      for(var i=0;i<s1.length;i++)
      {   
         var s2=s1[i].split(",");
         view_name.document.write('<tr><td>'+s2[0]+'</td><td>'+s2[1]+'</td></tr>');
      }
   }else
   {
      view_name.document.write('<tr><td colspan="8" >尚未發生任何事件</td></tr>');   
   }
   view_name.document.write(temp_table2);

尋找(有安裝[管理員&GM訊息])
代碼: 選擇全部
   view_name.document.write(temp_table1);
   view_name.document.write('<tr bgcolor=#5f5f5f><td colspan=8>玩家訊息</td></tr>');
   if(s!="")
   {
      view_name.document.write('<tr><td width=65%>內容</td><td width=35%>發生時間</td></tr>');
      var s1=s.split(";");
      for(var i=0;i<s1.length;i++)
      {   
         var s2=s1[i].split(",");
         view_name.document.write('<tr><td>'+s2[0]+'</td><td>'+s2[1]+'</td></tr>');
      }
   }else
   {
      view_name.document.write('<tr><td colspan="8" >尚未發生任何事件</td></tr>');   
   }
   view_name.document.write(temp_table2);

覆蓋為
代碼: 選擇全部
   view_name.document.write(temp_table1);
   view_name.document.write('<tr bgcolor=#5f5f5f><td colspan=8>玩家訊息</td></tr>');
   view_name.document.write('<tr>');
   if(s!="")
   {
      var top_name="";
      for(var a=1;a<=2;a++)
      {
         (a==1)?top_name="接收":top_name="傳送";
         view_name.document.write('<td>'+temp_table1);
         view_name.document.write('<tr><td colspan=2>'+top_name+'訊息</td></tr>');
         view_name.document.write('<tr><td width=65%>內容</td><td width=35%>發生時間</td></tr>');
         var s1=s.split(";");
         for(var i=0;i<s1.length;i++)
         {
            var s2=s1[i].split(",");
            if(s2[2]==a)
            {
            view_name.document.write('<tr><td>'+s2[0]+'</td><td>'+s2[1]+'</td></tr>');
            }
         }
         view_name.document.write(temp_table2);
      }
   }else
   {
      view_name.document.write('</tr><tr><td colspan="8" >尚未發生任何事件</td></tr>');   
   }
   view_name.document.write(temp_table2);

儲存,關閉所有檔案
完畢。 :wink:


圖檔


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

文章涅魂 » 2005-06-13 3:13 pm

修正兩個玩家訊息的問題
1.若有其中一種訊息為空的時候,表格會變得不好看,因此在這裡將之更正
2.將表格對齊上方,讓表格的上面不會剩下一堆空白

開啟檔案wog/wog.js

尋找
代碼: 選擇全部
   view_name.document.write('<tr bgcolor=#5f5f5f><td colspan=8>玩家訊息</td></tr>');
   view_name.document.write('<tr>');

改成
代碼: 選擇全部
   view_name.document.write('<tr bgcolor=#5f5f5f><td colspan=8>玩家訊息</td></tr>');
   view_name.document.write('<tr valign=top>');



尋找
代碼: 選擇全部
view_name.document.write('<td>'+temp_table1);

改成
代碼: 選擇全部
view_name.document.write('<td width=50%><table width="100%" border="1" cellspacing="0" cellpadding="2" align="center" bordercolor="#4B689E">');

儲存,關閉所有檔案
完畢。




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

文章涅魂 » 2005-12-04 7:19 pm

修正安裝上面的玩家 接收&傳送訊息後工會訊息無法正常顯示的問題。
開啟檔案wog/wog.js
尋找
代碼: 選擇全部
function system_view(s,s_2)
{
...............
...............
...............
}

下面,加上
代碼: 選擇全部
function group_news_view(s)
{
   message_cls();
   var view_name=parent.wog_view;
   view_name.document.write(temp_table1);
   view_name.document.write('<tr><td>內容</td><td>發生時間</td></tr>');
   if(s!="")
   {
      var s1=s.split(";");
      for(var i=0;i<s1.length;i++)
      {   
         var s2=s1[i].split(",");
         view_name.document.write('<tr><td>'+s2[0]+'</td><td>'+s2[1]+'</td></tr>');
      }
   }else
   {
      view_name.document.write('<tr><td colspan="8" >尚未發生任何事件</td></tr>');   
   }
   view_name.document.write('<form action="wog_act.php" method="post" name="login" target="mission">');
   view_name.document.write('<input type="hidden" name="f" value="message">\n');
   view_name.document.write('<input type="hidden" name="act" value="del">\n');
   view_name.document.write('<tr><td colspan="2"><input type="button" value="刪除所有訊息"  onClick="if(confirm(\'你確定要刪除所有訊息嗎?\')){submit();}"></td></tr>');
   view_name.document.write('</form>');
   view_name.document.write(temp_table2);
}


開啟檔案wog/class/wog_act_group.php
尋找
代碼: 選擇全部
showscript("parent.system_view('$s')");

改成
代碼: 選擇全部
showscript("parent.group_news_view('$s')");



圖檔


回到 外掛區

誰在線上

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