why not just rehex the stock models and use a model manager plugin/write a new one?
from what I've read here all it does is set a custom model on a player, right?
use somethin like g_bmodel to store their preference
and something like g_models to store the display string and/or model path (for a toggle, just use model path)
make a simple menu that prints out all of the display names, and then a function that applies the model...
if you don't want them to have cross class models, you can just use
make some creation command that calls a function to apply the model... it may be wise to use a timer of 0.0 or 0.1 seconds, as some mods apply various effects to players, set models/transparency/color, depending on what you use/have. Also call it on player spawn or something, incase they change class..
switch(TF2_GetPlayerClass(client))
{
case TFClass_Scout: SetVariantString(g_models[0]);
case TFClass_Sniper: SetVariantString(g_models[1]);
}
AcceptEntityInput(client, "SetCustomModel");
SetEntProp(client, Prop_Send, "m_bCustomModelRotates", 0);
SetEntProp(client, Prop_Send, "m_bUseClassAnimations", 1);
make another function to remove the model if they toggle it off
SetVariantString("");
AcceptEntityInput(client, "SetCustomModel");
g_bmodel[client] = false;
should be like 1 page program... minus all of the crap you have to add to the downloadstable
@ Happy DODs player
Why are you distributing a plugin that opens ads in a background?
not to derail the thread, but a plugin that chain opens adds every second or half second to get impressions without viewing the ad is dishonest.
At the very least it will annoy/lag out clients.
Code:
This plugin opens an ad on any client using their MOTD browser multiple times a minute without ever showing the MOTD page. This should work with any source games that supports the MOTD. Plus it does not interfere with other services such as Pinion that display ads upon joining the server so you can use both.