public class PlayerController : Mono
{
[SerializeField] SomeGun basePrefab;

SomeGun primary;

public void SetGun(GunSO gun)
{
primary = Instaniate(basePrefab, hand.transform, Quat.identity);
primary.Init(gun);
}

void OnInput()
{
if(input == "R") {primary.Reload();}
}
}