bodygroup and subclass change method to use AcceptInput

This commit is contained in:
stefanx111
2025-08-05 01:08:43 +03:00
parent 95d53f4216
commit bde0666313
2 changed files with 12 additions and 9 deletions

View File

@@ -405,7 +405,7 @@ namespace WeaponPaints
item.Initialized = true;
SetBodygroup(pawn.Handle, "default_gloves", 1);
SetBodygroup(pawn, "default_gloves", 1);
}
catch (Exception) { }
}, TimerFlags.STOP_ON_MAPCHANGE);
@@ -429,13 +429,15 @@ namespace WeaponPaints
return int.TryParse(randomWeapon["paint"]?.ToString(), out var paintValue) ? paintValue : 0;
}
private static void SubclassChange(CBasePlayerWeapon weapon, ushort itemD)
//xstage idea on css discord
public static void SubclassChange(CBasePlayerWeapon weapon, ushort itemD)
{
var subclassChangeFunc = VirtualFunction.Create<nint, string, int>(
GameData.GetSignature("ChangeSubclass")
);
weapon.AcceptInput("ChangeSubclass", value: itemD.ToString());
}
subclassChangeFunc(weapon.Handle, itemD.ToString());
public static void SetBodygroup(CCSPlayerPawn pawn, string group, int value)
{
pawn.AcceptInput("SetBodygroup", value:$"{group},{value}");
}
private static void UpdateWeaponMeshGroupMask(CBaseEntity weapon, bool isLegacy = false)