Codelic Hackers
Estamos voltando

[Release] reflect

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[Release] reflect

Mensagem por Cdubb em Ter Ago 24, 2010 9:32 am

esquece nao da assim... deves ter isso mal configurado... pois o loft nao é igual ao binary tens que configurar o appserver para o loft resumindo appserver 2.5.0+

1- abres o source
2- abres o Database.cs
3- procura este codigo (atençao que sao dois codigos)
Código:
C.Skills.Add(S.ID, S);
4- debaixo dos dois codigos adiciona isto
Código:
 if (s.ID == 3060)
C.CanReflect = true;
5- vai ficar assim
Código:
 if (!C.Skills.ContainsKey(s.ID))
C.Skills.Add(s.ID, s);
if (s.ID == 3060)
C.CanReflect = true;
6- abre o characters.cs
7- procura isto
Código:
public byte BlueNameLasts;
8- por debaixo do codigo adiciona isto
Código:
public bool CanReflect = false;
9 -procura no character.cs este codigo
Código:
public void TakeAttack(Mob Attacker, uint Damage, AttackType AT)
10- dentro deste codigo tens este aqui que esta um bocadinho mais a baixo
Código:
Buff B = BuffOf(SkillsClass.ExtraEffect.Scapegoat);
RemoveBuff(B);
uint Dmg = (uint)(PrepareAttack(2, false) * B.Value);
Attacker.TakeAttack(this, ref Dmg, AttackType.Scapegoat, false);
return;//Will not be damaged
por debaixo desse codigo metes este
Código:
if (CanReflect)
{
if (MyMath.ChanceSuccess(20))
{
Attacker.GetReflect(ref Damage, AT);

MyClient.AddSend(Packets.String(EntityID, 10, "MagicReflect"));
foreach (DictionaryEntry DE in Game.World.H_Chars)
{
Game.Character Chaar = (Game.Character)DE.Value;
if (Chaar.Name != MyClient.MyChar.Name)
{

Chaar.MyClient.AddSend(Packets.String(EntityID, 10, "MagicReflect"));

}
}
if (Protection) Damage = 0;
return;
}
}
11- procura no characters.cs este codigo
Código:
public void TakeAttack(Character Attacker, uint Damage, AttackType AT, bool IsSkill)
12- por cima do codigo adiciona isto
Código:
public void GetReflect(ref uint Damage, AttackType AT)
{
if (Damage < CurHP)
{
CurHP -= (ushort)Damage;

World.Action(this, Packets.AttackPacket(EntityID, EntityID, Loc.X, Loc.Y, Damage, (byte)AT).Get);
}
else
{
InitAngry(true);
AtkMem.Attacking = false;
AtkMem.Target = 0;
AtkMem.Attacking = false;
AtkMem.Target = 0;

if (!World.FreePKMaps.Contains(Loc.Map))

Alive = false;
CurHP = 0;

// World.Action(this, Packets.AttackPacket(EntityID, EntityID, Loc.X, Loc.Y, Damage, (byte)AT).Get);
World.Action(this, Packets.AttackPacket(EntityID, EntityID, Loc.X, Loc.Y, Damage, (byte)AttackType.Kill).Get);

StatEff.Remove(StatusEffectEn.Cyclone);
StatEff.Remove(StatusEffectEn.FatalStrike);
StatEff.Remove(StatusEffectEn.BlueName);
StatEff.Remove(StatusEffectEn.Flashy);
StatEff.Remove(StatusEffectEn.ShurikenVortex);
BlueName = false;
StatEff.Remove(StatusEffectEn.SuperMan);
StatEff.Remove(StatusEffectEn.XPStart);
StatEff.Remove(StatusEffectEn.Ride);
StatEff.Add(StatusEffectEn.Dead);
DeathHit = DateTime.Now;
}
}
dps por debaixo deste codigo
Código:
public void TakeAttack(Character Attacker, uint Damage, AttackType AT, bool IsSkill)
procura este codigo la
Código:
if (BuffOf(SkillsClass.ExtraEffect.Scapegoat).Eff == SkillsClass.ExtraEffect.Scapegoat && MyMath.ChanceSuccess(5))
e por cima dele metes este codigo
Código:
if (CanReflect)
{
if (MyMath.ChanceSuccess(25))
{
http://Attacker.GetReflect(ref Damage, AT);


MyClient.AddSend(Packets.String(EntityID, 10, "MagicReflect"));
foreach (DictionaryEntry DE in Game.World.H_Chars)
{
Game.Character Chaar = (Game.Character)DE.Value;
if (Chaar.Name != MyClient.MyChar.Name)
{


Chaar.MyClient.AddSend(Packets.String(EntityID, 10, "MagicReflect"));

}
}
Damage = 0;
return;
}
}
13 Agora vai ao mobs.cs e procura este codigo

Código:
public void TakeAttack(Mob Attacker, uint Damage, AttackType AT)

por cima dele metes isto.

Código:
public void GetReflect(ref uint Damage, AttackType AT)
{
if (Damage < CurrentHP)
{
CurrentHP -= Damage;
World.Action(this, Packets.AttackPacket(EntityID, EntityID, Loc.X, Loc.Y, Damage, (byte)AT).Get);
}
else
{
Alive = false;
uint Benefit = CurrentHP;
CurrentHP = 0;
PoisonedInfo = null;
Died = DateTime.Now;

World.Action(this, Packets.AttackPacket(EntityID, EntityID, Loc.X, Loc.Y, Damage, (byte)AttackType.Kill).Get);

World.Action(this, Packets.Status(EntityID, Status.Effect, 2080).Get);
}
}
e ja esta ficas com o reflect no server...
Caso de esse erro tens o navicat mal configurado ou pega noutra db
Código:

[font=Courier New][Err] 1064 - You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARSET=utf8' at line 5
[Err] CREATE TABLE `nobility` (
  `charuid` int(36) NOT NULL default '0',
  `Name` varchar(255) NOT NULL default 'None',
  `donation` int(36) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
[Err] 1146 - Table 'coSXserver.nobility' doesn't exist
[Err] -- ----------------------------
-- Records of nobility
-- ----------------------------
INSERT INTO `nobility` VALUES ('0', 'None', '0');
[Err] 1064 - You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARSET=latin1' at line 6
[Err] CREATE TABLE `skills` (
  `CharID` int(11) NOT NULL default '0',
  `SkillID` int(11) NOT NULL default '0',
  `SkillLevel` int(11) NOT NULL default '0',
  `SkillExp` int(11) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
[Msg] Finished - Unsuccessfully[/font]

Creditos: Ramix

_________________________________________________


Sing






Cdubb
Admin
Admin

Mensagens : 1262
Data de inscrição : 06/05/2010
Idade : 25
Especialidade : TQ Binary, Web Sites, Desing, Photo Shop

http://www.orkut.com.br/Main#Community?cmm=103811536

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum