Andreas Kirschbaum wrote: > I think the function get_search_arr() in common/object.c does not work > correctly: it should return a permutation of [0..48] but the result > nearly always contains more than one 0 value. > > For example: If the statement "tmp=(RANDOM()%(5-i+1))+1" at the end of > the function (for the range i=1..4) always evaluates to "tmp=1", the > result is search_nums[1..4]={1,2,3,0}. This is not correct because it > should be a permutation of {1,2,3,4}. > > > To fix this issue, I would like to replace the function with: That looks fine. Note that the efficiency/correctness of get_search_arr isn't really critical - it is basically so that the monsters don't always favor the same directions. However, I agree your function is much clearer, and should replace what is there now. _______________________________________________ crossfire-devel mailing list crossfire-devel at lists.real-time.com https://mailman.real-time.com/mailman/listinfo/crossfire-devel