Pular para o conteúdo principal

Ações de Elite Script

As ações são o núcleo do script. Elas determinam o que o script faz e permitem-te definir intervalos personalizados.

As ações começam sempre com o tipo de ação que vais fazer. Diferentes tipos de ação cumprem diferentes funções. Além disso, todas as ações têm um alvo ou alvos. As ações também podem ter um temporizador de espera (wait), para garantir que as coisas acontecem com atrasos personalizáveis. Por fim, as ações também podem ter vários outros campos específicos do tipo de ação.

Atributos partilhados

ValuesDetailsSpecial
TargetMais informação aqui
waitDefine a quantidade de tempo a esperar (ticks) antes de executar as ações
repeatEveryDefine as ações para repetir a cada quantidade definida de ticks. Qualquer script que tenha isto definido mas não esteja a usar times será terminado com a morte do mob para evitar lag. Podes aleatorizar este valor usando ~, exemplo: 1~5.
timesDefine o número de vezes que uma ação acontecerá. Podes aleatorizar este valor usando ~, exemplo: 1~5.Requer repeatEvery
scriptsDefine os scripts que serão executados no fim da ação
onlyRunOneScriptEscolhe um dos scripts aleatoriamente e executa apenas esse.
offsetEsta opção vai sob Target. Permite-te deslocar a localização do alvo. O offset não funciona com ações que tenham como alvo zonas com ZONE_FULL ou ZONE_BORDER.
debugEsta opção vai sob a secção da ação do script. Quando definida como true, mostrará ícones de barreira na área onde a ação ocorre.

Tipos de ação

ACTION_BAR_MESSAGE

Define a mensagem da action bar para os alvos.

Nota: Esta ação suporta placeholders. Consulta Placeholders para a lista completa.

ValuesDetailsMandatorySpecial
TargetMais informação aqui
sValueMensagemPode usar Color Codes com &
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: ACTION_BAR_MESSAGE
Target:
targetType: NEARBY_PLAYERS
range: 10
sValue: "&2Hello World!"

elitescript_actions_actionbar.jpg

Definirá a action bar para dizer Hello World a quaisquer jogadores que estejam a 10 blocos do boss.


BOSS_BAR_MESSAGE

Adiciona uma bossbar ao(s) alvo(s).

Nota: Esta ação suporta placeholders. Consulta Placeholders para a lista completa.

ValuesDetailsMandatorySpecial
TargetMais informação aqui
sValueMensagemPode usar Color Codes com &
durationDuração da boss bar em ticks
barColorDefine a cor da boss bar. Valores válidos aquiPredefinição WHITE
barStyleDefine o estilo da boss bar. Valores válidos aquiPredefinição SOLID
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: BOSS_BAR_MESSAGE
Target:
targetType: NEARBY_PLAYERS
range: 10
duration: 120
sValue: "&2Hello World!"
barColor: GREEN
barStyle: SEGMENTED_10

elitescript_actions_bossbar.jpg

Definirá uma boss bar a dizer Hello World a quaisquer jogadores que estejam a 10 blocos do boss durante 6 segundos (120 ticks).


DAMAGE

É assim que podes causar dano a entidades como outras entidades.

Nota: isto usa nativamente o sistema de dano do EliteMobs! Isto significa que verás a redução normal de armadura elite dos golpes. Mais sobre isto na secção de multiplicadores.

ValuesDetailsMandatory
TargetMais informação aqui
multiplierMultiplicador de dano

Nota sobre recursão: Para evitar ciclos infinitos, as ações de dano têm uma profundidade máxima de recursão de 3. Se um script de dano chamar outro script de dano, a cadeia parará após 3 níveis de profundidade.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: DAMAGE
Target:
targetType: NEARBY_PLAYERS
range: 10
multiplier: 0.5

Define o dano para ser metade da quantidade de dano base que o boss causaria ao jogador, tendo em conta as reduções de dano.

multiplier

Define o multiplicador de dano do boss para o efeito.

Importante: para que os powers escalem facilmente e automaticamente, o dano é aplicado fazendo o boss atingir o jogador uma vez e multiplicando o dano base do boss pelo multiplicador.

Isto significa que um multiplicador de 1.0 é o mesmo que um acerto normal do boss. 2.0 é um acerto com 2x a força normal, e 0.5 é 50% mais fraco.


HEAL

É assim que podes curar entidades, incluindo jogadores.

Nota: isto usa nativamente o sistema de cura do EliteMobs! Isto significa que verás a mensagem de notificação do EliteMobs perto da entidade a mostrar quantos pontos foram curados!

ValuesDetailsMandatory
TargetMais informação aqui
amountCurar por quantos pontos. (2 pontos é um coração)
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: HEAL
Target:
targetType: NEARBY_MOBS
range: 15
amount: 20

Quando o boss é atingido, então curará todos os mobs num raio de 15 blocos por 20 pontos (10 corações).


MAKE_INVULNERABLE

Torna um alvo invulnerável.

ValuesDetailsMandatory
TargetMais informação aqui
invulnerableDefine se o boss é invulnerável
durationDefine a duração da invulnerabilidade (ticks)
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: MAKE_INVULNERABLE
Target:
targetType: SELF
invulnerable: true
duration: 60

