示例#1
0
        private static void ProcesssRemoveTaxCollector(WorldClient Client, string Packet)
        {
            if (!Client.GetCharacter().HasGuild() || !Client.GetCharacter().getCharacterGuild().Can(GuildRightEnum.RIGHT_PUT_PERCEPTOR) || Client.GetFight() != null || Client.GetCharacter().isAaway)
            {
                Client.Send(new BasicNoOperationMessage());
                return;
            }
            long TaxID;

            if (!long.TryParse(Packet.Substring(2), out TaxID))
            {
                Client.Send(new BasicNoOperationMessage());
                return;
            }
            if (Client.GetCharacter().myMap.GetActor(TaxID) != null && Client.GetCharacter().myMap.GetActor(TaxID).ActorType != World.Maps.GameActorTypeEnum.TYPE_TAX_COLLECTOR)
            {
                Client.Send(new BasicNoOperationMessage());
                return;
            }
            var TaxC = Client.GetCharacter().myMap.GetActor(TaxID) as TaxCollector;

            if (TaxC == null || TaxC.inFight > 0)
            {
                Client.Send(new BasicNoOperationMessage());
                return;
            }

            Client.GetCharacter().myMap.DestroyActor(TaxC);
            TaxCollectorTable.TryDeleteTax(TaxC);
            StringBuilder toSend = new StringBuilder("gITM").Append(TaxCollector.parsetoGuild(TaxC.GuildID));

            toSend.Append((char)0x00);
            toSend.Append("gT").Append("R").Append(TaxC.N1).Append(",").Append(TaxC.N2).Append("|");
            toSend.Append(TaxC.Mapid).Append("|");
            toSend.Append(TaxC.Map.X).Append("|").Append(TaxC.Map.Y).Append("|").Append(Client.Character.Name);
            Client.Character.GetGuild().Send(new EmptyMessage(toSend.ToString()));
        }
示例#2
0
 public override string Compile()
 {
     return("gITM" + TaxCollector.parsetoGuild(Guild.ID));
 }