コード例 #1
0
ファイル: PluginManager.cs プロジェクト: maithanhtan/CoCSharp
        public PluginManager(ICoCClient client)
        {
            if (!Directory.Exists(PluginFolder))
                Directory.CreateDirectory(PluginFolder);

            LoadedPlugins = new List<Plugin>();
            LoadedPluginAssemblies = new List<Assembly>();
            PluginsEnabled = false;

            m_Client = client;
            m_PluginTasks = new List<PluginTasks>();
            m_UpdaterThread = new Thread(UpdatePlugins);
            m_UpdaterThread.Name = "PluginThread";
        }
コード例 #2
0
        public PluginManager(ICoCClient client)
        {
            if (!Directory.Exists(PluginFolder))
            {
                Directory.CreateDirectory(PluginFolder);
            }

            LoadedPlugins          = new List <Plugin>();
            LoadedPluginAssemblies = new List <Assembly>();
            PluginsEnabled         = false;

            m_Client             = client;
            m_PluginTasks        = new List <PluginTasks>();
            m_UpdaterThread      = new Thread(UpdatePlugins);
            m_UpdaterThread.Name = "PluginThread";
        }
コード例 #3
0
        public static void HandleLoginFailedPacket(ICoCClient client, IPacket packet)
        {
            var lfPacket = packet as LoginFailedPacket;
            Console.WriteLine("Failed to login, reason: {0}", lfPacket.FailureReason);
            switch (lfPacket.FailureReason)
            {
                case LoginFailedPacket.LoginFailureReason.OutdatedContent:
                    if (lfPacket.Fingerprint != null)
                    {
                        var fingerprintJson = lfPacket.Fingerprint.ToJson();
                        File.WriteAllText("fingerprint.json", fingerprintJson);

                        Console.WriteLine("Server expected hash: {0}", lfPacket.Fingerprint.Hash);
                    }
                    break;
            }
        }
コード例 #4
0
 public static void HandleOwnHomeDataPacket(ICoCClient client, IPacket packet)
 {
     var ohdPacket = packet as OwnHomeDataPacket;
     client.Home = ohdPacket.Home;
     client.Avatar.Username = ohdPacket.Avatar.Username;
     
     if (ohdPacket.Avatar.Clan != null)
         Console.Title = string.Format("[{0}] - {1}", ohdPacket.Avatar.Clan.Name, ohdPacket.Avatar.Username);
     else
         Console.Title = string.Format("{0}", ohdPacket.Avatar.Username);
         
     Console.WriteLine("Village Info: ");
     Console.WriteLine("\tBuildings count: {0}", ohdPacket.Home.Buildings.Count);
     Console.WriteLine("\tDecorations count: {0}", ohdPacket.Home.Decorations.Count);
     Console.WriteLine("\tObstacles count: {0}", ohdPacket.Home.Obstacles.Count);
     Console.WriteLine("\tTraps count: {0}", ohdPacket.Home.Traps.Count);
     Console.WriteLine();
 }
コード例 #5
0
        public static void HandleOwnHomeDataPacket(ICoCClient client, IPacket packet)
        {
            var ohdPacket = packet as OwnHomeDataPacket;

            client.Home            = ohdPacket.Home;
            client.Avatar.Username = ohdPacket.Avatar.Username;

            if (ohdPacket.Avatar.Clan != null)
            {
                Console.Title = string.Format("[{0}] - {1}", ohdPacket.Avatar.Clan.Name, ohdPacket.Avatar.Username);
            }
            else
            {
                Console.Title = string.Format("{0}", ohdPacket.Avatar.Username);
            }

            Console.WriteLine("Village Info: ");
            Console.WriteLine("\tBuildings count: {0}", ohdPacket.Home.Buildings.Count);
            Console.WriteLine("\tDecorations count: {0}", ohdPacket.Home.Decorations.Count);
            Console.WriteLine("\tObstacles count: {0}", ohdPacket.Home.Obstacles.Count);
            Console.WriteLine("\tTraps count: {0}", ohdPacket.Home.Traps.Count);
            Console.WriteLine();
        }
コード例 #6
0
 public static void HandleChatMessageServerPacket(ICoCClient client, IPacket packet)
 {
     var cmsPacket = packet as ChatMessageServerPacket;
     ((CoCClient)client).OnChatMessage(new ChatMessageEventArgs(cmsPacket));
 }
コード例 #7
0
 public static void HandleServerErrorPacket(ICoCClient client, IPacket packet)
 {
     var errPacket = packet as ServerErrorPacket;
     Console.WriteLine("Server Error: {0}", errPacket.ErrorMessage);
 }
コード例 #8
0
 public static void HandleUpdateKeyPacket(ICoCClient client, IPacket packet)
 {
     Console.WriteLine("Updated ciphers with new server key.");
 }
コード例 #9
0
 public static void HandleLoginSuccessPacket(ICoCClient client, IPacket packet)
 {
     var lsPacket = packet as LoginSuccessPacket;
     ((CoCClient)client).OnLogin(new LoginEventArgs(lsPacket));
 }
コード例 #10
0
        public static void HandleChatMessageServerPacket(ICoCClient client, IPacket packet)
        {
            var cmsPacket = packet as ChatMessageServerPacket;

            ((CoCClient)client).OnChatMessage(new ChatMessageEventArgs(cmsPacket));
        }
コード例 #11
0
        public static void HandleServerErrorPacket(ICoCClient client, IPacket packet)
        {
            var errPacket = packet as ServerErrorPacket;

            Console.WriteLine("Server Error: {0}", errPacket.ErrorMessage);
        }
コード例 #12
0
 public static void HandleAllianceInfoResponsePacket(ICoCClient client, IPacket packet)
 {
     var allianceInfoResponsePacket = packet as AllianceInfoResponsePacket;
     ((CoCClient)client).OnAllianceInfo(new AllianceInfoEventArgs(allianceInfoResponsePacket));
 }