Methods

Methods are written in PascalCase. For example DoSomething().

Methods that are used as the OnChange callback of a [SyncVar]

Should have the Sync prefix, as in:

[SyncVar(OnChange = nameof(SyncUsername))] string _username;
private void SyncUsername(string oldUsername, string newUsername, bool asServer) {}
Methods that listen to an event

Should have the prefix Handle, as in:

clownBomb.OnExploded += HandleClownBombExploded;
private void HandleClownBombExploded() 
{
    Honk();
}
Methods that are preceded by the [Server] attribute

Do not need to have the Server prefix on them. This is still something we are thinking about, both uses are fine for now.

As in:

[Server]
public void ServerKillPlayer() {}
[Server]
public void KillPlayer() {}
Methods that are preceded by the [ServerRpc] attribute

Need to have the Cmd prefix on them, as in:

[ServerRpc]
public void CmdSpawnItem(GameItems item) 
{
    SpawnItem(item);
}
Methods that are preceded by the [ObserversRpc] attribute

Need to have the Rpc prefix on them, as in:

[ObserversRpc]
private void RpcSpawnVisualProjectives() 
{
   _particleSystem.Play();   
}

Last updated