Funções de Invocação¶
Funções para gerenciar criaturas invocadas — usadas por classes como Dark Lord e Summoner.
gObjAddSummon()¶
Aloca um novo slot de objeto de invocação. Usa alocação de memória thread-safe.
- Parâmetros: Nenhum
- Retorna:
integer— Índice do objeto de invocação, ou-1em caso de falha.
local summonIndex = gObjAddSummon()
if summonIndex ~= -1 then
LogAdd(LOG_GREEN, "Summon allocated at index %d", summonIndex)
end
gObjSummonSetEnemy(lpObj, targetIndex)¶
Define um inimigo alvo para a invocação do jogador. A invocação atacará o alvo especificado.
- Parâmetros:
lpObj(GameObject): Objeto do jogador (dono da invocação).targetIndex(integer): Índice do objeto alvo.
- Retorna:
integer— Índice do alvo em caso de sucesso,-1em caso de falha.
Validação
A função valida que o jogador possui uma invocação, a invocação não tem um alvo atribuído, e o alvo não é o jogador nem a própria invocação.
local result = gObjSummonSetEnemy(player, targetIndex)
if result ~= -1 then
LogAdd(LOG_BLUE, "Summon is now attacking target %d", result)
end
gObjSummonKill(aIndex)¶
Mata e remove a invocação de um jogador.
- Parâmetros:
aIndex(integer): Índice do jogador (dono da invocação).
- Retorna:
void
Validação
Verifica que o jogador possui um índice de invocação válido, a invocação existe e a invocação é realmente de propriedade deste jogador antes de removê-la.
gObjSummonAlly(lpObj, map, x, y)¶
Invoca um jogador (aliado) para um local específico. Usado para habilidades de invocação de grupo.
- Parâmetros:
lpObj(GameObject): Jogador a ser teletransportado.map(integer): Número do mapa de destino.x(integer): Coordenada X de destino.y(integer): Coordenada Y de destino.
- Retorna:
void
Para invocações no mesmo mapa, mostra um efeito de habilidade de teletransporte e move o jogador. Para invocações entre mapas, realiza uma transferência completa de mapa incluindo cancelamento de troca e validação do servidor.
-- Summon a party member to your location
local leader = GetUser(leaderIndex)
gObjSummonAlly(target, leader.Map, leader.X, leader.Y)
Help