mud_sanc 板


LINE

主檔: /adm/daemons/mob_drop.c (實際檔案已經移到 /u/h/highelf/mob_drop.c) #define MOB_DROP_PATH "/d/obj/mob_drop/" #include "mob_drop.h" /d/obj/adm 下有 d_master.c 檔,所有 wiz 都會有自己的目錄權限 ,例如 quest 的就是 /d/obj/mob_drop/quest。 目前 highelf 擁有該目錄的主設定權。 mapping setting_data_ob=([]); 在 mob_drop.c 裡頭有一個 setting_data_ob 資料,這東西跟上面 的 mob_drop.h 裡頭定義的 setting_data 是相關的。 :::::::::::::: /u/h/highelf/mob_drop.h :::::::::::::: #define setting_data ([\ "/d/crazy/1/mob":"laechan/crazy1",\ ]) 上面的意思就是,只要怪物的檔名是「/d/crazy/1/mob」開頭的話, 該怪物在陣亡時會掉落什麼物品,就由「/d/obj/mob_drop/laechan/crazy1.c」 來控制。 它的好處就是,因為很多 wiz 都會自訂掉落物控制檔,依照目錄名 來分的話就不會去設到別人的,而且同一目錄的怪物也幾乎等於同一 區域的怪物(所以這裡就可勾勒出,若未來移怪物到 /area 下,其分 類方式也應該按照 /area/mob/大陸/區域名/ 來分) 而 /d/obj/mob_drop/laechan/crazy1.c 只要被載入,就會自動存到 setting_data_ob 裡頭去,儲存方式就是... setting_data_ob["/d/obj/mob_drop/laechan/crazy1.c"] = crazy1物件 比方玩家開始殺這區域的第一隻怪,這時 setting_data_ob 就儲存了 crazy1.c 物件,等玩家殺第二隻怪時,系統就可以本地讀這個物件, 不用另外再去 find_object_or_load。 在 mob_drop.c 裡頭只有一個函數 mob_drop... varargs void mob_drop(object ppl,object mob,string check) ppl : 殺死怪物的玩家 mob : 被殺的怪物 check : 節慶判斷(varargs 針對的就是這個參數的可給可不給) 節慶的部份稍後再說。 mob_drop 函數會做幾件事... 一、先讀出 mob 這個怪物所在的目錄名   (我覺得這個有必要寫成 simul_efun...) 二、判斷該目錄有沒有被定義在 setting_data 中,例如上面的例   子,七域第一層的怪物若陣亡時,mob_drop 就會判斷到七域   第一層這個目錄有被定義。 三、如果有定義在 setting_data 中,就去讀相對的 setting_data_ob   ,然後讓該 ob->mob_drop_check(ppl,files,check)   若沒有定義,就不做任何事 四、最後判斷節慶的部份 節慶的判斷有兩種,一種是「全域式」的,不管打死什麼怪物   都會做節慶判斷,另一種是「限定區域式」的,在特定節慶只   有打死特定目錄的怪才會做節慶判斷。   所以三的部份才會把節慶參數也一併傳過去。   例如說,我們設定在新年的時候打怪,會有 20% 的機率拿到紅   包袋,若沒拿到就執行原先的掉落設定,這時.. switch(check) { case "newyear": if(random(100)<20) { add_user_vobjs(ppl,"laechan_newyear_redbag",1); add_vobjs_msg(ppl,"laechan_newyear_redbag",1); // 這兩個可併在一起 break; } ob->mob_drop_check(ppl,files,check); // 改執行原先的判斷 break; . . } 這樣的話,「打死任何怪」,就有 20% 的機率先判斷能不能拿到   紅包袋,不行的話就做原先的掉落設定,這時候原先的掉落物的   掉落機率就通通都要再打八折。   而上面的好處就是也可以針對「特定幾個目錄的怪物」來做節慶   相關判斷,所以實際上 ob->mob_drop_check 時是不需要傳節慶   相關參數過去的。(但有也無妨,以方便 wiz 為主) Laechan --



※ 發信站: 批踢踢實業坊(ptt.cc)
※ 編輯: laechan 來自: 220.131.225.67 (01/17 15:57)







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Tech_Job站內搜尋

TOP