Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Private Server
You last visited: Today at 09:17

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Anyone Added Dying Effect on 5165?

Discussion on Anyone Added Dying Effect on 5165? within the CO2 Private Server forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Feb 2009
Posts: 700
Received Thanks: 79
Cool Anyone Added Dying Effect on 5165?

I'm just curious, has anyone out there added the dying effect to their 5165? At the moment, when you die you instantly turn into a ghost which is pretty lame.



copz1337 is offline  
Old 10/07/2010, 05:35   #2
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,347
Attack type 14 = death effect.


Doesn't every source already have this?


pro4never is offline  
Old 10/07/2010, 05:49   #3
 
elite*gold: 0
Join Date: Feb 2009
Posts: 700
Received Thanks: 79
Does it already have this? Well for some reason it's death = instant ghost
copz1337 is offline  
Old 10/07/2010, 05:51   #4
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,347
Well not using 5165 I wouldn't know... It's a very basic thing to do though so I assumed it would have it.

Just in your attack code change attack type to 14 if you are killing the entity.


pro4never is offline  
Old 10/07/2010, 06:20   #5
 
elite*gold: 0
Join Date: Feb 2009
Posts: 700
Received Thanks: 79
Well here's my Attack.cs I'm not sure if this is what I need to edit though could you check it

Code:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NewestCOServer.Features;

