Kit de Armas

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Para ajudar na criação de experiências baseadas em combate competitivo, várias armas endossadas estão disponíveis para uso em qualquer experiência. Os recursos do sistema de núcleo incluem armas baseadas em projéteis com uma Câmerade ombro, e configurar a velocidade do projétil pode simular armas de raios como armas de laser.

Para usar uma arma endossada em sua experiência:

  1. Selecione uma arma abaixo, navegando até o víncular / conectarda biblioteca de recursos.
Pistola
Escopeta
Rifle Automático
Submetralhadora
Rifle de Precisão
Arco de Flecha
Lançador de Grenadas
Lançador de Foguetes
Arma de Trilho
  1. Na página de itens da arma, clique no botão verde Obter e confirme a transação.

  2. In Studio, open the Caixa de ferramentas ( VerCaixa de ferramentas ).

  3. Selecione sua caixa de ferramentas Inventário seção.

  4. Localize a arma e clique nela para adicioná-la ao local. Quando solicitado a colocar a ferramenta no pacote de iniciante, clique em Sim se você quiser que os jogadores comecem com a arma na mochila deles ou clique em Não para simplesmente colocar a arma no mundo 3D como um pickup.

  5. Se esta é a primeira vez que você está importando uma arma, mova sua pasta WeaponsSystem para ServerScriptService para servir como o pasta de sistema padrão para todas as armas endossadas na experiência.

Estrutura da pasta do sistema

A pasta WeaponsSystem é um arquivo unificado que contém recursos, configurações e scripts que alimentam todas as armas endossadas na experiência. Se localizado em ServerScriptService , ele substitui qualquer pasta WeaponsSystem que possa estar dentro de armas individuais.

A pasta Sistema de Armas contém as seguintes instâncias:

  • Recursos ( Folder )
    • Animações ( Folder ) – Armazenamento para animações usadas nos sistemas de armas.
    • Efeitos ( Folder ) - Caixas de armazenamento para todos os recursos de armazenamento de balas. - 0> Marcações de hit0> ( 3> Class.Folder3> ) - Armazenamento para todos os recursos de armazenamento de balas. - 6>
    • WeaponsSystemGui ( ScreenGui ) – Configurações para o Weapons System GUI .
  • Configuração ( Folder ) – Valores de configuração para o sistema de armas.
  • Bibliotecas ( Folder ) – Armazena todos os outros ModuleScripts usados no sistema de armas.
  • Tipos de Arma ( Folder ) – Specifies todos os tipos de armas.
  • Script de Armas do Servidor ( Script )
  • Versão ( IntValue )
  • Script de ClienteWeaponScript ( LocalScript )
  • Chamadas de Rede ( ModuleScript )
  • Dados de Arma ( RemoteEvent )
  • Sistema de Armas ( ModuleScript )

Dentro da pasta WeaponsSystem , diferentes aspectos são controlados pelo seguinte ModuleScripts :

AspectoControlado Primariamente dentro de...
Funcionalidades de Armas
  • Bibliotecas / Arma Base
  • Tipos de Armas / Arma de Bala
  • Tipos de Arma / Arma de Arco
Câmera de Ombro
  • Bibliotecas / Câmera de Ombro
GUI de Armas
  • Bibliotecas / WeaponsGui
  • Bibliotecas / DirectionalIndicatorGuiManager
  • Bibliotecas / DamageBillboardHandler

Estrutura de Arma

As armas endossadas são Tools e têm nomes como elas aparecerão na mochila do jogador. Cada arma é estruturada com uma hierarquia semelhante.

Tipo de Arma

O Tipo de Arma StringValue corresponde ao ModuleScript para a arma na pasta 1>ArmasSistema1> / 4>ArmasTipos4>. Os dois valores base são 7>BulletWeapon7> e 0>BowWeapon0>.

Modelo de Arma

Cada arma contém um Model feito de um ou mais BaseParts para formar a arma física. Um desses deve ser definido como o PrimaryPart do modelo.

