作者chrisliu.bbs@163.22.23.76 (ChrisLiu*) 看板: plan
標題Re: 請問點歌分級~
時間蘿莉小站 (2004/05/24 Mon 04:05:07) Updated: 2004/05/26
※ 引述《smallcupid.bbs@bbs.ckit.edu.tw (五月 新旅程)》之銘言:
> 就是有關點歌方面的
> 想要功能就是
> 普通user 點歌上限 3首
> 板主點歌上限 6首
> 並且可以用金錢買上限..比如一首上線.就是花100金幣
> 和可以調整優良板主或user點歌上限
改 struct ACCT,要轉換 .ACCT
: include/struch.h
在 struct ACCT 同樣位置加 numsong
int numlogins; /* 上站次數 */
int numposts; /* 發表次數 */
int numemails; /* 寄發 Inetrnet E-mail 次數 */
+ int numsong; /* 點歌的上限 */
: acct.c:acct_show()
usr_fpath(buf, uid, fn_dir);
- prints(" \033[32m個人信件:\033[37m%d 封\n", rec_num(buf, sizeof(HDR)));
+ prints(" \033[32m個人信件:\033[37m%-35d\033[32m點歌剩餘:\033[37m%d\n",
+ rec_num(buf, sizeof(HDR)), u->numsong);
: acct.c:acct_setup()
sprintf(buf, "%d", u->numemails);
vget(++i, 0, "發信次數:", buf, 10, GCARRY);
if ((num = atoi(buf)) >= 0)
x.numemails = num;
+ sprintf(buf, "%d", u->numsong);
+ vget(++i, 0, "點歌剩餘:", buf, 10, GCARRY);
+ if ((num = atoi(buf)) >= 0)
+ x.numsong = num;
: so/bank.c
在 b_xempt() 此函式之後新增下列函式
int
b_buysong()
{
if ((HAS_PERM(PERM_BM) && (cuser.numsong > 5)) || (cuser.numsong > 2))
{
vmsg("您目前剩餘的點歌次數已達上限,無法再購買");
}
else
{
if (cuser.gold < 100)
{
vmsg("要 100 金幣才能購買點歌上限喔");
}
else if (vans("是否花 100 金幣購買一次點歌(Y/N)?[N] ") == 'y')
{
cuser.gold -= 100;
cuser.numsong++;
}
}
}
: so/song.c : song_order()
if (cuser.money < 100)
{
vmsg("要 100 銀幣才能點歌到看板喔");
return XO_FOOT;
}
+ if (cuser.numsong <= 0)
+ {
+ vmsg("您的點歌上限已經為 0,無法點歌");
+ return XO_FOOT;
+ }
if (!(hdr = song_get(xo, fpath)))
return XO_NONE;
if (!vget(b_lines, 0, "點歌給誰:", des, sizeof(des), DOECHO))
return XO_FOOT;
if (!vget(b_lines, 0, "想說的話:", say, sizeof(say), DOECHO))
strcpy(say, ".........");
annoy = vans("想要匿名嗎(Y/N)?[N] ") == 'y';
if (vans("確定點歌嗎(Y/N)?[Y] ") == 'n')
return XO_FOOT;
xo_fpath(fpath, xo->dir, hdr);
if (!(fpr = fopen(fpath, "r+")))
return XO_FOOT;
- cuser.money -= 100;
+ cuser.numsong--;
: maple/menu.c
static MENU menu_buy[] =
{
"bin/bank.so:x_bank", PERM_BASIC, - M_GAME,
"Bank ♂ 信託銀行 ♀",
...
"bin/bank.so:b_xempt", PERM_BASIC, - M_GAME,
"Xempt ♂ 永久保留 ♀",
+ "bin/bank.so:b_buysong", PERM_BASIC, - M_GAME,
+ "BuySong ♂ 買點歌數 ♀",
menu_tool, PERM_MENU + 'B', M_XMENU,
"金融市場"
};
我不知道您是不是這個意思耶 ;p
因為點歌要扣上限 又要扣金幣... 好痛啊 ">< 錢不好賺呢 ;ppp
那點歌的100銀幣 是不是要消掉才好啊 ^^?
要消掉的話 把 song_order 函式裡面 跟 cuser.money 有關的弄掉就好
--
▃▄▅▆▄▆▄▃▃▄▅▆▄▃▁▁▃▄▅▄▆▃▁▁▃▆▄▅▅▆▆▆▃▃▁▁▃▁ r
世界一直在�� 唯一不變的�u是 累 地球轉�F一圈 時間 走�漱ㄙ黎�覺 ★ a
~ 那個離開的你 ��乎 還住在我心�怑� 可是 你的笑臉 卻已經覆了一層灰 i
☆ 對�A而言 我是否只是�@片落葉 ☆ 在�A眼底 永遠忽�� n
對我而言 你或許也是一片落葉 在我面前 隨�椰茩� ★ g
�琱�難過 更不�嵼� 因為我知道 一�w會有一個人��代你住在我心�怑� i
★那�� 我可能會忘了你的名字 忘了�A的臉 但 我會永遠記得 這一段�簪u無畏 r
▃▄▅▆▄▆▄▃▃▄▅▆▄▃▁▁▃▄▅▄▆▃▁▁▃▆▄▅▅▆▆▆▃▃▁▁▃▁ l
--
╭─ ╭─ 暨南國際大學 本文作者: chrisliu (ChrisLiu*)
│ ├─ N.C.N.U. 上站地點: ip196.puli34-10-10.ncnu.edu.tw
╰─ivil╰─ngineering 土木王朝之 蘿莉小站 bbs.ce.ncnu.edu.tw