namespace NewestCOServer.PacketHandling
{
    public class Attack
    {
        public static void Handle(Main.GameClient GC, byte[] Data)
        {
            try
            {
                uint AttackType = BitConverter.ToUInt32(Data, 20);
                if (AttackType != 24)
                    GC.MyChar.AtkMem.AtkType = (byte)AttackType;
                GC.MyChar.Action = 100;

                if (!GC.MyChar.Alive) return;
                if (GC.MyChar.Loc.Map == PKTournament.Map)
                {
                    if (!(PKTournament.Stage == PKTournamentStage.None || PKTournament.Stage == PKTournamentStage.Over))
                    {
                        if (PKTournament.Stage == PKTournamentStage.Inviting || PKTournament.Stage == PKTournamentStage.Countdown)
                        {
                            return;
                        }
                        if (PKTournament.Stage == PKTournamentStage.Fighting)
                        {
                            if (AttackType != 24 || GC.GM)
                            {
                                return;
                            }
                        }
                    }
                }

                if (AttackType == 2 || AttackType == 28)
                {
                    uint TargetUID = BitConverter.ToUInt32(Data, 12);
                    Game.Mob PossMob = null;
                    Game.Character PossChar = null;

                    if (Game.World.H_Mobs.Contains(GC.MyChar.Loc.Map))
                    {
                        Hashtable MapMobs = (Hashtable)Game.World.H_Mobs[GC.MyChar.Loc.Map];
                        if (MapMobs.Contains(TargetUID))
                            PossMob = (Game.Mob)MapMobs[TargetUID];
                        else if (Game.World.H_Chars.Contains(TargetUID))
                            PossChar = (Game.Character)Game.World.H_Chars[TargetUID];
                    }
                    else if (Game.World.H_Chars.Contains(TargetUID))
                        PossChar = (Game.Character)Game.World.H_Chars[TargetUID];
                   
                    if (PossMob != null || PossChar != null)
                    {
                        GC.MyChar.AtkMem.Target = TargetUID;
                        GC.MyChar.AtkMem.Attacking = true;

                        if (DateTime.Now > GC.MyChar.AtkMem.LastAttack.AddMilliseconds(GC.MyChar.AtkFrequence))
                        {
                            uint Damage = GC.MyChar.PrepareAttack((byte)AttackType, true);
                            if (PossMob != null && PossMob.Alive && (MyMath.PointDistance(GC.MyChar.Loc.X, GC.MyChar.Loc.Y, PossMob.Loc.X, PossMob.Loc.Y) <= 3 || AttackType == 28 && MyMath.PointDistance(GC.MyChar.Loc.X, GC.MyChar.Loc.Y, PossMob.Loc.X, PossMob.Loc.Y) <= 15 || GC.MyChar.StatEff.Contains(Game.StatusEffectEn.FatalStrike)))
                            {
                                if (!GC.MyChar.WeaponSkill(PossMob.Loc.X, PossMob.Loc.Y, PossMob.EntityID))
                                    PossMob.TakeAttack(GC.MyChar, ref Damage, (NewestCOServer.Game.AttackType)AttackType, false);
                            }
                            else if (PossChar != null && (PossChar.CanBeMeleed || GC.MyChar.AtkMem.AtkType != 2) && PossChar.Alive && (MyMath.PointDistance(GC.MyChar.Loc.X, GC.MyChar.Loc.Y, PossChar.Loc.X, PossChar.Loc.Y) <= 2 || AttackType == 28 && MyMath.PointDistance(GC.MyChar.Loc.X, GC.MyChar.Loc.Y, PossChar.Loc.X, PossChar.Loc.Y) <= 15))
                            {
                                if (!GC.MyChar.WeaponSkill(PossChar.Loc.X, PossChar.Loc.Y, PossChar.EntityID))
                                    PossChar.TakeAttack(GC.MyChar, Damage, (NewestCOServer.Game.AttackType)AttackType, false);
                            }
                            else
                            {
                                GC.MyChar.AtkMem.Target = 0;
                                GC.MyChar.AtkMem.Attacking = false;
                            }
                        }
                    }
                    else if (TargetUID >= 6700 && TargetUID <= 6702)
                    {
                        GC.MyChar.AtkMem.Target = TargetUID;
                        GC.MyChar.AtkMem.Attacking = true;

                        if (DateTime.Now > GC.MyChar.AtkMem.LastAttack.AddMilliseconds(GC.MyChar.AtkFrequence))
                        {
                            uint Damage = GC.MyChar.PrepareAttack((byte)AttackType, true);
                            if (TargetUID == 6700)
                            {
                                if (Features.GuildWars.War)
                                {
                                    if (!GC.MyChar.WeaponSkill(Features.GuildWars.ThePole.Loc.X, Features.GuildWars.ThePole.Loc.Y, Features.GuildWars.ThePole.EntityID))
                                        Features.GuildWars.ThePole.TakeAttack(GC.MyChar, Damage, (byte)AttackType);
                                }
                                else
                                {
                                    GC.MyChar.AtkMem.Target = 0;
                                    GC.MyChar.AtkMem.Attacking = false;
                                }
                            }
                            else if (TargetUID == 6701)
                            {
                                if (!GC.MyChar.WeaponSkill(Features.GuildWars.TheLeftGate.Loc.X, Features.GuildWars.TheLeftGate.Loc.Y, Features.GuildWars.TheLeftGate.EntityID))
                                    Features.GuildWars.TheLeftGate.TakeAttack(GC.MyChar, Damage, (byte)AttackType);

                            }
                            else
                            {
                                if (!GC.MyChar.WeaponSkill(Features.GuildWars.TheRightGate.Loc.X, Features.GuildWars.TheRightGate.Loc.Y, Features.GuildWars.TheRightGate.EntityID))
                                    Features.GuildWars.TheRightGate.TakeAttack(GC.MyChar, Damage, (byte)AttackType);
                            }
                        }
                        return;
                    }
                    else
                        GC.MyChar.AtkMem.Attacking = false;

                    if (PossChar == null && PossMob == null)
                    {
                        Game.NPC PossNPC = (Game.NPC)Game.World.H_NPCs[TargetUID];
                        if (PossNPC != null && PossNPC.Flags == 21 && (MyMath.PointDistance(GC.MyChar.Loc.X, GC.MyChar.Loc.Y, PossNPC.Loc.X, PossNPC.Loc.Y) <= 3 || AttackType == 28 && MyMath.PointDistance(GC.MyChar.Loc.X, GC.MyChar.Loc.Y, PossNPC.Loc.X, PossNPC.Loc.Y) <= 15))
                        {
                            GC.MyChar.AtkMem.Target = TargetUID;
                            GC.MyChar.AtkMem.Attacking = true;

                            if (DateTime.Now > GC.MyChar.AtkMem.LastAttack.AddMilliseconds(GC.MyChar.AtkFrequence))
                            {
                                uint Damage = GC.MyChar.PrepareAttack((byte)AttackType, true);
                                if (!GC.MyChar.WeaponSkill(PossNPC.Loc.X, PossNPC.Loc.Y, PossNPC.EntityID))
                                    PossNPC.TakeAttack(GC.MyChar, Damage, (NewestCOServer.Game.AttackType)AttackType, false);
                            }
                        }
                    }
                }
                else if (AttackType == 44)
                {
                    ushort SkillId = 6003;
                    ushort x = GC.MyChar.Loc.X;
                    ushort y = GC.MyChar.Loc.Y;
                    uint Target = GC.MyChar.EntityID;

                    for (byte i = 1; i < 8; i++)
                    {
                        Game.Item I = GC.MyChar.Equips.Get(i);
                        if (I.ID != 0 && I.Soc1 != Game.Item.Gem.EmptySocket)
                        {
                            Features.GemEffect.GemEffects(I.Soc1, GC);
                        }
                    }

                    if (SkillId != 0 && GC.MyChar.Skills.Contains(SkillId))
                    {
                        Game.Skill S = (Game.Skill)GC.MyChar.Skills[SkillId];
                        if (Features.SkillsClass.SkillInfos.Contains(S.ID + " " + S.Lvl))
                        {
                            Features.SkillsClass.SkillUse SU = new NewestCOServer.Features.SkillsClass.SkillUse();
                            SU.Init(GC.MyChar, S.ID, S.Lvl, (ushort)x, (ushort)y);
                            if (SU.Info.ID == 0)
                                return;
                            SU.GetTargets(Target);
                            SU.Use();
                        }
                    }
                }
                else if (AttackType == 24)
                {
                    ushort SkillId;
                    long x;
                    long y;
                    uint Target;
                    #region GetSkillID
                    SkillId = Convert.ToUInt16(((long)Data[24] & 0xFF) | (((long)Data[25] & 0xFF) << 8));
                    SkillId ^= (ushort)0x915d;
                    SkillId ^= (ushort)GC.MyChar.EntityID;
                    SkillId = (ushort)(SkillId << 0x3 | SkillId >> 0xd);
                    SkillId -= 0xeb42;
                    #endregion
                    #region GetCoords
                    x = (Data[16] & 0xFF) | ((Data[17] & 0xFF) << 8);
                    x = x ^ (uint)(GC.MyChar.EntityID & 0xffff) ^ 0x2ed6;
                    x = ((x << 1) | ((x & 0x8000) >> 15)) & 0xffff;
                    x |= 0xffff0000;
                    x -= 0xffff22ee;

                    y = (Data[18] & 0xFF) | ((Data[19] & 0xFF) << 8);
                    y = y ^ (uint)(GC.MyChar.EntityID & 0xffff) ^ 0xb99b;
                    y = ((y << 5) | ((y & 0xF800) >> 11)) & 0xffff;
                    y |= 0xffff0000;
                    y -= 0xffff8922;
                    #endregion
                    #region GetTarget
                    Target = ((uint)Data[12] & 0xFF) | (((uint)Data[13] & 0xFF) << 8) | (((uint)Data[14] & 0xFF) << 16) | (((uint)Data[15] & 0xFF) << 24);
                    Target = ((((Target & 0xffffe000) >> 13) | ((Target & 0x1fff) << 19)) ^ 0x5F2D2463 ^ GC.MyChar.EntityID) - 0x746F4AE6;
                    #endregion
                    for (byte i = 1; i < 8; i++)
                    {
                        Game.Item I = GC.MyChar.Equips.Get(i);
                        if (I.ID != 0 && I.Soc1 != Game.Item.Gem.EmptySocket)
                        {
                            Features.GemEffect.GemEffects(I.Soc1, GC);
                        }
                    }
                    if (GC.MyChar.Loc.Map == PKTournament.Map)
                    {
                        if (PKTournament.Stage == PKTournamentStage.Fighting)
                        {
                            if (SkillId != 1045 && SkillId != 1046)
                            {
                                GC.LocalMessage(2005, "You can't use anything except FB/SS in a tournament.");
                                return;
                            }
                        }
                    }

                    if (SkillId != 0 && GC.MyChar.Skills.Contains(SkillId))
                    {
                        Game.Skill S = (Game.Skill)GC.MyChar.Skills[SkillId];
                        if (Features.SkillsClass.SkillInfos.Contains(S.ID + " " + S.Lvl))
                        {
                            Features.SkillsClass.SkillUse SU = new NewestCOServer.Features.SkillsClass.SkillUse();
                            SU.Init(GC.MyChar, S.ID, S.Lvl, (ushort)x, (ushort)y);
                            if (SU.Info.ID == 0)
                                return;
                            bool EnoughArrows = true;
                            if (SU.Info.ArrowsCost > 0)
                            {
                                if (GC.MyChar.Loc.Map != 1039)
                                {
                                    if (GC.MyChar.Equips.LeftHand.ID != 0 && Game.Item.IsArrow(GC.MyChar.Equips.LeftHand.ID))
                                    {
                                        if (GC.MyChar.Equips.LeftHand.CurDur >= SU.Info.ArrowsCost)
                                            GC.MyChar.Equips.LeftHand.CurDur -= SU.Info.ArrowsCost;
                                        else
                                            GC.MyChar.Equips.LeftHand.CurDur = 0;
                                        if (GC.MyChar.Equips.LeftHand.CurDur == 0)
                                        {
                                            GC.AddSend(Packets.ItemPacket(GC.MyChar.Equips.LeftHand.UID, 5, 6));
                                            GC.AddSend(Packets.ItemPacket(GC.MyChar.Equips.LeftHand.UID, 0, 3));
                                            GC.MyChar.Equips.LeftHand = new Game.Item();
                                        }
                                        else
                                            GC.AddSend(Packets.AddItem(GC.MyChar.Equips.LeftHand, 5));
                                    }
                                    else
                                    {
                                        GC.MyChar.AtkMem.Attacking = false;
                                        EnoughArrows = false;
                                    }
                                }
                            }
                            if (GC.MyChar.CurMP >= SU.Info.ManaCost && GC.MyChar.Stamina >= SU.Info.StaminaCost && EnoughArrows || GC.MyChar.Loc.Map == 1039)
                            {
                                if (SU.Info.EndsXPWait)
                                {
                                    if (GC.MyChar.StatEff.Contains(NewestCOServer.Game.StatusEffectEn.XPStart))
                                    {
                                        GC.MyChar.StatEff.Remove(NewestCOServer.Game.StatusEffectEn.XPStart);
                                        GC.MyChar.XPKO = 0;
                                    }
                                    else
                                        return;
                                }
                                try
                                {
                                    if (GC.MyChar.Loc.Map != 1039)
                                    {
                                        GC.MyChar.CurMP -= SU.Info.ManaCost;
                                        GC.MyChar.Stamina -= SU.Info.StaminaCost;
                                        if (SkillId >= 1000 && SkillId <= 1002)
                                        {
                                            GC.MyChar.AtkMem.AtkType = 21;
                                            GC.MyChar.AtkMem.Skill = SU.Info.ID;
                                            GC.MyChar.AtkMem.Attacking = true;
                                            GC.MyChar.AtkMem.Target = Target;
                                            GC.MyChar.AtkMem.LastAttack = DateTime.Now;
                                            GC.MyChar.AtkMem.SX = (ushort)x;
                                            GC.MyChar.AtkMem.SY = (ushort)y;
                                        }
                                    }
                                    else
                                    {
                                        GC.MyChar.AtkMem.AtkType = 21;
                                        GC.MyChar.AtkMem.Skill = SU.Info.ID;
                                        GC.MyChar.AtkMem.Attacking = true;
                                        GC.MyChar.AtkMem.Target = Target;
                                        GC.MyChar.AtkMem.LastAttack = DateTime.Now;
                                        GC.MyChar.AtkMem.SX = (ushort)x;
                                        GC.MyChar.AtkMem.SY = (ushort)y;
                                    }
                                }
                                catch (Exception c) { Program.WriteLine(c.ToString()); }
                                if (SU.Info.ID == 6001)//toxic fog
                                {
                                    #region ToxicFog
                                    if (true)
                                        if (GC.MyChar.Loc.Map != 1039)
                                        {
                                            #region Mobs
                                            try
                                            {
                                                foreach (Game.Mob Mob in (Game.World.H_Mobs[GC.MyChar.Loc.Map] as Hashtable).Values)
                                                {
                                                    if (Mob.Alive)
                                                    {
                                                        int Dst = 6;
                                                        if (MyMath.PointDistance(Mob.Loc.X, Mob.Loc.Y, x, y) <= Dst)
                                                        {
                                                            if (Mob.Name.Contains("Guard"))
                                                            {
                                                                continue;
                                                            }
                                                            Mob.PoisonedInfo = new NewestCOServer.Game.PoisonType(SU.Info.Level);
                                                            foreach (Game.Character C in Game.World.H_Chars.Values)
                                                                if (Mob.Loc.Map == C.Loc.Map)
                                                                    if (MyMath.PointDistance(Mob.Loc.X, Mob.Loc.Y, C.Loc.X, C.Loc.Y) <= 20)
                                                                        C.MyClient.AddSend(Packets.Status(Mob.EntityID, NewestCOServer.Game.Status.Effect, (ulong)Game.StatusEffectEn.Poisoned));
                                                            uint Damage = 0;
                                                            Mob.TakeAttack(GC.MyChar, ref Damage, NewestCOServer.Game.AttackType.Magic, true);
                                                            GC.MyChar.AddSkillExp(SU.Info.ID, 100);
                                                        }
                                                    }
                                                }
                                            }
                                            catch { }
                                            #endregion
                                            #region Players
                                            try
                                            {
                                                if (!Game.World.NoPKMaps.Contains(GC.MyChar.Loc.Map))
                                                {
                                                    foreach (Game.Character Player in Game.World.H_Chars.Values)
                                                    {
                                                        if (Player.Alive)
                                                        {
                                                            int Dst = 6;
                                                            if (MyMath.PointDistance(Player.Loc.X, Player.Loc.Y, x, y) <= Dst)
                                                            {
                                                                if (GC.MyChar.PKMode == NewestCOServer.Game.PKMode.PK)
                                                                {
                                                                    if (Player != GC.MyChar)
                                                                    {
                                                                        if (Player.Potency <= GC.MyChar.Potency)
                                                                        {
                                                                            Player.PoisonedInfo = new NewestCOServer.Game.PoisonType(SU.Info.Level);
                                                                            Player.StatEff.Add(NewestCOServer.Game.StatusEffectEn.Poisoned);
                                                                            Player.TakeAttack(GC.MyChar, 0, NewestCOServer.Game.AttackType.Magic, true);
                                                                            SU.PlayerTargets.Add(Player, (uint)1);
                                                                        }
                                                                        else
                                                                        {
                                                                            SU.PlayerTargets.Add(Player, (uint)0);
                                                                        }
                                                                    }
                                                                }
                                                                GC.MyChar.AddSkillExp(SU.Info.ID, 100);
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                            catch { }
                                            #endregion
                                        }
                                        else
                                            GC.MyChar.AddSkillExp(SU.Info.ID, 10);
                                    Game.World.Action(GC.MyChar, Packets.SkillUse(SU).Get);
                                    #endregion
                                }
                                else if (SU.Info.ID == 1100 || SU.Info.ID == 1050)
                                {
                                    #region Pray
                                    if (GC.MyChar.EntityID != Target)
                                    {
                                        if (Game.World.H_Chars.ContainsKey(Target))
                                        {
                                            Game.Character Char = (Game.Character)Game.World.H_Chars[Target];
                                            if (!Char.Alive)
                                            {
                                                SU.GetTargets(Target);
                                                SU.PlayerTargets[Char] = (uint)1;
                                                Game.World.Action(Char, Packets.SkillUse(SU).Get);
                                                Char.Ghost = false;
                                                Char.BlueName = false;
                                                Char.CurHP = (ushort)Char.MaxHP;
                                                Char.Alive = true;
                                                Char.StatEff.Remove(NewestCOServer.Game.StatusEffectEn.Dead);
                                                Char.StatEff.Remove(NewestCOServer.Game.StatusEffectEn.BlueName);
                                                Char.Body = Char.Body;
                                                Char.Hair = Char.Hair;
                                                Char.Equips.Send(Char.MyClient, false);
                                            }
                                        }
                                    }
                                    #endregion
                                }
                                else
                                {
                                    SU.GetTargets(Target);
                                    SU.Use();
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception e) { Program.WriteLine(e); }
        }
    }
}
copz1337 is offline  
Old 10/07/2010, 08:11   #6
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,347
eeweee lotf is such messy code

Personally I'd do something under where it says
if (!Char.Alive)


Then just send an attack packet with type 14. That's sooo messy though..

Personally when doing X>player dmg calcs I check if HP - Dmg > 0, if so I deal normal dmg and check for if I need to make them flashy or w.e Then if not I add pk pts, send type 14 and handle death.
pro4never is offline  
Old 10/07/2010, 22:58   #7
 
elite*gold: 0
Join Date: Feb 2009
Posts: 700
Received Thanks: 79
I don't get it
copz1337 is offline  
Old 10/07/2010, 22:59   #8
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,347
whenever you attack something, check if the attack will kill them. If it will then change the attack packet to type 14, if not use the regular one.

Simple stuff but lotf is a big mess and you should essentially re-write it all or use a source worth coding imo.
pro4never is offline  
Old 10/07/2010, 23:05   #9
 
elite*gold: 0
Join Date: Feb 2009
Posts: 700
Received Thanks: 79
Quote:
Originally Posted by pro4never View Post
whenever you attack something, check if the attack will kill them. If it will then change the attack packet to type 14, if not use the regular one.

Simple stuff but lotf is a big mess and you should essentially re-write it all or use a source worth coding imo.
okay so where exactly is this.. like you said it's messy so idk

#edit: alright so I know what to add but idk where I know that its suppose to be where it's something like the opposite of
Code:
Char.StatEff.Remove(NewestCOServer.Game.StatusEffectEn.Dead);
and I even searched for
Code:
Char.StatEff.Add(NewestCOServer.Game.StatusEffectEn.Dead);
but can't find it. I even searched
Code:
NewestCOServer.Game.StatusEffectEn.Dead)
and still :x

#edit 2: ok so I think this is where I'm suppose to add it
Code:
StatEff.Add(StatusEffectEn.Dead);
but when I put in
Code:
AttackType = 14;
and it gives me an error that says "'NewestCOServer.Game.AttackType' is a 'type' but is used like a 'variable'. ?
copz1337 is offline  
Old 10/08/2010, 01:38   #10
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,347
/facepalm. It's an attack packet. You send the attack packet with a different type.


Go to where the packet is sent to the client for attack. THAT'S where you need to make the type of the packet 14.


Quote:
Originally Posted by copz1337 View Post
okay so where exactly is this.. like you said it's messy so idk

#edit: alright so I know what to add but idk where I know that its suppose to be where it's something like the opposite of
Code:
Char.StatEff.Remove(NewestCOServer.Game.StatusEffectEn.Dead);
and I even searched for
Code:
Char.StatEff.Add(NewestCOServer.Game.StatusEffectEn.Dead);
but can't find it. I even searched
Code:
NewestCOServer.Game.StatusEffectEn.Dead)
and still :x

#edit 2: ok so I think this is where I'm suppose to add it
Code:
StatEff.Add(StatusEffectEn.Dead);
but when I put in
Code:
AttackType = 14;
and it gives me an error that says "'NewestCOServer.Game.AttackType' is a 'type' but is used like a 'variable'. ?
pro4never is offline  
Old 10/08/2010, 01:50   #11
 
elite*gold: 0
Join Date: Oct 2010
Posts: 28
Received Thanks: 4
Quote:
Originally Posted by copz1337 View Post
okay so where exactly is this.. like you said it's messy so idk

#edit: alright so I know what to add but idk where I know that its suppose to be where it's something like the opposite of
Code:
Char.StatEff.Remove(NewestCOServer.Game.StatusEffectEn.Dead);
and I even searched for
Code:
Char.StatEff.Add(NewestCOServer.Game.StatusEffectEn.Dead);
but can't find it. I even searched
Code:
NewestCOServer.Game.StatusEffectEn.Dead)
and still :x

#edit 2: ok so I think this is where I'm suppose to add it
Code:
StatEff.Add(StatusEffectEn.Dead);
but when I put in
Code:
AttackType = 14;
and it gives me an error that says "'NewestCOServer.Game.AttackType' is a 'type' but is used like a 'variable'. ?
Code:
public enum AttackType : byte
    {
        Melee = 2,
        Ranged = 28,
        Magic = 21,
        Kill = 14,
        FatalStrike = 45,
        Scapegoat = 43
    }
Code:
 World.Action(this, Packets.AttackPacket(Attacker.EntityID, EntityID, Loc.X, Loc.Y, Damage, (byte)AttackType.Kill).Get);
tomtucker is offline  
Old 10/08/2010, 04:22   #12
 
elite*gold: 0
Join Date: Feb 2009
Posts: 700
Received Thanks: 79
<.< i'm a noob at this

Alright so I noticed that when you die, on YOUR SCREEN it shows the dying effect (you falling down THEN turning into a ghost) but on other people's screen, you instantly turn into a ghost without the 'effect'.
copz1337 is offline  
Old 10/08/2010, 05:07   #13
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,347
Quote:
Originally Posted by copz1337 View Post
Alright so I noticed that when you die, on YOUR SCREEN it shows the dying effect (you falling down THEN turning into a ghost) but on other people's screen, you instantly turn into a ghost without the 'effect'.
Ensure you send it to ALL clients in range, not just your own.
pro4never is offline  
Old 10/08/2010, 06:02   #14
 
elite*gold: 0
Join Date: Feb 2009
Posts: 700
Received Thanks: 79
Quote:
Originally Posted by pro4never View Post
Ensure you send it to ALL clients in range, not just your own.
I know but isn't this it..?

Code:
 [COLOR="Red"]World.Action[/COLOR](this, Packets.AttackPacket(Attacker.EntityID, EntityID, Loc.X, Loc.Y, Damage, (byte)AttackType.Kill).Get);


copz1337 is offline  
Reply



« [Help]When reading/writing from a file | console error »

Similar Threads
Add effect into 5165 ?
05/09/2010 - CO2 Private Server - 4 Replies
Hey , I got an effect and i want to add it into a 5165 source , i got the .c3's and the textures . their are also 3 directories and i also got this AniTitle=Freeze LoopTime=99999 FrameInterval=1000 ShowWay=0 LoopInterval=0
Making Effect World Side? (5165)
02/24/2010 - CO2 Private Server - 10 Replies
How would I make this code world side so that the world can see the firework or whatever effect i'm doing? if (Cmd == "/effect") { Game.World.Effect = Cmd; foreach (Game.Character Player in Game.World.H_Chars.Values) try { ...
5165 Upgrade effect bug
02/11/2010 - CO2 Private Server - 1 Replies
Well I really didn't know what to put as the title but here is basicly what the bug is. Whenever you upgrade an item on MOST 5165 servers, your damage gets enhanced until you logout or dc or so on.. I am trying to find a fix for it but I don't even know where its coming from, so if anyone has any clue where it could be coming from please post :P. And if im blind and totally missed a thread that actually has a fix for it, please post the link to that thread.. Thanks.
[Request]Snow Effect for 5165
12/27/2009 - CO2 Private Server - 5 Replies
Hey E*pvp ! Anyone can help me to make a command for snow?



All times are GMT +2. The time now is 09:17.


Powered by vBulletin®
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

BTC: 33E6kMtxYa7dApCFzrS3Jb7U3NrVvo8nsK
ETH: 0xc6ec801B7563A4376751F33b0573308aDa611E05

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2019 elitepvpers All Rights Reserved.