Why "sizeof - 1"? There's your problem. The last skin isn't registered because of the "-1".
Also, I'd suggest using a better function to handle this:
Code:
precache_player_model(const szModel[], &id = 0)
{
new model[128]
formatex(model, charsmax(model), "models/player/%s/%sT.mdl", szModel, szModel)
if(file_exists(model))
id = precache_generic(model)
static const extension[] = "T.mdl"
#pragma unused extension
copy(model[strlen(model) - charsmax(extension)], charsmax(model), ".mdl")
return precache_model(model)
}
Some models have an additional T.mdl file. This one takes it in mind, plus it only requires the model name as an argument, same as "cs_set_user_model".
__________________