Kit de armas

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Para ayudar a crear experiencias competitivas basadas en combates, varias armas aprobadas están disponibles para su uso en cualquier experiencia.El sistema central presenta armas basadas en proyectiles con una cámara sobre el hombro, y configurar la velocidad del proyectil lo suficientemente alta puede simular armas de rayos como pistolas láser.

Para usar un arma aprobada en tu experiencia:

  1. Seleccione un arma desde abajo, navegando al enlazarde la biblioteca de recursos.

Pistola
>

Escopeta
Rifle automático

Pistola subfusil
>

Rifle francotirador

Ballesta
>

Lanzagranadas
Lanzador de cohetes
Cañón de riel
  1. En la página de elementos de la arma, haz clic en el botón verde Obtener y confirma la transacción.

  2. En Studio, abra la Caja de herramientas ( VerCaja de herramientas ).

  3. Seleccione la sección de su caja de herramientas Inventario .

  4. Localiza el arma y haz clic en ella para agregarla al lugar.Cuando se le pregunta si desea poner la herramienta en el paquete de inicio, haga clic en si desea que los jugadores comiencen con la arma en su mochila, o haga clic en No para simplemente colocar la arma en el mundo 3D como recogida.

  5. Si esta es la primera vez que se introduce un arma aprobada, mueva su carpeta Sistema de armas a Servicio de guiones del servidor para servir como el directorio unificado sistema de armas para todas las armas aprobadas en la experiencia.

Estructura de carpeta del sistema

La carpeta Sistema de armas es una carpeta unificada que contiene recursos, configuraciones y scripts que alimentan todas las armas aprobadas en la experiencia.Si se encuentra en ServerScriptService , reemplaza cualquier carpeta equivalente de Sistema de armas que pueda residir dentro de armas individuales.

La carpeta Sistema de armas contiene las siguientes instancias:

  • Activos ( Folder )
    • Animaciones ( Folder ) – Almacén para animaciones utilizadas en los sistemas de armas.
    • Efectos ( Folder ) - Recubrimientos ( Folder ) - Almacenamiento para todos los recursos de recubrimiento de balas. HitMarks ( ) - Almacenamiento para todos los efectos de marcado golpeados. Tiros ( ) – Almacenamiento para todos los efectos de disparo.
    • WeaponsSystemGui ( ScreenGui ) – Configuraciones para el Sistema de armas GUI .
  • Configuración ( Folder ) – Valores de configuración para el sistema de armas.
  • Bibliotecas ( Folder ) – Almacena todos los demás ModuleScripts usados en el sistema de armas.
  • Tipos de arma ( ) – Especifica todos los tipos de arma.
  • Script de armas del servidor ( )
  • Versión ( IntValue )
  • ClientWeaponScript ( LocalScript )
  • NetworkingCallbacks ( ModuleScript )
  • Datos de arma ( )
  • Sistema de armas ( ModuleScript )

Dentro de la carpeta Sistema de armas , se controlan diferentes aspectos por el siguiente ModuleScripts :

AspectoManejado principalmente dentro de...
Funcionalidad de armas
  • Bibliotecas / Arma base
  • Tipos de arma / Arma de bala
  • Tipos de arma / Arma de arco
cámarade hombro
  • Bibliotecas / Cámara de hombro
Interfaz gráfica (o GUI)de armas
  • Bibliotecas / ArsenalGUI
  • Bibliotecas / DirectionalIndicatorGuiManager
  • Bibliotecas / Daño de tablero de anuncios

Estructura de arma

Las armas aprobadas son Tools y se llaman como aparecerán en la mochila del jugador. Cada arma se estructura con una jerarquía similar.

introducirde arma

El Tipo de arma StringValue se corresponde con el ModuleScript para el arma en la carpeta Sistema de armas / Tipos de armas .Los dos valores base son Arma de bala y Arma de arco .

aplicación de modeladode arma

Cada arma contiene un Model formado por uno o más BaseParts para formar el arma física.Uno de estos debe establecerse como el aplicación de modeladode PrimaryPart .

El modelo también incluye los siguientes descendientes importantes que pueden ser padres de uno de los aplicación de modeladoBaseParts :

  • Archivo de consejoAttachment cuya posición en el padre BasePart determina dónde salen las balas/proyectiles.
  • Archivo de manejoAttachment cuya posición en el padre BasePart determina dónde se solda el manejo .
  • DespedidoSound que se reproduce cuando se dispara el arma.
  • RecargarSound que se reproduce cuando se recarga el arma.
  • Descendientes adicionales para cualquier opción especializada.

Mano de controlador

La parte Manija determina dónde sostiene un personaje de jugador el arma.Esto debe ser un Part , debe llamarse Mango , y debe ser un hijo directo de la arma (herramienta).

Carpeta de configuración

La carpeta Configuración contiene tipos de "valor" específicos para el comportamiento de las armas.Además de los predeterminados, puedes agregar elementos de configuración adicionales para opciones especializadas cuando sea aplicable.

A continuación se muestran las configuraciones base y sus valores predeterminados:

ArtículoDescripciónPor defecto
Capacidad de munición Número de disparos en cada "clip de munición" antes de que el jugador deba recargar.Tenga en cuenta que las municiones son ilimitadas y esto no especifica cuánta munición lleva un jugador.30
Modo de fuego Elige entre Semiautomático (un disparo por clic/toque), Automático (desencadenarcontinuo), o Explosión (explosión de disparos igual a NumBurstShots por clic/toque). Semiautomático
Enfriamiento de disparo Tiempo mínimo de espera entre clics.Para armas con modo de fuego de automático , este es también el tiempo entre disparos mientras se presiona el botón de hcer clico se mantiene presionado.0.1
Tiempo de reutilización de disparo explosivo Tiempo entre cada disparo en una ráfaga; solo importa si configuras el modo de fuego a ráfaga .Valor de tiempo de reutilización de disparo
Tiros de explosión numérica Número de disparos por clic/burst; solo importa si configuras Fuego a Explosión .3
Daño de golpe Cantidad de daño que hace cada golpe directo.10
Distancia de daño total Distancia máxima que los disparos harán daño completo.Cualquier cosa que golpee más allá de esta distancia recibirá menos y menos daño a medida que la distancia se acerque a ZeroDamageDistance .1000
Distancia de daño cero Cualquier cosa que golpee en o más allá de esta distancia no recibirá daños.10000
Velocidad de bala Velocidad a la que viajan las balas/proyectiles cuando se disparan. Establecer esto en un valor muy alto como 20000 simula armas de rayos como pistolas láser.1000
Distancia máxima Máxima distancia de balas/proyectiles antes de desaparecer.2000
Dispersión mínima Cantidad mínima de difusión para el arma.0
Dispersión máxima Cantidad máxima de difusión para el arma.Valor de MinSpread
Gravedad factor Cantidad que la gravedad debería influir en cada bala/proyectil.Por ejemplo, este valor para la ballesta es 1 porque las flechas arcan durante el vuelo, pero este valor para el lanzador de cohetes es 0 porque los cohetes propulsados viajan rectos.0
Tiene alcance Establezca en verdadero si desea utilizar el alcance que se especifica en Interfaz de usuario del sistema de armas.falso
Animación de recarga Nombre de la pista de animación de recarga en Recursos / Animaciones del directorio del sistema. Recarga de rifle
Objetivo de seguimiento Nombre de la pista de animación del objetivo en Recursos / Animaciones del directorio del sistema. Apuntar con el rifle
Rastro de enfoque Nombre de la pista de animación de enfoque en Recursos / Animaciones del directorio del sistema. Apuntas hacia abajo con miras de rifle
Retroceso mínimo Retroceso mínimo agregado por cada disparo.0.05
RetrocesoMax Retroceso máximo agregado por cada disparo.0.5
Recoil total máximo Retroceso acumulado máximo total. El retroceso actual de la arma nunca excederá este valor.2
Decadencia de retroceso Multiplicador de decadencia para el retroceso; esencialmente la velocidad a la que disminuye el retroceso después de disparar.0.825
Tiempo de retraso de retroceso Tiempo de espera después de disparar/hacer clic antes de retroceder se agrega a la cámara.0.07
Tiempo de inicio Longitud del tiempo después de equipar el arma antes de que el jugador pueda disparar.Esto impide que los jugadores disparen un solo disparo con múltiples armas diferentes en rápida sucesión.0.2
Rango de velocidad de reproducción de fuego Cantidad que el tono puede variar para el sonido disparado de la arma. Establece esto en 0 para que siempre se reproduzca con el mismo tono.0.1
Proyectiles numéricos Número de balas/proyectiles que dispararán al mismo tiempo cuando hagas clic/toques una vez.Esto es útil para armas como la escopeta que dispara múltiples balas al mismo tiempo.Tenga en cuenta que un disparo siempre usará exactamente una munición independientemente de este valor.1

Opciones especializadas

Puedes añadir/modificar las siguientes opciones para cualquier arma.Estas personalizaciones requieren modificar el arma Model , el arma Configuration o ambas.Algunas configuraciones dependen de otras, como partículas de salida que requieren los hijos necesarios para efectos de proyectil/golpe y sonidos .

Animaciones y sonidos de perno

El perno de una arma bolt es la parte que se mueve de adelante hacia atrás cada vez que se dispara.

Perno BasePart que se mueve cuando se dispara el arma.
Motor de perno Motor6D se usa para animar el perno.Asegúrate de establecer el motor de Part0 al aplicación de modeladode arma de PrimaryPart y Part1 a la parte de perno .
Inicio del motor de perno Attachment cuya posición en el padre BasePart determina dónde está el perno cuando está en reposo.
Objetivo de motor de perno Attachment cuya posición en el padre BasePart determina dónde se anima el perno al disparar.
BoltOpenSound Sound que se reproduce cuando el perno se abre.
optional
Cerrar sonido de perno Sound que se reproduce cuando el perno se cierra.
optional
ArtículoDescripciónPor defecto
Tiempo de acción abierta El tiempo que toma el perno para animarse a la posición abierta.0.025
Tiempo de cierre de acción El tiempo que toma el perno para animarse a la posición cerrada.0.075

Expulsar casquillos de bala

Las armas pueden incluir casquillos de balas físicos que se expulsan al disparar y caen al suelo.

Punto de expulsión de casing Attachment cuya posición en el padre BasePart determina dónde quieres que salgan los casquillos de bala.Tenga en cuenta que su orientación determina la dirección en la que salen las cascaras.
ArtículoDescripciónPor defecto
Efecto de casing Nombre del casing BasePart en Activos / Efectos / Casings del directorio del sistema .
Velocidad de expulsión de casingEjectSpeedMin Velocidad mínima de expulsión de casquillos15
Velocidad máxima de expulsión de casing Velocidad máxima de expulsión de casquillos18
  • Hijo de la casación en Activos / Efectos / Casos del directorio del sistema
CasingHitSound Sound que suena cuando los casquillos golpean el suelo.
optional

Efectos de proyectil/golpe y sonidos

Puedes configurar proyectiles físicos para cualquier arma, junto con Sounds , Beams y ParticleEmitters para efectos de golpe y otros efectos especiales.

ArtículoDescripciónPor defecto
Efecto de disparo Nombre de un efecto de disparo almacenado dentro de Recursos / Efectos / Tiros del directorio del sistema .
Debería mover parte Establecer en verdadero si el efecto de disparo de la arma debe moverse con el proyectil o falso si no.Solo deberías establecer esto en verdadero si hay un objeto visible que se mueva con cada disparo, como una flecha o un cohete.falso
Tiempo de desaparición del rayo El tiempo que tarda Beam0 o Beam1 ( véase a continuación ) en desaparecer después de que la bala/proyectil golpee algo.Por defecto, no se aplicará desaparición manual por código.0
Anchura del rayo0 Espesor de Beam0 o Beam1 en Attachment0 ( véase a continuación ).1.5
Anchura del rayo1 Espesor de Beam0 o Beam1 en Attachment1 ( véase a continuación ).1.8
Partículas numéricas Número de partículas que el emisor HitParticles ( véase a continuación ) emitirá.3
HitPartículas usa color de parte Establezca en verdadero si desea que las partículas de impacto sean del color de la superficie de impacto; falso si desea que las partículas de impacto no cambien de color.cierto
  • Descendientes del efecto de disparo especificado ShotEffect notado en la sección anterior
Volar Sound que se reproduce mientras la bala/proyectil está viajando.
optional
Beam0 Primera ranura para un seguimiento Beam detrás de la bala/proyectil.No olvides establecer Archivo adjunto0 y Archivo adjunto1 .
optional
Beam1 Segundo espacio para un trazado Beam detrás de la bala/proyectil.No olvides establecer Archivo adjunto0 y Archivo adjunto1 .
optional
Archivo0 Attachment cuya posición en el padre BasePart determina la parte trasera de los rayos de seguimiento; asegúrese de establecer Beam.Attachment0 en ambos Beam0 y Beam1 a esto.
optional
Archivo1 Attachment cuya posición en el padre BasePart determina el frente de los rayos de seguimiento; asegúrese de establecer Beam.Attachment1 en ambos Beam0 y Beam1 a esto.
optional
Partículas de seguimiento ParticleEmitter patrocinadas como un hijo directo de Attachment0 ; esto se emitirá mientras la bala/proyectil viaja.
optional
Partículas principales ParticleEmitter padronizadas como un hijo directo de Attachment1 ; esto se emitirá mientras la bala/proyectil esté viajando.
optional
Efecto de golpe Attachment cuya posición se establecerá en Beam.Attachment1 de Beam0 cuando la bala/proyectil golpee.Debes especificar Beam0 y sus adjuntos para que esto funcione correctamente.
optional
Sonido de golpe Sound padroneado como un hijo directo de Efecto de golpe ; se reproduce cuando la bala/proyectil golpea.
optional
Partículas de golpe Sound se convierte en padre como un hijo directo de Efecto de golpe ; emite cuando la bala/proyectil golpea.
optional
[Parte de proyectil] Cualquiera Part o MeshPart que quieras aparecer como un proyectil físico.Asegúrese de que haya establecido Deber mover parte notado en la sección anterior a verdad si tiene un objeto visible aquí.
optional

Partículas de boca

Esta opción emite partículas desde la especificada ParticleEmitter en la punta de la arma TipAttachment Attachment cuando se dispara.

Configuración descendente:

  • Efecto de disparo ( StringValue ) — Nombre de un efecto de disparo almacenado dentro de WeaponsSystem/Assets/Effects/Shots .
  • Partículas de salida de cañón ( IntValue ) (opcional) — Número de partículas de salida de cañón que se emitirán; el predeterminado es 50 .

Para el efecto de disparo especificado, agregue un recurso de emisor de partículas dentro de WeaponsSystem/Assets/Effects/Shots llamado partículas de culata .

Destellos de boca

Esta opción crea un efecto de flash Beam cuando se dispara el arma.

Descendientes de modelo:

  • MuzzleFlash0 ( Attachment ) — Se usa para especificar un lado del flash de boca. La posición no importa.
  • MuzzleFlash1 ( Attachment ) — Se usa para especificar el lado opuesto del flash de cañón. La posición no importa.
  • Destello de boca ( Beam ) — Asegúrese de establecer Attachment0 a Destello de boca0 y Attachment1 a Destello de boca1 .

Configuración descendente:

  • Tiempo de flash de boca ( NumberValue ) (opcional) — Duración del tiempo que el flash de boca mostrará; la predeterminada es 0.03 .
  • MuzzleFlashRotation0 ( NumberValue ) (opcional) — Rotación mínima del flash de culata; la predeterminada es -math.pi .
  • MuzzleFlashRotation1 ( NumberValue ) (opcional) — Rotación máxima del flash de culata; el valor predeterminado es math.pi .
  • MuzzleFlashSize0 ( NumberValue ) (opcional) — Tamaño mínimo del flash de culata; el predeterminado es 1 .
  • MuzzleFlashSize1 ( NumberValue ) (opcional) — Tamaño máximo del flash de culata; el predeterminado es 1 .

Rastros de partículas

Esta opción crea un rastro de diferente longitud desde la arma al punto de impacto del proyectil.

Configuración descendente:

  • Duración del rastro ( NumberValue ) (opcional) — Duración del rastro detrás de bala/proyectil; la opción predeterminada es nil lo que significa que la duración del rastro se calculará en lugar de usar Factor de duración del rastro .
  • Factor de longitud de rastro ( NumberValue ) (opcional) — La longitud del rastro se establecerá en este valor multiplicado por la distancia que la bala/proyectil recorrió en el último marco; el valor predeterminado es 1 .Tenga en cuenta que esto se anulará si incluye Duración del recorrido .
  • Mostrar todo el rastro hasta que se golpee ( BoolValue ) (opcional) — Establezca en verdadero para renderizar el rastro desde la punta de la arma hasta donde sea que el proyectil llegue; esto anulará tanto Longitud del rastro como Factor de longitud del rastro y el rastro solo desaparecerá una vez que el proyectil golpee algo.Establecer en falso para usar una de las dos opciones anteriores para calcular la longitud del rastro.Por defecto es falso .

Marcas de golpe

Esta adición visual aparece en la superficie donde los proyectiles golpean y es útil para flechas, agujeros de bala, marcas de quemadura, etc.

Configuración descendente:

  • Efecto de marcado de golpe ( StringValue ) (opcional) — Nombre del efecto de marcado de golpe almacenado dentro de WeaponsSystem/Assets/Effects/HitMarks ; el predeterminado es BulletHole .
  • AlignHitMarkToNormal ( BoolValue ) (opcional) — Establecer en verdadero si la marca de golpe siempre debe alinearse plana contra la superficie como un agujero de bala, o falsa si la marca de golpe debe aparecer atascada en la superficie desde la dirección de donde salió el proyectil (como una flecha).Por defecto es verdadero .

Puedes agregar el siguiente recurso opcional dentro de WeaponsSystem/Assets/Effects/HitMarks :

  • Brillo ( Decal ) (opcional) — Aparece en la superficie de golpe completamente opaca, luego se vuelve rápidamente más transparente, como un efecto brillante en la superficie que desaparece rápidamente.Útil para cosas como mostrar una marca roja brillante donde los explosivos golpean.
  • BulletHole ( Decal ) (opcional) — Aparece en la superficie de golpe completamente opaca y, después de 4 segundos, desaparece a transparente durante 1 segundo.
  • Tablero de impacto ( ) (opcional) — Se muestra en la superficie de golpe, siempre hacia la cámara.
    • Impacto ( ) (opcional) — Hijo directo de ImpactBillboard ; esto comienza completamente opaco, crece a la tamaño completo del ImpactBillboard sobre 0.1 segundos, luego se reduce a la mitad de su tamaño y desaparece a la transparencia completa sobre 0.1 segundos.
  • Cualquier Part / MeshPart / SpecialMesh que quieras aparecer como proyectil físico (opcional).Por ejemplo, incluir una flecha MeshPart y establecer AlignHitMarkToNormal notado anteriormente a falso hará que la flecha se salga de la superficie desde la dirección en la que la disparaste.

Proyectiles explosivos

Los proyectiles pueden incluir un objeto de explosión para dañar los personajes del jugador en una zona alrededor del punto de impacto.

Configuración descendente:

  • ExplodeOnImpact ( BoolValue ) (opcional) — Establezca en verdadero si desea balas/proyectiles para que la arma explote al impacto, falso de lo contrario.Por defecto es falso .
  • Radio de explosión ( NumberValue ) (opcional) — Radio de explosión de explosión; el valor predeterminado es 8 .
  • Presión de explosión ( NumberValue ) (opcional) — Presión de explosión de explosión; la predeterminada es 10000 .
  • Daño de explosión ( ) (opcional) — Daño infligido a las cosas en el centro de la explosión.Tenga en cuenta que la explosión causa menos daños cuanto más lejos están los objetos golpeados del centro de la explosión.Por defecto es 100 .

Cargando arma

Un arma de carga como el Railgun debe cargarse entre disparos antes de que pueda disparar de nuevo.

