diff options
Diffstat (limited to 'mbbsd')
-rw-r--r-- | mbbsd/announce.c | 32 |
1 files changed, 26 insertions, 6 deletions
diff --git a/mbbsd/announce.c b/mbbsd/announce.c index 7d7aaba9..6d52212f 100644 --- a/mbbsd/announce.c +++ b/mbbsd/announce.c @@ -79,6 +79,8 @@ void a_copyitem(const char *fpath, const char *title, const char *owner, int mode) { CopyQueue cq; + static int flFirstAlert = 1; + memset(&cq, 0, sizeof(CopyQueue)); strcpy(cq.copyfile, fpath); strcpy(cq.copytitle, title); @@ -86,14 +88,15 @@ a_copyitem(const char *fpath, const char *title, const char *owner, int mode) strcpy(cq.copyowner, owner); copyqueue_append(&cq); - if (mode) { + if (mode && flFirstAlert) { #if 0 move(b_lines-2, 0); clrtoeol(); prints("�ثe�w�аO %d ���ɮסC[�`�N] ������~��R�����!", copyqueue_querysize()); #else - vmsg("�ثe�w�ƻs %d �Ӷ��ءC [�`�N] �K�W(p)�Ϊ��[(a)��~��R�����!", + vmsg("�ثe�w�ƻs %d �Ӷ��� [�`�N]�K�W(p)�Ϊ��[(a)��~��R�����!", copyqueue_querysize()); + flFirstAlert = 0; #endif } } @@ -156,19 +159,36 @@ a_showmenu(const menu_t * pm) outs("\n �m��ذϡn�|�b�l���Ѧa��������ؤ�... :)"); move(b_lines, 1); - outs(pm->level ? + if(copyqueue_querysize() > 0) + { // something in queue + prints( + ANSI_COLOR(34;46) "�i�w�аO %d �Ӷ��ءj" + ANSI_COLOR(31;47) " (h)" ANSI_COLOR(30) "���� " + ANSI_COLOR(31) "(p)" ANSI_COLOR(30) "�K�W�έ��]�аO " + ANSI_COLOR(31) "(a)" ANSI_COLOR(30) "���[�ܤ峹�� " +// ANSI_COLOR(31) "[�`�N]" ANSI_COLOR(30) "������~��R�����!" + ANSI_RESET , copyqueue_querysize()); + } + else if(pm->level) + { // BM + outs( ANSI_COLOR(34;46) " �i�O �D�j " ANSI_COLOR(31;47) " (h)" ANSI_COLOR(30) "���� " ANSI_COLOR(31) "(q/��)" ANSI_COLOR(30) "���} " ANSI_COLOR(31) "(n)" ANSI_COLOR(30) "�s�W�峹 " ANSI_COLOR(31) "(g)" ANSI_COLOR(30) "�s�W�ؿ� " ANSI_COLOR(31) "(e)" ANSI_COLOR(30) "�s���ɮ� " ANSI_RESET - : + ); + } + else + { // normal user + outs( ANSI_COLOR(34;46) " �i�\\����j " ANSI_COLOR(31;47) " (h)" ANSI_COLOR(30) "���� " ANSI_COLOR(31) "(q/��)" ANSI_COLOR(30) "���} " ANSI_COLOR(31) "(k��j��)" ANSI_COLOR(30) "���ʴ�� " ANSI_COLOR(31) "(enter/��)" ANSI_COLOR(30) "Ū����� " ANSI_RESET); + } } static int @@ -226,8 +246,8 @@ a_showhelp(int level) "[n/g/G] ������ؤ峹/�}�P�ؿ�/�إ߳s�u\n" "[m/d/D] ����/�R���峹/�R���@�ӽd�峹\n" "[f/T/e] �s����D�Ÿ�/�ק�峹���D/���e\n" - "[c/p/a] ����/�K�W(�i�h�g)/���[��g�峹\n" - "[^P/^A] �߶K/���[�w��'t'�аO�峹\n"); + "[c/p/a] ��ذϤ� ����/�K�W(�i�h�g)/���[��g�峹\n" + "[^P/^A] �K�W/���[��ذϥ~�w��'t'�аO�峹\n"); } if (level >= SYSOP) { outs("\n" ANSI_COLOR(36) "�i �����M���� �j" ANSI_RESET "\n" |