O modelo também inclui os seguintes descendentes importantes que podem estar ligados a um dos descendentes do modelo:

  • TipAmountAttachment cuja posição na raiz BasePart determina onde as balas/projéteis são soltos.
  • Manusear AtaqueAttachment cuja posição na raiz BasePart determina onde o 0> Manusear0> é soldado.
  • Fired – Class.Sound que toca quando a arma é disparada.
  • RecarregarSound que toca quando a arma é recarregada.
  • Descendentes adicionais para qualquer opções especializadas.

Suporte de arma

A peça Handle determina onde um personagem de jogador segura a arma. Isso deve ser um Part, deve ser chamado Handle e deve ser um filho direto da arma (ferramenta).

Pasta de Configuração

A pasta Configuração contém tipos específicos de "valor" para o comportamento da arma. Além dos padrões, você pode adicionar itens de configuração adicionais para opções especializadas quando Aplicável.

A seguir estão as configurações de base e seus valores padrão:

ItemDescriçãoPadrão
Capacidade de Munição Número de tiros em cada "magazine de munição" antes que o jogador deve recarregar. Observe que a munição é ilimitada e isso não especifica quanta munição um jogador está carregando.30
Modo de Fogo Escolha Semiautomático (um tiro por clique/toque), Automático (Iniciar / executarcontínuo), ou Rajada (rajada de tiros igual a 1>NumBurstShots1> em cada clique/toque). Semiautomático
Tempo de Recarga da Arma Tempo mínimo de espera entre cliques. Para armas com FireMode de Automatic , esta é também a hora entre os tiros enquanto pressionando o botão de fogo ou segurando o clique.0.1
Tempo de Recarga de Tiros Explosivos Tempo entre cada tiro em uma rajada; só importa se você definir Modo de Fogo para Rajada .Valor de ShotCooldown
Tiros de NúmeroBurst Número de tiros por clique/burst; só importa se você definir Modo de Fogo para Burst .3
Dano de Hit Quantidade de dano que cada acerto direto causa.10
Distância Completa de Dano Distância máxima que os tiros causarão dano completo. Qualquer coisa que for alcançada além desta distância receberá menos e menos dano à medida que a distância se aproxima ZeroDamageDistance .1.000
ZeroDamageDistance Qualquer coisa acertada ou além desta distância não receberá dano.10000
Velocidade de Chumbo Velocidade que as balas/projéteis viajam quando atirados. Configurar isso para um valor muito alto, como 20000, simula armas de raycasting, como armas de laser.1.000
Distância Máxima Projéteis/metralhadoras máximas de distância antes de desaparecerem.2000
MinSpread Quantidade mínima de distorção para a arma.0
Espalhamento Máximo Quantidade máxima de distribuição para a arma.Valor de MinSpread
Fator de Gravidade Quantidade que a gravidade deve influenciar cada bala/projétil. Por exemplo, este valor para o Crossbow é 1 porque as setas se arqueiam durante o vôo, mas este valor para o Rocket Launcher é 0 porque as rochas propelidas viajam diretamente.0
Tem escopo Definir para verdadeiro se você quiser usar o escopo que está especificado em Weapons System GUI.falso
Animação de Recarregamento Nome da nova animação de recompilação na Assets / Animações do pasta de sistemas . Recarregamento de Rifle
Rastreamento de Mira Nome da pista de animação de meta em Recursos / Animações do pasta de sistema. Mira de Rifle
Rastreamento de Mira Zoom. Nome da animação de rastreamento de zoom de meta em Recursos / Animações do pasta de sistema. RifleAimDownSights
RecuoMínimo Recuo mínimo adicionado para cada tiro.0.05
RecuoMaximo Recuo máximo adicionado para cada tiro.0.5
TotalRecoilMax Total de recuo máximo acumulado. O recuo atual da arma nunca excederá este valor.2
RecoilDecay Multiplicador de decadência para recuo; Essencialmente, a taxa em que o recuo diminui após o tiro.0.825
RecoilDelayTime Tempo de espera após o tiro/clique antes que o recuo seja adicionado à Câmera.0.07
Tempo de Inicialização Comprimento do tempo depois de equipar a arma antes que o jogador possa atirar. Isso impede que os jogadores atirem um único tiro de várias armas em sucessão rápido.0.2
Reprodução de Fogo-PlaybackSpeedRange Quantidade que o tom pode variar para o som Fired da arma. Defina isso em 0 para sempre tocá-lo na mesma nota.0.1
NumProjectiles Número de balas/projéteis que atirarão ao mesmo tempo quando você clicar/tocar uma vez. Isso é útil para armas como a Escopeta que atira múltiplas balas ao mesmo tempo. Observe que um tiro sempre usará exatamente uma munição, independentemente deste valor.1

