Exemple #1
0
        public PercepteurFight(Map Map, WorldClient Player, TaxCollector Monsters) : base(FightType.TYPE_PVT, Map)
        {
            try
            {
                Logger.Debug("PVT_FIGHT Launched : Player=" + Player.GetCharacter().Name + " MapId=" + Map.Id);
                this.TaxCollector = Monsters;
                StartTimer();

                var AttFighter = new CharacterFighter(this, Player);
                var DefFighter = new PercepteurFighter(this, TaxCollector, this.NextActorId);
                TaxCollector.Map.DestroyActor(TaxCollector);
                TaxCollector.Guild.Send(new GuildFightInformationsMesssage(TaxCollector.Guild));

                foreach (var member in TaxCollector.Guild.CharactersGuildCache.Where(x => x.getPerso() != null && x.getPerso().IsOnline()))
                {
                    TaxCollector.parseAttaque(member.getPerso(), TaxCollector.GuildID);
                    TaxCollector.parseDefense(member.getPerso(), TaxCollector.GuildID);
                    member.getPerso().Send(new ChatGameMessage("Un de vos percepteurs est attaqué!", "CC0000"));
                }



                Player.AddGameAction(new GameFight(AttFighter, this));

                base.InitFight(AttFighter, DefFighter);
            }
            catch (Exception ex)
            {
                Logger.Error("PercepteurFight::PercepteurFight() " + ex.ToString());
            }
        }
Exemple #2
0
        public static void ProcessPacket(WorldClient Client, string Packet)
        {
            switch (Packet[1])
            {
            case 'B':     // BoostStats
                GuildHandler.ProcessGuildBoostStatsRequest(Client, Packet);
                break;

            case 'b':     // BoostSpell
                GuildHandler.ProcessGuildBoostSpellRequest(Client, Packet);
                break;

            case 'V':     // Create Leave
                GuildHandler.ProcessGuildCreationLeaveRequest(Client);
                break;

            case 'C':     // Create
                GuildHandler.ProcessGuildCreateRequest(Client, Packet);
                break;

            case 'K':     // Leave
                GuildHandler.ProcessGuildKickRequest(Client, Packet);
                break;

            case 'F':     // Remove Perceptor
                GuildHandler.ProcesssRemoveTaxCollector(Client, Packet);
                break;

            case 'P':     // Change Grade
                GuildHandler.ProcessGuildPromoteMembeRequest(Client, Packet);
                break;

            case 'H':     // PutPerceptor
                GuildHandler.ProcessGuildPutPerceptorRequest(Client, Packet);
                break;

            case 'I':
                switch (Packet[2])
                {
                case 'B':         // Basic Infos
                    GuildHandler.ProcessGuildBoostInformationsRequest(Client);
                    break;

                case 'G':         // General Infos
                    GuildHandler.ProcessGuildGeneralInfosRequest(Client, Packet);
                    break;

                case 'M':         // Members Infos
                    GuildHandler.ProcessGuildMemberInformationsRequest(Client);
                    break;

                case 'F':         // MountPark Infos
                    if (!Client.Character.HasGuild())
                    {
                        Client.Send(new BasicNoOperationMessage());
                        return;
                    }
                    Client.Send(new GuildMountParkInformationMessage(Client.Character.GetGuild()));
                    break;

                case 'T':         // Perceptor Fight Infos
                    if (!Client.Character.HasGuild())
                    {
                        Client.Send(new BasicNoOperationMessage());
                        return;
                    }
                    Client.Send(new GuildFightInformationsMesssage(Client.Character.GetGuild()));
                    TaxCollector.parseAttaque(Client.GetCharacter(), Client.GetCharacter().GetGuild().ID);
                    TaxCollector.parseDefense(Client.GetCharacter(), Client.GetCharacter().GetGuild().ID);
                    break;
                }
                break;

            case 'J':
                switch (Packet[2])
                {
                case 'R':
                    GuildHandler.ProcessGuildJoinRequest(Client, Packet);
                    break;

                case 'K':
                    GuildHandler.ProcessGuildJoinRequestAccept(Client);
                    break;

                case 'E':
                    GuildHandler.ProcessGuildJoinRequestDeclin(Client);
                    break;
                }
                break;

            case 'T':
                switch (Packet[2])
                {
                case 'J':         //Rejoindre
                    GuildHandler.ProcessTaxCollectorJoinFigh(Client, Packet.Substring(2));
                    break;
                }
                break;
            }
        }