NSMonster: get movement speed from animations by default, add cvar ai_stepSize to configure distance

This commit is contained in:
Marco Cawthorne 2023-05-31 11:44:31 -07:00
parent 41465b7c9e
commit e880bf764a
Signed by: eukara
GPG key ID: CE2032F0A2882A22

View file

@ -187,19 +187,19 @@ NSMonster::Restore(string strKey, string strValue)
int int
NSMonster::AnimIdle(void) NSMonster::AnimIdle(void)
{ {
return -1; return frameforaction(modelindex, ACT_IDLE);
} }
int int
NSMonster::AnimWalk(void) NSMonster::AnimWalk(void)
{ {
return -1; return frameforaction(modelindex, ACT_WALK);
} }
int int
NSMonster::AnimRun(void) NSMonster::AnimRun(void)
{ {
return -1; return frameforaction(modelindex, ACT_RUN);
} }
void void
@ -419,22 +419,27 @@ NSMonster::SeeThink(void)
} }
} }
var float autocvar_ai_stepSize = 128;
float float
NSMonster::GetWalkSpeed(void) NSMonster::GetWalkSpeed(void)
{ {
return 64; float speed = autocvar_ai_stepsize / frameduration(modelindex, AnimWalk());
return speed;
} }
float float
NSMonster::GetChaseSpeed(void) NSMonster::GetChaseSpeed(void)
{ {
return 240; float speed = autocvar_ai_stepsize / frameduration(modelindex, AnimRun());
return speed;
} }
float float
NSMonster::GetRunSpeed(void) NSMonster::GetRunSpeed(void)
{ {
return 140; float speed = autocvar_ai_stepsize / frameduration(modelindex, AnimRun());
return speed;
} }
float float