Actually I said the exact same thing..Quote:
@
Sion~
Haha look
@Korvacs haha you are a very good helper :PCode:public void Use() { try { uint Exp = 0; foreach (DictionaryEntry DE in MiscTargets) { uint EntityID = (uint)DE.Key; uint Damage = (uint)DE.Value; if (EntityID == 6700) GuildWars.ThePole.TakeAttack(User, Damage, 21); if (EntityID == 6701) GuildWars.TheLeftGate.TakeAttack(User, Damage, 21); if (EntityID == 6702) GuildWars.TheRightGate.TakeAttack(User, Damage, 21); }
Ok so this is what i found so im guessing this is where i code them
Code:case ExtraEffect.FatalStrike: { if (C.StatEff.Contains(StatusEffectEn.Ride)) { C.StatEff.Remove(StatusEffectEn.Ride); } Buff B = new Buff(); B.Eff = Info.ExtraEff; B.Lasts = Info.EffectLasts; B.Value = Info.EffectValue; B.Started = DateTime.Now; B.StEff = StatusEffectEn.FatalStrike; C.AddBuff(B); break; }
This is the entire use method.
Code:
public void Use()
{
try
{
Game.World.Action(User, Packets.SkillUse(this).Get);
uint Exp = 0;
foreach (DictionaryEntry DE in MiscTargets)
{
uint EntityID = (uint)DE.Key;
uint Damage = (uint)DE.Value;
if (EntityID == 6700)
GuildWars.ThePole.TakeAttack(User, Damage, 21);
if (EntityID == 6701)
GuildWars.TheLeftGate.TakeAttack(User, Damage, 21);
if (EntityID == 6702)
GuildWars.TheRightGate.TakeAttack(User, Damage, 21);
}
foreach (DictionaryEntry DE in MobTargets)
{
Mob M = (Mob)DE.Key;
uint Damage = (uint)DE.Value;
if (Info.Damageing != DamageType.HealHP)
{
if (Info.Damageing == DamageType.Ranged)
Exp += M.TakeAttack(User, Damage, AttackType.Ranged, true);
else if (Info.Damageing == DamageType.Melee)
Exp += M.TakeAttack(User, Damage, AttackType.Melee, true);
else
Exp += M.TakeAttack(User, Damage, AttackType.Magic, true);
}
else
{
Exp += Damage;
M.CurrentHP += Damage;
if (M.CurrentHP > M.MaxHP) M.CurrentHP = M.MaxHP;
}
}
foreach (DictionaryEntry DE in NPCTargets)
{
NPC N = (NPC)DE.Key;
uint Damage = (uint)DE.Value;
if (Info.Damageing != DamageType.HealHP)
{
if (Info.Damageing == DamageType.Ranged)
Exp += N.TakeAttack(User, Damage, AttackType.Ranged, true);
else if (Info.Damageing == DamageType.Melee)
Exp += N.TakeAttack(User, Damage, AttackType.Melee, true);
else
Exp += N.TakeAttack(User, Damage, AttackType.Magic, true);
}
else
{
N.CurHP += Damage;
if (N.CurHP > N.MaxHP) N.CurHP = N.MaxHP;
Exp += Damage / 10;
}
}
foreach (DictionaryEntry DE in PlayerTargets)
{
Character C = (Character)DE.Key;
uint Damage = (uint)DE.Value;
if (Info.Damageing != DamageType.HealHP && Info.Damageing != DamageType.HealMP)
{
if (Info.ExtraEff == ExtraEffect.None)
{
if (Info.Damageing == DamageType.Ranged)
C.TakeAttack(User, Damage, AttackType.Ranged, true);
else if (Info.Damageing == DamageType.Melee)
C.TakeAttack(User, Damage, AttackType.Melee, true);
else
C.TakeAttack(User, Damage, AttackType.Magic, true);
}
else Exp = Damage;
}
else
Exp = Damage;
switch (Info.ExtraEff)
{
case ExtraEffect.Summon:
{
if (User.MyCompanion != null) User.MyCompanion.Dissappear();
User.MyCompanion = new Game.Companion(User, Info.Damage);
break;
}
case ExtraEffect.RemoveFly:
{
Buff B = C.BuffOf(ExtraEffect.Fly);
if (B.Eff == ExtraEffect.Fly)
C.RemoveBuff(B);
break;
}
case ExtraEffect.Transform:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Transform = Info.Damage;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.Normal;
C.AddBuff(B);
break;
}
case ExtraEffect.Fly:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.Fly;
C.AddBuff(B);
break;
}
case ExtraEffect.Revive:
{
C.Ghost = false;
C.BlueName = false;
C.CurHP = (ushort)C.MaxHP;
C.Alive = true;
C.StatEff.Clear();
C.PKPoints = C.PKPoints;
C.Body = C.Body;
C.Hair = C.Hair;
C.Equips.Send(C.MyClient, false);
World.Spawn(C, false);
break;
}
case ExtraEffect.FatalStrike:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.FatalStrike;
C.AddBuff(B);
break;
}
case ExtraEffect.ShurikenVortex:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.ShurikenVortex;
C.AddBuff(B);
break;
}
case ExtraEffect.Stigma:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.Stigma;
C.AddBuff(B);
break;
}
case ExtraEffect.MagicShield:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.Shield;
C.AddBuff(B);
break;
}
case ExtraEffect.Invisibility:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.Invisible;
C.AddBuff(B);
break;
}
case ExtraEffect.Accuracy:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.Accuracy;
C.AddBuff(B);
break;
}
case ExtraEffect.Cyclone:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.Cyclone;
if (C.BuffOf(ExtraEffect.Cyclone).Eff != ExtraEffect.Cyclone)
C.TotalKO = 0;
C.AddBuff(B);
break;
}
case ExtraEffect.Superman:
{
Buff B = new Buff();
B.Eff = Info.ExtraEff;
B.Lasts = Info.EffectLasts;
B.Value = Info.EffectValue;
B.Started = DateTime.Now;
B.StEff = StatusEffectEn.SuperMan;
if (C.BuffOf(ExtraEffect.Superman).Eff != ExtraEffect.Superman)
C.TotalKO = 0;
C.AddBuff(B);
break;
}
}
}
Exp += 1;
if (User.Loc.Map != 1039)
{
User.IncreaseExp(Exp);
User.AddSkillExp(Info.ID, Exp);
}
else
{
User.IncreaseExp(Exp / 10);
User.AddSkillExp(Info.ID, Exp / 10);
}
}
catch (Exception Exc) { Console.WriteLine(Exc); }
}
}