Files
SVSimServer/SVSim.BattleEngine/Engine/NetworkStatus.cs
gamer147 957af3d1ec feat(battle-engine): full Unity/VFX/god-object shims + expanded copy closure (2570 files)
Authored Unity primitive/object-model shim, VFX layer (control-flow-preserving, InstantVfx never invokes its action -- headless suppression), god-object stubs (GameMgr/EffectMgr/UIManager with faithfully-extracted nested enums), View/UI/Touch tree, LitJson+BetterList+Tuple copied, third-party stubs. Discovered Roslyn header-error masking: fixing class-header type errors unmasks body references, so the true copy closure is ~2570 files (was 782 under masking). Errors: masked-25720 -> 268; our shim files compile clean. Remaining: ~50 residual shim/external types, 24 NGUI UI-base overrides, static-type fixes, plus likely 1-2 more unmask waves.
2026-06-05 17:22:20 -04:00

64 lines
912 B
C#

using System;
using Cute;
public class NetworkStatus : IDisposable
{
public enum Status
{
None,
Alive,
Disconnect,
OffLine,
TimeOut
}
public Action OnAlive;
public Action OnDisconnect;
public Action OnOffLine;
public Action OnTimeOut;
public Status Current { get; private set; }
public bool IsAlive => Current == Status.Alive;
public NetworkStatus()
{
Current = Status.None;
}
public void ToKeepAlive()
{
OnAlive.Call();
Current = Status.Alive;
}
public void ToDisconnect()
{
OnDisconnect.Call();
Current = Status.Disconnect;
}
public void ToOffLine()
{
OnOffLine.Call();
Current = Status.OffLine;
}
public void ToTimeOut()
{
OnTimeOut.Call();
Current = Status.TimeOut;
}
public void Dispose()
{
OnAlive = null;
OnDisconnect = null;
OnOffLine = null;
OnTimeOut = null;
}
}