Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---- PacketHangler , void useitem
- #region Chi Item
- case 3001607:
- {
- Npcs dialog = new Npcs(client);
- if (client.ChiPowers.Count == 0)
- {
- dialog.Text("Sorry But You Don't Have chi Yet.");
- dialog.Option("I'll think about it!", 255);
- dialog.Send();
- return;
- }
- dialog.Text("Hey , Here i Can Make Your Chi Epic you have 17 Chance to use only then item will dissapeard!.");
- for (int i = 0; i < client.ChiPowers.Count; i++)
- {
- var stage = client.ChiPowers[i];
- dialog.Option(((Game.Enums.ChiPowerType)(i + 1)).ToString(), (byte)(i + 1));
- }
- dialog.Option("I'll think about it!", 255);
- dialog.Send();
- client.ActiveNpc = item.ID;
- break;
- }
- #endregion
- #region JaingHu Item
- case 3003650:
- {
- Npcs dialog = new Npcs(client);
- if (client.Entity.MyJiang == null)
- {
- dialog.Text("Sorry But You Don't Have Jiang Yet.");
- dialog.Option("I'll think about it!", 255);
- dialog.Send();
- return;
- }
- dialog.Text("Welcome , Here you have 10 Jaing EPIC Train To use it..");
- for (int i = 0; i < client.Entity.MyJiang.Stagers.Length; i++)
- {
- var stage = client.Entity.MyJiang.Stagers[i];
- if (stage.Activate)
- dialog.Option("Stage [" + (byte)(i + 1) + "]", (byte)(i + 1));
- }
- dialog.Option("I'll think about it!", 255);
- dialog.Send();
- client.ActiveNpc = item.ID;
- break;
- }
- #endregion
- ----------- #region NPC Dialog --------- في اخر الريجون او تحت اي ايتم شبها
- if (client.ActiveNpc == 3001607)
- {
- if (client.Inventory.Contains(client.ActiveNpc, 1))
- {
- Npcs dialoggt = new Npcs(client);
- int mStage = req.OptionID;
- if (mStage >= 1 && mStage <= 4)
- {
- client.Entity.SelectedStage = mStage;
- dialoggt.Text("You Choose " + ((Game.Enums.ChiPowerType)mStage).ToString() + " stage. Please Chose What Attribute did You Want! ");
- for (int i = 0; i < 4; i++)
- {
- dialoggt.Option("Attribute [" + (byte)(i + 1) + "]", (byte)(i + 1 + 4));
- }
- dialoggt.Option("I'll think about it!", 255);
- dialoggt.Send();
- return;
- }
- if (mStage >= 4 && mStage <= 8)
- {
- client.Entity.SelectedAttribute = mStage - 4;
- var mychiattribute = new List<Enums.ChiAttribute>();
- var powers = client.ChiPowers[(int)client.Entity.SelectedStage - 1];
- for (int i = 0; i < powers.Attributes.Length; i++)
- {
- var Attribute = powers.Attributes[i];
- mychiattribute.Add(Attribute.Type);
- }
- dialoggt.Text("You Choose Attribute [" + client.Entity.SelectedAttribute + "] Please Chose What Attribute did You Want!");
- for (int i = 0; i < (int)Enums.ChiAttribute.MagicDamageDecrease; i++)
- {
- var type = ((Enums.ChiAttribute)(i + 1));
- if (!mychiattribute.Contains(type))
- dialoggt.Option(type.ToString(), (byte)(((i + 1) * 10)));
- }
- dialoggt.Option("Back", (byte)client.Entity.SelectedStage);
- dialoggt.Option("I'll think about it!", 255);
- dialoggt.Send();
- return;
- }
- if (mStage >= 8)
- {
- if (client.Entity.ChiNumbrs > 17)
- {
- dialoggt.Text("Sorry , But you use 17 of Chi train GoodLuck ");
- dialoggt.Option("I'll think about it!", 255);
- dialoggt.Send();
- client.Inventory.Remove(client.ActiveNpc, 1);
- return;
- }
- var typex = mStage / 10;
- var Mode = client.Entity.SelectedStage;
- var pos = client.Entity.SelectedAttribute - 1;
- var powers = client.ChiPowers[Mode - 1];
- var attributes = powers.Attributes;
- foreach (var attr in attributes)
- {
- if (attr == null) continue;
- if (attr.Type == (Enums.ChiAttribute)typex)
- {
- client.MessageBox("Sorry you can't muliplay stats", null, null);
- return;
- }
- }
- attributes[pos].Type = (Enums.ChiAttribute)typex;
- attributes[pos].Value = (ushort)Game.Enums.ChiMaxValues(attributes[pos].Type);
- powers.CalculatePoints();
- Database.ChiTable.Sort((Enums.ChiPowerType)Mode);
- powers.Power = (Enums.ChiPowerType)Mode;
- client.Send(new ChiPowers(true).Query(client));
- #region update ranking
- Database.ChiTable.ChiData[] array = null;
- switch ((Enums.ChiPowerType)Mode)
- {
- case Game.Enums.ChiPowerType.Dragon:
- array = Database.ChiTable.Dragon;
- break;
- case Game.Enums.ChiPowerType.Phoenix:
- array = Database.ChiTable.Phoenix;
- break;
- case Game.Enums.ChiPowerType.Tiger:
- array = Database.ChiTable.Tiger;
- break;
- case Game.Enums.ChiPowerType.Turtle:
- array = Database.ChiTable.Turtle;
- break;
- }
- foreach (var chiData in array)
- {
- if (Kernel.GamePool.ContainsKey(chiData.UID))
- {
- var pClient = Kernel.GamePool[chiData.UID];
- if (pClient == null) continue;
- if (pClient.ChiData == null) continue;
- // make it public instead of private
- PacketHandler.SendRankingQuery(new GenericRanking(true) { Mode = GenericRanking.QueryCount }, pClient, GenericRanking.Chi + (uint)Mode, pClient.ChiData.SelectRank((Enums.ChiPowerType)Mode), pClient.ChiData.SelectPoints((Enums.ChiPowerType)Mode));
- if (pClient.Entity.UID == client.Entity.UID || pClient.ChiData.SelectRank((Enums.ChiPowerType)Mode) < 50)
- pClient.LoadItemStats();
- }
- }
- #endregion
- client.Entity.ChiNumbrs += 1;
- return;
- }
- }
- }
- if (client.ActiveNpc == 3003650)
- {
- if (client.Inventory.Contains(client.ActiveNpc, 1))
- {
- Npcs Npcff = new Npcs(client);
- int mStage = req.OptionID;
- if (req.OptionID >= 1 && req.OptionID <= 9)
- {
- foreach (var item in Database.JiangHu.CultivateStatus[(byte)mStage])
- {
- Npcff.Option(((Game.JiangHu.JiangStages.AtributesType)item).ToString(), (byte)((item * 10) + mStage));
- }
- Npcff.Option("I'll think about it!", 255);
- Npcff.Send();
- return;
- }
- if (req.OptionID >= 9)
- {
- if (client.Entity.JaingNumbers > 10)
- {
- Npcff.Text("Sorry But You Finished 10 Jaing EPIC Train.");
- Npcff.Option("I'll think about it!", 255);
- Npcff.Send();
- client.Inventory.Remove(client.ActiveNpc, 1);
- return;
- }
- var typex = mStage / 10;
- mStage = mStage % 10;
- byte stageno = (byte)Math.Min(9, mStage);
- byte level = 6;
- var type = (Game.JiangHu.JiangStages.AtributesType)Math.Min(15, typex);
- if (client.Entity.MyJiang.Stagers.Length >= stageno)
- {
- var stage = client.Entity.MyJiang.Stagers[(stageno - 1)];
- for (byte i = 1; i < stage.Stars.Length + 1; i++)
- {
- client.Entity.MyJiang.MyNewStart = new Game.JiangHu.GetNewStar();
- client.Entity.MyJiang.MyNewStart.PositionStar = i;
- client.Entity.MyJiang.MyNewStart.Stage = stageno;
- client.Entity.MyJiang.MyNewStart.Star = new Game.JiangHu.JiangStages.Star();
- client.Entity.MyJiang.MyNewStart.Star.Activate = true;
- client.Entity.MyJiang.MyNewStart.Star.Level = level;
- client.Entity.MyJiang.MyNewStart.Star.Typ = type;
- client.Entity.MyJiang.MyNewStart.Star.UID = client.Entity.MyJiang.ValueToRoll(client.Entity.MyJiang.MyNewStart.Star.Typ, client.Entity.MyJiang.MyNewStart.Star.Level);
- Network.GamePackets.JiangHuUpdate upd = new Network.GamePackets.JiangHuUpdate();
- upd.Atribute = client.Entity.MyJiang.MyNewStart.Star.UID;
- upd.FreeCourse = client.Entity.MyJiang.FreeCourse;
- upd.Stage = stageno;
- upd.Star = i;
- upd.FreeTimeTodeyUsed = (byte)client.Entity.MyJiang.FreeTimeTodeyUsed;
- upd.RoundBuyPoints = client.Entity.MyJiang.RoundBuyPoints;
- client.Send(upd.ToArray());
- client.Entity.MyJiang.ApplayNewStar(client);
- }
- client.Entity.JaingNumbers += 1;
- if (client.Entity.MyJiang != null)
- client.Entity.MyJiang.SendStatus(client, client);
- }
- return;
- }
- }
- }
- -------- Entity ------
- public uint ChiNumbrs = 0, JaingNumbers;
- ------ EntiyTable , LoadEntity ----------
- client.Entity.ChiNumbrs = reader.ReadUInt32("ChiNumbrs");
- client.Entity.JaingNumbers = reader.ReadUInt32("JaingNumbers");
- ----- public static bool SaveEntity ---
- .Set("ChiNumbrs", e.ChiNumbrs)
- .Set("JaingNumbers", e.JaingNumbers)
- ------- Navicat , entities --
- ChiNumbrs bigint
- JaingNumbers bigint
- ------------
- دي الايتم بقا حطها في السورس والباتش
- 3001607@@PowerChiPack@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@9467500@@0@@0@@0@@0@@0@@0@@0@@1@@1@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@800@@0@@0@@1@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@Gift@@Right~click~to~activate~Use~17~EPIC~Chi~Train.@@0@@0@@0@@0@@0@@500@@0@@0@@0@@0@@0@@
- 3003650@@BraveJiangHuPack@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@98354500@@0@@0@@0@@0@@0@@0@@0@@1@@1@@0@@0@@0@@0@@0@@0@@0@@0@@0@@1@@800@@0@@0@@1@@2888@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@0@@Gift@@Right~click~to~activate~Use~10~EPIC~Jaing~Train@@0@@0@@0@@0@@0@@500@@0@@0@@0@@0@@0@@
- ----- PacketHandler -------
- ابحث عن case "give":
- تحت switch (Data[2])
- ضيف دول
- case "chiitem":
- {
- Client.Inventory.Add(3001607, 0, 1,true);
- break;
- }
- case "jiangitem":
- {
- Client.Inventory.Add(3003650, 0, 1, true);
- break;
- }
- ----------
- لما تيجي تضديها لحد ادهالو بوند عشان مش يتردها
- @give name chiitem
- @give name jiangitem
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement