(06-05-2013, 04:13 PM)YinYin Wrote: Did this fix change how itr and bdy are read? - because is now crashes as soon as I try to read the kind of the very first one.Because of the renaming of the variables unkwn12 is no longer unkwn12 but unkwn9 I believe.
edit: no it crashes upon reading this condition:
//(game.objects[o].unkwn12[0]!=0||
//target.data.frames[target.frame].itrs[i].kind!=4)&&
//(game.objects[game.objects[o].weapon_holder].data.frames[game.objects[game.objects[o].weapon_holder].frame1].wpoint.attacking!=0||
//target.data.frames[target.frame].itrs[i].kind!=5)&&
I think unkwn12 previously was int - now it's char - I use it to read a thrown characters throwinjury (to distinguish him from a normal falling character).
edit: That unkwn12 still works as throwinjury - but the weapon_holder tends to return huge numbers now for characters (that aren't being held via wpoint) instead of 0 - I guess trying to access object number 204800 crashes the game in this case.
edit: If I filter out all the useless cases outside of the object number range it always returns 0.
@below: I'll look into it.
Age ratings for movies and games (and similar) have never been a good idea.
One can learn a lot from reinventing wheels.
An unsound argument is not the same as an invalid one.
volatile in C++ does not mean thread-safe.
Do not make APIs unnecessarily asynchronous.
Make C++ operator > again
Trump is an idiot.
One can learn a lot from reinventing wheels.
An unsound argument is not the same as an invalid one.
volatile in C++ does not mean thread-safe.
Do not make APIs unnecessarily asynchronous.
Make C++ operator > again
Trump is an idiot.

Chat