Opções Especializadas

Você pode adicionar/modificar as seguintes opções para qualquer arma. Essas personalizações requerem modificar o Model da arma, Configuration ou ambos. Algumas configurações dependem de outros, como Partículas de Muzzle, que requerem as crianças necessárias para 2>Efeitos de Projétil/Acerto e Sons2>.

Animações e Sons de Parafuso

O parte de arma é a peça que se move para trás e para a frente cada vez que é disparada.

Prego BasePart que se move quando a arma é disparada.
Motor de Parafuso Motor6D usado para animação do parafuso. Certifique-se de definir o motor's Part0 para o modelo de arma PrimaryPart e 0> Class.Motor6D.Part1|Part1</
Inicializa??o de BoltMotor Attachment cuja posição na raiz BasePart determina onde o parafuso está quando está em repouso.
BoltMotorTarget Attachment cuja posição na base BasePart determina onde o parafuso anima quando ativado.
Som de abertura de parafuso Sound que toca quando a alavanca se abre.
optional
Som de Fechamento de Parafuso Sound que toca quando a alavanca se fecha.
optional
ItemDescriçãoPadrão
Ação Aberta em Tempo Ajusta o tempo que leva para a alavanca abrir a posição.0.025
AçãoCloseTime Tempo que leva para a viga se anima para uma posição fechada.0.075

Ejetando Cascas de Balas

As armas podem incluir caixas de balas físicas que ejetam ao disparar e cair no chão.

CasingEjectPoint Attachment cuja posição na parte pai BasePart determina onde você deseja que as capas de balas pop-out. Observe que sua orientação determina a direção em que as capas de balas pop-out.
ItemDescriçãoPadrão
Efeito de Encaixe Nome do caso BasePart em Recursos / Efeitos / 1> Casings1> da pasta de sistema.4>
CasingEjectSpeedMin Velocidade mínima de ejeção das caixas15
CasingEjectSpeedMax Velocidade máxima de ejeção de caixas18
  • Filho do casing BasePart em Recursos / Efeitos / 1> Casings1> do 4>pasta de sistema4>
Som de Caseamento de Coringa Sound que toca quando caixas tocam o chão.
optional

Efeitos de Projétil/Acerto e Sons

Você pode configurar projéteis físicos para qualquer arma, juntamente com Sounds, Beams e ParticleEmitters para efeitos de hit e outros efeitos especiais.

ItemDescriçãoPadrão
Efeito de Chute Nome de um efeito de nome armazenado dentro de Recursos / Efeitos / Tiros do 1> pasta de sistema1> .
O ShouldMovePart Definido para verdadeiro se o efeito de chute da arma deve se mover com o projétil ou falso se não. Você deve definir isso apenas para 2> verdadeiro2> se houver um objeto visível que se move com cada tiro, como uma seta ou um foguete.falso
Tempo de Desvanecimento do Raio A duração de Beam0 ou Beam1 ( ver abaixo ) para desaparecer depois que a bala/projétil atinge algo. Por padrão, nenhuma desvanecimento manual será aplicado pelo código.0
BeamWidth0 Espessura de Beam0 ou Beam1 em Attachment0 ( 1> veja abaixo1> ).1.5.1
BeamWidth1 Espessura de Beam0 ou Beam1 em Attachment1 ( 1> veja abaixo1> ).1.8.
Partículas de Número Número de partículas que o HitParticles ( veja abaixo ) emitterá.3
HitParticlesUsePartColor Definir para verdadeiro se você quiser que as partículas de hit sejam da cor da superfície de hit; falso se você quiser que as partículas de hit não mudem de cor.verdade
  • Descendentes do especificado Efeito de Chute notado na seção anterior
