diff --git a/src/main/kotlin/ru/dbotthepony/kstarbound/network/syncher/NetworkedMap.kt b/src/main/kotlin/ru/dbotthepony/kstarbound/network/syncher/NetworkedMap.kt index 45e3ed90..504e98e2 100644 --- a/src/main/kotlin/ru/dbotthepony/kstarbound/network/syncher/NetworkedMap.kt +++ b/src/main/kotlin/ru/dbotthepony/kstarbound/network/syncher/NetworkedMap.kt @@ -77,6 +77,13 @@ class NetworkedMap( }) } + // forces re-network of specified index + fun markIndexDirty(index: K) { + if (index in this) { + backlog.add(currentVersion() to Entry(Action.ADD, KOptional(nativeKey.copy(index)), KOptional(nativeValue.copy(this[index] as V)))) // not null!! assert because V might be nullable + } + } + private val listeners = CopyOnWriteArrayList() private inner class Listener(val listener: ListenableMap.MapListener) : Listenable.L {