Torna um boss invulnerável durante 60 ticks (3 segundos).


MODIFY_DAMAGE

Modifica o dano causado a um boss ou causado aos jogadores por esse boss. Esta é uma ação especial com alguns requisitos especiais.

ValuesDetailsMandatory
multiplierMultiplicador de dano.

Esta ação é especial e tem de estar num script que tenha um event listener para um evento de dano. Os seguintes são eventos de dano válidos: EliteMobDamagedByEliteMobEvent, EliteMobDamagedByPlayerEvent, EliteMobDamagedEvent para eventos que reduzem o dano causado ao boss e PlayerDamagedByEliteMobEvent para eventos que reduzem o dano causado aos jogadores.

É altamente recomendado que aprendas como a condição hasTag funciona para usares melhor esta ação. Quando usada corretamente, é possível fazer o boss resistir temporariamente ou ser mais fraco ao dano, e isto pode ser associado a buffs do jogador, localização do boss ou muitos outros fatores.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: MODIFY_DAMAGE
multiplier: 2.0
Conditions:
hasTags:
- "CoolPlayer"
Target:
targetType: DIRECT_TARGET

Aumenta o dano causado ao boss pelos jogadores em 2x, mas apenas se o jogador tiver uma tag chamada "CoolPlayer"


MESSAGE

Envia uma mensagem ao(s) alvo(s).

Nota: Esta ação suporta placeholders. Consulta Placeholders para a lista completa.

ValuesDetailsMandatorySpecial
TargetMais informação aqui
sValueMensagemPode usar Color Codes com &
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: MESSAGE
Target:
targetType: NEARBY_PLAYERS
range: 10
sValue: "&2Hello World!"

elitescript_actions_message.jpg

Enviará uma mensagem de chat a todos os jogadores num raio de 10 blocos do boss.


Faz o boss navegar (caminhar) até ao alvo especificado.

ValuesDetailsMandatorySpecial
TargetMais informação aqui
FinalTargetMais informação aqui
velocityDefine a velocidade de navegação do boss. 1.0 sendo o valor do boss definido na config.
bValueDefine se o boss deve ser forçado a teletransportar-se para o FinalTarget caso a navegação falhe.
durationQuanto tempo o boss deve tentar navegar antes de desistir. Definido em ticks. A predefinição é 100 ticks.
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: NAVIGATE
Target:
targetType: SELF
FinalTarget:
targetType: NEARBY_PLAYERS
range: 50
velocity: 1.0
bValue: true
duration: 100

Fará o boss navegar até ao local onde o jogador estava quando atingiu o boss.


PLACE_BLOCK

Coloca um bloco na(s) localização(ões) do alvo durante a duração.

ValuesDetailsMandatory
TargetMais informação aqui
materialMaterial do bloco, lista completa aqui
durationDuração do efeito, em ticks
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: DOME
radius: 3
Target:
targetType: SELF
Actions:
- action: PLACE_BLOCK
Target:
targetType: ZONE_FULL
duration: 120
material: GLASS

elitescript_actions_placeblock.jpg

Coloca uma cúpula de vidro à volta do boss que durará 6 segundos.

Nota: Se nenhuma duração for definida, a colocação do bloco é permanente.


PLAY_ANIMATION

Reproduz a animação especificada para um Modelo Personalizado usando o Model Engine. Requer o Model Engine e um Modelo Personalizado válido no alvo que executa a animação.

ValuesDetailsMandatory
TargetMais informação aqui
sValueDefine o nome da animação
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: PLAY_ANIMATION
Target:
targetType: SELF
sValue: "fortnite_dance"

Define o boss para reproduzir a animação fortnite_dance. Requer que o servidor tenha o Model Engine, que o boss tenha um disfarce personalizado e que o disfarce personalizado tenha uma animação chamada "fortnite_dance".


PLAY_SOUND

Reproduz um som no jogo.

ValuesDetailsMandatory
TargetMais informação aqui
sValueDefine o nome do som a ser reproduzido
pitchDefine o pitch (tom) do som a ser reproduzido
volumeDefine o volume do som a ser reproduzido

Aqui está uma lista útil de todos os sons do Minecraft! Lembra-te de que isto também pode reproduzir sons personalizados de resource packs. Quando a ação tem como alvo uma zona, então a ação reproduzirá um som para cada bloco dessa zona. Isto pode tornar o som consideravelmente mais alto do que o normal, por isso considera baixar o volume se tiveres uma zona como alvo.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: PLAY_SOUND
Target:
targetType: SELF
sValue: minecraft:block.bell.resonate

Reproduz o som de ressonância dos sinos do Minecraft na localização do boss


POTION_EFFECT

Aplica um efeito de poção específico ao(s) alvo(s).

ValuesDetailsMandatory
TargetMais informação aqui
potionEffectTypeTipo de efeito, lista válida aqui
amplifierNível do efeito de poção (começa em 0)
durationDuração do efeito (ticks)
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: POTION_EFFECT
Target:
targetType: NEARBY_PLAYERS
range: 10
potionEffectType: LEVITATION
amplifier: 1
duration: 40

elitescript_actions_potioneffect.jpg

Isto fará com que quaisquer jogadores num raio de 10 blocos do boss levitem durante 2 segundos (40 ticks).


PUSH

Empurra um alvo por um vetor definido.

ValuesDetailsMandatory
TargetMais informação aqui
vValueDefine o vetor da velocidade que será aplicada
bValueSe definido como true, adiciona a velocidade à velocidade atual do alvo em vez de a substituir.

Nota: Esta ação também aceita vetores relativos. Aprende mais sobre como os usar aqui.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: PUSH
wait: 3
Target:
targetType: NEARBY_PLAYERS
range: 10
vValue: 0,0.3,0
times: 10
repeatEvery: 10

elitescript_actions_push.jpg

Isto empurrará todos os jogadores num raio de 10 blocos do boss para o ar usando uma força de 0.3. Esta ação será repetida 10 vezes a cada 0,5 segundos (10 ticks). Por outras palavras, isso fará com que este efeito dure 5 segundos (10 vezes x 10 ticks = 100 ticks).

Isto fará parecer que os jogadores estão a saltar.

vector

Os vetores são definidos por vValue: x,y,z. Como exemplo, se quiseres que o alvo seja empurrado para cima, podes fazer vValue: 0,0.3,0.


REMOVE_ELITE

Esta ação removerá quaisquer Elites alvo. Pode ser combinada com Condições e Tags para remover apenas certos Elites.

ValuesDetailsMandatory
TargetMais informação aqui
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: REMOVE_ELITE
Target:
targetType: NEARBY_ELITES
range: 10

Isto removerá quaisquer elites próximos num raio de 10 blocos.

eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: REMOVE_ELITE
Target:
targetType: NEARBY_ELITES
range: 3
Conditions:
conditionType: FILTERING
hasTags:
- remove_me
Target:
targetType: ACTION_TARGET

Isto removerá quaisquer elites próximos num raio de 3 blocos, mas apenas se tiverem a tag remove_me.


RUN_COMMAND_AS_CONSOLE

Executa um comando como consola.

ValuesDetailsMandatory
TargetMais informação aqui
sValueComando que será executado

Nota: Esta ação suporta placeholders. Consulta Placeholders para a lista completa.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: RUN_COMMAND_AS_CONSOLE
Target:
targetType: NEARBY_PLAYERS
range: 10
sValue: say Hello $bossName my name is $playerName. What is your level? $bossName my level is $bossLevel.

elitescript_actions_commandconsole.jpg

Faz a consola transmitir a mensagem "Hello $bossName my name is $playerName. What is your level? $bossName my level is $bossLevel"


RUN_COMMAND_AS_PLAYER

Executa um comando como jogador. Requer que o alvo sejam jogadores.

ValuesDetailsMandatory
targetMais informação aqui
sValueComando que será executado

Placeholders

RUN_COMMAND_AS_PLAYER, RUN_COMMAND_AS_CONSOLE, MESSAGE, TITLE_MESSAGE, ACTION_BAR_MESSAGE e BOSS_BAR_MESSAGE suportam todos os seguintes placeholders:

PlaceholderDetailsSpecial
$playerNameNome de exibição do jogadorO alvo tem de ser jogador
$playerXLocalização X do jogadorO alvo tem de ser jogador
$playerYLocalização Y do jogadorO alvo tem de ser jogador
$playerZLocalização Z do jogadorO alvo tem de ser jogador
$targetNameNome de exibição do jogador alvo. Disponível apenas em RUN_COMMAND_AS_PLAYER, onde é substituído por alvo.O alvo tem de ser jogador
$bossNameNome de exibição do boss
$bossXLocalização X do boss
$bossYLocalização Y do boss
$bossZLocalização Z do boss
$bossLevelNível do boss
$bossWorldNameNome do mundo do boss
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: RUN_COMMAND_AS_PLAYER
Target:
targetType: NEARBY_PLAYERS
range: 10
sValue: say Hello $bossName my name is $playerName.

elitescript_actions_commandplayer.jpg

Faz o jogador executar o comando say com Hello $bossName my name is $playerName., ou seja, ele apenas diz "Hello $bossName my name is $playerName."


RUN_SCRIPT

Isto simplesmente executa os scripts definidos em scripts. Qualquer ação pode fazer isto; esta ação só existe como uma ação de conveniência para quando apenas queres fazer isso.

ValuesDetailsMandatory
TargetMais informação aqui
scriptsScripts que serão executados
onlyRunOneScriptExecuta apenas um script da lista.
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: RUN_SCRIPT
onlyRunOneScript: false
scripts:
- Example1
- Example2
Example1:
Actions:
- action: DAMAGE
Target:
targetType: NEARBY_PLAYERS
range: 10
multiplier: 0.5
Example2:
Actions:
- action: MESSAGE
Target:
targetType: NEARBY_PLAYERS
range: 10
sValue: "&cCool boss!: &fGotcha back!"

elitescript_actions_runscript.jpg

Quando um elite é danificado, executa RUN_SCRIPT, que executa os scripts Example1 e Example2.

O script Example1 causará dano a todos os jogadores num raio de 10 blocos do boss.
O script Example2 enviará a mensagem "&cCool boss!: &fGotcha back!" a todos os jogadores num raio de 10 blocos do boss.


