منتدي اكواد

منتدي اكواد (https://code.vpscairo.com/index.php)
-   مشكلات السيرفيرات كونكر الشخصيه (https://code.vpscairo.com/forumdisplay.php?f=12)
-   -   بخصوص اسكلة ShadowClone (https://code.vpscairo.com/showthread.php?t=2718)

Mostafa Shalby 2019-10-30 04:22 PM

بخصوص اسكلة ShadowClone
 
ممكن حد يجيب اضافة اسكلة ShadowClone كاملة عشان هيا عاندي خربانة خالص
وشكرا مقدما :detective2:

Hassan Emprator 2019-10-30 04:51 PM

رد: بخصوص اسكلة ShadowClone
 


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


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

وتضيف دا

كود PHP:

#region Clone Attack
                
case 2812:
                    {
                        var 
attackd BitConverter.ReadUint(packet4);
                        var 
clonecount packet[8];
                        for (
int i 0clonecounti++)
                        {
                            var 
attackr BitConverter.ReadUint(packet+ (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].IDclient.Spells[12090].Level);
                            }
                            catch { 
MySpell Database.SpellTable.GetSpell(120904); }
                            
Entity Clone = null;
                            if (
client.Entity.MyClones.TryGetValue(attackrout Clone))
                            {
                                
Entity attacked null;
                                
SobNpcSpawn attackedsob null;
                                if (
client.Screen.TryGetValue(attackdout attacked))
                                {
                                    
uint damage 0;
                                    var 
spell Database.SpellTable.GetSpell(attack.MagicType, (byte)attack.MagicLevel);
                                    if (
spell == null)
                                        
spell Database.SpellTable.GetSpell(120800);
                                    if (
attack.AttackType == GamePackets.Attack.Melee)
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entityattackedspelltrue))
                                        {
                                            
damage Game.Attacking.Calculate.Melee(client.Entityattackedspellref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage power 8);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedattackref damagespell);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entityattackedspellfalse))
                                        {
                                            
damage Game.Attacking.Calculate.Magic(client.Entityattackedspellref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage power 8);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedattackref damagespell);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    
SpellUse suse = new SpellUse(true);
                                    
suse.Attacker = Clone.UID;
                                    
suse.SpellID spell.ID;
                                    
suse.SpellLevel spell.Level;
                                    
suse.attacked.X;
                                    
suse.attacked.Y;
                                    
suse.Effect1 attack.Effect1;
                                    
suse.AddTarget(attackeddamageattack);
                                    
client.SendScreen(susetrue);
                                    if (
client.Account.State == MrHassan.Database.AccountTable.AccountState.ProjectManager)
                                        
client.Send(new Message("Clone Attack With  Skill: " spell.NameSystem.Drawing.Color.CadetBlueMessage.Talk));

                                }
                                else if (
client.Screen.TryGetSob(attackdout attackedsob))
                                {
                                    
uint damage 0;
                                    var 
spell Database.SpellTable.GetSpell(attack.MagicType, (byte)attack.MagicLevel);
                                    if (
spell == null)
                                        
spell Database.SpellTable.GetSpell(120800);
                                    if (
attack.AttackType == GamePackets.Attack.Melee)
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entityattackedsobnull))
                                        {
                                            
damage Game.Attacking.Calculate.Melee(client.Entityattackedsobref attack);
                                            
double power = ((MySpell.Power 100.0) / 100.0);
                                            
damage = (uint)((double)damage power);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedsobattackdamagenull);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
Game.Attacking.Handle.CanAttack(client.Entityattackedsobspell))
                                        {
                                            
damage Game.Attacking.Calculate.Magic(client.Entityattackedsobspellref attack);
                                            
double power = ((MySpell.Power 100.0) / 100.0);
                                            
damage = (uint)((double)damage power);
                                            
Game.Attacking.Handle.ReceiveAttack(Clone, attackedsobattackdamagespell);
                                            
attack.Damage damage;
                                            
client.SendScreen(attack);
                                        }
                                    }
                                    
SpellUse suse = new SpellUse(true);
                                    
suse.Attacker = Clone.UID;
                                    
suse.SpellID spell.ID;
                                    
suse.SpellLevel spell.Level;
                                    
suse.attackedsob.X;
                                    
suse.attackedsob.Y;
                                    
suse.Effect1 attack.Effect1;
                                    
