[問題]令裝備增加hp上限

WOG設定安裝教學

版主: 涅魂, 簫哥

leo199345
 
文章: 198
註冊時間: 2006-01-18 9:32 pm

[問題]令裝備增加hp上限

文章leo199345 » 2007-02-01 6:22 pm

令裝備增加hp上限

可行嗎



leo199345
 
文章: 198
註冊時間: 2006-01-18 9:32 pm

文章leo199345 » 2007-02-04 3:16 pm

無人理我嗎?? = ="'''
小弟有點兒心急這功能...




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

文章涅魂 » 2007-02-04 8:49 pm

理論上是可行的

先在wog_df中新增一項欄位,假設名為d_hp,屬性設為 unsigned int(10)
接著在處理裝上裝備的函式arm_setup()中為玩家的p_hpmax加上裝備物品的d_hp

之後再在卸下裝備的函式arm_move()中將玩家的p_hpmax扣除掉要卸下的裝備的d_hp應該就沒問題了

而要讓玩家的目前生命p_hp同步調整的話只要在兩個函式中為玩家的p_hp做與p_hpmax同樣的步驟即可


圖檔

leo199345
 
文章: 198
註冊時間: 2006-01-18 9:32 pm

文章leo199345 » 2007-02-05 4:40 pm

小弟還是一個新手....

不知道應怎做= =""

望大大指教




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

文章涅魂 » 2007-02-05 5:37 pm

在資料庫中執行下列SQL語法以建立d_hp欄位
代碼: 選擇全部
ALTER TABLE `wog_df` ADD `d_hp` INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ;


開啟檔案wog/class/wog_act_arm.php

In arm_setup() Function

尋找
代碼: 選擇全部
$sql="select a.ch_pro,a.ch_id,a.d_df,a.d_mdf,a.d_agl,a.d_at,a.d_mat,a.d_name,a.d_type,a.d_g_str,a.d_g_smart,a.d_g_agl,a.d_g_life,a.d_g_vit,a.d_g_au,a.d_g_be,a.d_g_exp,a.d_g_bag

覆蓋為
代碼: 選擇全部
$sql="select a.ch_pro,a.ch_id,a.d_df,a.d_mdf,a.d_agl,a.d_at,a.d_mat,a.d_name,a.d_type,a.d_g_str,a.d_g_smart,a.d_g_agl,a.d_g_life,a.d_g_vit,a.d_g_au,a.d_g_be,a.d_g_exp,a.d_g_bag[color=red],a.d_hp[/color]


尋找
代碼: 選擇全部
$sql="select a.d_df,a.d_mdf,a.d_agl,a.d_at,a.d_mat,a.d_id from wog_df a,wog_player b where b.".$a_id."=a.d_id and b.p_id=".$user_id." ";

覆蓋為
代碼: 選擇全部
$sql="select a.d_df,a.d_mdf,a.d_agl,a.d_at,a.d_mat,a.d_id[color=red],a.d_hp[/color] from wog_df a,wog_player b where b.".$a_id."=a.d_id and b.p_id=".$user_id." ";

尋找
代碼: 選擇全部
               if($pack2)
               {
                  $DB_site->query("update wog_item set ".$a_id."='".$s."' where p_id=".$user_id." ");
                  $DB_site->query("update wog_player set ".$a_id."=".$adds.",p_df=p_df-".$pack2[d_df]."+".$pack[d_df]."
                  ,p_mdf=p_mdf-".$pack2[d_mdf]."+".$pack[d_mdf].",p_agl=p_agl-".$pack2[d_agl]."+".$pack[d_agl]."
                  ,p_at=p_at-".$pack2[d_at]."+".$pack[d_at].",p_mat=p_mat-".$pack2[d_mat]."+".$pack[d_mat]."
                  where p_id=".$user_id." ");
               }else
               {
                  $DB_site->query("update wog_item set ".$a_id."='".$s."' where p_id=".$user_id." ");
                  $DB_site->query("update wog_player set ".$a_id."=".$adds.",p_df=p_df+".$pack[d_df]."
                  ,p_mdf=p_mdf+".$pack[d_mdf].",p_agl=p_agl+".$pack[d_agl]."
                  ,p_at=p_at+".$pack[d_at].",p_mat=p_mat+".$pack[d_mat]."
                  where p_id=".$user_id." ");
               }

覆蓋為
代碼: 選擇全部
               if($pack2)
               {
                  $DB_site->query("update wog_item set ".$a_id."='".$s."' where p_id=".$user_id." ");
                  $DB_site->query("update wog_player set ".$a_id."=".$adds.",p_df=p_df-".$pack2[d_df]."+".$pack[d_df]."
                  ,p_mdf=p_mdf-".$pack2[d_mdf]."+".$pack[d_mdf].",p_agl=p_agl-".$pack2[d_agl]."+".$pack[d_agl]."
                  ,p_at=p_at-".$pack2[d_at]."+".$pack[d_at].",p_mat=p_mat-".$pack2[d_mat]."+".$pack[d_mat]."[color=red],p_hp=p_hp-".$pack2['d_hp']."+".$pack['d_hp'].",p_hpmax=p_hpmax-".$pack2['d_hp']."+".$pack['d_hp']."[/color]
                  where p_id=".$user_id." ");
               }else
               {
                  $DB_site->query("update wog_item set ".$a_id."='".$s."' where p_id=".$user_id." ");
                  $DB_site->query("update wog_player set ".$a_id."=".$adds.",p_df=p_df+".$pack[d_df]."
                  ,p_mdf=p_mdf+".$pack[d_mdf].",p_agl=p_agl+".$pack[d_agl]."
                  ,p_at=p_at+".$pack[d_at].",p_mat=p_mat+".$pack[d_mat]."[color=red],p_hp=p_hp+".$pack['d_hp'].",p_hpmax=p_hpmax+".$pack['d_hp']."[/color]
                  where p_id=".$user_id." ");
               }

而arm_move()不用修改,之前說要改是因為看錯… :oops:

另外,若將遊戲中已存在物品的d_hp設為非0的值的話可能會造成原先已裝備該物品的玩家的HP在脫裝備後出現異常
所以若對已存在物品的d_hp作修正時要記得替有裝備該物品的玩家的p_hp和p_hpmax作相對應的調整喔


圖檔

leo199345
 
文章: 198
註冊時間: 2006-01-18 9:32 pm

文章leo199345 » 2007-02-05 9:18 pm

成功了@@"
謝涅大~~




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

文章涅魂 » 2007-02-05 9:25 pm

不用客氣,有問題的話歡迎繼續發問 :wink:

不過記得在提問的同時也要記得學習PHP喔,這樣可以更順利地解決您的問題^^


圖檔


回到 精華區

誰在線上

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