SCALE

Permite-te escalar (redimensionar) entidades.

ValuesDetailsMandatory
TargetMais informação aqui
scaleDefine o tamanho de escala
durationDefine quanto tempo o efeito de escala deve durar

Ao escalar, 1.0 representa o tamanho predefinido. Para tornar a entidade maior, aumenta o valor (por exemplo, 1.2). Para tornar a entidade mais pequena, diminui o valor (por exemplo, 0.8).

Nota: Isto pode ter jogadores como alvo, por isso tem cuidado com a forma como o usas!

Nota: Se já escalaste o boss usando a definição scale na config do boss, a definição duration repõe o boss no tamanho predefinido de 1.0, independentemente do valor inicial de scale na config.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedEvent
Actions:
- action: SCALE
Target:
targetType: SELF
scale: 0.3
duration: 60

Quando o mob é atingido, encolherá para um tamanho minúsculo. Após 60 ticks (3 segundos), reverterá para o seu tamanho predefinido (1.0).


SET_FACING

Faz o boss virar-se para uma certa direção. Maioritariamente usado em conjunto com animações.

ValuesDetailsMandatory
vValuePara que direção o boss se deve virar. X,Y,Z
RelativeVectorUsa vetores relativos para fazer o boss virar-se para um alvo.
Exemplo
eliteScript:
Example:
Events:
- EliteMobEnterCombatEvent
Actions:
- action: SET_FACING
vValue: 1,0,0

Fará o boss virar-se para Este.

eliteScript:
Example:
Events:
- EliteMobEnterCombatEvent
Actions:
- action: SET_FACING
RelativeVector:
SourceTarget:
targetType: SELF
DestinationTarget:
targetType: NEARBY_PLAYERS
range: 20

Fará o boss virar-se para um jogador num raio de 20 blocos.


SET_MOB_AI

Define se o mob tem IA. No Minecraft, os mobs sem IA não se movem e não atacam. Ainda podem ser danificados, mas danificá-los não fará com que sejam empurrados (knockback).

ValuesDetailsMandatory
TargetMais informação aqui
bValueDefine se o boss tem IA
durationDefine a duração do valor definido (ticks)
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: SET_MOB_AI
Target:
targetType: SELF
bValue: false
duration: 40

Define o boss para não ter IA durante 2 segundos (40 ticks).


SET_MOB_AWARE

Define se o mob está ciente (aware). No Minecraft, os mobs que não estão cientes não se moverão para novas localizações e não atacarão. Ainda podem ser danificados, e serão empurrados (knockback).

Como nota, se o mob já estava a mover-se para uma localização quando perdeu a consciência, terminará de ir para essa localização antes de parar completamente e deixar de se mover.

Isto significa que podes usar mobs não cientes para se moverem até localizações definidas, ao contrário dos mobs sem IA.

ValuesDetailsMandatory
TargetMais informação aqui
bValueDefine se está ciente
durationDefine a duração do valor definido (ticks)
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: SET_MOB_AWARE
Target:
targetType: SELF
bValue: false
duration: 40

Define o boss para não ter consciência durante 2 segundos (40 ticks).


SET_ON_FIRE

Põe uma entidade em chamas durante a duração.

ValuesDetailsMandatory
TargetMais informação aqui
durationDuração do efeito, em ticks
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: SET_ON_FIRE
Target:
targetType: NEARBY_PLAYERS
range: 10
duration: 60

elitescript_actions_setonfire.jpg

Põe em chamas todos os jogadores num raio de 10 blocos do boss durante 3 segundos (60 ticks).


SET_TIME

Define a hora no jogo do mundo em que o alvo está.

ValuesDetailsMandatory
TargetMais informação aqui
timeDefine a hora
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: SET_TIME
Target:
targetType: SELF
time: 10000

elitescript_actions_settime.gif

Quando atingido, o boss definirá a hora do mundo em que o boss está para 10000 ticks.


SET_WEATHER

Define o clima do mundo em que o alvo está durante um período de tempo definido.

ValuesDetailsMandatory
TargetMais informação aqui
weatherDefine o tipo de clima
durationDefine a duração do padrão climático
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: SET_WEATHER
Target:
targetType: SELF
weather: PRECIPITATION
duration: 120

elitescript_actions_setweather.gif

Define o clima do mundo em que o boss está para chuva/neve durante o próximo minuto.

Nota: O efeito demorará um pouco a acionar.

weather

Os seguintes são padrões climáticos válidos:

  • CLEAR - Define o clima para limpo
  • PRECIPITATION - Define o clima para chuva / neve, dependendo do bioma, altura da localização e outras considerações vanilla do Minecraft.
  • THUNDER - Define o clima para trovoada

SPAWN_FIREWORKS

Faz aparecer fogos de artifício.

