易码技术论坛

 找回密码
 加入易码
搜索
查看: 498292|回复: 19

TC800/E400连机对战版五子棋发布

[复制链接]
发表于 2006-8-19 11:35:58 | 显示全部楼层
这也没有人坐沙发。。可惜
发表于 2006-8-19 11:47:18 | 显示全部楼层
板凳
支持TC800的程序
发表于 2006-8-19 12:10:05 | 显示全部楼层
地板,我支持你!!!!!!!!!!
发表于 2006-8-19 12:32:30 | 显示全部楼层
支持哈哈~~联机的~
发表于 2006-8-19 14:34:29 | 显示全部楼层
支持支持!!呵呵
发表于 2006-8-19 14:58:45 | 显示全部楼层
又有个联机的游戏了!
发表于 2006-8-21 12:19:56 | 显示全部楼层
有BUG啊,五子棋连五颗就赢了,我和血翼连满一排都还可以继续游戏\>>>>>>>>??????????/
 楼主| 发表于 2006-8-24 11:10:58 | 显示全部楼层
我没加成棋判断呀
发表于 2006-8-24 12:11:14 | 显示全部楼层
那你写一个完整版的嘛~~~~~~~~
发表于 2006-8-24 13:33:06 | 显示全部楼层
我正在写五子棋的AI,有错,改写中,到时候请允许我借鉴一下你的联机.做个可以联机,双人和单机的五子棋游戏.
甚到我还想做一个三机(或更多)互联的游戏,设计要四台(联机台数+1)TC800或E400,一台用做服务器,其它的用来游戏,用我自制的联线进行通迅.
我自制的联线最多可以将八台文曲星联到一起,在三台PC1010中通迅成功!
 楼主| 发表于 2006-8-24 13:47:21 | 显示全部楼层
好呀!我支持 有疑问回帖
发表于 2006-8-24 18:10:11 | 显示全部楼层
10楼厉害啊
发表于 2006-8-24 20:36:17 | 显示全部楼层
有问题耶
发表于 2006-8-26 07:53:41 | 显示全部楼层
引用第10楼wqstar0282006-08-24 13:33发表的“”:
我正在写五子棋的AI,有错,改写中,到时候请允许我借鉴一下你的联机.做个可以联机,双人和单机的五子棋游戏.
甚到我还想做一个三机(或更多)互联的游戏,设计要四台(联机台数+1)TC800或E400,一台用做服务器,其它的用来游戏,用我自制的联线进行通迅.
我自制的联线最多可以将八台文曲星联到一起,在三台PC1010中通迅成功!
我也曾经想过,像GBA一样。可就是不敢拆线子
发表于 2006-8-28 09:20:24 | 显示全部楼层
恕我直言,楼主的源程序好难懂啊。用了太多的GOTO语句。我帮你改了一下,这样更容易让人看懂!你不介意吧??
发表于 2006-8-28 09:35:56 | 显示全部楼层
long x1,y1,x2,y2;
char bla,blb,blc[6400],my[12][8],ble,blf,bld,fa,qcf[12][8];

void send()
{
x1=80;
y1=40;
for(;;)
   {
   WriteBlock(0,0,160,80,64,blc);
   SetFgColor(12);
   Circle(x1,y1,3,1,1);
   for(;;)
      {
      bla=getchar();
      if (bla==20) y1=y1-10;
      if (bla==21) y1=y1+10;
      if (bla==22) x1=x1+10;
      if (bla==23) x1=x1-10;
      if (bla==27)
        {
        fclose(fa);
        System.ComClose();
        exit(0);
        }
      if (x1<0) x1=120;  
      if (x1>=121) x1=0;
      if (y1<0) y1=80;
      if (y1>=81) y1=0;  
      Circle(x1,y1,3,1,1);
      if (bla==13)
        {
        ble=0;
        blf=0;
        if (qcf[x1][y1]==5)continue;   
        GetBlock(0,0,160,80,64,blc);
          System.ComPutc(x1);
        System.ComPutc(y1);
        qcf[x1][y1]=5;
        my[x1][y1]==6;
        for(ble;ble<=12;ble++)
           {
           for(blf;blf<=8;blf++)
              {
              if(ble>=5)
              if(blf>=5)
              if(my[ble][blf]==6)
              if (my[ble-1][blf-1]==6)
              if (my[ble-2][blf-2]==6)
              if (my[ble-3][blf-3]==6)
              if (my[ble-4][blf-4]==6)exit(0);
     
              if (ble<=7)
              if (blf<=4)
              if (my[ble][blf]==6)
              if (my[ble+1][blf+1]==6)
              if (my[ble+2][blf+2]==6)
              if (my[ble+3][blf+3]==6)
              if (my[ble+4][blf+4]==6)exit(0);
              }
           }   
        return;
        }
      }
   }      
}

void receive()
{
for(;;)
   {
   WriteBlock(0,0,160,80,64,blc);
   for(;;)
      {
      if (Inkey()==27)
        {
        fclose(fa);
        System.ComClose();
        exit(0);
        }
      x2=System.ComGetc();         
      if(x2)break;
      }
   y2=System.ComGetc();
   SetFgColor(9);
   Circle(x2,y2,2,1,1);
   GetBlock(0,0,160,80,64,blc);
   qcf[x2][y2]=5;        
   return;  
   }
}

void main()
{
int player;
SetGraphMode(4);
fa=fopen("/LavaData/wzq.dat","r");
fseek(fa,6400,0);
fread(blc,1,6400,fa);
System.ComOpen();
WriteBlock(0,0,160,80,64,blc);
bla=getchar();
if (bla==49)
   {
   fseek(fa,0,0);
   fread(blc,1,6400,fa);
   player=1;
   }
if (bla==50)
   {
   fseek(fa,0,0);
   fread(blc,1,6400,fa);
   player=2;
   }
for(;;)
   {
   if(player==1)send();
   else receive();
   }
}
你试试是不是和你以前的效果一样?
发表于 2006-8-28 09:42:05 | 显示全部楼层
提个建议,你取的变量名是随便取的吧?一般要取一个能望生义的变量名,比如我上面用的player一看就知道是表示“玩家”的变量。
还有,你在上面的send与receive中用的for(bld;bld>=0;bld++)这样一个语句,而bld是一个无符号的变量,因此这根本就是一个无限循环,加上在循环中根本没用到bld这个变量,那你为什么不用一个空循环(for(;;))呢?
至于goto,完全可以用一个在标号处设一个空循环来表达,而在goto这个标号处用一个continue;语句就可以完成了。好好总结一下吧。希望能看到你更优秀的作品!
发表于 2006-8-28 10:29:14 | 显示全部楼层
支持
 楼主| 发表于 2006-9-1 15:23:52 | 显示全部楼层
谢谢啊  我的基础很弱    比比较喜欢简单的语句组成复杂的程序   会吸取经验的    我的连机象棋和完整版五子棋完成      我的文曲星没带  所以过几天上传
 楼主| 发表于 2006-8-19 11:17:36 | 显示全部楼层 |阅读模式
  没加成棋判断程序    原代码公布在我的博克  www.forever604.fffy.com中   希望斗地主作者和象棋作者可以做个连机的好游戏   

新建 WinRAR 压缩文件.rar

2 KB, 下载次数: 333

您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2025-6-16 12:28 , Processed in 0.015530 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表