用c写个RPG游戏的怪物属性问题(使用struct)

Home Home
引用 | 编辑 fbiwbi
2007-12-29 00:58
楼主
推文 x0
为了开发一套rpg游戏程式
再撰写怪物属性
最奇怪的地方就是
我列印出来的两个怪物属性均(生命值与攻击力)都一模一样try了100次都是这样
卡就卡卡在这里了进行不下去= =
怎么会这样...又不是双胞胎
函式呼叫也是分别call by reference过去呼叫阿
请大大帮我看我写的程式有什么bug没注意到吗
谢谢

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>



struct monsterdata//怪物属性资料型 ..

访客只能看到部份内容,免费 加入会员



献花 x0
引用 | 编辑 totsi
2008-01-02 09:41
1楼
  
你是使用时间当作乱数的种子吧?
你试试看在产生下一组data之前Sleep一下
产出的状态应该会不一样喔..
建议时间大于1000ms
因为你的乱数种子应该是以秒为单位喔 表情

献花 x0
引用 | 编辑 kolong
2008-01-08 13:34
2楼
  
srand((unsigned int)time(NULL));
要移到 main下来执行...

献花 x0
引用 | 编辑 totsi
2008-01-09 09:01
3楼
  
耶..真神奇..这样ok喔
不过为啥我用sleep()也可以一样阿XD

好奇说..
在下是C++的新手XD

献花 x0
引用 | 编辑 kolong
2008-01-09 18:22
4楼
  
下面是引用totsi于2008-01-09 09:01发表的 :
耶..真神奇..这样ok喔
不过为啥我用sleep()也可以一样阿XD

好奇说..
在下是C++的新手XD


首先 srand(int seed ) 是产生一个数的function,
它靠什么东西去算出来的呢,就是seed,
所以相同的seed就会得到相同的值啦,
现在CPU那么快,你执行 srand((unsigned int)time(NULL));
的时间不一定不到10ms,
但是如果你把 srand((unsigned int)time(NULL));拿到main()
call function会花比较多的时间,当然取到的seed就会不同啦.

献花 x1
引用 | 编辑 第四十刃
2011-01-23 11:29
5楼
  
我也想制作游戏

献花 x0