احصائياتى

الردود
40

المشاهدات
4015
 
Mostafa Shalby
.:: عضو نشيط ::.
الإجابات المقدمة: 9

    غير متواجد

المشاركات
263

+التقييم
0.10

تاريخ التسجيل
Oct 2019

الاقامة
Egypt

نظام التشغيل
8.1

رقم العضوية
2274
2019-10-30, 04:22 PM
المشاركة 1
2019-10-30, 04:22 PM
المشاركة 1
Important تمت الإجابة بخصوص اسكلة ShadowClone
ممكن حد يجيب اضافة اسكلة ShadowClone كاملة عشان هيا عاندي خربانة خالص
وشكرا مقدما


أفضل جواب - كتبه Rider
جرب تبدل الاسكله ب دي
case 12840:
{
if (CanUseSpell(spell, attacker.Owner))
{
PrepareSpell(spell, attacker.Owner);
SpellUse suse = new SpellUse(true);
suse.Attacker = attacker.UID;
suse.X = X;
suse.Y = Y;
suse.SpellID = spell.ID;
attacker.Owner.SendScreen(suse, true);
//////////////////////////////////////////////////
///////////////////////////////////////////////////
uint UID = Kernel.Maps[attacker.MapID].EntityUIDCounter.Next;
uint Mesh = 980;
//////////////////////////////////////////////////////
byte[] Buffer = new byte[68 + 8];
Writer.Write(Buffer.Length - 8, 0, Buffer);
Writer.Write(2035, 2, Buffer);//Packet ID
Writer.Write(UID, 4, Buffer);//FlowerUID
Writer.Write(4264, 8, Buffer);
Buffer[12] = 3;
Writer.Write(Mesh, 16, Buffer);//FloorItemID
Buffer[24] = 14;//AttackRange
Writer.Write(X, 26, Buffer);
Writer.Write(Y, 28, Buffer);
Writer.Write("Thundercloud", 30, Buffer);
//////////////////////////////////////////////////
///////////////////////////////////////////////////
//////////////////////////////////////////////////////
Entity ThunderCloud = new Entity(Game.EntityFlag.Monster, true);
ThunderCloud.Name = "Thundercloud";
ThunderCloud.Mesh = Mesh;
ThunderCloud.UID = UID;
ThunderCloud.GuildID = attacker.GuildID;
ThunderCloud.MaxHitpoints = attacker.MaxHitpoints;
ThunderCloud.Level = 140;
ThunderCloud.X = X;
ThunderCloud.Y = Y;
ThunderCloud.Facing = attacker.Facing;
ThunderCloud.Boss = 1;
ThunderCloud.MapID = attacker.MapID;
Writer.Write(3, 308, ThunderCloud.SpawnPacket);
Writer.Write(15, 272, ThunderCloud.SpawnPacket);
Writer.Write(3, 271, ThunderCloud.SpawnPacket);//AttackUser

ThunderCloud.CUID = attacker.UID;
ThunderCloud.Owner = new Client.GameState(null);
ThunderCloud.Owner.Player = ThunderCloud;
ThunderCloud.MonsterInfo = new MonsterInformation();
ThunderCloud.MonsterInfo.AttackType = 24;
ThunderCloud.MonsterInfo.AttackSpeed = 1000;
ThunderCloud.MonsterInfo.AttackRange = 14;
ThunderCloud.MonsterInfo.Boss = true;
ThunderCloud.MonsterInfo.BoundX = X;
ThunderCloud.Companion = true;
ThunderCloud.MonsterInfo.Guard = false;
ThunderCloud.MonsterInfo.BoundY = Y;
ThunderCloud.MonsterInfo.Defence = attacker.Defence;
ThunderCloud.MonsterInfo.Hitpoints = 10000;
ThunderCloud.MonsterInfo.Mesh = 980;
ThunderCloud.MonsterInfo.MoveSpeed = int.MaxValue;
ThunderCloud.MonsterInfo.Name = "Thundercloud";
ThunderCloud.MonsterInfo.Owner = attacker;
ThunderCloud.MonsterInfo.ViewRange = 14;
ThunderCloud.MonsterInfo.RespawnTime = 0;
ThunderCloud.MonsterInfo.RunSpeed = int.MaxValue;
ThunderCloud.MonsterInfo.SpellID = 13190;
ThunderCloud.Hitpoints = 10000;
Kernel.Maps[ThunderCloud.MapID].AddEntity(ThunderCloud);
//////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
/////////////////////////////////////////////
Network.GamePackets.Data d = new Data(true);
d.UID = UID;
d.ID = Data.AddEntity;
d.Facing = attacker.Facing;
d.X2 = ThunderCloud.X;
d.Y2 = ThunderCloud.Y;
///////////////////////////////////////////////
////////////////////////////////////////////
/////////////////////////////////////////
attacker.Owner.SendScreen(Buffer, true);
attacker.Owner.SendScreen(ThunderCloud.SpawnPacket , true);
attacker.Owner.SendScreenSpawn(ThunderCloud, true);
attacker.Owner.SendScreen(d, true);
ThunderCloud.ThunderCloudStamp = Time32.Now;
Program.World.Register(ThunderCloud);
attacker.AttackPacket = null;
}
break;

}
#endregion
قديم 2019-10-30, 04:51 PM
المشاركة 2
Hassan Emprator
.:: مشرف قسم المشاكل ::.
الإجابات المقدمة: 301
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone


بسم الله الرحمن الرحيم


اول حاجه هتفتح كلاس PacketHandler

وتضيف دا


كود:
#region Clone Attack
                
case 2812:
                    {
                        var 
attackd = BitConverter.ReadUint(packet, 4);
                        var 
clonecount = packet[8];
                        for (
int i = 0; i < clonecount; i++)
                        {
                            var 
attackr = BitConverter.ReadUint(packet, 9 + (i * 4));
                            if (
client.Entity.MyClones.Count < clonecount)
                                return;
                            var 
attack = client.Entity.AttackPacket;
                            if (
attack == null)
                                
attack = new GamePackets.Attack(true);
                            
attack.Attacker = attackr;
                            
attack.Attacked = attackd;

                            if (
client.Entity.MyClones.Count == 0)
                                return;
                            if (
attackd == client.Entity.UID || client.Entity.MyClones.ContainsKey(attackd))
                                return;
                            
MrHassan.Database.SpellInformation MySpell = null;
                            try
                            {
                                
MySpell = Database.SpellTable.GetSpell(client.Spells[12090].ID, client.Spells[12090].Level);
                            }
                            catch { 
MySpell = Database.SpellTable.GetSpell(12090, 4); }
                            
Entity Clone = null;
                            if (
client.Entity.MyClones.TryGetValue(attackr, out Clone))
                            {
                                
Entity attacked = null;
                                
SobNpcSpawn attackedsob = null;
                                if (
client.Screen.TryGetValue(attackd, out attacked))
                                {
                                    
uint damage = 0;
                                    var 
spell = Database.SpellTable.GetSpell(attack.MagicType, (byte)attack.MagicLevel);
                                    if (
spell == null)
                                        
spell = Database.SpellTable.GetSpell(12080, 0);
                                    if (
attack.AttackType == GamePackets.Attack.Melee)
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entity, attacked, spell, true))
                                        {
                                            
damage = Game.Attacking.Calculate.Melee(client.Entity, attacked, spell, ref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage * power / 8);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attacked, attack, ref damage, spell);
                                            
attack.Damage = damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entity, attacked, spell, false))
                                        {
                                            
damage = Game.Attacking.Calculate.Magic(client.Entity, attacked, spell, ref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage * power / 8);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attacked, attack, ref damage, spell);
                                            
attack.Damage = damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    
SpellUse suse = new SpellUse(true);
                                    
suse.Attacker = Clone.UID;
                                    
suse.SpellID = spell.ID;
                                    
suse.SpellLevel = spell.Level;
                                    
suse.X = attacked.X;
                                    
suse.Y = attacked.Y;
                                    
suse.Effect1 = attack.Effect1;
                                    
suse.AddTarget(attacked, damage, attack);
                                    
client.SendScreen(suse, true);
                                    if (
client.Account.State == MrHassan.Database.AccountTable.AccountState.ProjectManager)
                                        
client.Send(new Message("Clone Attack With  Skill: " + spell.Name, System.Drawing.Color.CadetBlue, Message.Talk));

                                }
                                else if (
client.Screen.TryGetSob(attackd, out attackedsob))
                                {
                                    
uint damage = 0;
                                    var 
spell = Database.SpellTable.GetSpell(attack.MagicType, (byte)attack.MagicLevel);
                                    if (
spell == null)
                                        
spell = Database.SpellTable.GetSpell(12080, 0);
                                    if (
attack.AttackType == GamePackets.Attack.Melee)
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entity, attackedsob, null))
                                        {
                                            
damage = Game.Attacking.Calculate.Melee(client.Entity, attackedsob, ref attack);
                                            
double power = ((MySpell.Power / 100.0) / 100.0);
                                            
damage = (uint)((double)damage * power);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedsob, attack, damage, null);
                                            
attack.Damage = damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entity, attackedsob, spell))
                                        {
                                            
damage = Game.Attacking.Calculate.Magic(client.Entity, attackedsob, spell, ref attack);
                                            
double power = ((MySpell.Power / 100.0) / 100.0);
                                            
damage = (uint)((double)damage * power);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedsob, attack, damage, spell);
                                            
attack.Damage = damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    
SpellUse suse = new SpellUse(true);
                                    
