COMPARTILHADO CONHECIMENTO


Você não está conectado. Conecte-se ou registre-se

Pounce 100% FIXO

Ir em baixo  Mensagem [Página 1 de 1]

1 Pounce 100% FIXO em Ter Mar 14, 2017 6:17 pm

iRoshan

avatar
Membro
Membro
Para o Navicat
Código:
Código:
INSERT
 INTO `spells` VALUES ('12770', '12770', '0084', 'Pounce', '1', '1',
'0', '0004', '0000', '0000', '30030', '0000', '0100', '0000', '0005',
'0020', '0000', '0000', '500', '3000', '60', '0900', '0000', '0',
'0000', '0', '0000', '0', '0000', '0', '0000', '0000', '0000', '0001');  
  
INSERT INTO `spells` VALUES ('12771', '12770', '0084', 'Pounce',
'1', '1', '0', '0004', '0001', '0000', '30035', '0000', '0100', '0000',
'0005', '0020', '0000', '0000', '1000', '6000', '70', '0900', '0000',
'0', '0000', '0', '0000', '0', '0000', '0', '0000', '0000', '0000',
'0001');    
INSERT INTO `spells` VALUES ('12772', '12770', '0084',
'Pounce', '1', '1', '0', '0004', '0002', '0000', '30040', '0000',
'0100', '0000', '0005', '0020', '0000', '0000', '10000', '10000', '80',
'0900', '0000', '0', '0000', '0', '0000', '0', '0000', '0', '0000',
'0000', '0000', '0001');    
INSERT INTO `spells` VALUES ('12773',
'12770', '0084', 'Pounce', '1', '1', '0', '0004', '0003', '0000',
'30045', '0000', '0100', '0000', '0005', '0020', '0000', '0000',
'50000', '50000', '90', '0900', '0000', '0', '0000', '0', '0000', '0',
'0000', '0', '0000', '0000', '0000', '0001');    
INSERT INTO
`spells` VALUES ('12774', '12770', '0084', 'Pounce', '1', '1', '0',
'0004', '0004', '0000', '30050', '0000', '0100', '0000', '0005', '0020',
 '0000', '0000', '100000', '100000', '100', '0900', '0000', '0', '0000',
 '0', '0000', '0', '0000', '0', '0000', '0000', '0000', '0001');    
INSERT
 INTO `spells` VALUES ('12775', '12770', '0084', 'Pounce', '1', '1',
'0', '0004', '0005', '0000', '30055', '0000', '0100', '0000', '0005',
'0020', '0000', '0000', '500000', '150000', '110', '0900', '0000', '0',
'0000', '0', '0000', '0', '0000', '0', '0000', '0000', '0000', '0001');  
  
INSERT INTO `spells` VALUES ('12776', '12770', '0084', 'Pounce',
'1', '1', '0', '0004', '0006', '0000', '30060', '0000', '0100', '0000',
'0005', '0020', '0000', '0000', '0', '0000', '0', '0900', '0000', '0',
'0000', '0', '0000', '0', '0000', '0', '0000', '0000', '0000', '0001');