Descendientes de modelo:

  • Cargando ( Sound ) (opcional) — Se reproduce mientras la arma se está cargando.
  • Descarga ( Sound ) (opcional) — Se reproduce mientras la arma se está descargando, por ejemplo, si cargas la arma solo parcialmente y sueltas el botón de disparo.
  • Carga completa ( Sound ) (opcional) — Se reproduce cuando la arma haya alcanzado la cargocompleta
  • Descarga completa ( Sound ) (opcional) — Se reproduce cuando la arma se ha descargado completamente
  • Carga de resplandor ( BasePart ) (opcional) — Este objeto se volverá menos transparente a medida que la arma se cargue, de modo que será completamente opaco al 100% de cargo.
  • Partículas de carga completa ( ParticleEmitter ) (opcional) — Emite cuando la arma haya terminado de cargarse.Este emisor puede ser un hijo de cualquier modelo BasePart o un hijo de un Attachment dentro del BasePart .
  • Partículas de descarga completa ( ParticleEmitter ) (opcional) — Emite cuando la arma se haya descargado completamente.Este emisor puede ser un hijo de cualquier modelo BasePart o un hijo de un Attachment dentro del BasePart .
  • Partículas de carga ( ParticleEmitter ) (opcional) — Emite mientras la arma se está cargando.Puedes incluir múltiples emisores de este nombre y cada uno emitirá mientras se carga.Este emisor puede ser un hijo de cualquier modelo BasePart o un hijo de un Attachment dentro del BasePart .

Configuración descendente:

  • Tasa de carga ( NumberValue ) — Tasa a la que se cargola arma. Este valor debe especificarse para indicar que la arma usa carga.
  • Tasa de descarga ( NumberValue ) (opcional) — Tasa a la que se descargará la arma; la predeterminada es 0 lo que significa que la arma no descargará en todos/todas.
  • Cargar pasivamente ( BoolValue ) (opcional) — Establecer en verdadero si quieres que la arma se cargue pasivamente para que dispare instantáneamente cuando hagas hcer clic, o falso si quieres hacer clic/tocar para cargar la arma y tenerla lista cuando se alcance la carga completa.Por defecto es falso .
  • Tasa de carga de partículas por carga ( IntValue ) (opcional) — Número de partículas que emitirán todos los cargadores de partículas emisores multiplicados por la carga actual de la arma.El valor predeterminado es 20 , lo que significa que si la carga de la arma es del 10%, cada emisor de partículas de carga emitirá 2 partículas (20×0.1), y si la carga de la arma es del 90%, cada emisor emitirá 18 partículas (20×0.9).
  • Descarga de fuego ( NumberValue ) (opcional) — Cantidad de carga que la arma perderá después de disparar un tiro completamente cargado; la opción predeterminada es 1 .
  • Partículas de carga completa ( IntValue ) (opcional) — Número de partículas que el emisor de - CargaCompleteParticles emitirá una vez que la arma esté completamente cargada.Por defecto es 25 .
  • Partículas de descarga completa ( IntValue ) (opcional) — Número de partículas que el - DischargeCompleteParticles emisor emitirá cuando la arma se descargue completamente.Por defecto es 25 .

Arma de arco

Un arma de arco como la ballesta puede incluir una construcción de cuerda y brazos realista, así como una flecha visual fijada a la cadena.

Además de agregar descendientes de modelo, debe aplicar lo siguiendo:

  • Haz de la arma una arma de carga.Por ejemplo, agregue el requerido Tasa de carga dentro del arma Configuration que especifica qué tan rápido se dibuja la cadena.Además, considere agregar descendientes opcionales al sonido de la arma Model como un sonido de carga para la cuerda/brazos que se están tirando hacia volver.
  • Establece el Tipo de arma en arma de arco como se indica en estructura de arma.

