SHOW:
|
|
- or go back to the newest paste.
1 | private void JumpAction() | |
2 | { | |
3 | if (Time32.Now >= Original.Entity.DeathStamp.AddSeconds(20) && Original.Entity.Dead) | |
4 | { | |
5 | Original.Entity.BringToLife(); | |
6 | num = 0; | |
7 | return; | |
8 | } | |
9 | if ((Original.Entity.Dead) && (num == 0)) | |
10 | { | |
11 | Original.Entity.Die(Original.Entity); | |
12 | num = 1; | |
13 | return; | |
14 | } | |
15 | bool CanFB = true; | |
16 | Original.Entity.Action = 0; | |
17 | uint num9 = 0; | |
18 | skills spell = null; | |
19 | if (Original.Entity.Action != PlayerAction.Sit) | |
20 | { | |
21 | if (Count_AISkills >= 2) | |
22 | { | |
23 | num9 = (uint)Drivers.Extensions.Random.Next(1, (int)Math.Max(1, Count_AISkills)); | |
24 | spell = AISkills[num9]; | |
25 | } | |
26 | } | |
27 | ||
28 | if (Original.Entity.Stamina < SpellTable.SpellInformations[spell.ID][spell.Level].UsePP && Original.Entity.Action != PlayerAction.Sit) | |
29 | { | |
30 | SitAt = DateTime.Now; | |
31 | Original.Entity.Action = PlayerAction.Sit; | |
32 | var buffer = new MsgAction(true) | |
33 | { | |
34 | UID = Original.Entity.UID, | |
35 | dwParam = (uint)Original.Entity.Action | |
36 | }; | |
37 | Original.Entity.SendScreen(buffer); | |
38 | ||
39 | Original.SendScreenSpawn(Original.Entity, true); | |
40 | Target.Owner.SendScreenSpawn(Original.Entity, true); | |
41 | return; | |
42 | } | |
43 | if (Time32.Now >= LastBotJump.AddMilliseconds(JumpSpeed)) | |
44 | { | |
45 | if (Target == null || Original.Entity.Dead || Target.Dead) | |
46 | return; | |
47 | ||
48 | if (Kernel.GetDistance(Original.Entity.X, Original.Entity.Y, Target.X, Target.Y) > 18) | |
49 | { | |
50 | Direction angle = Kernel.GetFacing(Kernel.GetAnglex(Original.Entity.X, Original.Entity.Y, Target.X, Target.Y)); | |
51 | ushort size = (ushort)Kernel.GetDistance(Target.X, Target.Y, Original.Entity.X, Original.Entity.Y); | |
52 | - | size /= 2; |
52 | + | //size /= 2; |
53 | CanFB = false; | |
54 | LastBotJump = Time32.Now; | |
55 | Jump(size, angle,Target.X,Target.Y);// that's will let the bot jump high than 18 pec just make the reset time higher .. | |
56 | } | |
57 | else | |
58 | { | |
59 | ushort size = (ushort)Drivers.Extensions.Random.Next(10); | |
60 | Direction angle = (Direction)Drivers.Extensions.Random.Next(8); | |
61 | LastBotJump = Time32.Now; | |
62 | Jump(size, angle); | |
63 | } | |
64 | if (!Original.Attackable) | |
65 | Original.Attackable = true; | |
66 | } | |
67 | ||
68 | if (DateTime.Now >= LastBotAttack.AddMilliseconds(1000) && Original.Entity.Stamina > SpellTable.SpellInformations[spell.ID][spell.Level].UsePP) | |
69 | { | |
70 | if (Target == null || Original.Entity.Dead || Target.Dead) | |
71 | return; | |
72 | if (Kernel.ChanceSuccess(ShootChance) && CanFB) | |
73 | { | |
74 | if (Kernel.GetDistance(Original.Entity.X, Original.Entity.Y, Target.X, Target.Y) <= SpellTable.SpellInformations[spell.ID][spell.Level].Distance) | |
75 | { | |
76 | Shoot(Accuracy, spell); | |
77 | } | |
78 | } | |
79 | } | |
80 | } |