Server_GetBlendingInterface: fix using struct for Mod_Extradata

This commit is contained in:
s1lentq 2015-07-13 03:17:38 +06:00
parent ed2e465d2b
commit d1d017e2b5
2 changed files with 3 additions and 18 deletions

View File

@ -23,11 +23,6 @@ studiohdr_t *g_pstudiohdr;
float (*g_pRotationMatrix)[3][4]; float (*g_pRotationMatrix)[3][4];
float (*g_pBoneTransform)[128][3][4]; float (*g_pBoneTransform)[128][3][4];
//float (*g_pRotationMatrix)[3][4];
//float (*g_pBoneTransform)[ MAXSTUDIOBONES ][3][4];
//float *((*g_pRotationMatrix)[3][4]);
//float *((*g_pBoneTransform)[ MAXSTUDIOBONES ][3][4]);
float omega; float omega;
float cosom; float cosom;
float sinom; float sinom;
@ -325,9 +320,7 @@ C_DLLEXPORT int Server_GetBlendingInterface(int version, struct sv_blending_inte
IEngineStudio.Mem_Calloc = pstudio->Mem_Calloc; IEngineStudio.Mem_Calloc = pstudio->Mem_Calloc;
IEngineStudio.Cache_Check = pstudio->Cache_Check; IEngineStudio.Cache_Check = pstudio->Cache_Check;
IEngineStudio.LoadCacheFile = pstudio->LoadCacheFile; IEngineStudio.LoadCacheFile = pstudio->LoadCacheFile;
IEngineStudio.Mod_Extradata = ((struct server_studio_api_s *)pstudio)->Mod_Extradata;
// TODO: Mod_Extradata offset +12
IEngineStudio.Mod_Extradata = (void *(*)(struct model_s *))pstudio->Mod_ForName;
g_pRotationMatrix = (float (*)[3][4])rotationmatrix; g_pRotationMatrix = (float (*)[3][4])rotationmatrix;
g_pBoneTransform = (float (*)[128][3][4])bonetransform; g_pBoneTransform = (float (*)[128][3][4])bonetransform;
@ -468,7 +461,6 @@ void (*pQuaternionMatrix)(vec_t *quaternion, float matrix[3][4]);
NOBODY void __declspec(naked) QuaternionMatrix(vec_t *quaternion, float matrix[3][4]) NOBODY void __declspec(naked) QuaternionMatrix(vec_t *quaternion, float matrix[3][4])
{ {
UNTESTED UNTESTED
__asm __asm
{ {
jmp pQuaternionMatrix jmp pQuaternionMatrix
@ -517,15 +509,10 @@ mstudioanim_t *StudioGetAnim(model_t *m_pSubModel, mstudioseqdesc_t *pseqdesc)
NOXREF mstudioanim_t *LookupAnimation(studiohdr_t *pstudiohdr, model_s *model, mstudioseqdesc_t *pseqdesc, int index) NOXREF mstudioanim_t *LookupAnimation(studiohdr_t *pstudiohdr, model_s *model, mstudioseqdesc_t *pseqdesc, int index)
{ {
mstudioanim_t *panim = StudioGetAnim(model, pseqdesc); mstudioanim_t *panim = StudioGetAnim(model, pseqdesc);
if (pseqdesc->numblends > index) if (index >= 0 && index <= (pseqdesc->numblends - 1))
return &panim[index * pstudiohdr->numbones]; panim += index * pstudiohdr->numbones;
//panim += index * pstudiohdr->numbones;
return panim; return panim;
//if (index >= 0 && index <= (pseqdesc->numblends - 1))
// panim += index * pstudiohdr->numbones;
} }
/* <151a9> ../cstrike/dlls/animation.cpp:770 */ /* <151a9> ../cstrike/dlls/animation.cpp:770 */

View File

@ -3405,8 +3405,6 @@ NOXREF void CBasePlayer::UpdateGeigerCounter(void)
/* <156189> ../cstrike/dlls/player.cpp:5352 */ /* <156189> ../cstrike/dlls/player.cpp:5352 */
void CBasePlayer::CheckSuitUpdate(void) void CBasePlayer::CheckSuitUpdate(void)
{ {
_LOG_TRACE
int i; int i;
int isentence = 0; int isentence = 0;
int isearch = m_iSuitPlayNext; int isearch = m_iSuitPlayNext;