diff options
author | ptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2002-06-08 02:42:52 +0800 |
---|---|---|
committer | ptt <ptt@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2002-06-08 02:42:52 +0800 |
commit | 9033ec8254e5cc92068bde5a34c1225e63c5bc74 (patch) | |
tree | 75b8828e066f7b46627715a53944ef6d5c40e963 /mbbsd | |
parent | 997cfb050d41a91ec712734a6e02c6ecf361314f (diff) | |
download | pttbbs-9033ec8254e5cc92068bde5a34c1225e63c5bc74.tar pttbbs-9033ec8254e5cc92068bde5a34c1225e63c5bc74.tar.gz pttbbs-9033ec8254e5cc92068bde5a34c1225e63c5bc74.tar.bz2 pttbbs-9033ec8254e5cc92068bde5a34c1225e63c5bc74.tar.lz pttbbs-9033ec8254e5cc92068bde5a34c1225e63c5bc74.tar.xz pttbbs-9033ec8254e5cc92068bde5a34c1225e63c5bc74.tar.zst pttbbs-9033ec8254e5cc92068bde5a34c1225e63c5bc74.zip |
add revoke gamble
git-svn-id: http://opensvn.csie.org/pttbbs/pttbbs/trunk/pttbbs@308 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd')
-rw-r--r-- | mbbsd/gamble.c | 63 |
1 files changed, 43 insertions, 20 deletions
diff --git a/mbbsd/gamble.c b/mbbsd/gamble.c index 9337d569..c3229bfe 100644 --- a/mbbsd/gamble.c +++ b/mbbsd/gamble.c @@ -1,4 +1,4 @@ -/* $Id: gamble.c,v 1.8 2002/06/07 17:54:17 ptt Exp $ */ +/* $Id: gamble.c,v 1.9 2002/06/07 18:42:52 ptt Exp $ */ #include "bbs.h" #ifndef _BBS_UTIL_C_ @@ -237,14 +237,15 @@ int openticket(int bid) { { do { - getdata(20, 0, "\033[1m��ܤ��������X(0:����)\033[m:", buf, 3, LCECHO); + getdata(20, 0, + "\033[1m��ܤ��������X(0:���}�� 99:�����h��)\033[m:", buf, 3, LCECHO); bet=atoi(buf); move(0,0); clrtoeol(); - } while(bet<0 || bet>count); + } while( (bet<0 || bet>count) && bet!=99); if(bet==0) {unlockutmpmode(); return 0;} - getdata(21, 0, "\033[1m�A���T�{���������X\033[m:", buf, 3, LCECHO); + getdata(21, 0, "\033[1m�A���T�{��J���X\033[m:", buf, 3, LCECHO); }while(bet!=atoi(buf)); bet -= 1; //�ন�x�}��index @@ -257,10 +258,18 @@ int openticket(int bid) { return 0; } // �٨S�}���������� �u�nmv�@���N�n - money=total*price; - demoney(money*0.02); - mail_redenvelop("[������Y]", cuser.userid, money*0.02, 'n'); - money = ticket[bet] ? money*0.95/ticket[bet]:9999999; + if(bet!=98) + { + money=total*price; + demoney(money*0.02); + mail_redenvelop("[������Y]", cuser.userid, money*0.02, 'n'); + money = ticket[bet] ? money*0.95/ticket[bet]:9999999; + } + else + { + vice(price*10, "��L�h������O"); + money=price; + } setbfile(outcome,bh->brdname,FN_TICKET_OUTCOME); if((fp = fopen(outcome, "w"))) { @@ -279,8 +288,10 @@ int openticket(int bid) { if(i==3) fprintf(fp,"\n"); } fprintf(fp, "\033[m\n"); - - fprintf(fp, "\n\n�}���ɶ��G %s \n\n" + + if(bet!=98) + { + fprintf(fp, "\n\n�}���ɶ��G %s \n\n" "�}�����G�G %s \n\n" "�Ҧ����B�G %d �� \n" "������ҡG %d�i/%d�i (%f)\n" @@ -288,9 +299,12 @@ int openticket(int bid) { Cdatelite(&now), betname[bet], total*price, ticket[bet], total, (float) ticket[bet] / total, money); - fprintf(fp, "%s ��L�}�X:%s �Ҧ����B:%d �� ����/�i:%d �� ���v:%1.2f\n", + fprintf(fp, "%s ��L�}�X:%s �Ҧ����B:%d �� ����/�i:%d �� ���v:%1.2f\n", Cdatelite(&now), betname[bet], total*price, money, total? (float)ticket[bet] / total:0); + } + else + fprintf(fp, "\n\n��L�����h���G %s \n\n"); } fclose(fp1); @@ -311,28 +325,37 @@ int openticket(int bid) { �H�U�O�����ʧ@ */ setbfile(buf, bh->brdname, FN_TICKET_USER); - if (ticket[bet] && (fp1 = fopen(buf, "r"))) + if ((bet==98 || ticket[bet]) && (fp1 = fopen(buf, "r"))) { int mybet, uid; char userid[IDLEN]; while (fscanf(fp1, "%s %d %d\n", userid, &mybet, &i) != EOF) { - if (mybet == bet) + if (bet==98 ) + { + fprintf(fp,"%s �R�F %d �i %s, �h�^ %d �T��\n" + ,userid, i, betname[mybet], money); + sprintf(buf, "%s ����h��! $ %d", bh->brdname, money * i); + } + else if (mybet == bet) { - fprintf(fp,"���� %-15s�R�F%9d �i %s, ��o %d �T��\n" - ,userid, i, betname[mybet], money * i); - if((uid=getuser(userid))==0) continue; - deumoney(uid, money * i); + fprintf(fp,"���� %s �R�F%d �i %s, ��o %d �T��\n" + ,userid, i, betname[mybet], money); sprintf(buf, "%s ������! $ %d", bh->brdname, money * i); - mail_id(userid, buf, "etc/ticket.win", "Ptt���"); - } + } + if((uid=getuser(userid))==0) continue; + deumoney(uid, money * i); + mail_id(userid, buf, "etc/ticket.win", "Ptt���"); } fclose(fp1); } fclose(fp); - sprintf(buf, "[���i] %s ��L�}��", bh->brdname); + if(bet!=98) + sprintf(buf, "[���i] %s ��L�}��", bh->brdname); + else + sprintf(buf, "[���i] %s ��L����", bh->brdname); post_file(bh->brdname, buf, outcome, "[�䯫]"); post_file("Record", buf+7, outcome, "[�������l]"); |