Descendientes de modelo:

  • LeftString ( Beam ) (opcional) — La mitad visual izquierda de la cadena.
  • RightString ( Beam ) (opcional) — La mitad visual derecha de la cadena.
  • Flecha ( BasePart ) (opcional) — La flecha que aparece cuando el arco está completamente dibujado.Tenga en cuenta que esto es solo para la apariencia visual en el arco (la flecha realmente disparada será un Efecto de disparo como se describe en Efectos de proyectil/golpe y sonidos).
  • String1 ( Attachment ) (opcional) — El punto central de la cadena.
  • StringLoose ( Attachment ) (opcional) — Punto donde String1 debería estar cuando el arco esté en reposo.
  • StringTight ( Attachment ) (opcional) — Punto donde String1 debería estar cuando el arco esté completamente dibujado.
  • Brazos (Part) (opcional) — Una parte que solo sirve como indicador interno de que los brazos de arco se animarán.Esto puede contener los siguientes hijos directos:
  • LeftString0 ( Attachment ) (opcional) — Punto donde el lado izquierdo de la cadena se une al arco.
  • RightString0 ( Attachment ) (opcional) — Punto donde el lado derecho de la cadena se une al arco.
  • Izquierda suelta ( Attachment ) (opcional) — Punto donde LeftString0 debería estar cuando el arco esté en reposo.
  • Derecha suelta ( Attachment ) (opcional) — Punto donde RightString0 debería estar cuando el arco esté en reposo.
  • Izquierda apretada ( Attachment ) (opcional) — Punto donde LeftString0 debería estar cuando el arco esté completamente dibujado.
  • Derecho apretado ( Attachment ) (opcional) — Punto donde RightString0 debería estar cuando el arco esté completamente dibujado.
  • [SpecialMesh] ( SpecialMesh ) (opcional) — La parte del arco que realmente se doblará cuando se dibuje el arco.Tenga en cuenta que debe especificar los siguientes cuatro objetos Vector3Value animados para hacer esto animado.
  • Desplazamiento suelto ( Vector3Value ) (opcional) — Desplazamiento del SpecialMesh cuando el arco está en reposo.
  • TightOffset ( Vector3Value ) (opcional) — Desplazamiento del SpecialMesh cuando el arco esté completamente dibujado.
  • Escala suelta ( Vector3Value ) (opcional) — Escala del SpecialMesh cuando el arco está en reposo.
  • TightScale ( Vector3Value ) (opcional) — Escala del SpecialMesh cuando el arco está completamente dibujado.

Interfaz de usuario del sistema de armas

El sistema de armas principales interfiere con este sistema para actualizar la interfaz gráfica basada en cosas como la difusión de la arma, indicadores para cuando te golpean o golpeas a otros, etc.

El WeaponsSystemGui es un objeto ScreenGui en WeaponsSystem/Assets que se asigna a PlayerGui cuando comienza la experiencia.WeaponSystemGui tiene 4 descendientes:

Escala de elementos

ScalingElements es un padre Folder bajo WeaponsSystemGui con los siguientes descendientes:

Nombreintroducirde instanciaDescripción
Indicadores direccionalesFolderUn Folder donde se almacenan todos los indicadores direccionales.
Punto de miraFrameUn que contiene los siguientes objetos:[UIAspectRationConstraint] - Abajo - Izquierda - Derecha - Superior - Centro -
Marcador de golpeFrameUn Frame que contiene los siguientes objetos:[UIAspectRatioConstraint] - UIAspectRatioConstraint Imagen de marcador de golpe - ImageLabel que aparece y desaparece cuando el jugador golpea con éxito a otro personaje de jugador.

Pantalla táctil grande

LargeTouchscreen es un Frame que contiene botones que se muestran en pantallas táctiles grandes. LargeTouchscreen tiene los siguientes descendientes:

Alcance

El alcance es un Frame que contiene Imagen de alcance ( ImageLabel ) que aparece al hacer zoom en una arma con HasScope habilitado (ver Estructura de arma ). Scope tiene los siguientes descendientes:

Nombreintroducirde instanciaDescripción
Instancia de alcanceFrameUn Frame que contiene los siguientes recursos utilizados al hacer zoom en un arma con HasScope habilitado:[UIAspectRationConstraint] - UIAspectRatioConstraint BottomBlack - Frame LeftBlack - Frame RightBlack - Frame TopBlack - Frame

Pantalla táctil pequeña

SmallTouchScreen es un Frame que contiene botones que se muestran en pequeñas pantallas táctiles. SmallTouchscreen tiene los siguientes descendientes:

Crear un indicador direccional

Los indicadores direccionales se usan para mostrar la dirección de algo alrededor del punto de mira del jugador.Por ejemplo, si alguien te dispara, un semicírculo rojo puede aparecer alrededor de tu punto de mira en la dirección de donde vino el disparo.Otros ejemplos incluyen indicadores para mostrar la dirección de los pasos, fuego indirecto o incluso objetos ambientales como cofres.

