Re: [公告] 新增board相關指令
看板mud_sanc (Sanctuary - 聖殿)作者laechan (小太保)時間14年前 (2011/08/11 07:02)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/2 (看更多)
※ 引述《hlead (希多)》之銘言:
: 目前只寫隊伍的,大家可以party -board xxx看看。
: 然後瀏覽指令為 party -board list。
: ☆☆☆☆☆ 隊伍佈告欄 ☆☆☆☆☆
: ─────────────────────────────────────
: 新手盜賊(Norr):我要招募隊員!!
: 話說,時間格式有哪幾種可以用阿?除了Ctime()以外還有嗎?
: 然後麻煩大家提供一下顯示的格式吧!
: 基本上要有:時間、編號、張貼者、訊息。
晚上十點 徵召隊員 去 試鍊之路 by norr(新手盜賊)
不限時間 徵召隊員 去 八卦 by norr(新手盜賊)
不限時間 希望加入 去 試鍊之路 的隊伍 by norr(新手盜賊)
if(徵召)
sprintf("%s 徵召隊員 去 %s by %s(%s)\n",
時間,地點,ppl->query("name"),ppl->query("chi_name"));
else
sprintf("%s 希望加入 去%s 的隊伍 by %s(%s)\n",
時間,地點,ppl->query("name"),ppl->query("chi_name"));
或是
norr 想在 晚上十點 徵召隊員 去 試鍊之路
上面兩種格式都可避免因為訊息過長而產生吃字情況.
(就是盡量別用到 chi_name 或 short, 要用的話就擺後面)
一個人限定只能貼一篇訊息。
然後你可以加個
party -boardjoin who
然後若有人 join 就變成..
norr 想在 晚上十點 徵召隊員 去 試鍊之路
響應者有: laechan
因為 party -board 的資料格式假設是..
mapping board=([
"時間標記":
(["time":
"place":
"type":徵召 or 加入,
"who_join":({...}),
]),
]);
這樣 who_join 就方便加入, 而要判斷有沒有 who_join
if(!undefinedp(board[時間標記]["who_join"])) // 代表有響應者
時間格式的部份建議你自寫函數處理
string str=ctime(指定時間); // 先抓 ctime
str=return_my_hope_time_format(str);
^^^^^^^^^^^^^^^^^^^^^^^^^^
自寫的函數
我很多時候也是自寫函數處理,這可以減少撰寫 simul_efun
的情況。(一個 simul_efun + 自寫函數)
還有一種方法是讓玩家直接輸入, 例如..
party -board 組隊 in 晚上十點 to 試鍊窟
party -board 加入 in 今天任何時間都可以 to 試鍊窟
^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^
限定字 格式不限 格式不限
然後訊息就加上張貼時間
norr 想在 今天晚上十點 組隊 去 試鍊之路 (8/11 10:05am)
這樣看到訊息的人就知道今天晚上十點指的是 8/11 22:00pm
做法大概如上,你可以參考,你也可以選擇 teach/learn 先做
,先做如何讓這兩個共用同一塊板子,或者板子分開,teach那
邊看到的全是想教, learn 看到的全是想被教之類的. 或者一
律寫在 guide 也可以,訊息就分教與被教。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.9.179
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
2
6
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
21
49