Table of Contents

Class SpeechMessageFactory

Namespace
Moongate.Network.Packets.Outgoing.Speech
Assembly
Moongate.Network.Packets.dll

Factory helpers for creating outbound unicode speech packets with consistent defaults.

public static class SpeechMessageFactory
Inheritance
SpeechMessageFactory
Inherited Members

Methods

CreateFromSpeaker(UOMobileEntity?, ChatMessageType, short, short, string?, string)

Creates a speech packet emitted by a mobile speaker.

public static UnicodeSpeechMessagePacket CreateFromSpeaker(UOMobileEntity? speaker, ChatMessageType messageType, short hue, short font, string? language, string text)

Parameters

speaker UOMobileEntity

Speaker mobile, or null for system-like fallback metadata.

messageType ChatMessageType

Speech message type.

hue short

Requested speech hue. Uses default speech hue when zero.

font short

Requested speech font. Uses default speech font when zero.

language string

Language code. Uses ENU when missing.

text string

Speech text.

Returns

UnicodeSpeechMessagePacket

A configured unicode speech message packet.

CreateMessage(Span<byte>, UnicodeSpeechMessagePacket)

Creates a unicode speech packet payload into the provided destination buffer.

public static int CreateMessage(Span<byte> destination, UnicodeSpeechMessagePacket packet)

Parameters

destination Span<byte>

Destination buffer.

packet UnicodeSpeechMessagePacket

Source packet metadata.

Returns

int

Bytes written.

CreateMessage(Span<byte>, Serial, int, ChatMessageType, int, int, string?, string?, string?)

Creates a unicode speech packet payload into the provided destination buffer.

public static int CreateMessage(Span<byte> destination, Serial serial, int graphic, ChatMessageType messageType, int hue, int font, string? language, string? name, string? text)

Parameters

destination Span<byte>

Destination buffer.

serial Serial

Speaker serial.

graphic int

Speaker body/graphic.

messageType ChatMessageType

Speech message type.

hue int

Speech hue.

font int

Speech font.

language string

Language code.

name string

Speaker name.

text string

Speech text.

Returns

int

Bytes written.

CreateMessageBytes(UnicodeSpeechMessagePacket)

Creates a byte array payload for the provided unicode speech message packet.

public static byte[] CreateMessageBytes(UnicodeSpeechMessagePacket packet)

Parameters

packet UnicodeSpeechMessagePacket

Speech packet to serialize.

Returns

byte[]

Serialized packet bytes.

CreateSayFromSpeaker(UOMobileEntity?, string, short, short, string)

Creates a regular speech (say) packet emitted by a mobile speaker.

public static UnicodeSpeechMessagePacket CreateSayFromSpeaker(UOMobileEntity? speaker, string text, short hue = 946, short font = 3, string language = "ENU")

Parameters

speaker UOMobileEntity

Speaker mobile.

text string

Speech text.

hue short

Speech hue.

font short

Speech font.

language string

Language code.

Returns

UnicodeSpeechMessagePacket

A configured unicode speech message packet.

CreateSystem(string, short, short, string)

Creates a system speech packet using standard system metadata.

public static UnicodeSpeechMessagePacket CreateSystem(string text, short hue = 1154, short font = 3, string language = "ENU")

Parameters

text string

System message text.

hue short

System message hue.

font short

System message font.

language string

System message language code.

Returns

UnicodeSpeechMessagePacket

A configured unicode speech packet marked as system message.

CreateWhisperFromSpeaker(UOMobileEntity?, string, short, short, string)

Creates a whisper speech packet emitted by a mobile speaker.

public static UnicodeSpeechMessagePacket CreateWhisperFromSpeaker(UOMobileEntity? speaker, string text, short hue = 946, short font = 3, string language = "ENU")

Parameters

speaker UOMobileEntity

Speaker mobile.

text string

Speech text.

hue short

Speech hue.

font short

Speech font.

language string

Language code.

Returns

UnicodeSpeechMessagePacket

A configured unicode speech message packet.

CreateYellFromSpeaker(UOMobileEntity?, string, short, short, string)

Creates a yell speech packet emitted by a mobile speaker.

public static UnicodeSpeechMessagePacket CreateYellFromSpeaker(UOMobileEntity? speaker, string text, short hue = 946, short font = 3, string language = "ENU")

Parameters

speaker UOMobileEntity

Speaker mobile.

text string

Speech text.

hue short

Speech hue.

font short

Speech font.

language string

Language code.

Returns

UnicodeSpeechMessagePacket

A configured unicode speech message packet.

GetMaxMessageLength(string?)

Gets the maximum packet buffer length needed for a unicode speech message payload.

public static int GetMaxMessageLength(string? text)

Parameters

text string

Speech text.

Returns

int

Maximum packet length in bytes.