Foro especializado en Warcraft III y su editor
 
BuscarEntrar al ChatboxPortal del foroÍndiceSpellsRegistrarseConectarse
Eventos Actuales
¡ Bienvenido Invitado !

Editar Perfil

Tus temas
Tus Mensajes ()

Enlaces rápidos








Comparte
 

 GroupIterator

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
Ruke

Ruke


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 298
Reputación Reputación : 64
Monedas de oro : 1678
Monedas de Platino : 0 GroupIterator Empty

Inventario :
GroupIterator Empysl10 GroupIterator Empysl10 GroupIterator Empysl10
GroupIterator Empysl10 GroupIterator Empysl10 GroupIterator Empysl10

GroupIterator Empty
Mensaje(#) Tema: GroupIterator GroupIterator Clock10Jue Mar 13, 2014 6:18 pm

GroupIterator hace uso de la ya conocida forma de iterar sobre los grupos "FirstOfGroup". La idea de esta utilidad es simplificar este proceso y ademas, agregar un par de filtros extras que vienen muy bien cuando se estan haciendo habilidades.
Como se sabe, FirstOfGroup remueve todas las unidades del grupo, por lo que se ha agregado un metodo para poder guardar las unidades que se quiera en un grupo externo.

Codigo
Spoiler:
 

Ejemplos
[jass]local group oldGroup = CreateGroup()
local group newGroup = CreateGroup()
local GroupIterator iterator = GroupIterator.create(oldGroup)

call CreateUnit(Player(0), 'Hpal', 0, 0, 0)
call CreateUnit(Player(0), 'hfoo', 0, 0, 0)

call GroupEnumUnitsInRange(oldGroup, 0, 0, 300, null)

loop
set iterator = iterator.next
exitwhen iterator == 0

// Guardamos al paladin en el nuevo grupo
if ( GetUnitTypeId(iterator.unit) == 'Hpal' ) then
call iterator.save(newGroup)
endif

call BJDebugMsg(GetUnitName(iterator.unit))
endloop[/jass]

[jass]local GroupIterator iterator

call CreateUnit(Player(0), 'Hpal', 0, 0, 0)
call CreateUnit(Player(0), 'Hpal', 0, 0, 0)
call CreateUnit(Player(0), 'hfoo', 0, 0, 0)

set iterator = GroupIterator.createFromCoords(0, 0, 999999) // Obtener todas las unidades en Loc(0, 0) en un radio de 999...
set iterator.unitTypeId = 'Hpal' // Solo Paladines

loop
set iterator = iterator.next
exitwhen iterator == 0

call BJDebugMsg(GetUnitName(iterator.unit))
endloop[/jass]

Filtros

  • [ljass]integer unitTypeId[/ljass] -> Ejemplo: [ljass]'hfoo'[/ljass] (solo Footman)
  • [ljass]boolean onlyIllusions[/ljass] -> Solo ilusiones
  • [ljass]boolean onlyHeroes[/ljass] -> Solo heroes
  • [ljass]player onlyEnemiesOfPlayer[/ljass] -> Solo enemigos del jugador X
  • [ljass]player onlyAlliesOfPlayer[/ljass] -> Solo aliados del jugador X
  • [ljass]player onlyOwnerByPlayer[/ljass] -> Solo unidades controladas por el jugador X
  • [ljass]real lifeGreaterThan[/ljass] -> Solo unidades con vida mayor a X
  • [ljass]real lifeLowerThan[/ljass] -> Solo unidades con vida menor a X
  • [ljass]real lifeEqualTo[/ljass] -> Solo unidades con vida igual a X
  • [ljass]integer max[/ljass] -> Solamente enumerar X unidades


Saludos.
Volver arriba Ir abajo
Trigger.edge

Trigger.edge


Barra de Salud : Este usuario es invulnerable ¿Será que es fiel a las normas?

Mensajes Mensajes : 978
Reputación Reputación : 111
Monedas de oro : 1245
Monedas de Platino : 0 GroupIterator Empty

Inventario :
Cetro del Rey Armadura Mágica Daga Mística
GroupIterator Empysl10 GroupIterator Empysl10 GroupIterator Empysl10

GroupIterator Empty
Mensaje(#) Tema: Re: GroupIterator GroupIterator Clock10Jue Mar 13, 2014 7:26 pm

Eres mi idolo desde que me ayudaste con tu mapa "naruto wars" en foros anteriores.... Me ha servido como base para aprender un poco (o mucho) de vJass, cosa que se agradece mucho.

[Descargando libreria Smile]


GroupIterator Wc3scr10
Volver arriba Ir abajo
Ruke

Ruke


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 298
Reputación Reputación : 64
Monedas de oro : 1678
Monedas de Platino : 0 GroupIterator Empty

Inventario :
GroupIterator Empysl10 GroupIterator Empysl10 GroupIterator Empysl10
GroupIterator Empysl10 GroupIterator Empysl10 GroupIterator Empysl10

GroupIterator Empty
Mensaje(#) Tema: Re: GroupIterator GroupIterator Clock10Jue Mar 13, 2014 7:47 pm

xD, que bueno que te haya sido de utilidad Smile.
Volver arriba Ir abajo
Contenido patrocinado




GroupIterator Empty
Mensaje(#) Tema: Re: GroupIterator GroupIterator Clock10

Volver arriba Ir abajo
 

GroupIterator

Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 1.

Permisos de este foro:No puedes responder a temas en este foro.
Warcraft III - WorldEditor :: Aportes :: Librerías-