Evaluando varias declaraciones

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

Si las declaraciones pueden tener múltiples requisitos que deben ser ciertos antes de ejecutar el código. La palabra clave and le permite combinar declaraciones. El siguiente código evaluará primero si dos más dos son seis y luego si cuatro no son seis. Si ambas declaraciones son ciertas, el código se ejecutará.


-- no se ejecutará
if 2 + 2 == 6 and 4 ~= 6 then
print("Both statements are true")
end
-- ejecutará
if 4 + 2 == 6 and 4 ~= 6 then
print("Both statements are true")
end

Creando una Mejorar

Las ventajas son artículos de inicio de experiencia que dan a los jugadores habilidades especiales como volar, invisibilidad o velocidad. Esta ventaja se aplicará cada vez que se toque la ventaja. Continuamente aplicar aumentos puede hacer que el jugador vaya demasiado rápido, por lo que se usará and para controlar el límite de velocidad de caminata superior.

Configurando el Powerup

Usa este código con una parte simple o un aplicación de modelado, como un cristal, una moneda o un orbe de neón brillante.

  1. Crea una nueva parte llamada Powerup yrea un script llamado WalkSpeedManager .

  2. Declara una variable llamada speedBoost y asigna el objeto padre del script.


    -- Da un aumento de velocidad temporal cuando se toca
    local speedBoost = script.Parent
  3. Configura una función llamada onTouch y conecta el evento de tu padre objeto a Touched evento. Luego prueba y verifica tu trabajo.


    local speedBoost = script.Parent
    local function onTouch(otherPart)
    print("Something touched speedBoost")
    end
    speedBoost.Touched:Connect(onTouch)
  4. La propiedad WalkSpeed se encuentra en los objetos Humanoid. Usa el mismo patrón usado al crear una parte de trampa y crear una condición que verifica los objetos Humanoid.

    Busca partes humanoides

    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    print("A Humanoid was found")
    end
    end

Velocidad de los jugadores Up

El impulso de velocidad hará que los avatares caminen más rápido cada vez que el impulso de velocidad se toque. Eso se volverá muy, muy rápido. La palabra clave and asegurará que los jugadores no puedan ir demasiado rápido al habilitar solo el impulso de velocidad si el jugador está debajo de una cierta velocidad.

  1. Si se encuentra un Humanoid, tome el valor de WalkSpeed actual y agrégalo a 10. Probar, y tu avatar se volverá más rápido cada vez que toque el impulso de velocidad.

    Aumenta la velocidad de caminata actual

    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    humanoid.WalkSpeed += 10
    end
    end
    speedBoost.Touched:Connect(onTouch)
  2. En la declaración if, use la palabra clave and para agregar una segunda condición que el valor actual de WalkSpeed esté por debajo de 50. Después de agregar el impulso, el valor de WalkSpeed más rápido será 60.

    Comprueba si la WalkSpeed actual es 50 o menos

    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    end

Ajuste fino del impulso de velocidad

OnTouch se llama cada vez que el impulso de velocidad se toca. Cada paso o la menor rebote触发 el evento Touched y llama a la función conectada. La propiedad de la parte, CanTouch mantiene el evento Touched alejado de disparar. Aproveche el impulso de velocidad y apague el impulso de velocidad por un segundo cada vez que se activa.

  1. Después de aplicar el impulso, establece la propiedad CanTouch de la parte en false. Playtest y asegúrate de que el impulso solo se aplica una vez.

    Desactiva el impulso de velocidad

    local speedBoost = script.Parent
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    speedBoost.CanTouch = false
    end
    end
    speedBoost.Touched:Connect(onTouch)
  2. Usa task.wait(1) para pausar el script por un segundo, luego configura CanTouch para que sea verdadero. Probéalo y asegúrate de que el impulso de velocidad se puede reapplicar después de un segundo.

    scriptterminado

    local speedBoost = script.Parent
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid and humanoid.WalkSpeed <= 50 then
    humanoid.WalkSpeed += 10
    speedBoost.CanTouch = false
    task.wait(1)
    speedBoost.CanTouch = true
    end
    end
    speedBoost.Touched:Connect(onTouch)
  3. Juega con los valores en el script terminado. WalkSpeed ​​puede ir hasta 100. El valor predeterminado de WalkSpeed es 16.

Resumen

La palabra clave and se puede usar para requerir múltiples condiciones antes de ejecutar un código, como que un valor sea más de 0 y menos de 100. O que si hay un Humanoid y su WalkSpeed es menor o igual a 50.