public bool SetHat(int hatIndex) { HatManager.Hat newHat = HatManager.Instance?.GetHat(hatIndex); if (newHat != null && hat != newHat) { hat = newHat; HatRenderer.model = hat.hatModel; HatRenderer.material = hat.material; if (HatRenderer.materials.Length == 2) { HatRenderer.SetMaterial(1, hat.material); } HatRenderer.transform.eulerAngles = hat.rotation; boneSyncer.Offset = Matrix.CreateScale(hat.scale) * Matrix.CreateWorld(hat.position, HatRenderer.transform.forward, HatRenderer.transform.up); return(true); } else { return(false); } }