Voador Sound que toca enquanto a bala/projétil está viajando.
optional
Beam0 Primeiro espaço para um Beam atrás da bala/projétil. Não se esqueça de definir Ataque0 e Ataque1 .
optional
Beam1 Segundo slot para um Beam atrás da bala/projétil. Não se esqueça de definir Ata0 e Ata1 .
optional
Anexo0 Class.Rotation cuja posição na raiz BasePart determina a parte de trás dos raios; certifique-se de definir Beam.Attachment0 em ambos os 0>Beam00> e Attachment3> para isso.
optional
Anexo1 Class.Rotation cuja posição na raiz BasePart determina a frente dos raios de puxamento; certifique-se de configurar Beam.Attachment1 em ambos 0> Beam00> e Attachment3> para isso.
optional
Partículas de Trilha ParticleEmitter filho direto de Attachment0 ; isso será emitido enquanto a bala/projétil estiver viajando.
optional
Partículas de Liderança ParticleEmitter ; este será emitido enquanto a bala/projétil estiver viajando.
optional
Efeito de Acerto Attachment cuja posição será definida como Beam.Attachment1 de Beam0 quando a bala/projétil atingir. Você deve especificar 0> Beam00> e seus anexos para que isso funcione corretamente.
optional
Som de Acerto Sound ; filho direto de HitEffect ; toca quando a bala/projétil atinge.
optional
Partículas de Acerto Sound ; filho direto de HitEffect ; emite quando a bala/projétil atinge.
optional
[ParteProjétil] Qualquer Part ou MeshPart que você deseja aparecer como um projétil físico. Certifique-se de definir ShouldMovePart notado na seção anterior para 2> verdadeiro2> se você tiver um objeto visível aqui.
optional

Partículas de Boca

Essa opção emite partículas do ParticleEmitter especificado no Tipo de AtaqueAttachment quando é disparado.

Descendentes de configuração:

  • ShotEffect ( StringValue ) — Nome de um efeito de chute armazenado dentro de WeaponsSystem/Assets/Effects/Shots .
  • NumMuzzleParticles ( IntValue ) (opcional) — Número de partículas de muzzle que serão emitidas; padrão é 50 .

Para o efeito de chute especificado, adicione um recurso ParticleEmitter dentro de WeaponsSystem/Assets/Effects/Shots chamado MuzzleParticles .

Efeitos de Luminosidade

Essa opção cria um efeito de Beam de raios quando a arma é disparada.

Descendentes de modelos:

  • MuzzleFlash0 ( Attachment ) — Usado para especificar um lado do flash de muzzle. A posição não importa.
  • MuzzleFlash1 ( Attachment ) — Usado para especificar o lado oposto do muzzle flash. A posição não importa.
  • MuzzleFlash ( Beam ) — Certifique-se de definir Attachment0 para 0> MuzzleFlash00> e 3> Attach13> para 6> MuzzleFlash1 6>.

Descendentes de configuração:

  • MuzzleFlashTime ( NumberValue ) (opcional) — Comprimento do tempo muzzle flash será mostrado para; padrão é 0.03 .
  • MuzzleFlashRotation0 ( NumberValue ) (opcional) — Rotatação mínima do flash do muzzle; padrão é -math.pi .
  • MuzzleFlashRotation1 ( NumberValue ) (opcional) — Rotação máxima do muzzle flash; padrão é math.pi .
  • MuzzleFlashSize0 ( NumberValue ) (opcional) — Tamanho mínimo do muzzle flash; padrão é 1 .
  • Tamanho do Flash da Cabeça1 ( NumberValue ) (opcional) — Tamanho máximo do flash da cabeça; o padrão é 1 .

Trilhas de Partículas

Essa opção cria uma trilha de vária longitude da arma ao ponto de impacto do projétil.