suse.AddTarget(attackedsobdamageattack);
                                    
client.SendScreen(susetrue);
                                    if (
client.Account.State == MrHassan.Database.AccountTable.AccountState.ProjectManager)
                                        
client.Send(new Message("Clone Attack With  Skill: " spell.NameSystem.Drawing.Color.CadetBlueMessage.Talk));

                                }
                            }
                        }
                        break;
                    }
                
#endregion 

وابحث عن دا

كود PHP:

   case 12090

وتبدله بي دا

كود PHP:

#region ShadowClone
                                    
case 12090:
                                        {
                                            
attacker.AttackPacket null;
                                            if (
attacker.MyClones.Count 0)
                                            {
                                                var 
clones attacker.MyClones.Values.ToArray();
                                                for (
int i 0clones.Lengthi++)
                                                {
                                                    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(spellattacker.Owner))
                                                {
                                                    
PrepareSpell(spellattacker.Owner);
                                                    
SpellUse spellUse = new SpellUse(true);
                                                    
spellUse.Attacker attacker.UID;
                                                    
spellUse.SpellID spell.ID;
                                                    
spellUse.SpellLevel spell.Level;
                                                    
spellUse.X;
                                                    
spellUse.Y;
                                                    
attacker.AddClone(3);
                                                    if (
spell.Level >= 4)
                                                        
attacker.AddClone(10003);
                                                    foreach (var 
item in attacker.MyClones.Values)
                                                        
spellUse.AddTarget(item0attack);

                                                    
attacker.Owner.SendScreen(spellUsetrue);
                                                }

                                            }
                                            break;
                                        }
                                    
#endregion 

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

