Ativa o menu
Alternar menu de preferências
Alternar menu pessoal
Não autenticado(a)
Your IP address will be publicly visible if you make any edits.
DoomWiki.org
For more information on this article, visit the Sector page on the Doom Wiki.

Um sector (setor) é uma área fechada composta por linhas no mapa. Setores são referenciados pelos sidedefs ligados aos linedefs que os delimitam. Setores precisam ser áreas fechadas; isto é, todos os sidedefs que os referenciam devem formar uma ou mais formas fechadas. Note que é possível ter setores “abertos”, e isso pode ser usado para alguns efeitos especiais, mas pode causar resultados imprevisíveis, incluindo travamentos, se usado incorretamente.

Um setor não precisa necessariamente delimitar apenas uma área do mapa. Para evitar redundância, duas áreas separadas do mapa podem ser definidas por um único setor, copiando todas as propriedades de uma área para a outra. Porém, a engine trata essas formas separadas como o mesmo setor. Por exemplo, sons gerados em uma área do setor serão ouvidos por inimigos na outra. Isso pode ser usado intencionalmente para permitir que sons de uma área alertem inimigos em outra área desconectada. Se duas portas forem o mesmo setor, usar Door_Raise em qualquer uma delas fará com que ambas abram.

Em ZScript, os dados de setor ficam armazenados na struct Sector. Ponteiros para setores podem ser obtidos iterando por levels.sectors, pelo campo cursector de um ator, e por outros meios, como LineTrace.

Especificação

Bytes Tipo de dado Descrição Notas
0-1 LE 16-bit signed Altura do piso
2-3 LE 16-bit signed Altura do teto
4-11 array de 8-bit Textura do piso
12-19 array de 8-bit Textura do teto
20-21 LE 16-bit signed Nível de luz Vanilla Doom arredondava o nível de luz para o múltiplo de 8 mais próximo; ZDoom mostra níveis de luz únicos para todos os valores
22-23 LE 16-bit unsigned Special de setor
24-25 LE 16-bit unsigned Tag do setor Para uso com Action specials que referenciam um setor pela sua tag

Propriedades UDMF

O Universal Doom Map Format permite definir várias propriedades em setores. A menos que especificado, valores padrão para inteiros e floats são 0, e false para booleanos. Elas incluem:

Nome Tipo Descrição
xpanningfloor float Offset X da textura do piso, padrão = 0.0.
ypanningfloor float Offset Y da textura do piso, padrão = 0.0.
xpanningceiling float Offset X da textura do teto, padrão = 0.0.
ypanningceiling float Offset Y da textura do teto, padrão = 0.0.
xscalefloor float Escala X da textura do piso, padrão = 1.0.
yscalefloor float Escala Y da textura do piso, padrão = 1.0.
xscaleceiling float Escala X da textura do teto, padrão = 1.0.
yscaleceiling float Escala Y da textura do teto, padrão = 1.0.
rotationfloor float Rotação da textura do piso em graus, padrão = 0.0.
rotationceiling float Rotação da textura do teto em graus, padrão = 0.0.
ceilingplane_a float Define a equação do plano para o teto do setor.

O padrão é um plano horizontal na altura de heightceiling. heightceiling ainda será usado para calcular o alinhamento da textura. A equação do plano só será usada se os 4 valores forem fornecidos.

ceilingplane_b float
ceilingplane_c float
ceilingplane_d float
floorplane_a float Define a equação do plano para o piso do setor.

O padrão é um plano horizontal na altura de heightfloor. heightfloor ainda será usado para calcular o alinhamento da textura. A equação do plano só será usada se os 4 valores forem fornecidos.

