Bueno, no puedo darte un mapa pero si explicarte con el codigo GUI que acabo de crear (jsjsjs) como va todo mas o menos
En primer lugar, necesitas estas variables globales (los nombres son los que yo le puse en el codigo, pero tu les puedes poner los que quieras):
- Inv_timer: (de Invulnerability_timer xd) es la variable que te va a permitir ese lapso de tiempo entre un período y otro de invulnerabilidad
- Unidad_objetivo: es la únidad que tendrá el objeto, la que será invulnerable cada 15 segundos.
Además, debes tener en cuenta que al objeto que vuelve invulnerable le he puesto "Orbe de invulnerabilidad", sin habilidades pero con la propiedad Perecedero en False y la de Utilizado activamente en True. Y una habilidad personalizada, llamada "Inmortalidad temporal", que no va a ser del objeto sino que se la vamos a dar a la unidad mediante detonadores. Importante que esta habilidad sea pasiva (puedes coger el Aura de devoción y quitarle el efecto de la armadura y demás y ponerle de Conjuro benéfico algo como Inmortalidad, como hice yo)
Bien, hacen falta dos detonadores, uno para cuando recoge el objeto, y el otro ya sería el de volverlo invulnerable por 1 segundo:
El primero:
[gui]Adquiere objeto
Acontecimientos
Unidad - A unit Adquiere un objeto
Condiciones
(Item-type of (Item being manipulated)) Igual a (==) Orbe de invulnerabilidad
Acciones
Set Unidad_objetivo = (Hero manipulating item)
Cuenta atrás del reloj - Start Inv_timer as a Un tiro timer that will expire in 15.00 seconds //aquí iniciamos el timer
[/gui]
Luego el otro, para volverlo invulnerable cuando el timer se acaba:
[gui]Inmortal
Acontecimientos
Tiempo - Inv_timer expires
Condiciones
(Unidad_objetivo has an item of type Orbe de invulnerabilidad) Igual a (==) True
Acciones
Unidad - Add Inmortalidad temporal to Unidad_objetivo
Unidad - Make Unidad_objetivo Invulnerable
Wait 1.00 seconds
Unidad - Remove Inmortalidad temporal from Unidad_objetivo
Unidad - Make Unidad_objetivo Vulnerable
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si: Condiciones
(Unidad_objetivo has an item of type Orbe de invulnerabilidad) Igual a (==) True
Entonces: Acciones
Cuenta atrás del reloj - Start Inv_timer as a Un tiro timer that will expire in 15.00 seconds
Otros: Acciones
[/gui]
La pega con esto es que se le añadiría la habilidad pasiva a la parte de habilidades de la unidad (aunque si el cuadro no tiene espacio se sigue añadiendo pero no se muestra) Pero como la habilidad es pasiva, no creo que influya mucho. En realidad, no es necesario por esta vía añadirle la habilidad, pero bueno, como tu querías que se viera el efecto como una pasiva... En realidad, lo único necesario para hacerla invulnerable o vulnerable es con la acción "Unidad - Make Vulnerable/Invulnerable"