TheLastGames - Conquer online
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Refinery 98%

2 participantes

Ir para baixo

Refinery 98% Empty Refinery 98%

Mensagem por Admin Ter Fev 28, 2012 10:13 pm

Ola galera espero que ajudem vocês !!

network\PacketHandler.cs

Código:
  public static void PurifyRefinery(Purification ps, Client.GameState client) 
Código:
 public static void StabilazeRefinery(ItemAddingStabilization stabilizate, Client.GameState client)
        {
            Interfaces.IConquerItem Item = null;
            if (client.Inventory.TryGetItem(stabilizate.ItemUID, out Item))
            {
                if (!(DateTime.Now > Item.RefineryTime))
                {
                    if (Item.RefineItem > 0)
                    {
                        List<uint> purificationStones = stabilizate.PurificationItems;
                        int sum = 0;
                        List<Interfaces.IConquerItem> PurificationStones = new List<Conquer_Online_Server.Interfaces.IConquerItem>(purificationStones.Count);

                        for (int i = 0; i < purificationStones.Count; i++)
                        {
                            Interfaces.IConquerItem pItem = null;
                            if (client.Inventory.TryGetItem(purificationStones[i], out pItem))
                            {
                                if (pItem.ID == 723694)
                                {
                                    sum += 10;
                                    PurificationStones.Add(pItem);
                                }
                                if (pItem.ID == 723695)
                                {
                                    sum += 100;
                                    PurificationStones.Add(pItem);
                                }
                            }
                        }
                        if (sum >= Database.DataHolder.PurifyStabilizationPoints((byte)Item.Purification.PurificationLevel))
                        {
                            var Backup = Item;
                            Backup.RefineryTime = Item.RefineryTime = ServerBase.Kernel.FromDateTimeInt(0);
                            Item = Backup;
                            Item.Send(client);
                            Database.ConquerItemTable.RefineryStabilize(Item.UID, Backup.RefineItem);
                            foreach (var item in PurificationStones)
                                client.Inventory.Remove(item, Conquer_Online_Server.Game.Enums.ItemUse.Remove);
                        }
                    }
                }
            }
        } 

Continua adicionando

Código:
      #region ItemAdding Stabilization
                case 1038:
                    {
                        ItemAddingStabilization stabilization = new ItemAddingStabilization(false);
                        stabilization.Deserialize(packet);
                        StabilazeArtifact(stabilization, client);                       
                        break;
                    }
                #endregion 

Código:
 #region ItemAdding Stabilization
                case 1038:
                    {
                        ItemAddingStabilization stabilization = new ItemAddingStabilization(false);
                        stabilization.Deserialize(packet);
                        switch (packet[4])
                        {
                            case 0:
                                {
                                    StabilazeRefinery(stabilization, client);
                                    break;
                                }
                            case 1:
                                {
                                    StabilazeArtifact(stabilization, client);
                                    break;
                                }
                            default:
                                {
                                    try
                                    {
                                        if (client.Account.State == Conquer_Online_Server.Database.AccountTable.AccountState.ProjectManager)
                                            client.Send(new Message("Unknown type: " + packet[4] + " in packet " + ID, System.Drawing.Color.CadetBlue, Message.Talk));
                                    }
                                    catch
                                    {
                                    }
                                    break;
                                }
                        }
                       
                        break;
                    }
                #endregion 

Datebase\ConquerItemTable.cs


Código:
  public static void ClearPosition(uint EntityID, byte position) 

Código:
 public static void RefineryStabilize(uint UID, uint addingid)
        {
            ItemCollection items = new ItemCollection();
            items.LoadAndCloseReader(Item.FetchByQuery(Item.Query().WHERE("UID", UID).AND("RefineryItem", addingid)));
            if (items.Count > 0)
            {
                items[0].RefineryTime = 0;
                items[0].Save();
            }
        } 



Código:
 #region  RefineryStabilizer 
                case 7538:
                    {
                        switch (npcRequest.OptionID)
                        {
                            case 0:
                                {
                                    dialog.Text("Hey  there! I can  channel the power of Permanent Stones and stabilize the  Refinery, which  means making the temporary Refinery permanent.  Permanent Stones have 10  Stabilization Points,");
                                    dialog.Text("~and  Big Permanent  Stones have 100. Different Refinery levels require  different amounts of  points. I can only perform the stabilization with  enough of them. Are we  clear? Good.");
                                    dialog.Text("~Do you want to stabilize the Refinery now?");
                                    dialog.Option("Yup.", 1);
                                    dialog.Option("Nope.", 255);
                                    dialog.Avatar(51);
                                    dialog.Send();
                                    break;
                                }
                            case 1:
                                {
 
                                    Data Data = new Data(true);
                                    Data.UID = client.Entity.UID;
                                    Data.ID = 126;
                                    Data.dwParam = 448;
                                    Data.wParam1 = client.Entity.X;
                                    Data.wParam2 = client.Entity.Y;
                                    client.Send(Data);
                                    break;
 
                                }
 
                        }
                        break;
                    }
                #endregion 


Adc agora isso no navicat

Código:
 INSERT INTO `npcs` VALUES ('7538', '0', '0', 'RefineryStabiliz', '0002', '9980', '-1', '1036', '0186', '0199', '0000', '0000', '0000', '0000', '0000', '0000', '0000', '0000', '0', '0', '0', '0', 'ط·آ·ط¢آ', '0000', '00', '00', '0000', '00', null);
 


Créditos Ahmed
Tópico JúniorOliveira \o/


Última edição por Admin em Qui Mar 01, 2012 5:21 pm, editado 1 vez(es)
Admin
Admin
Admin

Mensagens : 129
Data de inscrição : 07/01/2012
Idade : 30

https://thelastgames.forumeiros.com

Ir para o topo Ir para baixo

Refinery 98% Empty Re: Refinery 98%

Mensagem por WT Games Qui Mar 01, 2012 5:15 pm

RefineTy Suspect
WT Games
WT Games

Mensagens : 9
Data de inscrição : 01/03/2012

Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos