It’s possible that EqupWeapon is public and can be accessed from anywhere, but ServerEquipWeapon is private/protected. It is also possible that they just did this for simplicity. This way you can just call EquipWeapon on the client OR on the server and it will end up calling SetCurrentWeapon on the server either way.