mud_sanc 板


LINE

※ 引述《justinj (闇冥)》之銘言: : 問題3..例如..中遲緩的這段時間(120sec)內 : 玩家按enter(或test)後5秒內不能動...5秒後此指令執行,且可以再次按 : 這樣經過24次後..此效果結束.... 玩家「只」按 enter 嗎?我假設你設定 120 sec 內最多 只允許玩家下 24 次指令,而且間隔至少 5 秒。 int cmd_hook(string str) { object ppl=this_player(); int t=time(); string verbs=query_verb(); if(!verbs || verbs=="") return 1; if(query("can_cmds")) { delete("can_cmds"); return 0; // 執行原先的效果 } if(query("cant_cmd")>t) ppl->receive(""); // 不管下什麼指令都傳回空字串 // 這裡也可以設定提示訊息告知無法下指令 else { set("cant_cmd",5+t); call_out("delay_cmds",5,ppl,query_verb()+" "+str); } return 1; } int delay_cmds(object ppl,string cmds) { if(ppl) { set("can_cmds",1); // 玩家在 force_me 的瞬間又會 call cmd_hook // 這時 cmd_hook 會判斷到有 query("can_cmds") ppl->force_me(cmds); } return 1; } 這樣玩家只要在能被允許下指令的時候「下了一個指令」.. 一、這個指令 5 秒後才會有作用。 二、這 5 秒內他無法下其它的指令。 : : 問題1..玩家跑到某房間時add_action()增加指令,remove_action()移除指令 : 這2個只能玩家本身去觸發嗎? add_action() 最常被寫在 void init() 函數中的原因, 在於 init() 函數通常都是由玩家去呼叫的。 例如進入一個有噴水池可 drink 的房間... 玩家→呼叫房間的 init()→再呼叫到 add_action() 這時就相當於玩家為「呼叫主體」。 void add_action( string | function fun, string | string *cmd, int flag ); 無回傳值 add_action( 字串 或 函數 fun, 字串 或 字串 *cmd, 整數 flag ); 由上可知它無法模擬「由他人呼叫,然後讓目標玩家可下 什麼指令」的情況,這是因為玩家能下什麼指令,是儲存 在玩家本身的物件資料中的,那個資料只有玩家自己能動 所以,同樣的,例如有一行.. call_out("ooxx",5,......) 這個 call_out 「同樣也是由玩家本身」去 call 的,所 以當 5 秒後 ooxx 函數執行時.. int ooxx() { write("test.\n"); this_player() 就會看到 "test" 訊息的原因就在這裡。 呼叫主體的概念最常被用在「攻擊的反擊」上,因為當怪 物對玩家施展攻擊時如下.. mob->shut(ppl) ->check_combat(mob,ppl) ->check_counter(mob,ppl)-> ppl->shut(mob) 這一連串的動作通通都是由 mob->shut(ppl) 開始的,因 此到 ppl->shut(mob) 時,實際上並不是 ppl->shut(mob) 而是 mob->shut(mob) 變成 mob 自己殺自己。 這就是獨孤、反擊、熾光障壁初期 bug 的由來。 Laechan --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.3.82







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燈, 水草

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

TOP