コード例 #1
0
 public QuestTracker(QuestEntity.IConfig config, IChatManagerServer chatManager)
 {
     _config              = config;
     _chatManager         = chatManager;
     _entities            = new ConcurrentDictionary <long, QuestEntity>();
     _lastOnlinePlayerIds = new HashSet <long>();
 }
コード例 #2
0
        private void SessionManagerOnSessionStateChanged(ITorchSession session, TorchSessionState newstate)
        {
            switch (newstate)
            {
            case TorchSessionState.Loading:
                break;

            case TorchSessionState.Loaded:
                Task.Run(async() => await Provider.Initialize());
                _chat     = Torch.CurrentSession.Managers.GetManager <IChatManagerServer>();
                _commands = Torch.CurrentSession.Managers.GetManager <CommandManager>();
                ChatService.Register();
                ChatService.MessageReceived += ChatService_MessageReceived;
                break;

            case TorchSessionState.Unloading:
                ChatService.Unregister();
                ChatService.MessageReceived -= ChatService_MessageReceived;
                break;

            case TorchSessionState.Unloaded:
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(newstate), newstate, null);
            }
        }
コード例 #3
0
ファイル: TorchAlert.cs プロジェクト: HnZGaming/TorchAlert
        public void Initialize(IChatManagerServer chatManager)
        {
            _torchDiscordClient.Initialize(chatManager);
            _torchDiscordClient.AddMessageListener(this);

            _linkDb.Read();
        }
コード例 #4
0
        public static void SendMessage(string msg)
        {
            IChatManagerServer manager = null;

            if (Util.chatManager == null)
            {
                ITorchSession currentSession = UpdateMePlugin.Instance.Torch.CurrentSession;
                if (currentSession != null)
                {
                    IDependencyManager managers = currentSession.Managers;
                    if (managers != null)
                    {
                        manager = DependencyProviderExtensions.GetManager <IChatManagerServer>(managers);
                    }
                }

                Util.chatManager = manager;
            }
            try
            {
                //Util.chatManager.DisplayMessageOnSelf("Server", msg);
                Util.chatManager.SendMessageAsSelf(msg);
            }
            catch (Exception ex)
            {
                Util.Log(string.Concat("UpdateMe catched an exception!", ex, ex.StackTrace));
            }
        }
コード例 #5
0
        void OnGameLoaded()
        {
            _chatManager = Torch.CurrentSession.Managers.GetManager <IChatManagerServer>();
            _chatManager.OrThrow("Chat manager not found");

            _tierWorldMessenger = new TierWorldMessenger(Config, _chatManager);
            TaskUtils.RunUntilCancelledAsync(_tierWorldMessenger.Run, _cancellationTokenSource.Token).Forget(Log);
        }
コード例 #6
0
 public AutoModerator(IConfig config, IChatManagerServer chatManager)
 {
     _config               = config;
     _chatManager          = chatManager;
     _exemptBlockTypePairs = new BlockTypePairCollection();
     _grids   = new GridTracker(config);
     _players = new PlayerTracker(config);
     _entityGpsBroadcaster = new EntityGpsBroadcaster(config);
     _questTracker         = new QuestTracker(config, chatManager);
     _punishExecutor       = new PunishExecutor(config, _exemptBlockTypePairs);
     _punishChatFeed       = new PunishChatFeed(config, _chatManager);
 }
コード例 #7
0
ファイル: Utilties.cs プロジェクト: Bishbash777/SEWorldBorder
        public static void Respond(string message, string sender = null, ulong steamid = 0, string font = null)
        {
            if (sender == "Server")
            {
                sender = null;
                font   = null;
            }
            IChatManagerServer manager = Torch.CurrentSession.Managers.GetManager <IChatManagerServer>();

            if (manager == null)
            {
                return;
            }
            manager.SendMessageAsOther(sender, message, font, steamid);
        }
コード例 #8
0
        public override void Init(ITorchBase torch)
        {
            base.Init(torch);

            Instance = this;

            _sessionManager = Torch.Managers.GetManager <TorchSessionManager>();
            ChatManager     = Torch.Managers.GetManager <IChatManagerServer>();
            if (_sessionManager != null)
            {
                _sessionManager.SessionStateChanged += SessionChanged;
            }

            LoadConfig();
        }
コード例 #9
0
 public TorchCqBridgeBot(
     IChatManagerServer chatManagerServer,
     string address, string accessToken, long groupId,
     bool removeCqCode, bool ignoreEmptyMessage,
     string qqChatAuthorFormat, string qqChatMessageFormat,
     string gameChatFormat)
 {
     _chatManagerServer   = chatManagerServer;
     _address             = address;
     _accessToken         = accessToken;
     _groupId             = groupId;
     _removeCqCode        = removeCqCode;
     _ignoreEmptyMessage  = ignoreEmptyMessage;
     _qqChatAuthorFormat  = qqChatAuthorFormat;
     _qqChatMessageFormat = qqChatMessageFormat;
     _gameChatFormat      = gameChatFormat;
 }
コード例 #10
0
 public static void SendMessage(this IChatManagerServer self, string name, ulong targetSteamId, string message)
 {
     self.SendMessageAsOther(name, message, targetSteamId: targetSteamId);
 }
コード例 #11
0
 public QuestEntity(long playerId, IConfig config, IChatManagerServer chatManager)
 {
     _config      = config;
     PlayerId     = playerId;
     _chatManager = chatManager;
 }
コード例 #12
0
ファイル: SteamChat.cs プロジェクト: TorchAPI/TorchDiscord
 public void Dispose()
 {
     _backing_chat = null;
     Unregister();
 }
コード例 #13
0
 public TierWorldMessenger(IConfig config, IChatManagerServer chatManager)
 {
     _config        = config;
     _chatManager   = chatManager;
     _lastPositions = new Dictionary <ulong, Vector3D>();
 }
コード例 #14
0
 public PunishChatFeed(IConfig config, IChatManagerServer chatManager)
 {
     _config          = config;
     _chatManager     = chatManager;
     _pinnedPlayerIds = new HashSet <long>();
 }
コード例 #15
0
 public void Initialize(IChatManagerServer chatManager)
 {
     _chatManager = chatManager;
 }