كود PHP:

  public void AddClone(ushort cloneid

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

كود PHP:

 public void AddClone(ushort cloneid)
        {
            
#region SpawnPacket(10014)

            
var Entity = new Entity(EntityFlag.Entitytrue);
            
Entity.MonsterInfo = new MonsterInformation();
            
MonsterInformation.MonsterInformations.TryGetValue(9003out Entity.MonsterInfo);
            
Entity.Owner Owner;
            
Entity.MonsterInfo.Owner Entity;
            
Entity.IsClone true;
            
Entity._Name "ShadowClone";
            
Entity.clan Name;
            
Entity.SpawnPacket = new byte[_Names _Name.Length 36];
            Array.
Copy(SpawnPacketEntity.SpawnPacketEntity.SpawnPacket.Length);
            
WriteStringList(new List<string>() { "ShadowClone"""""Name"" }, _NamesEntity.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)0Game.ConquerStructures.Equipment.SteedEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.SteedPlusEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.SteedColorEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.MountArmorEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.WingEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.WingPlusEntity.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)2271Entity.SpawnPacket);
            
Writer.Write(cloneid272Entity.SpawnPacket);
            
Entity.OwnerUID UID;
            
Entity.JiangActive false;
            
Writer.Write((uint)0178Entity.SpawnPacket);
            
Writer.Write((uint)0182Entity.SpawnPacket);
            
Writer.Write((uint)0186Entity.SpawnPacket);
            
Writer.Write((uint)0_UnionExploitsEntity.SpawnPacket);
            
Writer.Write((uint)0_UnionIDEntity.SpawnPacket);
            
Writer.Write((uint)0_UnionRankEntity.SpawnPacket);
            
Writer.Write((uint)0_UnionTypeEntity.SpawnPacket);
            
Writer.Write((uint)0_MyTitleEntity.SpawnPacket);
            
Writer.Write((uint)0_MyTitleScoreEntity.SpawnPacket);
            
Writer.Write((uint)0_MyWingEntity.SpawnPacket);
            
Entity.MinAttack MinAttack;
            
Entity.MaxAttack Entity.MagicAttack Math.Max(MinAttackMaxAttack);
            
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;
            
pet.Y;
            
pet.Name "ShadowClone";
            
Owner.Send(pet);

            
#endregion Pet(2035)

            
MyClones.Add(Entity.UIDEntity);
            
Owner.SendScreen(Entity.SpawnPackettrue);
            
Owner.SendScreenSpawn(Entitytrue);

            
#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)
            
        


جرب وقولي

هل تم الحل

Mostafa Shalby 2019-10-30 04:57 PM

رد: بخصوص اسكلة ShadowClone
 
اقتباس:

المشاركة الأصلية كتبت بواسطة hassan emprator (المشاركة 20020)


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


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

وتضيف دا

كود PHP:

#region clone attack
                
case 2812:
                    {
                        var 
attackd bitconverter.readuint(packet4);
                        var 
clonecount packet[8];
                        for (
int i 0clonecounti++)
                        {
                            var 
attackr bitconverter.readuint(packet+ (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].idclient.spells[12090].level);
                            }
                            catch { 
myspell database.spelltable.getspell(120904); }
                            
entity clone = null;
                            if (
client.entity.myclones.trygetvalue(attackrout clone))
                            {
                                
entity attacked null;
                                
sobnpcspawn attackedsob null;
                                if (
client.screen.trygetvalue(attackdout attacked))
                                {
                                    
uint damage 0;
                                    var 
spell database.spelltable.getspell(attack.magictype, (byte)attack.magiclevel);
                                    if (
spell == null)
                                        
spell database.spelltable.getspell(120800);
                                    if (
attack.attacktype == gamepackets.attack.melee)
                                    {
                                        if (
game.attacking.handle.canattack(client.entityattackedspelltrue))
                                        {
                                            
damage game.attacking.calculate.melee(client.entityattackedspellref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage power 8);
                                            
game.attacking.handle.receiveattack(clone, attackedattackref damagespell);
                                            
attack.damage damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
game.attacking.handle.canattack(client.entityattackedspellfalse))
                                        {
                                            
damage game.attacking.calculate.magic(client.entityattackedspellref attack);
                                            
double power = (0.5);
                                            
damage = (uint)((double)damage power 8);
                                            
game.attacking.handle.receiveattack(clone, attackedattackref damagespell);
                                            
attack.damage damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    
spelluse suse = new spelluse(true);
                                    
suse.attacker = clone.uid;
                                    
suse.spellid spell.id;
                                    
suse.spelllevel spell.level;
                                    
suse.attacked.x;
                                    
suse.attacked.y;
                                    
suse.effect1 attack.effect1;
                                    
suse.addtarget(attackeddamageattack);
                                    
client.sendscreen(susetrue);
                                    if (
client.account.state == mrhassan.database.accounttable.accountstate.projectmanager)
                                        
client.send(new message("clone attack with  skill: " spell.namesystem.drawing.color.cadetbluemessage.talk));

                                }
                                else if (
client.screen.trygetsob(attackdout attackedsob))
                                {
                                    
uint damage 0;
                                    var 
spell database.spelltable.getspell(attack.magictype, (byte)attack.magiclevel);
                                    if (
spell == null)
                                        
spell database.spelltable.getspell(120800);
                                    if (
attack.attacktype == gamepackets.attack.melee)
                                    {
                                        if (
game.attacking.handle.canattack(client.entityattackedsobnull))
                                        {
                                            
damage game.attacking.calculate.melee(client.entityattackedsobref attack);
                                            
double power = ((myspell.power 100.0) / 100.0);
                                            
damage = (uint)((double)damage power);
                                            
game.attacking.handle.receiveattack(clone, attackedsobattackdamagenull);
                                            
attack.damage damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    else
                                    {
                                        if (
game.attacking.handle.canattack(client.entityattackedsobspell))
                                        {
                                            
damage game.attacking.calculate.magic(client.entityattackedsobspellref attack);
                                            
double power = ((myspell.power 100.0) / 100.0);
                                            
damage = (uint)((double)damage power);
                                            
game.attacking.handle.receiveattack(clone, attackedsobattackdamagespell);
                                            
attack.damage damage;
                                            
client.sendscreen(attack);
                                        }
                                    }
                                    
spelluse suse = new spelluse(true);
                                    
suse.attacker = clone.uid;
                                    
suse.spellid spell.id;
                                    
suse.spelllevel spell.level;
                                    
suse.attackedsob.x;
                                    
suse.attackedsob.y;
                                    
suse.effect1 attack.effect1;
                                    
suse.addtarget(attackedsobdamageattack);
                                    
client.sendscreen(susetrue);
                                    if (
client.account.state == mrhassan.database.accounttable.accountstate.projectmanager)
                                        
client.send(new message("clone attack with  skill: " spell.namesystem.drawing.color.cadetbluemessage.talk));

                                }
                            }
                        }
                        break;
                    }
                
#endregion 

وابحث عن دا

كود PHP:

   case 12090

وتبدله بي دا

كود PHP:

#region shadowclone
                                    
case 12090:
                                        {
                                            
attacker.attackpacket null;
                                            if (
attacker.myclones.count 0)
                                            {
                                                var 
clones attacker.myclones.values.toarray();
                                                for (
int i 0clones.lengthi++)
                                                {
                                                    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(spellattacker.owner))
                                                {
                                                    
preparespell(spellattacker.owner);
                                                    
spelluse spelluse = new spelluse(true);
                                                    
spelluse.attacker attacker.uid;
                                                    
spelluse.spellid spell.id;
                                                    
spelluse.spelllevel spell.level;
                                                    
spelluse.x;
                                                    
spelluse.y;
                                                    
attacker.addclone(3);
                                                    if (
spell.level >= 4)
                                                        
attacker.addclone(10003);
                                                    foreach (var 
item in attacker.myclones.values)
                                                        
spelluse.addtarget(item0attack);

                                                    
attacker.owner.sendscreen(spellusetrue);
                                                }

                                            }
                                            break;
                                        }
                                    
#endregion 

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

كود PHP:

  public void addclone(ushort cloneid

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

كود PHP:

 public void addclone(ushort cloneid)
        {
            
#region spawnpacket(10014)

            
var entity = new entity(entityflag.entitytrue);
            
entity.monsterinfo = new monsterinformation();
            
monsterinformation.monsterinformations.trygetvalue(9003out entity.monsterinfo);
            
entity.owner owner;
            
entity.monsterinfo.owner entity;
            
entity.isclone true;
            
entity._name "shadowclone";
            
entity.clan name;
            
entity.spawnpacket = new byte[_names _name.length 36];
            array.
copy(spawnpacketentity.spawnpacketentity.spawnpacket.length);
            
writestringlist(new list<string>() { "shadowclone"""""name"" }, _namesentity.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)0game.conquerstructures.equipment.steedentity.spawnpacket);
            
writer.write((uint)0game.conquerstructures.equipment.steedplusentity.spawnpacket);
            
writer.write((uint)0game.conquerstructures.equipment.steedcolorentity.spawnpacket);
            
writer.write((uint)0game.conquerstructures.equipment.mountarmorentity.spawnpacket);
            
writer.write((uint)0game.conquerstructures.equipment.wingentity.spawnpacket);
            
writer.write((uint)0game.conquerstructures.equipment.wingplusentity.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)2271entity.spawnpacket);
            
