Buenas, he creado esta macro:
#showtooltip Corteza de hierro
/use [@mouseover,help] Corteza de hierro
/script SendChatMessage(GetSpellLink(102342) … " on you!“,“whisper”,nil,GetUnitName(“mouseover”,1):gsub(” “,”",2))
Que lo que hace es mediante mouseover lanzar Corteza de hierro y whispear al objetivo (mouseover) que le he lanzado la habilidad.
La cosa es que si uso la macro varias veces mientras la habilidad está en CD, hace el whisp igualmente, por lo que quiero hacer esto:
#showtooltip Corteza de hierro
/use [@mouseover,help] Corteza de hierro
/script local b = false;
/script local start, duration, enable = GetSpellCooldown(“Corteza de hierro”);
/script if start == 0 then SendChatMessage(GetSpellLink(102342) … " on you!“,“whisper”,nil,GetUnitName(“mouseover”,1):gsub(” “,”",2))
De modo que solo whispee si la habilidad no está en CD.
Pero… Es demasiado largo para una macro (255 caracteres máximo). ¿Alguna solución? xD
Hola Tottemyc, tengo que reconocer que te lo has currado, lo has hecho al revés que la mayoría, tienes la parte complicada, que es el script pero se te ha pasado por alto un pequeño detalle que ha sido respondido mil y una veces en los foros…
Una macro no tiene forma de saber si una habilidad está en CD, y un script tampoco. Hace ya muchos años que no es posible hacer eso, lo siento pero tendrás que buscar otra manera de hacer lo que quieres.
Buenas, ya he conseguido hacerlo
/script local start, duration, enabled = GetSpellCooldown(102342); if start == 0 then SendChatMessage(GetSpellLink(102342) … " on you!“,“whisper”,nil,GetUnitName(“mouseover”,1):gsub(” “,”",2)) end
/cast [@mouseover,exists,help,nodead] Corteza de hierro
Ahora solo envía el mensaje si la habilidad no estaba en cooldown, de modo que si spammeas la habilidad cuando le queda 1 segundo de cd o si le das 3 o 4 veces para lanzarla, solo envía el mensaje una vez.
Saludos.
1 «Me gusta»