Para crear un nuevo indicador, agregue un nuevo indicador Frame en WeaponsSystemGui/ScalingElements/DirectionalIndicators con la siguiente estructura:

Nombreintroducirde instanciaDescripción
[Límite de aspecto de interfaz de usuario]UIAspectRatioConstraint
[Etiqueta imagen]ImageLabelImagen del indicador direccional.Ajustar la rotación de la imagen en Studio puede ser necesario a menos que subas la imagen para que esté hacia abajo y haya poco o ningún espacio en blanco alrededor de ella.Esta etiqueta de imagen también debe contener su propio UIAspectRatioConstraint .
[Configuración]ConfigurationContiene propiedades opcionales para ajustar. Vea Configuración del indicador para más información.

Una vez creado, puedes activar un indicador a través del siguiente comando dentro de WeaponsSystem/Libraries/WeaponsGui donde indicatorName es el nombre de la cadena del indicador para activar y worldPos es la posición mundial en la que debe apuntar el indicador direccional:


self.DirectionalIndicatorGuiManager:ActivateDirectionalIndicator(indicatorName, worldPos)

Configuración del indicador

Los indicadores direccionales se pueden modificar aún más ajustando el objeto padre Configuration que se encuentra bajo el [Indicator] .Todas estas configuraciones tienen un valor predeterminado, por lo que no hay necesidad de establecer configuraciones cuando no se modifica una configuración.

Las siguientes configuraciones se pueden establecer:

Nombreintroducirde instanciaDescripción
Nivel de distancia desde el centroNumberValueNúmero de niveles de distancia desde el centro de la pantalla (cada nivel de distancia es aproximadamente de 0.03 redimensionarde pantalla); el predeterminado es 6 .
Tiempo de desapariciónNumberValueTiempo de desaparición del indicador después de su activación y el tiempo TimeBeforeFade; el predeterminado es 1 .
NombreStringValueNombre del indicador direccional como quieres referenciarlo en el código; por defecto es el nombre del nivel superior del indicador Frame .
Tiempo antes de desaparecerNumberValueNúmero de segundos que el indicador aparecerá antes de desaparecer; el predeterminado es 1 .
Transparencia antes de desaparecerNumberValueTransparencia del indicador antes de que empiece a desaparecer; el predeterminado es 0 .
Nivel de anchoNumberValueNúmero de niveles de ancho desde el centro (cada nivel de ancho es aproximadamente 0.03 redimensionarpantalla); el valor predeterminado es el de Nivel de distancia desde el centro .

Mostrar factura de daños

El tablero de daños se usa para mostrar pequeños números sobre la cabeza de un personaje cuando está dañado.Estos solo aparecerán para el jugador que dañó el personaje de otro jugador, no para los jugadores espectadores.

Los carteles de daño se manejan en WeaponsSystem/Libraries/DamageBillboardHandler y se pueden activar desde cualquier código del lado del cliente como sigue, donde el daño es la cantidad de daño realizado y adornmentPart es la parte en la que adornar el cartel, como la cabeza de la víctima:


DamageBillboardHandler:ShowDamageBillboard(damage, adornmentPart)

cámarade hombro

La cámara de hombro es una cámara de tercera persona que mira sobre el hombro derecho del personaje del jugador.Para personalizar la cámara de hombro, modifique las variables bajo el comentario de -- Parámetros de configuración (constantes) en la función ShoulderCamera.new() de WeaponsSystem/Libraries/ShoulderCamera.Puedes modificar cosas como el campo de vista, el desplazamiento desde el personaje, la velocidad de caminata mientras corres o te acercas , etc.

Control de sprint y zoom

Por defecto, el sistema de armas agrega la capacidad de "correr", por lo que los jugadores pueden correr presionando la tecla Shift, presionando completamente hacia arriba en el joystick dinámico (móvil) o presionando completamente hacia la izquierda en el joystick (controlador para juego).Si quieres desactivar el sprint, establece el valor de SprintEnabled dentro de Sistema de armas / Configuración a falso .

El sistema también reduce la velocidad del jugador mientras apunta/enfoca, pero puedes desactivar este comportamiento al establecer el valor de SlowZoomWalkEnabled a falso .