Esempio n. 1
0
        public static AceApian Create(string apianGroupType, IAceGameNet aceGameNet, AceAppCore appCore)
        {
            AceApian result;

            switch (apianGroupType)
            {
            case SinglePeerGroupManager.kGroupType:
                result = new AceApianSinglePeer(aceGameNet, appCore);
                break;

            case CreatorSezGroupManager.kGroupType:
                result = new AceApianCreatorSez(aceGameNet, appCore);
                break;

            default:
                UniLogger.GetLogger("Apian").Warn($"AceApianFactory.Create() Unknown GroupType: {apianGroupType}");
                result = null;
                break;
            }
            return(result);
        }
Esempio n. 2
0
 public AceApianSinglePeer(IAceGameNet _gn, AceAppCore _client) : base(_gn, _client)
 {
     ApianClock = new CoopApianClock(this); // FIXME: Ace needs a virtual timer-based clock
     GroupMgr   = new SinglePeerGroupManager(this);
 }
Esempio n. 3
0
 public AceApianCreatorSez(IAceGameNet _gn, IAceAppCore _client) : base(_gn, _client)
 {
     // TODO: LeaderClock needs a way to set the leader. Currently uses group creator.
     ApianClock = new LeaderApianClock(this); // For Ace this should be a virtual-timer-based clock rather than realtime
     GroupMgr   = new CreatorSezGroupManager(this);
 }