ValuesDetailsMandatorySpecial
TargetMais informação aqui
vValueDefine a velocidade do foguete dos fogos de artifício
flickerDefine se as partículas dos fogos de artifício cintilarãoPredefinição: true
withTrailDefine se o foguete dos fogos de artifício deixará um rastoPredefinição: true
powerDefine o power (potência) dos fogos de artifício
fireworkEffectsDefine os efeitos dos fogos de artifício, relacionados com quanto tempo demorará antes de explodir
fireworkEffectTypeDefine a forma do fogo de artifício a partir desta lista
fireworkEffectTypesDefine as formas do fogo de artifício a partir desta lista. Esta é uma lista de formas - se quiseres uma lista de formas, não uses fireworkEffectType! [1]

[1] Ao usar várias formas para os fogos de artifício, cada forma usará as cores da lista de cores na mesma posição. Verifica o exemplo abaixo.

Exemplo
eliteScript:
fireworkShot1:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: SPAWN_FIREWORKS
Target:
targetType: SELF
offset: 1,1.5,0
vValue: .5,-.35,1
flicker: false
withTrail: false
power: 2
fireworkEffects:
- [ORANGE, RED]
- [YELLOW, BLUE]
fireworkEffectTypes:
- BALL_LARGE
- STAR

elitescript_actions_fireworks.jpg

Faz aparecer fogos de artifício na localização do boss, deslocados por x= 1, y= 1.5 e z = 0. Dá aos fogos de artifício uma velocidade de x=.5, y=-.35 e z=1. Os fogos de artifício não cintilarão nem terão rastos; o power está definido como 2, por isso a explosão dos fogos de artifício será atrasada por essa quantidade.

Por fim, há duas listas de listas de cores: a lista 1 é laranja e vermelho e a lista 2 é amarelo e azul. Há duas formas para os fogos de artifício: BALL_LARGE e STAR. Isto significa que BALL_LARGE (elemento 1) usará as cores laranja e vermelho (lista 1) e STAR (elemento 2) usará as cores amarelo e azul (lista 2).

fireworkEffects

Estes são os efeitos que o foguete dos fogos de artifício mostrará. É necessário pelo menos um efeito. Os seguintes são efeitos válidos:

  • WHITE, SILVER, GRAY, BLACK, RED, MAROON, YELLOW, OLIVE, LIME, GREEN, AQUA, TEAL, BLUE, NAVY, FUCHSIA, PURPLE, ORANGE

STRIKE_LIGHTNING

Invoca um relâmpago. Isto é um efeito visual; se quiseres dano, deves adicionar uma ação de dano.

ValuesDetailsMandatory
TargetMais informação aqui
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: STRIKE_LIGHTNING
Target:
targetType: SELF
repeatEvery: 5
times: 5

elitescript_actions_strike.jpg

Invoca um relâmpago sobre o boss a cada 5 ticks por 5 vezes.


SPAWN_FALLING_BLOCK

Faz aparecer um bloco em queda no alvo. Apenas visual, não coloca o bloco.

ValuesDetailsMandatory
TargetMais informação aqui
materialDefine o Material do bloco em queda. Verifica os tipos válidos aqui e certifica-te de que são um material de bloco válido.
landingScriptsDefine a lista de scripts que serão executados quando o bloco cair
vValueDefine a velocidade e a direção de um bloco em queda.

O landingScripts funciona da mesma forma que RUN_SCRIPT mas pode aceitar o tipo de alvo especial LANDING_LOCATION.

O LANDING_LOCATION é herdado pelos executores de scripts, permitindo que um script de localização de aterragem também funcione como um executor de scripts. Podes adicionar um wait na ação que chama os scripts, seguido das chamadas de script subsequentes. O LANDING_LOCATION será sempre o argumento para o alvo, mesmo quando herdado, pois é atribuído de uma única forma específica.

Nota: Esta ação também aceita vetores relativos. Aprende mais sobre como os usar aqui.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: SPAWN_FALLING_BLOCK
Target:
targetType: SELF
offset: 3,10,0
material: STONE
vValue: 0,0,0
landingScripts:
- LandingScriptExample
LandingScriptExample:
Actions:
- action: PLACE_BLOCK
Target:
targetType: LANDING_LOCATION
duration: 200
material: STONE

elitescript_actions_block.gif

Quando o boss é atingido, este script fará aparecer um bloco de pedra em queda 10 blocos acima e 3 blocos ao lado da localização do boss.

Assim que o bloco cair, executará o script LandingScriptExample, que colocará um bloco de pedra na localização onde o bloco aterrou. O bloco ficará lá durante 10 segundos (200 ticks) antes de desaparecer.


SPAWN_PARTICLE

Faz aparecer partículas no alvo.

Nota: Se a coverage não for definida, então a coverage será definida como 0.3 por predefinição!

ValuesDetailsMandatory
TargetMais informação aqui
particlesLista as partículas que aparecerão

particles

As partículas têm as suas próprias definições especiais, que são as seguintes:

ValuesDetailsDefaultSpecial
xDefine o offset de X0.01(1)
yDefine o offset de Y0.01(1)
zDefine o offset de Z0.01(1)
amountDefine a quantidade de partículas geradas1(1)
speedDefine a velocidade das partículas0.01
particleDefine o tipo de partículaFLAMEPartículas válidas listadas abaixo
redDefine o valor de vermelho255(2)
greenDefine o valor de verde255(2)
blueDefine o valor de azul255(2)
toRedDefine o valor final de vermelho255(3)
toGreenDefine o valor final de verde255(3)
toBlueDefine o valor final de azul255(3)
moveToTargetDefine se a partícula se deve mover em direção à localização do alvonull(4)
relativeVectorDefine um vetor relativo para a direção da partícula. Aprende mais sobre vetores relativos aqui.none

