From 32c05fc0513f630894bc4097414bb40388829daa Mon Sep 17 00:00:00 2001
From: kaldrum1 <116390251+kaldrum1@users.noreply.github.com>
Date: Thu, 1 Aug 2024 21:32:52 -0700
Subject: [PATCH] fix multi-model loading issue

---
 src/hardware/hw_model.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/hardware/hw_model.c b/src/hardware/hw_model.c
index 00cf7456ac..26ba8591d7 100644
--- a/src/hardware/hw_model.c
+++ b/src/hardware/hw_model.c
@@ -327,8 +327,9 @@ model_t *LoadModel(const char *filename, int ztag, size_t spriteModelIndex)
 
 	Optimize(model);
 	GeneratePolygonNormals(model, ztag);
-	LoadModelSprite2(model);
-	if (!model->spr2frames)
+	if (!spriteModelIndex)
+		LoadModelSprite2(model);	
+	else
 		LoadModelSettings(model, spriteModelIndex);
 
 	// Default material properties
@@ -408,7 +409,7 @@ void LoadModelSettings(model_t *model, size_t spriteModelIndex)
 			count = 0;
 		else if (count != atoi(framename + namechars + ((log10(count) < 2)? 0 : 1)))//if the counts dont match, set to 0 (should only happen if the frames are named really weirdly)
 			count = 0;
-		namechars = strlen(framename) - 1 - (log10(count) < 2 ? 2 : floor(log10(count)));
+		namechars = strlen(framename) - (log10(count) < 2 ? 2 : floor(log10(count)));
 		for (int j = 0; j < namechars; j++)
 		{
 			if (*(framename + j) == '+') //should add frame flags regardless of name prefix
-- 
GitLab