Descendentes de configuração:

  • TrailLength ( NumberValue ) (opcional) — Comprimento da trilha atrás da bala/projétil; o padrão é nil, o que significa que o comprimento da trilha será calculado usando 0> TrailLengthFactor 0>.
  • TrailLengthFactor ( NumberValue ) (opcional) — A comprimento da trilha será definido para este valor multiplicado pela distância que a bala/projétil viajou na última janela; o padrão é 1 . Observe que isso será sobrescrito se você incluir 0> TrailLength 0> .
  • Mostrar todo o rastro até a hit ( BoolValue ) (opcional) — Definido para verdadeiro para renderizar o rastro a partir do ponto de arma até onde o projétil estiver; isso substituirá ambas as opções 0>

Marcações de Acerto

Esta adição visual aparece na superfície onde os projéteis atingem e é útil para as setas, buracos de balas, marcas de queimadura, etc.

Descendentes de configuração:

  • HitMarkEffect ( StringValue ) (opcional) — Nome do efeito de hit mark armazenado dentro de WeaponsSystem/Assets/Effects/HitMarks ; padrão é 0> BulletHole 0> .
  • AlignHitMarkToNormal ( BoolValue ) (opcional) — Definido como verdadeiro se a marca de hit sempre deve estar alinhada na superfície como um buraco de bala, ou 0> falso 0> se a marca de hit deve aparecer presa na superfície da direção da qual vem o projétil (como uma seta). O padrão é

Você pode adicionar o seguinte recurso opcional dentro de WeaponsSystem/Assets/Effects/HitMarks :

  • Brilho ( Decal ) (opcional) — Parece na superfície de hit totalmente opaca, então rapidamente fica mais transparente, como um efeito brilhante de cor vermelha que desvanece rapidamente. Útil para coisas como mostrar um marcador vermelho brilhante onde explosivos atingem.
  • BulletHole ( Decal ) (opcional) — Aparece na superfície de hit totalmente opaca e, após 4 segundos, desaparece para transparente por mais de 1 segundo.
  • Billboard de Impacto ( BillboardGui ) (opcional) — Exibe na superfície de hit, sempre voltado para a Câmera.
    • Impacto ( ImageLabel ) (opcional) — Filho direto de ImpactBillboard ; isso começa totalmente opaco, cresce até o tamanho total do 0> ImpactBillboard0> sobre 0.1 segundos, então encolhe até metade do tamanho e desvanecer para a metade de sua transparência sobre 0.1 segundos.
  • Qualquer Part / MeshPart / SpecialMesh que você deseja aparecer como um projétil físico (opcional). Por exemplo, incluir uma seta 1> Class.MeshPart1> e definir 4> AlignHitMarkToNormal 4> notado acima para <

Projéteis Explosivos

Projéteis podem incluir um objeto de Explosão para danificar personagens de jogadores em uma área ao redor do ponto de impacto.

Descendentes de configuração:

  • ExplodeOnImpact ( BoolValue ) (opcional) — Definido como verdadeiro se você quiser balas/projéteis para a arma explodir no impacto, 0> falso 0> de outra forma. Padrão é 3> falso 3> .
  • Raios de Explosão ( NumberValue ) (opcional) — Raios de explosão; padrão é 8 .
  • Pressão de Explosão ( NumberValue ) (opcional) — Pressão de explosão; padrão é 10000 .
  • Dano de Explosão ( NumberValue ) (opcional) — Dano dado às coisas no centro da explosão. Observe que a explosão causa menos dano quanto mais longe os objetos estiverem do centro da explosão. Padrão é 100 .

Carregando Arma

Uma arma de carga, como a Railgun, deve ser recarregada entre os tiros antes de poder disparar novamente.

