public static void WriteBoolNullable(this NetworkWriter writer, bool?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteBool(value.Value); } }
bool WriteParameters(NetworkWriter writer, bool forceAll = false) { ulong dirtyBits = forceAll ? (~0ul) : NextDirtyBits(); writer.WriteULong(dirtyBits); for (int i = 0; i < parameters.Length; i++) { if ((dirtyBits & (1ul << i)) == 0) { continue; } AnimatorControllerParameter par = parameters[i]; if (par.type == AnimatorControllerParameterType.Int) { int newIntValue = animator.GetInteger(par.nameHash); writer.WriteInt(newIntValue); } else if (par.type == AnimatorControllerParameterType.Float) { float newFloatValue = animator.GetFloat(par.nameHash); writer.WriteFloat(newFloatValue); } else if (par.type == AnimatorControllerParameterType.Bool) { bool newBoolValue = animator.GetBool(par.nameHash); writer.WriteBool(newBoolValue); } } return(dirtyBits != 0); }
// TODO add nullable support to weaver instead public static void WriteQuaternionNullable(this NetworkWriter writer, Quaternion?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteQuaternion(value.Value); } }
// TODO add nullable support to weaver instead public static void WriteVector3Nullable(this NetworkWriter writer, Vector3?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteVector3(value.Value); } }
// TODO add nullable support to weaver instead public static void WriteColor32Nullable(this NetworkWriter writer, Color32?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteColor32(value.Value); } }
public static void WriteMatrix4x4Nullable(this NetworkWriter writer, Matrix4x4?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteMatrix4x4(value.Value); } }
public static void WritePlaneNullable(this NetworkWriter writer, Plane?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WritePlane(value.Value); } }
public static void WriteFloatNullable(this NetworkWriter writer, float?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteFloat(value.Value); } }
public static void WriteULongNullable(this NetworkWriter writer, ulong?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteULong(value.Value); } }
public static void WriteUIntNullable(this NetworkWriter writer, uint?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteUInt(value.Value); } }
public static void WriteShortNullable(this NetworkWriter writer, short?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteShort(value.Value); } }
public static void WriteCharNullable(this NetworkWriter writer, char?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteChar(value.Value); } }
public static void WriteSByteNullable(this NetworkWriter writer, sbyte?value) { writer.WriteBool(value.HasValue); if (value.HasValue) { writer.WriteSByte(value.Value); } }
public static void WriteBoolean(this NetworkWriter writer, bool value) => writer.WriteBool(value);