(1) Se o amount for definido como 0, x, y e z definirão a velocidade da partícula em vez disso.

(2) Apenas para as partículas (particle) DUST, DUST_COLOR_TRANSITION e WITCH. Os nomes legados REDSTONE (→ DUST), SPELL_MOB e SPELL (→ WITCH) também são aceites.

(3) Apenas para a partícula (particle) DUST_COLOR_TRANSITION

(4) Valor booleano. Quando definido como true, a partícula será direcionada para a localização do alvo da ação. Útil para criar efeitos visuais que viajam de um ponto para outro.

É importante notar que um script SPAWN_PARTICLE pode fazer aparecer várias partículas. Cada partícula pode então ter os seus próprios campos de configuração dentro da ação SPAWN_PARTICLE. Aqui está um exemplo:

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CYLINDER
radius: 4
borderRadius: 3
height: 30
Target:
targetType: DIRECT_TARGET
track: true
Actions:
- action: SPAWN_PARTICLE
Target:
targetType: ZONE_BORDER
particles:
- particle: FLAME
speed: 0.2
- particle: SMOKE_NORMAL
speed: 0.1
amount: 1
repeatEvery: 10

elitescript_actions_particle.jpg

Isto fará aparecer um cilindro feito de partículas de chama e fumo à volta do jogador que danificou o boss.

Mover uma partícula:

É possível definir uma velocidade específica para uma partícula, e funciona da mesma forma que a API do Spigot. Isto permite aos scripters definir uma partícula para ir numa direção específica a uma velocidade específica. Não é possível fazer as partículas mudarem de direção a meio do caminho. Este efeito é usado no encantamento e no power do boss flamethrower.

Para mover uma partícula, define amount: 0. Isto sinalizará ao Minecraft que os valores x, y e z são, na verdade, um vetor. Este vetor define a direção para a qual a tua partícula irá.

Digamos que queres que uma partícula FLAME vá para cima. Para fazer isto, queres um valor y positivo, e nada mais. Por fim, vais querer definir a velocidade para o que queres que a velocidade seja. Aqui está um exemplo completo:

Exemplo
eliteScript:
Example:
Events:
- EliteMobEnterCombatEvent
Zone:
shape: CYLINDER
radius: 4
borderRadius: 3
height: 30
Target:
targetType: DIRECT_TARGET
track: true
Actions:
- action: SPAWN_PARTICLE
Target:
targetType: ZONE_BORDER
particles:
- particle: FLAME
amount: 0
x: 0
y: 1
z: 0
speed: 0.2
- particle: SMOKE_NORMAL
speed: 0.1
amount: 0
x: 0.5
y: 1
z: 0.5
amount: 3
repeatEvery: 10

Isto fará aparecer uma partícula de chama na localização do boss que irá para cima.

Valid particles

O EliteMobs aceita qualquer partícula do enum Particle do Spigot. As seguintes são as partículas mais usadas. Os nomes de partículas legados (de versões mais antigas do Minecraft) são automaticamente convertidos para os seus equivalentes modernos.

Partículas simples (não requerem dados extra -- funcionam em todo o lado, incluindo rastos de bosses):

POOF, EXPLOSION, EXPLOSION_EMITTER, FIREWORK, BUBBLE, SPLASH, FISHING, UNDERWATER, CRIT, ENCHANTED_HIT, SMOKE, LARGE_SMOKE, WITCH, DRIPPING_WATER, DRIPPING_LAVA, ANGRY_VILLAGER, HAPPY_VILLAGER, MYCELIUM, NOTE, PORTAL, ENCHANT, FLAME, LAVA, CLOUD, ITEM_SNOWBALL, ITEM_SLIME, HEART, RAIN, ELDER_GUARDIAN, END_ROD, DAMAGE_INDICATOR, SWEEP_ATTACK, TOTEM_OF_UNDYING, SPIT, SQUID_INK, BUBBLE_POP, CURRENT_DOWN, BUBBLE_COLUMN_UP, NAUTILUS, DOLPHIN, SNEEZE, CAMPFIRE_COSY_SMOKE, CAMPFIRE_SIGNAL_SMOKE, COMPOSTER, FALLING_LAVA, LANDING_LAVA, FALLING_WATER, DRIPPING_HONEY, FALLING_HONEY, LANDING_HONEY, FALLING_NECTAR, SOUL_FIRE_FLAME, ASH, CRIMSON_SPORE, WARPED_SPORE, SOUL, DRIPPING_OBSIDIAN_TEAR, FALLING_OBSIDIAN_TEAR, LANDING_OBSIDIAN_TEAR, REVERSE_PORTAL, WHITE_ASH, FALLING_SPORE_BLOSSOM, SPORE_BLOSSOM_AIR, SMALL_FLAME, SNOWFLAKE, DRIPPING_DRIPSTONE_LAVA, FALLING_DRIPSTONE_LAVA, DRIPPING_DRIPSTONE_WATER, FALLING_DRIPSTONE_WATER, GLOW_SQUID_INK, GLOW, WAX_ON, WAX_OFF, ELECTRIC_SPARK, SCRAPE, SONIC_BOOM, SCULK_SOUL, SCULK_CHARGE_POP, CHERRY_LEAVES, PALE_OAK_LEAVES, EGG_CRACK, DUST_PLUME, WHITE_SMOKE, GUST, SMALL_GUST, GUST_EMITTER_LARGE, GUST_EMITTER_SMALL, TRIAL_SPAWNER_DETECTION, TRIAL_SPAWNER_DETECTION_OMINOUS, VAULT_CONNECTION, INFESTED, ITEM_COBWEB, OMINOUS_SPAWNING, RAID_OMEN, TRIAL_OMEN, FIREFLY, COPPER_FIRE_FLAME