Descendentes de modelos:

  • Carregando ( Sound ) (opcional) — Joga enquanto a arma está carregando.
  • Descarregando ( Sound ) (opcional) — Joga enquanto a arma está descarregando, por exemplo, se você recarregar a arma apenas parcialmente e soltar o botão de disparo.
  • CarregamentoCompleto ( Sound ) (opcional) — Joga quando a arma atingir a cobrançacompleta.
  • Descarregamento finalizado ( Sound ) (opcional) — Joga quando a arma está completamente descarregada.
  • ChargeGlow ( BasePart ) (opcional) — Este objeto ficará menos transparente à medida que a arma carrega, para que seja totalmente opaco em 100% de cobrança.
  • ChargeCompleteParticles ( ParticleEmitter ) (opcional) — Emite quando a arma terminar de carregar. Este emissor pode ser um filho de qualquer modelo BasePart ou um filho de um 0> Class.Attendance0> dentro do 3> Class.BasePart 3> .
  • DischargeCompleteParticles ( ParticleEmitter ) (opcional) — Emite quando a arma está completamente descarregada. Este emissor pode ser um filho de qualquer modelo BasePart ou um filho de um 0> Class.Attendance0> dentro do 3> Class.BasePart 3> .
  • ChargingParticles ( ParticleEmitter ) (opcional) — Emite enquanto a arma está carregando. Você pode incluir vários emissores deste nome e cada um deles emite enquanto carrega. Este emissor pode ser um filho de qualquer modelo BasePart ou um filho de um 0> Class.

Descendentes de configuração:

  • Taxa de Recarregamento ( NumberValue ) — Taxa em que a arma será cobrança. Este valor deve ser especificado para indicar que a arma usa recarregamento.
  • DischargeRate ( NumberValue ) (opcional) — Taxa em que a arma será descarregada; o padrão é 0 , o que significa que a arma não será descarregada em todas / todos.
  • CarregarPassivamente ( BoolValue ) (opcional) — Definido como verdadeiro se você quiser que a arma seja carregada passivamente para que ela possa disparar instantaneamente quando você clique, ou 0> falso 0> se você quiser que a arma seja carregada e atire quando a carga for completa. Padrão é 3> falso
  • ChargingParticlesRatePerCharge ( IntValue ) (opcional) — Número de partículas que irão emitir de todos os ChargingParticles emissores multiplicado pelo carregamento atual da arma. O padrão é
  • Descarregamento de Fogo ( NumberValue ) (opcional) — A quantidade de carga da arma será perdida ao disparar um tiro totalmente carregado; o padrão é 1 .
  • Particles de Carga Finalizada ( IntValue ) (opcional) — Número de partículas que a - ChargeCompleteParticles emitterá uma vez que a arma estiver totalmente carregada. O padrão é 25 .
  • NumDischargeCompleteParticles ( IntValue ) (opcional) — Número de partículas que os - DischargeCompleteParticles emitem quando a arma estiver completamente descarregada. O padrão é 0>250>.

Arma de Arco

Uma arma de arco, como a Crossbow, pode incluir uma construção de corda e braços realistas, bem como uma seta visual derrubada para a string / cadeia / texto.

Além de adicionar descendentes de modelos, você precisa aplicar o seguindo:

  • Faça a arma em uma arma de carga. Por exemplo, adicione o requerido taxa de carga dentro da arma's Configuration que especifica como rápido a string é voltar. Além disso, considere adicionar descendentes opcionais à arma's 1> Class.Model1> como um 4> som de carga
  • Definir o Tipo de Arma para BowWeapon como indicado em Estrutura de Arma .

