用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