This is an iOS chat client for Kirandur, a multiplayer RPG. Reimplements the LiteNetLib UDP protocol in Swift for reliable ordered messaging. Renders server-driven UI via a RemoteForms widget system for login, character creation and more inside the client. Uses msgpack-swift for serialization, Keychain for credentials, and targets iOS 18.6+/Xcode 26+. No message persistence yet. No auto-reconnect. Game-specific packets (movement, combat, etc.) are silently ignored. No profile viewing yet. Assisted by Claude Code (Opus 4.6)
21 lines
492 B
Swift
21 lines
492 B
Swift
import SwiftUI
|
|
|
|
struct ContentView: View {
|
|
@Environment(ConnectionManager.self) private var manager
|
|
|
|
var body: some View {
|
|
Group {
|
|
switch manager.screen {
|
|
case .login:
|
|
LoginView()
|
|
case .connecting:
|
|
ConnectingView()
|
|
case .forms:
|
|
RemoteFormView()
|
|
case .chat:
|
|
ChatView()
|
|
}
|
|
}
|
|
.animation(.default, value: manager.screen)
|
|
}
|
|
}
|