Descendentes de modelos:

  • LeftString ( Beam ) (opcional) — A parte visual da string / cadeia / texto.
  • RightString ( Beam ) (opcional) — A parte visual da direita da string / cadeia / texto.
  • Flecha ( BasePart ) (opcional) — A flecha que aparece quando a proa é totalmente desenhar. Observe que isso é apenas para a aparência visual na proa (a seta real ativada será um ShotEffect como descrito em 0>Efeitos de Projétil/Acerto0> ).
  • String1 ( Attachment ) (opcional) — O ponto central da string / cadeia / texto.
  • StringLoose (Attachment )(opcional) — Ponto onde String1 deve ser quando o arco está em repouso.
  • StringTight ( Attachment ) (opcional) — Pontos onde String1 deve ser quando o arco for totalmente desenhado.
  • Braços ( Part ) (opcional) — Uma parte que apenas serve como um indicador interno de que os braços internos serão animados. Isso pode conter as seguintes crianças diretas:
  • LeftString0 ( Attachment )(opcional) — Ponto onde o lado esquerdo da string é conectado ao arco.
  • RightString0 ( Attachment ) (opcional) — Ponto onde o lado direito da string é conectado ao arco.
  • LeftLoose ( Attachment ) (opcional) — Ponto onde LeftString0 deve estar quando o arco estiver em repouso.
  • RightLoose ( Attachment ) (opcional) — Pontos onde RightString0 deve ser quando o arco estiver em repouso.
  • LeftTight ( Attachment ) (opcional) — Pontos onde LeftString0 deve ser quando o arco for totalmente desenhado.
  • RightTight ( Attachment ) (opcional) — Pontos onde RightString0 deve ser quando o arco for totalmente desenhado.
  • [SpecialMesh] ( SpecialMesh ) (opcional) — A parte do arco que realmente se dobrará quando o arco for desenhado. Observe que você deve especificar os seguintes quatro objetos Vector3Value para fazer esse animação.
  • LooseOffset ( Vector3Value ) (opcional) — Deslocamento do SpecialMesh quando o arco está em repouso.
  • TightOffset ( Vector3Value ) (opcional) — Deslocamento do SpecialMesh quando o arco é totalmente desenhado.
  • LooseScale ( Vector3Value ) (opcional) — Escala do SpecialMesh quando o arco está em repouso.
  • TightScale ( Vector3Value ) (opcional) — Escala do SpecialMesh quando o arco é totalmente desenhado.

Interface gráfica do usuáriodo Sistema de Armas

O sistema de armas principais interage com este sistema para atualizar a GUI com base em coisas como a propagação da arma, indicadores para quando você é atingido ou atingir outras pessoas, etc.

O WeaponsSystemGui é um objeto ScreenGui em WeaponsSystem/Assets que é filho de 2> Class.PlayerGui2> quando a experiência começa. O WeaponSystemGui tem 4 descendentes:

Redimensionando Elementos

ScalingElements é um Folder pai abaixo de WeaponsSystemGui com os seguintes descendentes:

NomeTipo de InstânciaDescrição
Indicadores DirecionaisFolderUm Folder onde todos os indicadores direcionais são armazenados.
CrosshairFrameUm Frame contendo os seguintes objetos:[UIAspectRationConstraint] - 1> Class.UIAspectRatioConstraint1> 4> Bottom4> - 7> Class.ImageLabel7>
Marcador de AcertoFrameUm Frame contendo os seguintes objetos: [UIAspectRatioConstraint] - UIAspectRatioConstraint1> Hit MarkerImage1> - 4> Class.ImageLabel4> que aparece e desaparece quando o jogador acerta outro personagem de jogador com sucesso.

Tela Grande

LargeTouchscreen é um Frame contendo botões que são exibidos em grandes telas de toque. GrandeTouchscreen tem os seguintes descendentes:

Mira

O escopo é um Frame que contém ScopeImage ( ImageLabel ) que aparece quando você zooma em uma arma com HasScope ativado (veja 2> Estrutura da Arma2>). Scope tem os seguintes descendentes:

NomeTipo de InstânciaDescrição
Instância de EscopoFrameUm Frame contendo as seguintes recursos usados ao zoomar em uma arma com HasScope habilitado: [UIAspectRationConstraints] - UIAspectRatioConstraint 1>

Tela Pequena

SmallTouchScreen é um Frame contendo botões que são exibidos em pequenos touchscreens. SmallTouchscreen tem os seguintes descendentes:

Criar um Índice Direcional

Indicadores direcionais são usados para mostrar a direção de algo ao redor do crosshair do jogador. Por exemplo, se alguém atirar em você, um semicírculo vermelho pode aparecer ao redor do crosshair na direção em que o tiro veio. Outros exemplos incluem indicadores para mostrar a direção de passos de pé, tiro indireto ou até mesmo objetos ambientais, como baús.