Partículas especiais (requerem dados de configuração adicionais no EliteScript):

ParticleNotes
DUSTUsa os valores red, green, blue para a cor. Nome legado: REDSTONE
DUST_COLOR_TRANSITIONUsa red/green/blue para a cor inicial e toRed/toGreen/toBlue para a cor final
WITCHUsa red, green, blue para a cor. Nomes legados: SPELL_MOB, SPELL

Partículas que requerem dados de bloco/item (não utilizáveis no EliteScript ou em rastos de bosses):

BLOCK, FALLING_DUST, DUST_PILLAR, BLOCK_CRUMBLE, BLOCK_MARKER, ITEM

Outras partículas com tipos de dados especiais (não utilizáveis em rastos de bosses mas podem funcionar no EliteScript sem os seus dados):

EFFECT, INSTANT_EFFECT, ENTITY_EFFECT, FLASH, DRAGON_BREATH, SCULK_CHARGE, SHRIEK, VIBRATION, TRAIL, TINTED_LEAVES

Conversões de nomes legados (os nomes antigos ainda funcionam nos ficheiros de configuração):

Legacy NameModern Name
EXPLOSION_NORMALEXPLOSION
EXPLOSION_LARGEEXPLOSION
EXPLOSION_HUGEEXPLOSION
SMOKE_NORMALSMOKE
SMOKE_LARGELARGE_SMOKE
REDSTONEDUST
SLIMEITEM_SLIME
DRIP_LAVADRIPPING_WATER (nota: isto é um bug conhecido no conversor -- usa DRIPPING_LAVA diretamente em vez disso)
DRIP_WATERDRIPPING_WATER
SNOWBALLSNOWFLAKE
SPELLWITCH
SPELL_MOBWITCH
VILLAGER_ANGRYANGRY_VILLAGER
VILLAGER_HAPPYHAPPY_VILLAGER
WATER_BUBBLEUNDERWATER
WATER_SPLASHSPLASH

SUMMON_REINFORCEMENT

Invoca reforços a partir de Bosses Personalizados do EliteMobs.

ValuesDetailsMandatory
TargetMais informação aqui
sValueDefine o nome do ficheiro do reforço de Boss Personalizado
durationDefine a duração do reforço (ticks)
vValueDefine a velocidade do reforço gerado

Nota: Esta ação também aceita vetores relativos. Aprende mais sobre como os usar aqui.

Exemplo
eliteScript:
Example:
Events:
- EliteMobEnterCombatEvent
Actions:
- action: SUMMON_REINFORCEMENT
Target:
targetType: DIRECT_TARGET
sValue: your_boss_file.yml

Faz aparecer o reforço com o nome de ficheiro "your_boss_file.yml" na localização do boss.


SUMMON_ENTITY

Invoca uma entidade na localização do alvo.

ValuesDetailsMandatory
TargetMais informação aqui
sValueDefine o tipo de entidade a invocar
vValueDefine a velocidade da entidade invocada
durationDefine quanto tempo até a entidade invocada ser removida (ticks)
landingScriptsScripts a executar quando a entidade aterra ou se torna inválida

Nota: Esta ação também aceita vetores relativos. Aprende mais sobre como os usar aqui.

Exemplo
eliteScript:
Example:
Events:
- EliteMobEnterCombatEvent
Actions:
- action: SUMMON_ENTITY
sValue: ARROW
vValue: 0,1,0
Target:
targetType: SELF
track: false
RelativeVector:
SourceTarget:
targetType: SELF
DestinationTarget:
targetType: ZONE_FULL
normalize: true
multiplier: 8.0

Faz aparecer uma flecha na localização do boss e lança-a em direção a uma zona com uma velocidade normalizada.


TAG

Adiciona tags aos bosses ou jogadores. As tags são apenas Strings, ou palavras, que os scripters podem definir. Estas são usadas apenas para executar verificações de condições e não têm efeito direto na jogabilidade para além daquilo para que são usadas nos scripts.

ValuesDetailsMandatory
TargetMais informação aqui
tagsDefine as tags
durationDefine a duração das tags (ticks)
Exemplo
eliteScript:
Example:
Events:
- EliteMobSpawnEvent
Actions:
- action: TAG
Target:
targetType: SELF
tags:
- fireworks
- action: SPAWN_FIREWORKS
Target:
targetType: SELF
wait: 20
offset: 0,3,0
vValue: 0,.1,0
flicker: true
withTrail: true
power: 1
fireworkEffects:
- [ORANGE, RED]
repeatEvery: 20
Conditions:
hasTags:
- fireworks

