易码技术论坛

 找回密码
 加入易码
搜索
12
返回列表 发新帖
楼主: 星痕

正经的lav代码求助~~我知道放在程序版里不会有人看的~~(已解决)

[复制链接]
发表于 2007-9-14 21:55:15 | 显示全部楼层
楼上好专业~
发表于 2007-9-14 22:41:31 | 显示全部楼层
LS灌水更专业
 楼主| 发表于 2007-9-11 17:33:16 | 显示全部楼层 |阅读模式
做游戏里的地图
读取地图id时究竟应该怎样写?

定义了屏幕左上角的坐标map_x,map_y,和总地图长宽~

方法1
定义char map[5][10];
然后读取时
  fseek(fp1,map_x-1+(map_y-1)*MAPLENGTH,0);
  fread(map[0],1,10,fp1);
  fseek(fp1,map_x-1+map_y*MAPLENGTH,0);
  fread(map[1],1,10,fp1);
  fseek(fp1,map_x-1+(map_y+1)*MAPLENGTH,0);
  fread(map[2],1,10,fp1);
  fseek(fp1,map_x-1+(map_y+2)*MAPLENGTH,0);
  fread(map[3],1,10,fp1);
  fseek(fp1,map_x-1+(map_y+3)*MAPLENGTH,0);
  fread(map[4],1,10,fp1);

貌似这个方法是错的~~


方法2
确定这个方法可行
定义char map[50]
然后,这样读?
  fseek(fp1,map_x-1+(map_y-1)*MAPLENGTH,0);
  fread(map,1,10,fp1);
  fseek(fp1,map_x-1+map_y*MAPLENGTH,0);
  fread(map+10,1,10,fp1);
  fseek(fp1,map_x-1+(map_y+1)*MAPLENGTH,0);
  fread(map+20,1,10,fp1);
  fseek(fp1,map_x-1+(map_y+2)*MAPLENGTH,0);
  fread(map+30,1,10,fp1);
  fseek(fp1,map_x-1+(map_y+3)*MAPLENGTH,0);
  fread(map+40,1,10,fp1);


在线等20分钟....快~~~
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

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

GMT+8, 2025-5-1 23:32 , Processed in 0.010912 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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