// In MP, other clients need accurate information about your player or else bugs happen. // clientClone, SyncPlayer, and SendClientChanges, ensure that information is correct. // We only need to do this for data that is changed by code not executed by all clients, // or data that needs to be shared while joining a world. // For example, friendPet doesn't need to be synced because all clients know that the player is wearing the friendPet item in an equipment slot. // The friendPet bool is set for that player on every clients computer independently (via the Buff.Update), keeping that data in sync. // ExampleLifeFruits, however might be out of sync. For example, when joining a server, we need to share the exampleLifeFruits variable with all other clients. public override void clientClone(ModPlayer clientClone) { HeylookamodPlayer clone = clientClone as HeylookamodPlayer; // Here we would make a backup clone of values that are only correct on the local players Player instance. // Some examples would be RPG stats from a GUI, Hotkey states, and Extra Item Slots // clone.someLocalVariable = someLocalVariable; }
public override void CopyCustomBiomesTo(Player other) { HeylookamodPlayer modOther = other.GetModPlayer <HeylookamodPlayer>(); modOther.Overgrowth = Overgrowth; }
public override bool CustomBiomesMatch(Player other) { HeylookamodPlayer modOther = other.GetModPlayer <HeylookamodPlayer>(); return(Overgrowth == modOther.Overgrowth); }