Marca o boss com a string "fireworks", que pode mais tarde ser verificada através das condições de script.

Importante: Só é possível marcar (tag) jogadores e elite mobs.


TELEPORT

Teletransporta o(s) alvo(s) para a localização definida.

ValuesDetailsMandatory
TargetDefine quem será teletransportado. Informação geral sobre alvos aqui!
FinalTargetDefine para onde serão teletransportados. Informação geral sobre alvos aqui!
locationLocalização de teletransporte

Nota: FinalTarget e location são alternativas — usa uma ou outra, não ambas em simultâneo. Ou defines o FinalTarget para usar um destino baseado em alvo, ou defines o location para usar um destino específico baseado em coordenadas.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: TELEPORT
Target:
targetType: NEARBY_PLAYERS
range: 10
FinalTarget:
targetType: SELF_SPAWN

elitescript_actions_teleport.gif

Isto teletransportaria todos os jogadores que estejam num raio de 10 blocos do boss para a localização de spawn do boss.

location

Define a localização para onde o jogador será teletransportado. O formato é o padrão do EliteMobs world_name,x,y,z,pitch,yaw.

Exemplo

location: world,0,64,0,0,0

Isto tem alguns valores especiais:

  • Se o nome do mundo for definido como same_as_boss, substituirá o nome do mundo pelo nome do mundo em que o boss está atualmente:
location: same_as_boss,0,64,0,0,0
  • Se houver apenas três valores correspondentes a x, y e z, o teletransporte será feito para uma localização relativa à localização do boss. Se o boss for um boss regional, a localização será relativa ao ponto de spawn do boss.

TITLE_MESSAGE

Define uma mensagem de título para os alvos.

Nota: Esta ação suporta placeholders. Consulta Placeholders para a lista completa.

ValuesDetailsMandatorySpecialDefault
TargetMais informação aqui
titleDefine a mensagem de títuloPode usar Color Codes com &
subtitleDefine a mensagem de subtítuloPode usar Color Codes com &
durationDefine a duração da mensagem (ticks)0
fadeInDefine o tempo de fade in (ticks)1
fadeOutDefine o tempo de fade out (ticks)1
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: TITLE_MESSAGE
Target:
targetType: NEARBY_PLAYERS
range: 10
title: "&2Hello World!"
subtitle: "&2I am a subtitle!"
duration: 120
fadeIn: 20
fadeOut: 20

elitescript_actions_titlescreen.jpg

Definirá a mensagem de título para mostrar o título "&2Hello World!" com o subtítulo "&2I am a subtitle!" a todos os jogadores que estejam num raio de 10 blocos do boss.

A mensagem permanecerá no ecrã durante 8 segundos (120 + 20 + 20 = 160 ticks), incluindo a animação de fade in e fade out.


UNTAG

Remove tags do boss. Consulta TAG para veres como as tags funcionam.

ValuesDetailsMandatory
TargetMais informação aqui
tagsDefine as tags
durationDefine a duração da remoção das tags (ticks)
Exemplo
eliteScript:
Example:
Events:
- EliteMobSpawnEvent
Actions:
- action: TAG
Target:
targetType: SELF
tags:
- fireworks
- action: SPAWN_FIREWORKS
Target:
targetType: SELF
wait: 20
offset: 0,3,0
vValue: 0,.1,0
flicker: true
withTrail: true
power: 1
fireworkEffects:
- [ORANGE, RED]
repeatEvery: 20
Conditions:
hasTags:
- fireworks
Example2:
Events:
- EliteMobEnterCombatEvent
Actions:
- action: UNTAG
Target:
targetType: SELF
tags:
- fireworks

Remove a tag "fireworks" do boss, que pode mais tarde ser verificada através das condições de script.


VISUAL_FREEZE

Dá o efeito visual de congelamento ao jogador e causa o seu dano associado. Isto deve ser combinado com um script repetitivo se não quiseres que o efeito desapareça imediatamente.

ValuesDetailsMandatory
TargetMais informação aqui
amountNúmero de ticks de congelamento a adicionar ao alvo
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: VISUAL_FREEZE
Target:
targetType: NEARBY_PLAYERS
range: 10
amount: 20
repeatEvery: 20
times: 3

Dá a todos os jogadores num raio de 10 blocos do boss o visual de congelamento durante 3 segundos (60 ticks).


Múltiplas ações

Por vezes podes querer fazer várias ações todas de uma vez quando um evento acontece, como enviar várias mensagens ou fazer diferentes ações sequencialmente. Isto faz-se facilmente! Vamos adicionar uma ação de efeito de poção ao nosso exemplo:

Exemplo
eliteScript:
MessagePlayers:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: MESSAGE
Target:
targetType: ALL_PLAYERS
sValue: I am messaging all online players!
- action: MESSAGE
Target:
targetType: DIRECT_TARGET
sValue: I am messaging the player that hit the boss!