Funções de Monstro¶
gObjAddMonster(map)¶
Aloca um novo objeto de monstro no mapa fornecido. Retorna o índice do objeto ou -1.
gObjSpawnMonster(monsterClass, map, x, y)¶
Spawna um monstro totalmente inicializado nas coordenadas fornecidas. Cria uma entrada MONSTER_SET_BASE_INFO.
- Retorna:
number— índice do objeto, ou -1 em caso de falha
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)¶
Define a posição de um monstro a partir dos dados MonsterSetBase.
gObjSetMonster(aIndex, monsterClass)¶
Inicializa um objeto de monstro com os dados de sua classe (atributos, IA, etc.).
gObjMonsterRegen(lpObj)¶
Dispara o respawn/regeneração do monstro.
gObjMonsterDie(lpObj, lpTarget)¶
Processa a morte do monstro (drops, experiência, etc.).
gObjMonsterDieGiveItem(lpObj, lpTarget)¶
Trata drops de itens na morte do monstro.
gObjMonsterAttack(lpObj, lpTarget)¶
Executa o ataque físico de um monstro em um alvo.
gObjMonsterMagicAttack(lpObj, skill, targetIndex)¶
Executa o ataque mágico de um monstro.
Rastreamento de Dano¶
| Função | Descrição |
|---|---|
gObjMonsterInitHitDamage(lpObj) |
Inicializa tabela de dano |
gObjMonsterResetHitDamage(lpObj) |
Reseta tabela de dano |
gObjMonsterSetHitDamage(lpObj, aIndex, damage) |
Registra dano, retorna acumulado |
gObjMonsterDelHitDamageUser(lpObj, aIndex) |
Remove um usuário do rastreamento |
gObjMonsterDelHitDamageUserCustom(lpObj, aIndex) |
Variante customizada de remoção |
gObjMonsterGetTopHitDamageUser(lpObj) |
Obtém índice do maior causador de dano |
gObjMonsterGetTopHitDamageUserCustom(lpObj) |
Variante customizada |
local accumulated = gObjMonsterSetHitDamage(boss, player.Index, 5000)
local topDealer = gObjMonsterGetTopHitDamageUser(boss)
gObjMonsterGetTopHitDamageParty(lpObj, partyNumber) / gObjMonsterGetTopHitDamagePartyCustom(lpObj, partyNumber)¶
Obtém o maior causador de dano e a quantidade de dano de um grupo.
- Retorna:
damage, topUserIndex(tupla)
local dmg, topIdx = gObjMonsterGetTopHitDamageParty(boss, player.PartyNumber)
LogAdd(LOG_BLUE, "Top party damage dealer: " .. topIdx .. " with " .. dmg)
IA e Comportamento de Monstros¶
| Função | Descrição |
|---|---|
gObjMonsterProcess(lpObj) |
Loop principal de processamento de IA do monstro |
gObjMonsterStateProc(lpObj) |
Processa máquina de estados do monstro |
gObjMonsterStateProcCase0(lpObj) |
Processa estado ocioso especificamente |
gObjMonsterMoveCheck(lpObj) |
Verifica se o monstro pode mover |
gObjMonsterMoveAction(lpObj) |
Executa movimento do monstro |
gObjMonsterBaseAct(lpObj) |
Comportamento base do monstro |
gObjMonsterSearchEnemy(lpObj) |
Busca inimigos no viewport |
gObjCheckMonsterSearchEnemy(lpObj) |
Valida resultados de busca de inimigos |
gObjGuardSearchEnemy(lpObj) |
Busca de inimigos por NPC guarda |
gObjMonsterGetTargetPos(lpObj) |
Obtém alvo de movimento do monstro |
gObjMonsterViewportIsCharacter(lpObj) |
Verifica se viewport tem personagens |
gObjIsBossMonster(aIndex) |
Verifica se o objeto é um chefe |
gObjMonsterSelectSkillForMedusa(lpObj) |
Seleção de habilidade do chefe Medusa |
Funções de Armadilha de Monstros¶
| Função | Descrição |
|---|---|
gObjMonsterTrapAct(lpObj) |
Executa comportamento de monstro armadilha |
gObjTrapAttackEnemySearchX(lpObj) |
Busca inimigos no eixo X |
gObjTrapAttackEnemySearchY(lpObj) |
Busca inimigos no eixo Y |
gObjTrapAttackEnemySearch(lpObj) |
Busca geral de inimigos de armadilha |
gObjTrapAttackEnemySearchRange(lpObj) |
Busca de armadilha baseada em alcance |
Ações Especiais de Monstros¶
| Função | Descrição |
|---|---|
gObjMonsterWeaknessAct(lpObj) |
Comportamento de debuff de fraqueza |
gObjMonsterInnovationAct(lpObj) |
Comportamento de buff de inovação |
gObjMonsterMagicFieldPoison(lpObj) |
Ataque de campo de veneno |
gObjMonsterMagicFieldChilling(lpObj) |
Ataque de campo de congelamento |
gObjMonsterMagicFieldBleeding(lpObj) |
Ataque de campo de sangramento |
gObjMonsterUnleashMarvelMainEnergy(lpObj) |
Liberação de energia do chefe Marvel |
Help