writer.write(cloneid272entity.spawnpacket);
            
entity.owneruid uid;
            
entity.jiangactive false;
            
writer.write((uint)0178entity.spawnpacket);
            
writer.write((uint)0182entity.spawnpacket);
            
writer.write((uint)0186entity.spawnpacket);
            
writer.write((uint)0_unionexploitsentity.spawnpacket);
            
writer.write((uint)0_unionidentity.spawnpacket);
            
writer.write((uint)0_unionrankentity.spawnpacket);
            
writer.write((uint)0_uniontypeentity.spawnpacket);
            
writer.write((uint)0_mytitleentity.spawnpacket);
            
writer.write((uint)0_mytitlescoreentity.spawnpacket);
            
writer.write((uint)0_mywingentity.spawnpacket);
            
entity.minattack minattack;
            
entity.maxattack entity.magicattack math.max(minattackmaxattack);
            
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;
            
pet.y;
            
pet.name "shadowclone";
            
owner.send(pet);

            
#endregion pet(2035)

            
myclones.add(entity.uidentity);
            
owner.sendscreen(entity.spawnpackettrue);
            
owner.sendscreenspawn(entitytrue);

            
#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)
            
        


جرب وقولي

هل تم الحل

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

Hassan Emprator 2019-10-30 04:58 PM

رد: بخصوص اسكلة ShadowClone
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Mostafa Shalby (المشاركة 20024)
انا شغال بسورس ماتركس لما بضيف الاكواد دي السي شارب بيتملي ايرورات عشان كدا طلبت الاضافة كاملة

حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم :1eye:

Mostafa Shalby 2019-10-30 05:00 PM

رد: بخصوص اسكلة ShadowClone
 
اقتباس:

المشاركة الأصلية كتبت بواسطة hassan emprator (المشاركة 20025)
حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم :1eye:

طاب ابعت كدا الفيس بتاعك

Mostafa Shalby 2019-10-30 05:10 PM

رد: بخصوص اسكلة ShadowClone
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hassan Emprator (المشاركة 20025)
حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم :1eye:

دي صورة من ضمن الايرورات
https://5.top4top.net/p_1398xj14h1.jpg

Mostafa Shalby 2019-10-30 05:19 PM

رد: بخصوص اسكلة ShadowClone
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hassan Emprator (المشاركة 20025)
حاول تصورلي ااايرورات وانا انشاء الله اساعدك فيهم :1eye:

وبالنسبة للكود بتاع البك هاندلر دة
كود بلغة 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)
           
        }

فا هوا عندي مش اسمو كدا فا اكيد متوزع الاكواد دي جوا الكلاسس باسامي تانية

Hassan Emprator 2019-10-30 08:40 PM

رد: بخصوص اسكلة ShadowClone
 
تمم افتح كلاس Entity.cs

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


كود PHP:

public void AddClone(ushort cloneid

وبدله بي دتا

كود PHP:

public SafeDictionary<uintEntityMyClones = new SafeDictionary<uintEntity>();
        public 
bool IsClone false;
        public 
void AddClone(ushort cloneid)
        {
            
#region SpawnPacket(10014)

            
var Entity = new Entity(EntityFlag.Entitytrue);
            
Entity.MonsterInfo = new MonsterInformation();
            
MonsterInformation.MonsterInformations.TryGetValue(9003out Entity.MonsterInfo);
            
Entity.Owner Owner;
            
Entity.MonsterInfo.Owner Entity;
            
Entity.IsClone true;
            
Entity._Name "ShadowClone";
            
Entity.clan Name;
            
Entity.SpawnPacket = new byte[_Names _Name.Length 36];
            Array.
Copy(SpawnPacketEntity.SpawnPacketEntity.SpawnPacket.Length);
            
WriteStringList(new List<string>() { "ShadowClone"""""Name"" }, _NamesEntity.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)0Game.ConquerStructures.Equipment.SteedEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.SteedPlusEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.SteedColorEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.MountArmorEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.WingEntity.SpawnPacket);
            
Writer.Write((uint)0Game.ConquerStructures.Equipment.WingPlusEntity.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)2271Entity.SpawnPacket);
            
Writer.Write(cloneid272Entity.SpawnPacket);
            
Entity.OwnerUID UID;
            
Entity.JiangActive false;
            
Writer.Write((uint)0178Entity.SpawnPacket);
            
Writer.Write((uint)0182Entity.SpawnPacket);
            
Writer.Write((uint)0186Entity.SpawnPacket);
            
Writer.Write((uint)0_UnionExploitsEntity.SpawnPacket);
            
Writer.Write((uint)0_UnionIDEntity.SpawnPacket);
            
Writer.Write((uint)0_UnionRankEntity.SpawnPacket);
            
Writer.Write((uint)0_UnionTypeEntity.SpawnPacket);
            
Writer.Write((uint)0_MyTitleEntity.SpawnPacket);
            
Writer.Write((uint)0_MyTitleScoreEntity.SpawnPacket);
            
Writer.Write((uint)0_MyWingEntity.SpawnPacket);
            
Entity.MinAttack MinAttack;
            
Entity.MaxAttack Entity.MagicAttack Math.Max(MinAttackMaxAttack);
            
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;
            
pet.Y;
            
pet.Name "ShadowClone";
            
Owner.Send(pet);

            
#endregion Pet(2035)

            
MyClones.Add(Entity.UIDEntity);
            
Owner.SendScreen(Entity.SpawnPackettrue);
            
Owner.SendScreenSpawn(Entitytrue);

            
#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) 

جرب

Hassan Emprator 2019-10-30 08:42 PM

رد: بخصوص اسكلة ShadowClone
 
ولو لسا قولي انت شغال بي سورس مين وانا اشوف

Mostafa Shalby 2019-10-30 08:48 PM

رد: بخصوص اسكلة ShadowClone
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hassan Emprator (المشاركة 20051)
ولو لسا قولي انت شغال بي سورس مين وانا اشوف

سورس Mr Desha V2


الساعة الآن 11:36 PM

مرحبا بكم في منتدي اكواد لتطوير الالعاب