Para Handle.cs
Código:
Código:
#region Pounce
                                case 12770:
                                    {
                                        if (CanUseSpell(spell, attacker.Owner))
                                        {
                                            PrepareSpell(spell, attacker.Owner);
                                            SpellUse suse = new SpellUse(true);
                                            suse.Attacker = attacker.UID;
                                            suse.SpellID = spell.ID;
                                            //suse.SpellLevelHu = client_Spell.LevelHu2;
                                            suse.SpellLevel = spell.Level;
                                            ushort _X = attacker.X, _Y = attacker.Y;
                                            ushort _tX = X, _tY = Y;
                                            UInt16 ox, oy;
                                            ox = attacker.X;
                                            oy = attacker.Y;
                                            byte dist = (byte)spell.Distance;
                                            var Array = attacker.Owner.Screen.Objects;
                                            InLineAlgorithm algo = new InLineAlgorithm(attacker.X, X, attacker.Y, Y, dist,
                                                                               InLineAlgorithm.Algorithm.DDA);
                                            X = attacker.X;
                                            Y = attacker.Y;
                                            int i = 0;
                                            for (i = 0; i < algo.lcoords.Count; i++)
                                            {
  
                                              if
(attacker.Owner.Map.Floor[algo.lcoords[i].X, algo.lcoords[i].Y,
MapObjectType.Player]
                                                    && !attacker.ThroughGate(algo.lcoords[i].X, algo.lcoords[i].Y))
                                                {
                                                    X = (ushort)algo.lcoords[i].X;
                                                    Y = (ushort)algo.lcoords[i].Y;
                                                }
                                                else
                                                {
                                                    break;
                                                }
                                            }
                                            suse.X = X;
                                            suse.Y = Y;
                                            if (!attacker.Owner.Map.Floor[X, Y, MapObjectType.Player, null])
                                                return;
                                            double disth = 1.5;
                                            if (attacker.MapID == DeathMatch.MAPID) disth = 1;
                                            foreach (Interfaces.IMapObject _obj in Array)
                                            {
                                                bool hit = false;
                                                for (int j = 0; j < i; j++)
  
                                                  if
(Kernel.GetDDistance(_obj.X, _obj.Y, (ushort)algo.lcoords[j].X,
(ushort)algo.lcoords[j].Y) <= disth)
                                                        hit = true;
                                                if (hit)
                                                {
                                                    if (_obj.MapObjType == MapObjectType.Monster)
                                                    {
                                                        attacked = _obj as Entity;
  
                                                      if
(CanAttack(attacker, attacked, spell, attack.AttackType ==
Attack.Melee))
                                                        {
  
                                                          var damage =
Game.Attacking.Calculate.Melee(attacker, attacked, spell, ref attack,
client_Spell.LevelHu2);
                                                            damage = (uint)(damage * 0.9);
                                                            ReceiveAttack(attacker, attacked, attack, ref damage, spell);

                                                            suse.AddTarget(attacked, damage, attack);
                                                        }
                                                    }
                                                    else if (_obj.MapObjType == MapObjectType.Player)
                                                    {
                                                        attacked = _obj as Entity;
  
                                                      if
(CanAttack(attacker, attacked, spell, attack.AttackType ==
Attack.Melee))
                                                        {
  
                                                          var damage =
Game.Attacking.Calculate.Melee(attacker, attacked, ref attack,
client_Spell.LevelHu2);
                                                            damage = (uint)(damage * 0.6);
                                                            ReceiveAttack(attacker, attacked, attack, ref damage, spell);

                                                            suse.AddTarget(attacked, damage, attack);
                                                        }
                                                    }
                                                    else if (_obj.MapObjType == MapObjectType.SobNpc)
                                                    {
                                                        attackedsob = _obj as SobNpcSpawn;
                                                        if (CanAttack(attacker, attackedsob, spell))
                                                        {
  
                                                          var damage =
Game.Attacking.Calculate.Melee(attacker, attackedsob, ref attack);

                                                            ReceiveAttack(attacker, attackedsob, attack, damage, spell);

                                                            suse.AddTarget(attackedsob, damage, attack);
                                                        }
                                                    }
                                                }
                                            }
                                            attacker.PX = attacker.X;
                                            attacker.PY = attacker.Y;
                                            attacker.X = X;
                                            attacker.Y = Y;
                                            attacker.Owner.SendScreen(suse, true);
                                            attacker.Owner.Screen.Reload(suse);
                                        }
                                        break;
                                    }
                                #endregion  

Downloads:
[Você precisa estar registrado e conectado para ver este link.]


_________________
"A pior coisa que eu posso ser é igual a todo mundo. Eu odeio isso."

Arnold Schwarzenegger
Ver perfil do usuário

Voltar ao Topo  Mensagem [Página 1 de 1]

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