Jump to content
Sign in to follow this  
Milton

Shred/Ravage macro with startattack

Recommended Posts

Hey! How can I get startattacking into this macro for Shred/Ravage?

/script i=1;m=0;while(UnitBuff("player",i)~=nil) do if(strfind(UnitBuff("player",i),"Ability_Ambush")~=nil) then m=1; end;i=i+1;end; c=CastSpellByName; if(m==1) then c("Ravage");else c("Shred");end;

 

For Claw with startattacking I'm using

/cast Claw
/script if not IsCurrentAction(36) then UseAction(36) end;
 

And I have auto attack dragged out on slot 36 (down right corner).

How can I incorperate startattack into my shred?

Share this post


Link to post
Share on other sites

I dont think you can without having to double tap it?

Edited by Porta

Share this post


Link to post
Share on other sites
2 hours ago, Porta said:

I dont think you can without having to double tap it?

U miss the point. I know I have to double tap. But I want startattack in the shred macro.

Share this post


Link to post
Share on other sites

Did you try pasting the /script if not isCurrent.. after the shred/ravage macro? (You probably did but cant hurt to ask) 

Otherwise I wouldnt know, I bound the auto attack macro to T while ravage/shred is bound to R, which makes it super easy to spam whilst power shifting/after ravaging

 

Edited by Porta

Share this post


Link to post
Share on other sites
4 hours ago, Porta said:

Did you try pasting the /script if not isCurrent.. after the shred/ravage macro? (You probably did but cant hurt to ask) 

Otherwise I wouldnt know, I bound the auto attack macro to T while ravage/shred is bound to R, which makes it super easy to spam whilst power shifting/after ravaging

 

I tried 

/script i=1;m=0;while(UnitBuff("player",i)~=nil) do if(strfind(UnitBuff("player",i),"Ability_Ambush")~=nil) then m=1; end;i=i+1;end; c=CastSpellByName; if(m==1) then c("Ravage");else c("Shred");end; /script if not IsCurrentAction(36) then UseAction(36) end;

but I have 2x /script and I get an error message. If only I knew how to seperate the macros so the /script if not IsCurrentAction(36) then UseAction(36) end; gets placed well within.

Share this post


Link to post
Share on other sites

With this addon Castmodifier it would look something like this i think.
 

/cast [stealth, harm @target] Ravage; Shred

/cast !Attack

Edited by Prosax

Share this post


Link to post
Share on other sites
10 minutes ago, Prosax said:

With this addon Castmodifier it would look something like this i think.
 

/cast [stealth harm @target] Ravage; Shred

/cast !Attack

This addon looks like a gem, thx! Gonna try it out.

Share this post


Link to post
Share on other sites

I use this....I'm not sure if it is exactly what you want, but it casts an ability and then puts me into attack mode all with one press.

/run for z=1,172 do if IsAttackAction(z)then if not IsCurrentAction(z)then UseAction(z);end;end;end;
/cast Earth Shock

Share this post


Link to post
Share on other sites

/script i=1;m=0;while(UnitBuff("player",i)~=nil) do if(strfind(UnitBuff("player",i),"Ability_Ambush")~=nil) then m=1; end;i=i+1;end; c=CastSpellByName; if(m==1) then c("Ravage");else c("Shred");end;
/script if not IsCurrentAction(36) then UseAction(36) end;

This should work, you have to put 2 different lines, also "clicking" on attack action doesn't trigget GCD, it should run with one macro usage.

Also, you can use SuperMacro, then

/run if not buffed("Prowl") then cast("Shred()") else cast("Ravage()") end;

Why I used if not? SuperMacro puts on toolbar tooltip and icon from first cast("spell'), and I rather have shred icon.

Share this post


Link to post
Share on other sites
On 1/16/2017 at 3:48 PM, Milton said:

I tried 

/script i=1;m=0;while(UnitBuff("player",i)~=nil) do if(strfind(UnitBuff("player",i),"Ability_Ambush")~=nil) then m=1; end;i=i+1;end; c=CastSpellByName; if(m==1) then c("Ravage");else c("Shred");end; /script if not IsCurrentAction(36) then UseAction(36) end;

but I have 2x /script and I get an error message. If only I knew how to seperate the macros so the /script if not IsCurrentAction(36) then UseAction(36) end; gets placed well within.

This should work as you have written it. Just remove the second /script and it's valid code.

This is how the code looks when formatted for human use (and you can see why having a second /script won't work):
 

i=1;
m=0;
while(UnitBuff("player",i)~=nil) 
	do 
		if(strfind(UnitBuff("player",i),"Ability_Ambush")~=nil) then 
			m=1; 
		end;
		i=i+1;
	end; 
c=CastSpellByName;

if(m==1) then
	c("Ravage");

else 
	c("Shred");

end;

if not IsCurrentAction(36) then 
	UseAction(36) 
end;

 

Alternatively, as someone already suggested just use a 2nd line in the macro with the 2nd /script. Though it shouldn't have any difference.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×