Class NetworkList<T>
Event based NetworkVariable container for syncing Lists
Inherited Members
Namespace: MLAPI.NetworkVariable.Collections
Assembly: Unity.Multiplayer.MLAPI.Runtime.dll
Syntax
public class NetworkList<T> : IList<T>, ICollection<T>, IEnumerable<T>, IEnumerable, INetworkVariable
Type Parameters
| Name | Description |
|---|---|
| T | The type for the list |
Constructors
NetworkList()
Creates a NetworkList with the default value and settings
Declaration
public NetworkList()
NetworkList(NetworkVariableSettings)
Creates a NetworkList with the default value and custom settings
Declaration
public NetworkList(NetworkVariableSettings settings)
Parameters
| Type | Name | Description |
|---|---|---|
| NetworkVariableSettings | settings | The settings to use for the NetworkList |
NetworkList(NetworkVariableSettings, IList<T>)
Creates a NetworkList with a custom value and custom settings
Declaration
public NetworkList(NetworkVariableSettings settings, IList<T> value)
Parameters
| Type | Name | Description |
|---|---|---|
| NetworkVariableSettings | settings | The settings to use for the NetworkList |
| IList<T> | value | The initial value to use for the NetworkList |
NetworkList(IList<T>)
Creates a NetworkList with a custom value and the default settings
Declaration
public NetworkList(IList<T> value)
Parameters
| Type | Name | Description |
|---|---|---|
| IList<T> | value | The initial value to use for the NetworkList |
Fields
Settings
The settings for this container
Declaration
public readonly NetworkVariableSettings Settings
Field Value
| Type | Description |
|---|---|
| NetworkVariableSettings |
Properties
Count
Declaration
public int Count { get; }
Property Value
| Type | Description |
|---|---|
| int |
IsReadOnly
Declaration
public bool IsReadOnly { get; }
Property Value
| Type | Description |
|---|---|
| bool |
this[int]
Declaration
public T this[int index] { get; set; }
Parameters
| Type | Name | Description |
|---|---|---|
| int | index |
Property Value
| Type | Description |
|---|---|
| T |
LastSyncedTime
Gets the last time the variable was synced
Declaration
public float LastSyncedTime { get; }
Property Value
| Type | Description |
|---|---|
| float |
Methods
Add(T)
Declaration
public void Add(T item)
Parameters
| Type | Name | Description |
|---|---|---|
| T | item |
CanClientRead(ulong)
Gets Whether or not a specific client can read to the varaible
Declaration
public bool CanClientRead(ulong clientId)
Parameters
| Type | Name | Description |
|---|---|---|
| ulong | clientId | The clientId of the remote client |
Returns
| Type | Description |
|---|---|
| bool | Whether or not the client can read to the variable |
CanClientWrite(ulong)
Gets Whether or not a specific client can write to the varaible
Declaration
public bool CanClientWrite(ulong clientId)
Parameters
| Type | Name | Description |
|---|---|---|
| ulong | clientId | The clientId of the remote client |
Returns
| Type | Description |
|---|---|
| bool | Whether or not the client can write to the variable |
Clear()
Declaration
public void Clear()
Contains(T)
Declaration
public bool Contains(T item)
Parameters
| Type | Name | Description |
|---|---|---|
| T | item |
Returns
| Type | Description |
|---|---|
| bool |
CopyTo(T[], int)
Declaration
public void CopyTo(T[] array, int arrayIndex)
Parameters
| Type | Name | Description |
|---|---|---|
| T[] | array | |
| int | arrayIndex |
GetChannel()
Returns the name of the channel to be used for syncing
Declaration
public NetworkChannel GetChannel()
Returns
| Type | Description |
|---|---|
| NetworkChannel | The name of the channel to be used for syncing |
GetEnumerator()
Declaration
public IEnumerator<T> GetEnumerator()
Returns
| Type | Description |
|---|---|
| IEnumerator<T> |
IndexOf(T)
Declaration
public int IndexOf(T item)
Parameters
| Type | Name | Description |
|---|---|---|
| T | item |
Returns
| Type | Description |
|---|---|
| int |
Insert(int, T)
Declaration
public void Insert(int index, T item)
Parameters
| Type | Name | Description |
|---|---|---|
| int | index | |
| T | item |
IsDirty()
Gets Whether or not the container is dirty
Declaration
public bool IsDirty()
Returns
| Type | Description |
|---|---|
| bool | Whether or not the container is dirty |
ReadDelta(Stream, bool, ushort, ushort)
Reads delta from the reader and applies them to the internal value
Declaration
public void ReadDelta(Stream stream, bool keepDirtyDelta, ushort localTick, ushort remoteTick)
Parameters
| Type | Name | Description |
|---|---|---|
| Stream | stream | The stream to read the delta from |
| bool | keepDirtyDelta | Whether or not the delta should be kept as dirty or consumed |
| ushort | localTick | The local network tick at which this var was written, on the machine it was written |
| ushort | remoteTick | The remote network tick at which this var was sent by the host |
ReadField(Stream, ushort, ushort)
Reads the complete state from the reader and applies it
Declaration
public void ReadField(Stream stream, ushort localTick, ushort remoteTick)
Parameters
| Type | Name | Description |
|---|---|---|
| Stream | stream | The stream to read the state from |
| ushort | localTick | The local network tick at which this var was written, on the machine it was written |
| ushort | remoteTick | The remote network tick at which this var was sent by the host |
Remove(T)
Declaration
public bool Remove(T item)
Parameters
| Type | Name | Description |
|---|---|---|
| T | item |
Returns
| Type | Description |
|---|---|
| bool |
RemoveAt(int)
Declaration
public void RemoveAt(int index)
Parameters
| Type | Name | Description |
|---|---|---|
| int | index |
ResetDirty()
Resets the dirty state and marks the variable as synced / clean
Declaration
public void ResetDirty()
SetNetworkBehaviour(NetworkBehaviour)
Sets NetworkBehaviour the container belongs to.
Declaration
public void SetNetworkBehaviour(NetworkBehaviour behaviour)
Parameters
| Type | Name | Description |
|---|---|---|
| NetworkBehaviour | behaviour | The behaviour the container behaves to |
WriteDelta(Stream)
Writes the dirty changes, that is, the changes since the variable was last dirty, to the writer
Declaration
public void WriteDelta(Stream stream)
Parameters
| Type | Name | Description |
|---|---|---|
| Stream | stream | The stream to write the dirty changes to |
WriteField(Stream)
Writes the complete state of the variable to the writer
Declaration
public void WriteField(Stream stream)
Parameters
| Type | Name | Description |
|---|---|---|
| Stream | stream | The stream to write the state to |
Events
OnListChanged
The callback to be invoked when the list gets changed
Declaration
public event NetworkList<T>.OnListChangedDelegate OnListChanged
Event Type
| Type | Description |
|---|---|
| NetworkList<T>.OnListChangedDelegate |