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();
}