Para criar um novo indicador, adicione um novo Indicador Frame em WeaponsSystemGui/ScalingElements/DirectionalIndicators com a seguinte estrutura:

NomeTipo de InstânciaDescrição
[Restrição de Aspecto da Interface]UIAspectRatioConstraint
[ImagemLabel]ImageLabelImagem do indicador direcional. Tweaking the rotation of the image in Studio pode ser necessário, a menos que você carregue a imagem para que ela esteja voltada para baixo e há pouco ou nenhum espaço em branco ao redor dela. Este rótulo de imagem também deve conter seu próprio UIAspectRatioConstraint .
[Configuração]ConfigurationContém propriedades opcionais para ajustar. Veja Configuração de Indicador para mais informações.

Uma vez criado, você pode ativar um indicador via o seguinte comando dentro de WeaponsSystem/Libraries/WeaponsGui onde indicatorName é o nome de estrangulado do indicador para ativar e worldPos é a posição mundial onde o indicador direcional deve apontar:


self.DirectionalIndicatorGuiManager:ActivateDirectionalIndicator(indicatorName, worldPos)

Configuração do indicador

Os DirectionalIndicators podem ser modificados ainda mais ao ajustar o objeto Configuration sob o [Indicator]. Todas essas configurações têm um valor padrão, então não há necessidade de configurar configurações quando não estiver modificando uma configuração.

As seguintes configurações podem ser configurar:

NomeTipo de InstânciaDescrição
Distância do nível do centroNumberValueNúmero de níveis de distância do centro da tela (cada nível de distância é cerca de 0,03 de dimensionar/escalonarde tela); padrão é 6 .
Tempo de DesvanecimentoNumberValueTempo de desvanecimento do indicador após sua ativação e o tempo de TimeBeforeFade; padrão é 1 .
NomeStringValueNome do indicador direcional como você deseja referenciá-lo no código; o padrão é o nome do nível superior do indicador Frame .
Tempo antes de desvanecerNumberValueNúmero de segundos que o indicador aparecerá antes de desaparecer; o padrão é 1 .
Transparência antes de DesvanecerNumberValueTransparência do indicador antes de ele começar a desvanecer; padrão é 0 .
Nível de larguraNumberValueNúmero de níveis de largura do centro (cada nível de largura é cerca de 0,03 de dimensionar/escalonarde tela); o padrão é o valor de DistânciaLevelFromCenter .

Mostrar Billboard de Dano

O painel de dano é usado para mostrar pequenos números acima da cabeça de um personagem quando eles são danificados. Esses só aparecerão para o jogador que danificou o personagem de outro jogador, não para espectadores de jogadores.

Os bilhetes de dano são processados em WeaponsSystem/Libraries/DamageBillboardHandler e podem ser ativados a partir de qualquer código do lado do cliente, como mostrado abaixo, onde o dano é a quantidade de dano feita e a adornmentPart é a parte na qual o bilhete será colocado, como a cabeça da vítima:


DamageBillboardHandler:ShowDamageBillboard(damage, adornmentPart)

Câmera de Ombro

A câmera de ombro é uma câmera de terceiros que olha para o ombro direito do personagem. Para personalizar a Câmerade ombro, modifique as variáveis sob os parâmetros de configuração (conjuntos) na função ShoulderCamera.new() . Você pode modificar coisas como o campo de ver, o deslocamento do personagem, a velocidade de caminhada

Controle de Corrida e Zoom

Por padrão, o sistema de armas adiciona capacidade de "corrida" para que os jogadores possam correr pressionando a tecla Shift , pressionando completamente no joystick dinâmico (celular), ou pressionando completamente na joystick esquerda (controle / controle de jogo). Se você quiser desativar a corrida, configure o valor de SprintEnabled dentro de Weapons

O sistema também reduz a velocidade do jogador enquanto eles estão mirando/Zoomando, mas você pode desativar esse comportamento definindo o valor de SlowZoomWalkEnabled para falso .