From 1168d10392fb2c73a4aa2edf26522fde8198adbc Mon Sep 17 00:00:00 2001 From: Roman Chistokhodov Date: Wed, 29 Nov 2017 04:07:08 +0300 Subject: [PATCH] Right scientist bodies on the needle draw and holster (#13) --- dlls/scientist.cpp | 6 ++++-- dlls/scientist.h | 5 +++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/dlls/scientist.cpp b/dlls/scientist.cpp index 1256e111..3d8007a7 100644 --- a/dlls/scientist.cpp +++ b/dlls/scientist.cpp @@ -535,13 +535,13 @@ void CScientist::HandleAnimEvent( MonsterEvent_t *pEvent ) case SCIENTIST_AE_NEEDLEON: { int oldBody = pev->body; - pev->body = ( oldBody % NUM_SCIENTIST_HEADS ) + NUM_SCIENTIST_HEADS * 1; + pev->body = ( oldBody % NUM_SCIENTIST_HEADS_OPFOR ) + NUM_SCIENTIST_HEADS_OPFOR * 1; } break; case SCIENTIST_AE_NEEDLEOFF: { int oldBody = pev->body; - pev->body = ( oldBody % NUM_SCIENTIST_HEADS ) + NUM_SCIENTIST_HEADS * 0; + pev->body = ( oldBody % NUM_SCIENTIST_HEADS_OPFOR ) + NUM_SCIENTIST_HEADS_OPFOR * 0; } break; default: @@ -650,12 +650,14 @@ void CScientist::TalkInit() m_voicePitch = 105; break; //glasses case HEAD_EINSTEIN: + case HEAD_EINSTEIN_WITH_BOOK: m_voicePitch = 100; break; //einstein case HEAD_LUTHER: m_voicePitch = 95; break; //luther case HEAD_SLICK: + case HEAD_SLICK_WITH_STICK: m_voicePitch = 100; break; //slick } diff --git a/dlls/scientist.h b/dlls/scientist.h index c04f45c5..4ed38013 100644 --- a/dlls/scientist.h +++ b/dlls/scientist.h @@ -16,9 +16,10 @@ #ifndef SCIENTIST_H #define SCIENTIST_H -#define NUM_SCIENTIST_HEADS 4 // four heads available for scientist model +#define NUM_SCIENTIST_HEADS 4 // four heads available for scientist model, used when randoming a scientist head +#define NUM_SCIENTIST_HEADS_OPFOR 6 // used for body change when scientist uses the needle -enum { HEAD_GLASSES = 0, HEAD_EINSTEIN = 1, HEAD_LUTHER = 2, HEAD_SLICK = 3 }; +enum { HEAD_GLASSES = 0, HEAD_EINSTEIN = 1, HEAD_LUTHER = 2, HEAD_SLICK = 3, HEAD_EINSTEIN_WITH_BOOK = 4, HEAD_SLICK_WITH_STICK = 5 }; enum {