suse.Attacker = Clone.UID;
                                    
suse.SpellID = spell.ID;
                                    
suse.SpellLevel = spell.Level;
                                    
suse.X = attackedsob.X;
                                    
suse.Y = attackedsob.Y;
                                    
suse.Effect1 = attack.Effect1;
                                    
suse.AddTarget(attackedsob, damage, attack);
                                    
client.SendScreen(suse, true);
                                    if (
client.Account.State == MrHassan.Database.AccountTable.AccountState.ProjectManager)
                                        
client.Send(new Message("Clone Attack With  Skill: " + spell.Name, System.Drawing.Color.CadetBlue, Message.Talk));

                                }
                            }
                        }
                        break;
                    }
                
#endregion 

وابحث عن دا


كود:
   case 12090: 

وتبدله بي دا


كود:
#region ShadowClone
                                    
case 12090:
                                        {
                                            
attacker.AttackPacket = null;
                                            if (
attacker.MyClones.Count > 0)
                                            {
                                                var 
clones = attacker.MyClones.Values.ToArray();
                                                for (
int i = 0; i < clones.Length; i++)
                                                {
                                                    var 
item = clones[i];
                                                    if (
item == null)
                                                        continue;
                                                    
Data data = new Data(true);
                                                    
data.UID = item.UID;
                                                    
data.ID = Network.GamePackets.Data.RemoveEntity;
                                                    
attacker.Owner.SendScreen(data);
                                                    
attacker.MyClones[item.UID] = null;
                                                }
                                                
attacker.MyClones.Clear();
                                            }
                                            else
                                            {
                                                if (
CanUseSpell(spell, attacker.Owner))
                                                {
                                                    
PrepareSpell(spell, attacker.Owner);
                                                    
SpellUse spellUse = new SpellUse(true);
                                                    
spellUse.Attacker = attacker.UID;
                                                    
spellUse.SpellID = spell.ID;
                                                    
spellUse.SpellLevel = spell.Level;
                                                    
spellUse.X = X;
                                                    
spellUse.Y = Y;
                                                    
attacker.AddClone(3);
                                                    if (
spell.Level >= 4)
                                                        
attacker.AddClone(10003);
                                                    foreach (var 
item in attacker.MyClones.Values)
                                                        
spellUse.AddTarget(item, 0, attack);

                                                    
attacker.Owner.SendScreen(spellUse, true);
                                                }

                                            }
                                            break;
                                        }
                                    
#endregion 

بعدين هتبحث عن دا


كود:
  public void AddClone(ushort cloneid) 

وتبدله كاااامل بي دا


كود:
 public void AddClone(ushort cloneid)
        {
            
#region SpawnPacket(10014)

            
var Entity = new Entity(EntityFlag.Entity, true);
            
Entity.MonsterInfo = new MonsterInformation();
            
MonsterInformation.MonsterInformations.TryGetValue(9003, out Entity.MonsterInfo);
            
Entity.Owner = Owner;
            
Entity.MonsterInfo.Owner = Entity;
            
Entity.IsClone = true;
            
Entity._Name = "ShadowClone";
            
Entity.clan = Name;
            
Entity.SpawnPacket = new byte[8 + _Names + _Name.Length + 36];
            Array.
Copy(SpawnPacket, Entity.SpawnPacket, Entity.SpawnPacket.Length);
            
WriteStringList(new List<string>() { "ShadowClone", "", "", Name, "" }, _Names, Entity.SpawnPacket);
            
Entity.Mesh = Mesh;
            
Entity.Hitpoints = 1;
            
Entity.UID = Owner.Map.CloneCounter.Next;
            
Entity.GuildID = Entity.GuildRank = Entity.Action = 0;
            
Entity.CountryID = Enums.CountryID.Default;
            
Entity.StatusFlag = Entity.StatusFlag2 = Entity.StatusFlag3 = Entity.StatusFlag4 = 0;
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.Steed, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.SteedPlus, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.SteedColor, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.MountArmor, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.Wing, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.WingPlus, Entity.SpawnPacket);
            
Entity.FlowerRank = 0;
            
Entity.NobilityRank = ConquerStructures.NobilityRank.Serf;
            
Entity.Class = Entity.FirstRebornClass = Entity.SecondRebornClass = Entity.JiangTalent = Entity.SubClassesActive = Entity.Reborn = Entity.Level = Entity.ServerID = 0;
            
Writer.Write((byte)2, 271, Entity.SpawnPacket);
            
Writer.Write(cloneid, 272, Entity.SpawnPacket);
            
Entity.OwnerUID = UID;
            
Entity.JiangActive = false;
            
Writer.Write((uint)0, 178, Entity.SpawnPacket);
            
Writer.Write((uint)0, 182, Entity.SpawnPacket);
            