floorplane_b float
floorplane_c float
floorplane_d float
lightfloor integer Nível de luz do piso. Padrão é 0.
lightceiling integer Nível de luz do teto. Padrão é 0.
lightfloorabsolute bool true = lightfloor é um valor absoluto. Padrão é relativo ao nível de luz do setor.
lightceilingabsolute bool true = lightceiling é um valor absoluto. Padrão é relativo ao nível de luz do setor.
alphafloor float Translucidez do plano do piso (só faz sentido com Sector_SetPortal). Padrão é 1.0.
alphaceiling float Translucidez do plano do teto (só faz sentido com Sector_SetPortal). Padrão é 1.0.
renderstylefloor string Renderstyle do plano do piso (só faz sentido com Sector_SetPortal), pode ser "translucent" ou "add", padrão é "translucent". (OpenGL only: not supported by ZDoom)
renderstyleceiling string Renderstyle do plano do teto (só faz sentido com Sector_SetPortal), pode ser "translucent" ou "add", padrão é "translucent". (OpenGL only: not supported by ZDoom)
gravity float Gravidade do setor. Padrão é 1.0.
lightcolor integer Cor da luz do setor como valor RRGGBB, padrão = 0xffffff. Dispensa o thing ColorSetter.
fadecolor integer Cor da névoa (fog) do setor como valor RRGGBB, padrão = 0x000000. Dispensa o thing FadeSetter.
desaturation float Fator de dessaturação. 0 = nenhuma, 1 = total, padrão = 0. Dispensa o thing ColorSetter.
silent bool Atores neste setor não fazem som.
nofallingdamage bool Dano de queda é desativado neste setor.
dropactors bool Atores “caem” com pisos que se movem instantaneamente.
norespawn bool Jogadores não podem renascer (respawn) neste setor.
soundsequence string A sound sequence a tocar quando este setor se move. Colocar um sound sequence thing no setor sobrescreve esta propriedade.
hidden bool Se true, este setor não será desenhado no automap texturizado.
waterzone bool Setor é submerso e permite nadar. Dispensa usar things WaterZone.
moreids string Tags adicionais do setor, como lista de números separados por espaço, ex.: "2 666 1003 4505".
damageamount integer Quantidade de dano infligida por este setor. Padrão = 0. Se for 0, todas as outras propriedades de dano serão ignoradas. Definir dano por estas propriedades sobrescreve qualquer dano definido por sector specials. Valor negativo cria um setor de cura.
damagetype string Tipo de dano para dano de setor. Padrão = "None" (dano genérico).
damageinterval integer Intervalo em tics entre aplicações de dano. Padrão = 32.
leakiness integer Probabilidade de “vazar” através do traje antirradiação (0 = nunca, 256 = sempre). Padrão = 0.
damageterraineffect bool Se true, um splash de terreno é gerado ao final de cada intervalo de dano. Padrão = false.
damagehazard bool Se true, o modelo de dano muda para o dano atrasado de Strife para este setor. Padrão = false.
floorterrain string Define o terreno do piso do setor. O padrão é usar a definição de terreno do flat.
ceilingterrain string Define o terreno do teto do setor. O padrão é usar a definição de terreno do flat.
portal_ceil_alpha float Translucidez do portal do teto. O padrão 0 significa “não visível”.
portal_ceil_blocksound bool Portal do teto bloqueia som.
portal_ceil_disabled bool Portal do teto desativado.
portal_ceil_nopass bool Portal do teto bloqueia movimento se true.
portal_ceil_norender bool Portal do teto não é renderizado.
portal_ceil_overlaytype string Define o estilo de translucidez: "translucent" (padrão) ou "additive".
portal_floor_alpha float Translucidez do portal do piso. O padrão 0 significa “não visível”.
portal_floor_blocksound bool Portal do piso bloqueia som.
portal_floor_disabled bool Portal do piso desativado.
portal_floor_nopass bool Portal do piso bloqueia movimento se true.
portal_floor_norender bool Portal do piso não é renderizado.
portal_floor_overlaytype string Define o estilo de translucidez: "translucent" (padrão) ou "additive".
noattack bool Se true, monstros no setor não atacam.

Ver também