Oceń wiele instrukcji

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Instrukcje if mogą mieć wiele wymagań, które muszą być spełnione, zanim kod zostanie wykonany. Słowo kluczowe and pozwala na łączenie instrukcji. Poniższy kod najpierw ocenia, czy dwa plus dwa równa się sześć, a następnie czy cztery nie równa się sześciu. Jeśli obie instrukcje są prawdziwe, kod zostanie wykonany.


-- nie zostanie wykonane
if 2 + 2 == 6 and 4 ~= 6 then
print("Obie instrukcje są prawdziwe")
end
-- zostanie wykonane
if 4 + 2 == 6 and 4 ~= 6 then
print("Obie instrukcje są prawdziwe")
end

Stwórz powerup

Powerupy to przedmioty w grze, które dają graczom specjalne umiejętności, takie jak latanie, niewidzialność lub szybkość. Ten powerup zwiększy prędkość chodzenia gracza za każdym razem, gdy powerup zostanie dotknięty. Ciągłe stosowanie przyspieszeń może sprawić, że gracz będzie poruszał się zbyt szybko, więc and będzie używane do kontrolowania górnej granicy prędkości chodzenia.

Ustaw powerup

Użyj tego kodu z prostą częścią lub modelem, takim jak kryształ, moneta lub świecąca neonowa kula.

  1. Stwórz nową część o nazwie Powerup i wstaw skrypt o nazwie WalkSpeedManager.

  2. Zdeklaruj zmienną o nazwie speedBoost i przypisz obiekt rodzica skryptu.


    -- Daje tymczasowe przyspieszenie prędkości, gdy zostanie dotknięte
    local speedBoost = script.Parent
  3. Ustaw funkcję o nazwie onTouch i połącz ją z zdarzeniem Touched obiektu rodzica. Następnie przetestuj grę i sprawdź swoją pracę.


    local speedBoost = script.Parent
    local function onTouch(otherPart)
    print("Coś dotknęło speedBoost")
    end
    speedBoost.Touched:Connect(onTouch)
  4. Właściwość WalkSpeed znajduje się w obiektach Humanoid. Użyj tego samego wzorca, co podczas tworzenia części pułapki i stwórz warunek, który sprawdza obiekty Humanoid.

    Szukaj części Humanoid

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

Przyspiesz graczy

Przyspieszenie prędkości sprawi, że awatary będą chodziły szybciej za każdym razem, gdy powerup zostanie dotknięty. To szybko stanie się bardzo, bardzo szybkie. Słowo kluczowe and zapewni, że gracze nie będą mogli poruszać się zbyt szybko, włączając przyspieszenie tylko wtedy, gdy gracz znajduje się poniżej określonej prędkości.

  1. Jeśli Humanoid zostanie znaleziony, weź wartość bieżącego WalkSpeed i dodaj do niej 10. Przetestuj grę, a twój awatar przyspieszy za każdym razem, gdy dotknie przyspieszenia.

    Zwiększa bieżący WalkSpeed

    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. W instrukcji if użyj słowa kluczowego and, aby dodać drugi warunek, że bieżąca wartość WalkSpeed jest mniejsza niż 50. Po dodaniu przyspieszenia, najszybsza wartość WalkSpeed wyniesie 60.

    Sprawdza, czy bieżący WalkSpeed wynosi 50 lub mniej

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

Dopracuj przyspieszenie

OnTouch jest wywoływane za każdym razem, gdy powerup zostaje dotknięty. Każdy krok lub najmniejsze odbicie wyzwala zdarzenie Touch i wywołuje połączoną funkcję. Właściwość części CanTouch może powstrzymać zdarzenie Touched od wywołania. Skorzystaj z CanTouch i wyłącz przyspieszenie na jedną sekundę za każdym razem, gdy zostanie aktywowane.

  1. Po zastosowaniu przyspieszenia, ustaw właściwość CanTouch części na false. Przetestuj grę i upewnij się, że przyspieszenie zastosuje się tylko raz.

    Wyłącza przyspieszenie

    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. Użyj task.wait(1), aby wstrzymać skrypt na jedną sekundę, a następnie ustaw CanTouch na true. Przetestuj grę i upewnij się, że przyspieszenie można ponownie zastosować po jednej sekundzie.

    Zakończony skrypt

    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. Zabaw się z wartościami w zakończonym skrypcie. WalkSpeed może wzrosnąć do 100. Domyślna wartość WalkSpeed wynosi 16.

Podsumowanie

Słowo kluczowe and może być używane do wymuszania wielu warunków przed uruchomieniem kawałka kodu, takimi jak wartość większa niż 0 i mniejsza niż 100. Lub że jeśli istnieje Humanoid i jego WalkSpeed jest mniejszy lub równy 50.

©2026 Roblox Corporation. Nazwa Roblox, logo Roblox oraz hasło „Powering Imagination” należą do naszych zarejestrowanych i niezarejestrowanych znaków towarowych na terenie Stanów Zjednoczonych oraz w innych krajach.