View difference between Paste ID: sXdMQiDk and 1Gdzmb0V
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