Writer.Write((uint)0, 186, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionExploits, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionID, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionRank, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionType, Entity.SpawnPacket);
            
Writer.Write((uint)0, _MyTitle, Entity.SpawnPacket);
            
Writer.Write((uint)0, _MyTitleScore, Entity.SpawnPacket);
            
Writer.Write((uint)0, _MyWing, Entity.SpawnPacket);
            
Entity.MinAttack = MinAttack;
            
Entity.MaxAttack = Entity.MagicAttack = Math.Max(MinAttack, MaxAttack);
            
Entity.Appearance = Appearance;
            
Entity.MapID = Owner.Map.ID;
            
Entity.SendUpdates = true;

            
#endregion SpawnPacket(10014)

            #region Pet(2035)

            
MsgPetInfo pet = new MsgPetInfo();
            
pet.UID = Entity.UID;
            
pet.PetID = cloneid;
            
pet.PetType = 2;
            
pet.Mesh = Mesh;
            
pet.AttackRange = (byte)AttackRange;
            
pet.X = X;
            
pet.Y = Y;
            
pet.Name = "ShadowClone";
            
Owner.Send(pet);

            
#endregion Pet(2035)

            
MyClones.Add(Entity.UID, Entity);
            
Owner.SendScreen(Entity.SpawnPacket, true);
            
Owner.SendScreenSpawn(Entity, true);

            
#region Data(10010)

            
Data data = new Data(true);
            
data.UID = Entity.UID;
            
data.Facing = Entity.Facing;
            
data.ID = Data.AddEntity;
            
data.wParam1 = Entity.X;
            
data.wParam2 = Entity.Y;
            
Owner.Send(data);

            
#endregion Data(10010)
            
        
} 

جرب وقولي

هل تم الحل

قديم 2019-10-30, 04:57 PM
المشاركة 3
Mostafa Shalby
.:: عضو نشيط ::.
الإجابات المقدمة: 9
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone


بسم الله الرحمن الرحيم


اول حاجه هتفتح كلاس packethandler

وتضيف دا


كود:
#region clone attack
                
