Funciones de Monstruos¶
gObjAddMonster(map)¶
Asigna un nuevo objeto de monstruo en el mapa dado. Retorna el índice del objeto o -1.
gObjSpawnMonster(monsterClass, map, x, y)¶
Genera un monstruo completamente inicializado en las coordenadas dadas. Crea una entrada MONSTER_SET_BASE_INFO.
- Retorna:
number— índice del objeto, o -1 en caso de fallo
local idx = gObjSpawnMonster(275, 0, 130, 130) -- Spawn monster 275 at Lorencia
if idx >= 0 then
LogAdd(LOG_GREEN, "Monster spawned at index " .. idx)
end
gObjSetPosMonster(aIndex, map, posNumber)¶
Establece la posición de un monstruo desde los datos de MonsterSetBase.
gObjSetMonster(aIndex, monsterClass)¶
Inicializa un objeto de monstruo con los datos de su clase (estadísticas, IA, etc.).
gObjMonsterRegen(lpObj)¶
Activa la reaparición/regeneración del monstruo.
gObjMonsterDie(lpObj, lpTarget)¶
Procesa la muerte del monstruo (drops, experiencia, etc.).
gObjMonsterDieGiveItem(lpObj, lpTarget)¶
Maneja los drops de items al morir el monstruo.
gObjMonsterAttack(lpObj, lpTarget)¶
Ejecuta el ataque físico de un monstruo sobre un objetivo.
gObjMonsterMagicAttack(lpObj, skill, targetIndex)¶
Ejecuta el ataque mágico de un monstruo.
Seguimiento de Daño Recibido¶
| Función | Descripción |
|---|---|
gObjMonsterInitHitDamage(lpObj) |
Inicializar tabla de daño recibido |
gObjMonsterResetHitDamage(lpObj) |
Reiniciar tabla de daño recibido |
gObjMonsterSetHitDamage(lpObj, aIndex, damage) |
Registrar daño, retorna acumulado |
gObjMonsterDelHitDamageUser(lpObj, aIndex) |
Eliminar un usuario del seguimiento |
gObjMonsterDelHitDamageUserCustom(lpObj, aIndex) |
Variante de eliminación personalizada |
gObjMonsterGetTopHitDamageUser(lpObj) |
Obtener índice del mayor dañador |
gObjMonsterGetTopHitDamageUserCustom(lpObj) |
Variante personalizada |
local accumulated = gObjMonsterSetHitDamage(boss, player.Index, 5000)
local topDealer = gObjMonsterGetTopHitDamageUser(boss)
gObjMonsterGetTopHitDamageParty(lpObj, partyNumber) / gObjMonsterGetTopHitDamagePartyCustom(lpObj, partyNumber)¶
Obtiene el mayor dañador y la cantidad de daño de un grupo.
- Retorna:
damage, topUserIndex(tupla)
local dmg, topIdx = gObjMonsterGetTopHitDamageParty(boss, player.PartyNumber)
LogAdd(LOG_BLUE, "Top party damage dealer: " .. topIdx .. " with " .. dmg)
IA y Comportamiento de Monstruos¶
| Función | Descripción |
|---|---|
gObjMonsterProcess(lpObj) |
Bucle principal de procesamiento de IA del monstruo |
gObjMonsterStateProc(lpObj) |
Procesar máquina de estados del monstruo |
gObjMonsterStateProcCase0(lpObj) |
Procesar estado inactivo específicamente |
gObjMonsterMoveCheck(lpObj) |
Verificar si el monstruo puede moverse |
gObjMonsterMoveAction(lpObj) |
Ejecutar movimiento del monstruo |
gObjMonsterBaseAct(lpObj) |
Comportamiento base del monstruo |
gObjMonsterSearchEnemy(lpObj) |
Buscar enemigos en el viewport |
gObjCheckMonsterSearchEnemy(lpObj) |
Validar resultados de búsqueda de enemigos |
gObjGuardSearchEnemy(lpObj) |
Búsqueda de enemigos del NPC guardia |
gObjMonsterGetTargetPos(lpObj) |
Obtener objetivo de movimiento del monstruo |
gObjMonsterViewportIsCharacter(lpObj) |
Verificar si el viewport tiene personajes |
gObjIsBossMonster(aIndex) |
Verificar si el objeto es un jefe |
gObjMonsterSelectSkillForMedusa(lpObj) |
Selección de habilidad del jefe Medusa |
Funciones de Trampa de Monstruos¶
| Función | Descripción |
|---|---|
gObjMonsterTrapAct(lpObj) |
Ejecutar comportamiento de monstruo trampa |
gObjTrapAttackEnemySearchX(lpObj) |
Buscar enemigos en eje X |
gObjTrapAttackEnemySearchY(lpObj) |
Buscar enemigos en eje Y |
gObjTrapAttackEnemySearch(lpObj) |
Búsqueda general de enemigos de trampa |
gObjTrapAttackEnemySearchRange(lpObj) |
Búsqueda de trampa basada en rango |
Acciones Especiales de Monstruos¶
| Función | Descripción |
|---|---|
gObjMonsterWeaknessAct(lpObj) |
Comportamiento de debuff de debilidad |
gObjMonsterInnovationAct(lpObj) |
Comportamiento de buff de innovación |
gObjMonsterMagicFieldPoison(lpObj) |
Ataque de campo de veneno |
gObjMonsterMagicFieldChilling(lpObj) |
Ataque de campo de frío |
gObjMonsterMagicFieldBleeding(lpObj) |
Ataque de campo de sangrado |
gObjMonsterUnleashMarvelMainEnergy(lpObj) |
Liberación de energía del jefe Marvel |
Help