SHOW:
|
|
- or go back to the newest paste.
1 | --[[ | |
2 | Ryze Combo/Burst/W.R first combo (TRUS v1.7d), ('AA and cast W/Ult in combo' made by xkjtx) | |
3 | - | Combo hot-key = letter 'V' |
3 | + | Combo hot-key = letter 'G' |
4 | Burst hot-key = Space bar | |
5 | 'W' combo with R(toggle) = letter 'S' | |
6 | With moving to target(AA the target) while holding Spacebar or X only!... | |
7 | - | Move To Mouse while attack - Harass/W first combo!... |
7 | + | Move To Mouse while attack - While holding W/r combo key Ryze will move to mouse and AA target(only in target range)!... |
8 | - | Move hot key Off/On toggle - will move to mouse while on... |
8 | + | Move hot key Off/On toggle - letter 'V' will move to mouse while on... |
9 | - | Ult After W combo (Toggle Ult key = X) (W cast first will cast spells W-R(if toggled on)-Q-E) |
9 | + | Ult After W combo (Toggle Ult key = X) (W cast first will cast spells W-R(if toggled on)-Q-E)... |
10 | ||
11 | ::Ranges:: | |
12 | -- Redish(Attack Range) alwasy on | |
13 | -- Blueish(Q Range) only on when off CD | |
14 | -- Greenish(W Range) only on when off CD | |
15 | -- Yellowish(real E range) only on when off CD | |
16 | ]]-- | |
17 | ||
18 | if myHero.charName ~= "Ryze" then return end | |
19 | ||
20 | local realeRange = 700 -- real only for the range | |
21 | local qRange = 650 | |
22 | local wRange = 625 | |
23 | local eRange = 649 -- Real range is 675 -- lowered so E will cast after Q | |
24 | local rRange = 651-- Higher if you want it on earlyer | |
25 | local lastcast = _E -- Less ugly now | |
26 | ||
27 | local startAttackSpeed = 0.625 | |
28 | local lastBasicAttack = 0 | |
29 | local swingDelay = 0.15 | |
30 | local swing = 0 | |
31 | local nextTick = 0 | |
32 | local waitDelay = 400 | |
33 | ||
34 | local ts | |
35 | ||
36 | --[[ Hot - keys ]] | |
37 | ||
38 | local hotMove = string.byte("V") -- 86 -- v | |
39 | local hotRotate = string.byte("G") -- 71 -- G | |
40 | local hotBurst = 32 -- Space Bar | |
41 | local hotWonly = string.byte("S") -- 83 -- S | |
42 | local hotUlt = string.byte("X") -- 88 -- X | |
43 | ||
44 | function OnLoad() | |
45 | PrintFloatText(myHero,10,"Ryze Spammer v1.7d By TRUS - modded by xkjtx!") | |
46 | DCConfig = scriptConfig("Ryze Combo v1.7d", "ryze-xkjtx-aa-in-combos-w-with-r") | |
47 | DCConfig:addParam("scriptActive", "Rotation", SCRIPT_PARAM_ONKEYDOWN, false, hotRotate) -- G | |
48 | DCConfig:addParam("burstActive", "Burst", SCRIPT_PARAM_ONKEYDOWN, false, hotBurst) -- Space | |
49 | - | DCConfig:addParam("WonlyActive", "W combo", SCRIPT_PARAM_ONKEYDOWN, false, hotWonly) -- S |
49 | + | DCConfig:addParam("WonlyActive", "W/r combo", SCRIPT_PARAM_ONKEYDOWN, false, hotWonly) -- S |
50 | DCConfig:addParam("UltActive", "Ult In W combo", SCRIPT_PARAM_ONKEYTOGGLE, false, hotUlt) -- X -- Off by default( So you can harass early game :) ) | |
51 | DCConfig:addParam("drawcircles", "Draw Circles", SCRIPT_PARAM_ONOFF, true) | |
52 | DCConfig:addParam("AllClass", "All class library", SCRIPT_PARAM_ONOFF, false) | |
53 | - | DCConfig:addParam("MoveToMouse", "Move and AA in W combo", SCRIPT_PARAM_ONOFF, true) -- This will AA and move while 'W combo' hot-key is pressed |
53 | + | DCConfig:addParam("MoveToMouse", "Move and AA in W combo", SCRIPT_PARAM_ONOFF, true) -- This will AA and move while 'W combo' hot-key is pressed(only in target range) |
54 | - | DCConfig:addParam("MoveHotKey", "Move to Mouse: Hot Key", SCRIPT_PARAM_ONKEYTOGGLE, false, hotMove) -- V -- Off by default(turn on in game with hot key) |
54 | + | DCConfig:addParam("MoveHotKey", "Move to Mouse: Hot Key toggle", SCRIPT_PARAM_ONKEYTOGGLE, false, hotMove) -- V -- Off by default(turn on in game with hot key) |
55 | DCConfig:permaShow("scriptActive") | |
56 | DCConfig:permaShow("burstActive") | |
57 | DCConfig:permaShow("WonlyActive") | |
58 | DCConfig:permaShow("UltActive") | |
59 | DCConfig:permaShow("MoveToMouse") | |
60 | DCConfig:permaShow("MoveHotKey") | |
61 | ts = TargetSelector(TARGET_LOW_HP,wRange+500,DAMAGE_MAGIC,true) -- so you can select target and focus | |
62 | ts.name = "Ryze" | |
63 | DCConfig:addTS(ts) | |
64 | lastBasicAttack = os.clock() | |
65 | end | |
66 | ||
67 | function doSpell(ts, spell, range) | |
68 | if ts.target ~= nil and GetMyHero():CanUseSpell(spell) == READY then | |
69 | CastSpell(spell, ts.target) | |
70 | end | |
71 | end | |
72 | ||
73 | function OnWndMsg(msg,key) | |
74 | if not DCConfig.scriptActive and not DCConfig.burstActive and not DCConfig.WonlyActive then lastcast = _E end | |
75 | end | |
76 | ||
77 | function OnProcessSpell(unit, spell) | |
78 | if unit.isMe and (spell.name:find("Attack") ~= nil) then | |
79 | swing = 1 | |
80 | lastBasicAttack = os.clock() | |
81 | end | |
82 | end | |
83 | ||
84 | function OnTick() | |
85 | ts:update() | |
86 | ||
87 | if not myHero.dead and DCConfig.MoveHotKey then | |
88 | player:MoveTo(mousePos.x, mousePos.z) -- move to mouse(will not AA while moving, but will cast all spells if combo key pressed) | |
89 | end-- messes with auto attack | |
90 | if not myHero.dead and ts.target ~= nil then | |
91 | AttackDelay = 1/(myHero.attackSpeed*startAttackSpeed) -- 1/(myHero.attackSpeed*startAttackSpeed) -- Trying something new -- (1000/(myHero.attackSpeed/(1/startAttackSpeed)))/1000 | |
92 | if swing == 1 and os.clock() > lastBasicAttack + AttackDelay then | |
93 | swing = 0 | |
94 | end | |
95 | if DCConfig.scriptActive or DCConfig.burstActive and swing == 0 then | |
96 | if ts.target ~= nil and GetDistance(ts.target) < qRange+250 then | |
97 | myHero:Attack(ts.target) | |
98 | end | |
99 | end | |
100 | end | |
101 | if not myHero.dead and DCConfig.WonlyActive and ts ~= nil then | |
102 | if myHero:CanUseSpell(_W) == READY | |
103 | then | |
104 | doSpell(ts, _W, wRange) | |
105 | lastcast = _W | |
106 | elseif DCConfig.UltActive and ts.target ~= nil and myHero:CanUseSpell(_R) == READY and GetDistance(ts.target) <= rRange | |
107 | then | |
108 | doSpell(ts, _R, rRange) | |
109 | lastcast = _W | |
110 | elseif myHero:CanUseSpell(_Q) == READY | |
111 | then | |
112 | doSpell(ts, _Q, qRange) | |
113 | lastcast = _Q | |
114 | elseif myHero:CanUseSpell(_E) == READY | |
115 | then | |
116 | doSpell(ts, _E, eRange) | |
117 | lastcast = _E | |
118 | end | |
119 | if DCConfig.MoveToMouse and ts.target ~= nil then | |
120 | --[[ Auto Attacks ]]-- | |
121 | local tick = GetTickCount() | |
122 | if swing == 0 then | |
123 | if GetDistance(ts.target) < (rRange + 500) and GetTickCount() > nextTick then | |
124 | myHero:Attack(ts.target) | |
125 | nextTick = GetTickCount() + waitDelay | |
126 | end | |
127 | elseif swing == 1 and GetTickCount() > (nextTick + 100) then | |
128 | myHero:MoveTo(mousePos.x, mousePos.z) | |
129 | end | |
130 | end | |
131 | end | |
132 | if not myHero.dead and DCConfig.scriptActive and myHero.cdr < -0.35 and ts ~= nil then | |
133 | if myHero:CanUseSpell(_Q) == READY | |
134 | then | |
135 | doSpell(ts, _Q, qRange) | |
136 | lastcast = _Q | |
137 | elseif (lastcast == _Q or lastcast == _W) and myHero:CanUseSpell(_W) == READY | |
138 | then | |
139 | doSpell(ts, _W, wRange) | |
140 | lastcast = _W | |
141 | elseif (lastcast == _Q or lastcast == _E) and myHero:CanUseSpell(_E) == READY | |
142 | then | |
143 | doSpell(ts, _E, eRange) | |
144 | lastcast = _E | |
145 | end | |
146 | elseif (not myHero.dead and myHero.cdr >= -0.35 and DCConfig.scriptActive and ts ~= nil) or DCConfig.burstActive and ts ~= nil then | |
147 | if myHero:CanUseSpell(_Q) == READY | |
148 | then | |
149 | doSpell(ts, _Q, qRange) | |
150 | lastcast = _Q | |
151 | elseif (lastcast == _Q or lastcast == _W) and myHero:CanUseSpell(_W) == READY and ts ~= nil | |
152 | then | |
153 | doSpell(ts, _W, wRange) | |
154 | lastcast = _W | |
155 | elseif myHero:CanUseSpell(_E) == READY and myHero:CanUseSpell(_W) ~= READY and myHero:CanUseSpell(_Q) ~= READY and ts ~= nil | |
156 | then | |
157 | doSpell(ts, _E, eRange) | |
158 | lastcast = _E | |
159 | end | |
160 | end | |
161 | end | |
162 | ||
163 | function OnDraw() | |
164 | if not myHero.dead and DCConfig.drawcircles then | |
165 | DrawCircle(myHero.x, myHero.y, myHero.z, rRange, 0xFF0000) -- Redish(Attack Range) alwasy on | |
166 | if myHero:CanUseSpell(_Q) == READY then | |
167 | DrawCircle(myHero.x, myHero.y, myHero.z, qRange, 0x000099) -- Blueish(Q Range) only on when off CD | |
168 | end | |
169 | if myHero:CanUseSpell(_W) == READY then | |
170 | DrawCircle(myHero.x, myHero.y, myHero.z, wRange, 0x006600) -- Greenish(W Range) only on when off CD | |
171 | end | |
172 | if myHero:CanUseSpell(_E) == READY then | |
173 | DrawCircle(myHero.x, myHero.y, myHero.z, realeRange, 0xFFCC00) -- Yellowish(real E range) only on when off CD | |
174 | end | |
175 | if ts ~= nil and ts.target ~= nil then | |
176 | for j=0, 10 do | |
177 | DrawCircle(ts.target.x, ts.target.y, ts.target.z, 40 + j*1.5, 0x660066) -- purpleish -- changed from 0x00FF00 | |
178 | end | |
179 | end | |
180 | end | |
181 | end | |
182 | ||
183 | function OnSendChat(msg) | |
184 | ts:OnSendChat(msg, "pri") | |
185 | end |