X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FSkeleton.cpp;h=cb8e043e4dc57ff26edc1598bfebfb13e1f73a78;hb=26debbd380c6922e5a0b60d99567c6374a4fef9a;hp=5b28f738f4ac8cfcea8429e8fb0d8d5366e27271;hpb=0b7253f3d99e4382008aff8b8e221e88ff40d3e9;p=lugaru.git diff --git a/Source/Skeleton.cpp b/Source/Skeleton.cpp index 5b28f73..cb8e043 100644 --- a/Source/Skeleton.cpp +++ b/Source/Skeleton.cpp @@ -43,7 +43,6 @@ extern int tutoriallevel; extern int whichjointstartarray[26]; extern int whichjointendarray[26]; -extern Game * pgame; extern bool visibleloading; void dealloc2(void* param){ @@ -309,7 +308,7 @@ float Skeleton::DoConstraints(XYZ *coords,float *scale) if(tutoriallevel!=1||id==0) if(findLengthfast(&bounceness)>8000&&breaking){ - objects.model[k].MakeDecal(breakdecal,DoRotation(temp-objects.position[k],0,-objects.rotation[k],0),.4,.5,Random()%360); + objects.model[k].MakeDecal(breakdecal,DoRotation(temp-objects.position[k],0,-objects.yaw[k],0),.4,.5,Random()%360); Sprite::MakeSprite(cloudsprite, joints[i].position*(*scale)+*coords,joints[i].velocity*.06, 1,1,1, 4, .2); //Sprite::MakeSprite(cloudsprite, joints[i].position*(*scale)+*coords,joints[i].velocity*.06, 1,1,1, 1, .2); breaking=0; @@ -367,7 +366,7 @@ float Skeleton::DoConstraints(XYZ *coords,float *scale) friction=objects.friction[k]; start=joints[i].realoldposition; end=joints[i].position*(*scale)+*coords; - whichhit=objects.model[k].LineCheckPossible(&start,&end,&temp,&objects.position[k],&objects.rotation[k]); + whichhit=objects.model[k].LineCheckPossible(&start,&end,&temp,&objects.position[k],&objects.yaw[k]); if(whichhit!=-1){ if(joints[i].label==groin&&!joints[i].locked&&joints[i].delay<=0){ joints[i].locked=1; @@ -386,7 +385,7 @@ float Skeleton::DoConstraints(XYZ *coords,float *scale) } } - terrainnormal=DoRotation(objects.model[k].facenormals[whichhit],0,objects.rotation[k],0)*-1; + terrainnormal=DoRotation(objects.model[k].facenormals[whichhit],0,objects.yaw[k],0)*-1; if(terrainnormal.y>.8)freefall=0; bounceness=terrainnormal*findLength(&joints[i].velocity)*(abs(normaldotproduct(joints[i].velocity,terrainnormal))); if(findLengthfast(&joints[i].velocity)>findLengthfast(&joints[i].oldvelocity)){ @@ -395,7 +394,7 @@ float Skeleton::DoConstraints(XYZ *coords,float *scale) } if(tutoriallevel!=1||id==0) if(findLengthfast(&bounceness)>4000&&breaking){ - objects.model[k].MakeDecal(breakdecal,DoRotation(temp-objects.position[k],0,-objects.rotation[k],0),.4,.5,Random()%360); + objects.model[k].MakeDecal(breakdecal,DoRotation(temp-objects.position[k],0,-objects.yaw[k],0),.4,.5,Random()%360); Sprite::MakeSprite(cloudsprite, joints[i].position*(*scale)+*coords,joints[i].velocity*.06, 1,1,1, 4, .2); breaking=0; camerashake+=.6; @@ -470,7 +469,7 @@ float Skeleton::DoConstraints(XYZ *coords,float *scale) //Make this less stupid start=joints[jointlabels[whichjointstartarray[i]]].position*(*scale)+*coords; end=joints[jointlabels[whichjointendarray[i]]].position*(*scale)+*coords; - whichhit=objects.model[k].LineCheckSlidePossible(&start,&end,&temp,&objects.position[k],&objects.rotation[k]); + whichhit=objects.model[k].LineCheckSlidePossible(&start,&end,&temp,&objects.position[k],&objects.yaw[k]); if(whichhit!=-1){ joints[jointlabels[whichjointendarray[i]]].position=(end-*coords)/(*scale); for(j=0; jLoadingScreen(); + if(visibleloading) Game::LoadingScreen(); tfile=fopen( fixedFN, "rb" ); if(tfile){