case 2812:
                    {
                        var 
attackd = bitconverter.readuint(packet, 4);
                        var 
clonecount = packet[8];
                        for (
int i = 0; i < clonecount; i++)
                        {
                            var 
attackr = bitconverter.readuint(packet, 9 + (i * 4));
                            if (
client.entity.myclones.count < clonecount)
                                return;
                            var 
attack = client.entity.attackpacket;
                            if (
attack == null)
                                
attack = new gamepackets.attack(true);
                            
attack.attacker = attackr;
                            
attack.attacked = attackd;

                            if (
client.entity.myclones.count == 0)
                                return;
                            if (
attackd == client.entity.uid || client.entity.myclones.containskey(attackd))
                                return;
                            
mrhassan.database.spellinformation myspell = null;
                            try
                            {
                                
myspell = database.spelltable.getspell(client.spells[12090].id, client.spells[12090].level);
                            }
                            catch { 
myspell = database.spelltable.getspell(12090, 4); }
                            
entity clone = null;
                            if (
client.entity.myclones.trygetvalue(attackr, out clone))
                            {
                                
entity attacked = null;
                                
sobnpcspawn attackedsob = null;
                                if (
client.screen.trygetvalue(attackd, out attacked))
                                {
                                    
uint damage = 0;
                                    var 
spell = database.spelltable.getspell(attack.magictype, (byte)attack.magiclevel);
                                    if (
spell == null)
                                        
spell = database.spelltable.getspell(12080, 0);
                                    if (
attack.attacktype == gamepackets.attack.melee)
                                    {
                                        if (
game.attacking.handle.canattack(client.entity, attacked, spell, true))
                                        {
                                            
damage = game.attacking.calculate.melee(client.entity, attacked, spell, ref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage * power / 8);
                                            
game.attacking.handle.receiveattack(clone, attacked, attack, ref damage, spell);
                                            
attack.damage = damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
game.attacking.handle.canattack(client.entity, attacked, spell, false))
                                        {
                                            
damage = game.attacking.calculate.magic(client.entity, attacked, spell, ref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage * power / 8);
                                            
game.attacking.handle.receiveattack(clone, attacked, attack, ref damage, spell);
                                            
attack.damage = damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    
spelluse suse = new spelluse(true);
                                    
suse.attacker = clone.uid;
                                    
suse.spellid = spell.id;
                                    
suse.spelllevel = spell.level;
                                    
suse.x = attacked.x;
                                    
suse.y = attacked.y;
                                    
suse.effect1 = attack.effect1;
                                    
suse.addtarget(attacked, damage, attack);
                                    
client.sendscreen(suse, true);
                                    if (
client.account.state == mrhassan.database.accounttable.accountstate.projectmanager)
                                        
client.send(new message("clone attack with  skill: " + spell.name, system.drawing.color.cadetblue, message.talk));

                                }
                                else if (
client.screen.trygetsob(attackd, out attackedsob))
                                {
                                    
uint damage = 0;
                                    var 
spell = database.spelltable.getspell(attack.magictype, (byte)attack.magiclevel);
                                    if (
spell == null)
                                        
spell = database.spelltable.getspell(12080, 0);
                                    if (
attack.attacktype == gamepackets.attack.melee)
                                    {
                                        if (
game.attacking.handle.canattack(client.entity, attackedsob, null))
                                        {
                                            
damage = game.attacking.calculate.melee(client.entity, attackedsob, ref attack);
                                            
double power = ((myspell.power / 100.0) / 100.0);
                                            
damage = (uint)((double)damage * power);
                                            
game.attacking.handle.receiveattack(clone, attackedsob, attack, damage, null);
                                            
attack.damage = damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
game.attacking.handle.canattack(client.entity, attackedsob, spell))
                                        {
                                            
damage = game.attacking.calculate.magic(client.entity, attackedsob, spell, ref attack);
                                            
double power = ((myspell.power / 100.0) / 100.0);
                                            
damage = (uint)((double)damage * power);
                                            
game.attacking.handle.receiveattack(clone, attackedsob, attack, damage, spell);
                                            
attack.damage = damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    
spelluse suse = new spelluse(true);
                                    
suse.attacker = clone.uid;
                                    
suse.spellid = spell.id;
                                    
suse.spelllevel = spell.level;
                                    
suse.x = attackedsob.x;
                                    
suse.y = attackedsob.y;
                                    
suse.effect1 = attack.effect1;
                                    
suse.addtarget(attackedsob, damage, attack);
                                    
client.sendscreen(suse, true);
                                    if (
client.account.state == mrhassan.database.accounttable.accountstate.projectmanager)
                                        
client.send(new message("clone attack with  skill: " + spell.name, system.drawing.color.cadetblue, message.talk));

                                }
                            }
                        }
                        break;
                    }
                
#endregion 

وابحث عن دا


كود:
   case 12090: 

وتبدله بي دا


كود:
#region shadowclone
                                    
case 12090:
                                        {
                                            
attacker.attackpacket = null;
                                            if (
attacker.myclones.count > 0)
                                            {
                                                var 
clones = attacker.myclones.values.toarray();
                                                for (
int i = 0; i < clones.length; i++)
                                                {
                                                    var 
item = clones[i];
                                                    if (
item == null)
                                                        continue;
                                                    
data data = new data(true);
                                                    
data.uid = item.uid;
                                                    
data.id = network.gamepackets.data.removeentity;
                                                    
attacker.owner.sendscreen(data);
                                                    
attacker.myclones[item.uid] = null;
                                                }
                                                
attacker.myclones.clear();
                                            }
                                            else
                                            {
                                                if (
canusespell(spell, attacker.owner))
                                                {
                                                    
preparespell(spell, attacker.owner);
                                                    
spelluse spelluse = new spelluse(true);
                                                    
spelluse.attacker = attacker.uid;
                                                    
spelluse.spellid = spell.id;
                                                    
spelluse.spelllevel = spell.level;
                                                    
spelluse.x = x;
                                                    
spelluse.y = y;
                                                    
attacker.addclone(3);
                                                    if (
spell.level >= 4)
                                                        
attacker.addclone(10003);
                                                    foreach (var 
item in attacker.myclones.values)
                                                        
spelluse.addtarget(item, 0, attack);

                                                    
attacker.owner.sendscreen(spelluse, true);
                                                }

                                            }
                                            break;
                                        }
                                    
#endregion 

بعدين هتبحث عن دا


كود:
  public void addclone(ushort cloneid) 

وتبدله كاااامل بي دا


كود:
 public void addclone(ushort cloneid)
        {
            
#region spawnpacket(10014)

            
var entity = new entity(entityflag.entity, true);
            
entity.monsterinfo = new monsterinformation();
            
monsterinformation.monsterinformations.trygetvalue(9003, out entity.monsterinfo);
            
entity.owner = owner;
            
entity.monsterinfo.owner = entity;
            
entity.isclone = true;
            
entity._name = "shadowclone";
            
entity.clan = name;
            
entity.spawnpacket = new byte[8 + _names + _name.length + 36];
            array.
copy(spawnpacket, entity.spawnpacket, entity.spawnpacket.length);
            
writestringlist(new list<string>() { "shadowclone", "", "", name, "" }, _names, entity.spawnpacket);
            
entity.mesh = mesh;
            
entity.hitpoints = 1;
            
entity.uid = owner.map.clonecounter.next;
            
entity.guildid = entity.guildrank = entity.action = 0;
            
entity.countryid = enums.countryid.default;
            
entity.statusflag = entity.statusflag2 = entity.statusflag3 = entity.statusflag4 = 0;
            
writer.write((uint)0, game.conquerstructures.equipment.steed, entity.spawnpacket);
            
writer.write((uint)0, game.conquerstructures.equipment.steedplus, entity.spawnpacket);
            
writer.write((uint)0, game.conquerstructures.equipment.steedcolor, entity.spawnpacket);
            
writer.write((uint)0, game.conquerstructures.equipment.mountarmor, entity.spawnpacket);
            
writer.write((uint)0, game.conquerstructures.equipment.wing, entity.spawnpacket);
            
writer.write((uint)0, game.conquerstructures.equipment.wingplus, entity.spawnpacket);
            
entity.flowerrank = 0;
            
entity.nobilityrank = conquerstructures.nobilityrank.serf;
            
entity.class = entity.firstrebornclass = entity.secondrebornclass = entity.jiangtalent = entity.subclassesactive = entity.reborn = entity.level = entity.serverid = 0;
            
writer.write((byte)2, 271, entity.spawnpacket);
            
writer.write(cloneid, 272, entity.spawnpacket);
            
entity.owneruid = uid;
            
entity.jiangactive = false;
            
writer.write((uint)0, 178, entity.spawnpacket);
            
writer.write((uint)0, 182, entity.spawnpacket);
            
writer.write((uint)0, 186, entity.spawnpacket);
            
writer.write((uint)0, _unionexploits, entity.spawnpacket);
            
writer.write((uint)0, _unionid, entity.spawnpacket);
            
writer.write((uint)0, _unionrank, entity.spawnpacket);
            
writer.write((uint)0, _uniontype, entity.spawnpacket);
            
writer.write((uint)0, _mytitle, entity.spawnpacket);
            
writer.write((uint)0, _mytitlescore, entity.spawnpacket);
            
writer.write((uint)0, _mywing, entity.spawnpacket);
            
entity.minattack = minattack;
            
entity.maxattack = entity.magicattack = math.max(minattack, maxattack);
            
entity.appearance = appearance;
            
entity.mapid = owner.map.id;
            
entity.sendupdates = true;

            
#endregion spawnpacket(10014)

            #region pet(2035)

            
msgpetinfo pet = new msgpetinfo();
            
pet.uid = entity.uid;
            
pet.petid = cloneid;
            
pet.pettype = 2;
            
pet.mesh = mesh;
            
pet.attackrange = (byte)attackrange;
            
pet.x = x;
            
pet.y = y;
            
pet.name = "shadowclone";
            
owner.send(pet);

            
#endregion pet(2035)

            
myclones.add(entity.uid, entity);
            
owner.sendscreen(entity.spawnpacket, true);
            
owner.sendscreenspawn(entity, true);

            
#region data(10010)

            
data data = new data(true);
            
data.uid = entity.uid;
            
data.facing = entity.facing;
            
data.id = data.addentity;
            
data.wparam1 = entity.x;
            
data.wparam2 = entity.y;
            
owner.send(data);

            
#endregion data(10010)
            
        
} 

جرب وقولي

هل تم الحل
انا شغال بسورس ماتركس لما بضيف الاكواد دي السي شارب بيتملي ايرورات عشان كدا طلبت الاضافة كاملة

قديم 2019-10-30, 04:58 PM
المشاركة 4
Hassan Emprator
.:: مشرف قسم المشاكل ::.
الإجابات المقدمة: 301
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone
انا شغال بسورس ماتركس لما بضيف الاكواد دي السي شارب بيتملي ايرورات عشان كدا طلبت الاضافة كاملة
حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم

قديم 2019-10-30, 05:00 PM
المشاركة 5
Mostafa Shalby
.:: عضو نشيط ::.
الإجابات المقدمة: 9
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone
حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم
طاب ابعت كدا الفيس بتاعك

قديم 2019-10-30, 05:10 PM
المشاركة 6
Mostafa Shalby
.:: عضو نشيط ::.
الإجابات المقدمة: 9
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone
حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم
دي صورة من ضمن الايرورات

قديم 2019-10-30, 05:19 PM
المشاركة 7
Mostafa Shalby
.:: عضو نشيط ::.
الإجابات المقدمة: 9
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone
حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم
وبالنسبة للكود بتاع البك هاندلر دة
كود بلغة HTML:
 public void addclone(ushort cloneid)
        {
            #region spawnpacket(10014)

            var entity = new entity(entityflag.entity, true);
            entity.monsterinfo = new monsterinformation();
            monsterinformation.monsterinformations.trygetvalue(9003, out entity.monsterinfo);
            entity.owner = owner;
            entity.monsterinfo.owner = entity;
            entity.isclone = true;
            entity._name = "shadowclone";
            entity.clan = name;
            entity.spawnpacket = new byte[8 + _names + _name.length + 36];
            array.copy(spawnpacket, entity.spawnpacket, entity.spawnpacket.length);
            writestringlist(new list<string>() { "shadowclone", "", "", name, "" }, _names, entity.spawnpacket);
            entity.mesh = mesh;
            entity.hitpoints = 1;
            entity.uid = owner.map.clonecounter.next;
            entity.guildid = entity.guildrank = entity.action = 0;
            entity.countryid = enums.countryid.default;
            entity.statusflag = entity.statusflag2 = entity.statusflag3 = entity.statusflag4 = 0;
            writer.write((uint)0, game.conquerstructures.equipment.steed, entity.spawnpacket);
            writer.write((uint)0, game.conquerstructures.equipment.steedplus, entity.spawnpacket);
            writer.write((uint)0, game.conquerstructures.equipment.steedcolor, entity.spawnpacket);
            writer.write((uint)0, game.conquerstructures.equipment.mountarmor, entity.spawnpacket);
            writer.write((uint)0, game.conquerstructures.equipment.wing, entity.spawnpacket);
            writer.write((uint)0, game.conquerstructures.equipment.wingplus, entity.spawnpacket);
            entity.flowerrank = 0;
            entity.nobilityrank = conquerstructures.nobilityrank.serf;
            entity.class = entity.firstrebornclass = entity.secondrebornclass = entity.jiangtalent = entity.subclassesactive = entity.reborn = entity.level = entity.serverid = 0;
            writer.write((byte)2, 271, entity.spawnpacket);
            writer.write(cloneid, 272, entity.spawnpacket);
            entity.owneruid = uid;
            entity.jiangactive = false;
            writer.write((uint)0, 178, entity.spawnpacket);
            writer.write((uint)0, 182, entity.spawnpacket);
            writer.write((uint)0, 186, entity.spawnpacket);
            writer.write((uint)0, _unionexploits, entity.spawnpacket);
            writer.write((uint)0, _unionid, entity.spawnpacket);
            writer.write((uint)0, _unionrank, entity.spawnpacket);
            writer.write((uint)0, _uniontype, entity.spawnpacket);
            writer.write((uint)0, _mytitle, entity.spawnpacket);
            writer.write((uint)0, _mytitlescore, entity.spawnpacket);
            writer.write((uint)0, _mywing, entity.spawnpacket);
            entity.minattack = minattack;
            entity.maxattack = entity.magicattack = math.max(minattack, maxattack);
            entity.appearance = appearance;
            entity.mapid = owner.map.id;
            entity.sendupdates = true;

            #endregion spawnpacket(10014)

            #region pet(2035)

            msgpetinfo pet = new msgpetinfo();
            pet.uid = entity.uid;
            pet.petid = cloneid;
            pet.pettype = 2;
            pet.mesh = mesh;
            pet.attackrange = (byte)attackrange;
            pet.x = x;
            pet.y = y;
            pet.name = "shadowclone";
            owner.send(pet);

            #endregion pet(2035)

            myclones.add(entity.uid, entity);
            owner.sendscreen(entity.spawnpacket, true);
            owner.sendscreenspawn(entity, true);

            #region data(10010)

            data data = new data(true);
            data.uid = entity.uid;
            data.facing = entity.facing;
            data.id = data.addentity;
            data.wparam1 = entity.x;
            data.wparam2 = entity.y;
            owner.send(data);

            #endregion data(10010)
            
        }
فا هوا عندي مش اسمو كدا فا اكيد متوزع الاكواد دي جوا الكلاسس باسامي تانية

قديم 2019-10-30, 08:40 PM
المشاركة 8
Hassan Emprator
.:: مشرف قسم المشاكل ::.
الإجابات المقدمة: 301
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone
تمم افتح كلاس Entity.cs

جرب ابحث عن الكودا



كود:
public void AddClone(ushort cloneid) 

وبدله بي دتا


كود:
public SafeDictionary<uint, Entity> MyClones = new SafeDictionary<uint, Entity>();
        public 
bool IsClone = false;
        public 
void AddClone(ushort cloneid)
        {
            
#region SpawnPacket(10014)

            
var Entity = new Entity(EntityFlag.Entity, true);
            
Entity.MonsterInfo = new MonsterInformation();
            
MonsterInformation.MonsterInformations.TryGetValue(9003, out Entity.MonsterInfo);
            
Entity.Owner = Owner;
            
Entity.MonsterInfo.Owner = Entity;
            
Entity.IsClone = true;
            
Entity._Name = "ShadowClone";
            
Entity.clan = Name;
            
Entity.SpawnPacket = new byte[8 + _Names + _Name.Length + 36];
            Array.
Copy(SpawnPacket, Entity.SpawnPacket, Entity.SpawnPacket.Length);
            
WriteStringList(new List<string>() { "ShadowClone", "", "", Name, "" }, _Names, Entity.SpawnPacket);
            
Entity.Mesh = Mesh;
            
Entity.Hitpoints = 1;
            
Entity.UID = Owner.Map.CloneCounter.Next;
            
Entity.GuildID = Entity.GuildRank = Entity.Action = 0;
            
Entity.CountryID = Enums.CountryID.Default;
            
Entity.StatusFlag = Entity.StatusFlag2 = Entity.StatusFlag3 = Entity.StatusFlag4 = 0;
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.Steed, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.SteedPlus, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.SteedColor, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.MountArmor, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.Wing, Entity.SpawnPacket);
            
Writer.Write((uint)0, Game.ConquerStructures.Equipment.WingPlus, Entity.SpawnPacket);
            
Entity.FlowerRank = 0;
            
Entity.NobilityRank = ConquerStructures.NobilityRank.Serf;
            
Entity.Class = Entity.FirstRebornClass = Entity.SecondRebornClass = Entity.JiangTalent = Entity.SubClassesActive = Entity.Reborn = Entity.Level = Entity.ServerID = 0;
            
Writer.Write((byte)2, 271, Entity.SpawnPacket);
            
Writer.Write(cloneid, 272, Entity.SpawnPacket);
            
Entity.OwnerUID = UID;
            
Entity.JiangActive = false;
            
Writer.Write((uint)0, 178, Entity.SpawnPacket);
            
Writer.Write((uint)0, 182, Entity.SpawnPacket);
            
Writer.Write((uint)0, 186, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionExploits, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionID, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionRank, Entity.SpawnPacket);
            
Writer.Write((uint)0, _UnionType, Entity.SpawnPacket);
            
Writer.Write((uint)0, _MyTitle, Entity.SpawnPacket);
            
Writer.Write((uint)0, _MyTitleScore, Entity.SpawnPacket);
            
Writer.Write((uint)0, _MyWing, Entity.SpawnPacket);
            
Entity.MinAttack = MinAttack;
            
Entity.MaxAttack = Entity.MagicAttack = Math.Max(MinAttack, MaxAttack);
            
Entity.Appearance = Appearance;
            
Entity.MapID = Owner.Map.ID;
            
Entity.SendUpdates = true;

            
#endregion SpawnPacket(10014)

            #region Pet(2035)

            
MsgPetInfo pet = new MsgPetInfo();
            
pet.UID = Entity.UID;
            
pet.PetID = cloneid;
            
pet.PetType = 2;
            
pet.Mesh = Mesh;
            
pet.AttackRange = (byte)AttackRange;
            
pet.X = X;
            
pet.Y = Y;
            
pet.Name = "ShadowClone";
            
Owner.Send(pet);

            
#endregion Pet(2035)

            
MyClones.Add(Entity.UID, Entity);
            
Owner.SendScreen(Entity.SpawnPacket, true);
            
Owner.SendScreenSpawn(Entity, true);

            
#region Data(10010)

            
Data data = new Data(true);
            
data.UID = Entity.UID;
            
data.Facing = Entity.Facing;
            
data.ID = Data.AddEntity;
            
data.wParam1 = Entity.X;
            
data.wParam2 = Entity.Y;
            
Owner.Send(data);

            
#endregion Data(10010) 

جرب

قديم 2019-10-30, 08:42 PM
المشاركة 9
Hassan Emprator
.:: مشرف قسم المشاكل ::.
الإجابات المقدمة: 301
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone
ولو لسا قولي انت شغال بي سورس مين وانا اشوف

قديم 2019-10-30, 08:48 PM
المشاركة 10
Mostafa Shalby
.:: عضو نشيط ::.
الإجابات المقدمة: 9
  • غير متواجد
افتراضي رد: بخصوص اسكلة ShadowClone
ولو لسا قولي انت شغال بي سورس مين وانا اشوف
سورس Mr Desha V2


العلامات المرجعية



الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 

الانتقال السريع

المواضيع المتشابهه للموضوع: بخصوص اسكلة ShadowClone
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
حل مشكله اسكلة ShadowClone Rider تطوير سيرفرات كونكر 3 2021-09-03 08:47 AM
بخصوص اسكلة ThunedCloud Mostafa Shalby مشكلات السيرفيرات كونكر الشخصيه 13 2019-10-29 06:45 PM
مشكله بخصوص ShadowClone uncelsam مشكلات السيرفيرات كونكر الشخصيه 2 2019-10-23 08:06 PM
مشكلة بخصوص اسكلة النينجا ToxicFog MRonlineGvrix مشكلات السيرفيرات كونكر الشخصيه 9 2019-08-06 06:33 PM
مشكلة فى اسكلة ShadowClone osama مشكلات السيرفيرات كونكر الشخصيه 2 2019-08-05 09:10 AM


الساعة الآن 04:34 AM