⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pip_ending.c

📁 one bbs source code
💻 C
📖 第 1 页 / 共 3 页
字号:
/*---------------------------------------------------------------------------*//* 结局函式                                                                  *//*                                                                           *//*---------------------------------------------------------------------------*/#include <time.h>#include "bbs.h"#include "pip.h"extern struct chicken d;extern time_t start_time;extern time_t lasttime;//#define getdata(a, b, c , d, e, f, g) getdata(a,b,c,d,e,f,NULL,g)/*--------------------------------------------------------------------------*//*  结局参数设定                                                            *//*--------------------------------------------------------------------------*/struct newendingset{  char *girl;		/*女生结局的职业*/   char *boy;		/*男生结局的职业*/  int grade;		/*评分*/};typedef struct newendingset newendingset;/*万能*/struct newendingset endmodeall_purpose[] = {"女性职业",		"男生职业",		0,"成为这个国家新女王",	"成为这个国家新国王",	500,"成为国家的宰相",	"成为国家的宰相",	400,"成为教会中的大主教",	"成为教会中的大主教",	350,"成为国家的大臣",	"成为国家的大臣",	320,"成为一位博士",		"成为一位博士",		300,"成为教会中的修女",	"成为教会中的神父",	150,"成为法庭上的大法官",   "成为法庭上的法官",	200,"成为知名的学者",	"成为知名的学者",	120,"成为一名女官",		"成为一名男官",		100,"在育幼院工作",		"在育幼院工作",		100,"在旅馆工作",		"在旅馆工作",		100,"在农场工作",		"在农场工作",		100,"在餐厅工作",		"在餐厅工作",		100,"在教堂工作",		"在教堂工作",		100,"在地摊工作",		"在地摊工作",		100,"在伐木场工作",		"在伐木场工作",		100,"在美容院工作",		"在美容院工作",		100,"在狩猎区工作",		"在狩猎区工作",		100,"在工地工作",		"在工地工作",		100,"在墓园工作",		"在墓园工作",		100,"担任家庭教师工作",	"担任家庭教师工作",	100,"在酒家工作",		"在酒家工作",		100,"在酒店工作",		"在酒店工作",		100,"在大夜总会工作",	"在大夜总会工作",	100,"在家中帮忙",		"在家中帮忙",		50,"在育幼院兼差",		"在育幼院兼差",		50,"在旅馆兼差",		"在旅馆兼差",		50,"在农场兼差",		"在农场兼差",		50,"在餐厅兼差",		"在餐厅兼差",		50,"在教堂兼差",		"在教堂兼差",		50,"在地摊兼差",		"在地摊兼差",		50,"在伐木场兼差",		"在伐木场兼差",		50,"在美容院兼差",		"在美容院兼差",		50,"在狩猎区兼差",		"在狩猎区兼差",		50,"在工地兼差",		"在工地兼差",		50,"在墓园兼差",		"在墓园兼差",		50,"担任家庭教师兼差",	"担任家庭教师兼差",	50,"在酒家兼差",		"在酒家兼差",		50,"在酒店兼差",		"在酒店兼差",		50,"在大夜总会兼差",	"在大夜总会兼差",	50,NULL,		NULL,	0};/*战斗*/struct newendingset endmodecombat[] = {"女性职业",		"男生职业",			0,"被封为勇者 战士型",  	"被封为勇者 战士型",		420,"被拔擢成为一国的将军",	"被拔擢成为一国的将军",		300,"当上了国家近卫队队长",	"当上了国家近卫队队长",		200,"当了武术老师",		"当了武术老师",			150,"变成骑士报效国家",	"变成骑士报效国家",		160,"投身军旅生活,成为士兵","投身军旅生活,成为士兵",	80,"变成奖金猎人",		"变成奖金猎人",			0,"以  兵工作维生",	"以  兵工作维生",		0,NULL,           NULL,   0};/*魔法*/struct newendingset endmodemagic[] = {"女性职业",	     	"男生职业",		0,"被封为勇者 魔法型",	"被封为勇者 魔法型",	420,"被聘为王宫魔法师",	"被聘为王官魔法师",	280,"当了魔法老师",		"当了魔法老师",		160,"变成一位魔导士",	"变成一位魔导士",	180,"当了魔法师",		"当了魔法师",		120,"以占卜师帮人算命为生",	"以占卜师帮人算命为生",	40,"成为一个魔术师",	"成为一个魔术师",	20,"成为街头艺人",		"成为街头艺人",		10,NULL,           NULL	,0};/*社交*/struct newendingset endmodesocial[] = {"女性职业",     	"男生职业",		0,"成为国王的宠妃",	"成为女王的驸马爷",	170,"被挑选成为王妃",	"被选中当女王的夫婿",	260,"被伯爵看中,成为夫人",	"成为了女伯爵的夫婿",	130,"成为富豪的妻子",	"成为女富豪的夫婿",	100,"成为商人的妻子",	"成为女商人的夫婿",	80,"成为农人的妻子",	"成为女农人的夫婿",	80,"成为地主的情妇",	"成为女地主的情夫",	-40,NULL,           NULL,	0};/*艺术*/struct newendingset endmodeart[] = {"女性职业",		"男生职业",	0,"成为了小丑",		"成为了小丑",	100,"成为了作家",		"成为了作家",	100,"成为了画家",		"成为了画家",	100,"成为了舞蹈家",		"成为了舞蹈家",	100,NULL,           NULL,	0};/*暗黑*/struct newendingset endmodeblack[] = {"女性职业",     	"男生职业",		0,"变成了魔王",		"变成了魔王",		-1000,"混成了太妹",		"混成了流氓",		-350,"做了[SM女王]的工作",	"做了[SM国王]的工作",	-150,"当了黑街的大姐",	"当了黑街的老大",	-500,"变成高级娼妇",		"变成高级情夫",		-350,"变成诈欺师诈欺别人",	"变成金光党骗别人钱",	-350,"以流莺的工作生活",	"以牛郎的工作生活",	-350,NULL,		NULL,	0};/*家事*/struct newendingset endmodefamily[] = {"女性职业",     	"男生职业",		0,"正在新娘修行",		"正在新郎修行",		50,NULL,		NULL,	0};int /*结局画面*/pip_ending_screen(){  time_t now;  char buf[256];  char endbuf1[50];  char endbuf2[50];  char endbuf3[50];  int endgrade=0;  int endmode=0;  clear();  pip_ending_decide(endbuf1,endbuf2,endbuf3,&endmode,&endgrade);  move(1,9);   prints("┏━━━┓┏━━  ┓┏━━━  ┏━━━┓┏━━  ┓  ━━━  ");  move(2,9);  prints("┃      ┃┃    ┃┃┃      ┃┃      ┃┃    ┃┃┃      ┃");  move(3,9);  prints("┃    ━  ┃    ┃┃┃      ┃┗━┓┏┛┃    ┃┃┃  ┏━┓");  move(4,9);  prints("┃    ━  ┃  ┃  ┃┃      ┃┏━┛┗┓┃  ┃  ┃┃      ┃");  move(5,9);  prints("┃      ┃┃  ┃  ┃┃      ┃┃      ┃┃  ┃  ┃┃      ┃");  move(6,9);  prints("┗━━━┛┗━  ━┛┗━━━  ┗━━━┛┗━  ━┛  ━━━  ");  move(7,8);  prints("—————————— 星空战斗鸡结局报告 ———————————");  move(9,10);  prints("这个时间不知不觉地还是到临了...");  move(11,10);  prints("%s 得离开你的温暖怀抱,自己一只鸡在外面求生存了.....",d.name);  move(13,10);  prints("在你照顾教导他的这段时光,让他接触了很多领域,培养了很多的能力....");  move(15,10);  prints("因为这些,让小鸡 %s 之後的生活,变得更多采多姿了........",d.name);  move(17,10);  prints("对於你的关心,你的付出,你所有的爱......");  move(19,10);  prints("%s 会永远都铭记在心的....",d.name);  pressanykey("接下来看未来发展");  clrchyiuan(7,19);  move(7,8);  prints("—————————— 星空战斗鸡未来发展 ———————————");  move(9,10);  prints("透过水晶球,让我们一起来看 %s 的未来发展吧.....",d.name);  move(11,10);  prints("小鸡 %s 後来%s....",d.name,endbuf1);  move(13,10);  prints("因为他的之前的努力,使得他在这一方面%s....",endbuf2);  move(15,10);  prints("至於小鸡的婚姻状况,他後来%s,婚姻算是很美满.....",endbuf3);  move(17,10);  prints("嗯..这是一个不错的结局唷..........");  pressanykey("我想  你一定很感动吧.....");  show_ending_pic(0);  pressanykey("看一看分数罗");  endgrade=pip_game_over(endgrade);  pressanykey("下一页是小鸡资料  赶快copy下来做纪念");  pip_data_list();  pressanykey("欢迎再来挑战....");  /*记录开始*/  now=time(0);  sprintf(buf, "———————————————————————————————————————\n");  pip_log_record(buf);  sprintf(buf, "在 %s 的时候,%s 的小鸡 %s 出现了结局\n", Cdate(&now), cuser.userid,d.name);  pip_log_record(buf);  sprintf(buf, "小鸡 %s 努力加强自己,後来%s\n因为之前的努力,使得在这一方面%s\n",d.name,endbuf1,endbuf2);  pip_log_record(buf);  sprintf(buf, "至於婚姻状况,他後来%s,婚姻算是很美满.....\n\n小鸡 %s 的总积分= %d\n",endbuf3,d.name,endgrade);  pip_log_record(buf);  sprintf(buf, "———————————————————————————————————————\n");  pip_log_record(buf);    /*记录终止*/  d.death=3;  pipdie("游戏结束罗...  ",3);  return 0;}int pip_ending_decide(endbuf1,endbuf2,endbuf3,endmode,endgrade)char *endbuf1,*endbuf2,*endbuf3;int *endmode,*endgrade;{  char *name[8][2]={{"男的","女的"},  	           {"嫁给王子","娶了公主"},  	           {"嫁给你","娶了你"},                   {"嫁给商人A","娶了女商人A"},                   {"嫁给商人B","娶了女商人B"},                   {"嫁给商人C","娶了女商人C"},                   {"嫁给商人D","娶了女商人D"},                   {"嫁给商人E","娶了女商人E"}};   int m=0,n=0,grade=0;  int modeall_purpose=0;  char buf1[256];  char buf2[256];    *endmode=pip_future_decide(&modeall_purpose);  switch(*endmode)  {  /*1:暗黑 2:艺术 3:万能 4:战士 5:魔法 6:社交 7:家事*/    case 1:      pip_endingblack(buf1,&m,&n,&grade);          break;    case 2:      pip_endingart(buf1,&m,&n,&grade);      break;    case 3:      pip_endingall_purpose(buf1,&m,&n,&grade,modeall_purpose);      break;    case 4:      pip_endingcombat(buf1,&m,&n,&grade);      break;    case 5:      pip_endingmagic(buf1,&m,&n,&grade);      break;    case 6:      pip_endingsocial(buf1,&m,&n,&grade);      break;    case 7:      pip_endingfamily(buf1,&m,&n,&grade);      break;  }    grade+=pip_marry_decide();  strcpy(endbuf1, buf1);    if(n==1)  {    *endgrade=grade+300;    sprintf(buf2,"非常的顺利..");  }  else if(n==2)  {    *endgrade=grade+100;    sprintf(buf2,"表现还不错..");  }  else if(n==3)  {    *endgrade=grade-10;    sprintf(buf2,"常遇到很多问题....");  }    strcpy(endbuf2, buf2);    if(d.lover>=1 && d.lover <=7)  {    if(d.sex==1)      sprintf(buf2,"%s",name[d.lover][1]);    else      sprintf(buf2,"%s",name[d.lover][0]);  }  else if(d.lover==10)    sprintf(buf2,"%s",buf1);  else if(d.lover==0)  {    if(d.sex==1)      sprintf(buf2,"娶了同行的女孩");    else      sprintf(buf2,"嫁给了同行的男生");    }   strcpy(endbuf3, buf2);    return 0;}/*结局判断*//*1:暗黑 2:艺术 3:万能 4:战士 5:魔法 6:社交 7:家事*/intpip_future_decide(modeall_purpose)int *modeall_purpose;{  int endmode;  /*暗黑*/  if((d.etchics==0 && d.offense >=100) || (d.etchics>0 && d.etchics<50 && d.offense >=250))     endmode=1;  /*艺术*/  else if(d.art>d.hexp && d.art>d.mexp && d.art>d.hskill && d.art>d.mskill &&          d.art>d.social && d.art>d.family && d.art>d.homework && d.art>d.wisdom &&          d.art>d.charm && d.art>d.belief && d.art>d.manners && d.art>d.speech &&          d.art>d.cookskill && d.art>d.love)     endmode=2;  /*战斗*/  else if(d.hexp>=d.social && d.hexp>=d.mexp && d.hexp>=d.family)  {     *modeall_purpose=1;     if(d.hexp>d.social+50 || d.hexp>d.mexp+50 || d.hexp>d.family+50)        endmode=4;     else        endmode=3;       }  /*魔法*/  else if(d.mexp>=d.hexp && d.mexp>=d.social && d.mexp>=d.family)  {       *modeall_purpose=2;     if(d.mexp>d.hexp || d.mexp>d.social || d.mexp>d.family)        endmode=5;     else        endmode=3;  }     else if(d.social>=d.hexp && d.social>=d.mexp && d.social>=d.family)  {     *modeall_purpose=3;     if(d.social>d.hexp+50 || d.social>d.mexp+50 || d.social>d.family+50)        endmode=6;     else        endmode=3;  }  else   {       *modeall_purpose=4;     if(d.family>d.hexp+50 || d.family>d.mexp+50 || d.family>d.social+50)        endmode=7;     else        endmode=3;       }       return endmode;}/*结婚的判断*/intpip_marry_decide(){  int grade;  if(d.lover!=0)  {       /* 3 4 5 6 7:商人 */     d.lover=d.lover;     grade=80;  }  else  {     if(d.royalJ>=d.relation && d.royalJ>=100)     {        d.lover=1;  /*王子*/        grade=200;     }     else if(d.relation>d.royalJ && d.relation>=100)     {        d.lover=2;  /*父亲或母亲*/        grade=0;     }     else     {        d.lover=0;        grade=40;     }  }  return grade;}intpip_endingblack(buf,m,n,grade) /*暗黑*/char *buf;int *m,*n,*grade;{ if(d.offense>=500 && d.mexp>=500) /*魔王*/ {   *m=1;   if(d.mexp>=1000)     *n=1;   else if(d.mexp<1000 && d.mexp >=800)     *n=2;   else     *n=3; }else if(d.hexp>=600)  /*流氓*/ {   *m=2;   if(d.wisdom>=350)     *n=1;   else if(d.wisdom<350 && d.wisdom>=300)     *n=2;   else      *n=3;   }  else if(d.speech>=100 && d.art>=80) /*SM*/ {   *m=3;   if(d.speech>150 && d.art>=120)     *n=1;   else if(d.speech>120 && d.art>=100)     *n=2;   else        *n=3; } else if(d.hexp>=320 && d.character>200 && d.charm< 200)	/*黑街老大*/ {   *m=4;   if(d.hexp>=400)     *n=1;   else if(d.hexp<400 && d.hexp>=360)     *n=2;   else      *n=3;   } else if(d.character>=200 && d.charm >=200 && d.speech>70 && d.toman >70)  /*高级娼妇*/ {   *m=5;   if(d.charm>=300)     *n=1;   else if(d.charm<300 && d.charm>=250)     *n=2;   else      *n=3;   }  else if(d.wisdom>=450)  /*诈骗师*/ {   *m=6;   if(d.wisdom>=550)     *n=1;   else if(d.wisdom<550 && d.wisdom>=500)     *n=2;   else      *n=3;   }  else /*流莺*/ {   *m=7;   if(d.charm>=350)     *n=1;   else if(d.charm<350 && d.charm>=300)     *n=2;   else      *n=3;  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -