diff --git a/src/playsim/p_actionfunctions.cpp b/src/playsim/p_actionfunctions.cpp index 157ef9336..48d2b2249 100644 --- a/src/playsim/p_actionfunctions.cpp +++ b/src/playsim/p_actionfunctions.cpp @@ -5155,13 +5155,10 @@ DEFINE_ACTION_FUNCTION(AActor, A_ChangeModel) if (mobj->modelData == nullptr) { auto ptr = Create(); + ptr->hasModel = mobj->hasmodel ? 1 : 0; - ptr->modelIDs = *new TArray(); - ptr->skinIDs = *new TArray(); - ptr->surfaceSkinIDs = *new TArray(); - ptr->animationIDs = *new TArray(); - ptr->modelFrameGenerators = *new TArray(); ptr->modelDef = NAME_None; + mobj->modelData = ptr; mobj->hasmodel = 1; GC::WriteBarrier(mobj, ptr);