Jeśli oświadczenia mogą mieć wiele wymogów, które muszą być prawdziwe przed uruchomieniem kodu.Słowo kluczowe and pozwala łączyć oświadczenia.Poniższy kod najpierw ocenia, czy dwa plus dwa równa się sześciu, a następnie czy cztery nie równa się sześciu.Jeśli obie stwierdzenia są prawdziwe, kod zostanie wykonany.
-- nie zostanie uruchomionyif 2 + 2 == 6 and 4 ~= 6 thenprint("Both statements are true")end-- zostanie uruchomionaif 4 + 2 == 6 and 4 ~= 6 thenprint("Both statements are true")end
Stwórz ulepszenie
Wzmocnienia są przedmiotami doświadczonymi, które dają graczom specjalne umiejętności, takie jak lot, niewidzialność lub prędkość.To ulepszenie zwiększy prędkość chodzenia gracza za każdym razem, gdy dotknięto ulepszenie.Nieprzerwane stosowanie wzmocnień może sprawić, że gracz pójdzie zbyt szybko, więc and zostanie użyte do kontrolowania górnej granicy prędkości chodzenia.
Ustaw wzmocnienie
Użyj tego kodu z prostą częścią lub modelem, takim jak kryształ, moneta lub świecąca kula neonowa.
Stwórz nową część o nazwie Powerup i włóż skrypt o nazwie WalkSpeedManager .
Zadeklaruj zmienną o nazwie speedBoost i przypisz obiektowi rodzicznemu skryptu.
-- Daje tymczasowe zwiększenie prędkości po dotknięciulocal speedBoost = script.ParentUstaw funkcję o nazwie onTouch i połącz ją z wydarzeniem rodzica Touched. Następnie przetestuj i sprawdź swoją pracę.
local speedBoost = script.Parentlocal function onTouch(otherPart)print("Something touched speedBoost")endspeedBoost.Touched:Connect(onTouch)Właściwość WalkSpeed jest znaleziona na obiektach Humanoid.Użyj tego samego wzorca używanego przy tworzeniu części pułapki i utwórz warunek sprawdzający obiekty humanoidalne.
Szukaj części humanoidalnychlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenprint("A Humanoid was found")endend
Przyspiesz graczy
Zwiększenie prędkości sprawi, że awatary będą chodzić szybciej za każdym razem, gdy dotknięto zwiększenie prędkości.To będzie szybko stać się bardzo, bardzo szybkie.Słowo kluczowe and zapewni, że gracze nie będą mogli iść zbyt szybko, włączając tylko wzmocnienie prędkości, jeśli gracz jest poniżej pewnej prędkości.
Jeśli zostanie znaleziony humanoid, dodaj do jego obecnej wartości prędkości chodzenia 10.Przetestuj i twój awatar będzie szybszy za każdym razem, gdy dotknie przyspieszenia prędkości.
Zwiększa bieżącą prędkość chodzenialocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenhumanoid.WalkSpeed += 10endendspeedBoost.Touched:Connect(onTouch)W oświadczeniu if użyj słowa kluczowego and, aby dodać drugie warunek, że obecna wartość prędkości chodzenia jest mniejsza niż 50.Po dodaniu boostu najszybsza wartość prędkości chodzenia wyniesie 60.
Sprawdza, czy obecna prędkość chodzenia wynosi 50 lub mniejif humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10end
Doskonale dostosuj zwiększenie prędkości
OnTouch jest wzywany za każdym razem, gdy dotknięto zwiększenie prędkości.Każdy krok lub najmniejszy odbicie uruchamia wydarzenie dotknięte i wzywa połączoną funkcję.Właściwość części, CanTouch może powstrzymać uruchomienie wydarzenia Touched.Skorzystaj z CanTouch i wyłącz wzmocnienie prędkości na jedną sekundę za każdym razem, gdy zostało aktywowane.
Po zastosowaniu boostu ustaw właściwość CanTouch części na fałsz. Przetestuj i upewnij się, że boost zostanie zastosowany tylko raz.
Wyłącza zwiększenie prędkościlocal speedBoost = script.Parentlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10speedBoost.CanTouch = falseendendspeedBoost.Touched:Connect(onTouch)Użyj task.wait(1), aby zatrzymać skrypt na jedną sekundę, a następnie ustaw CanTouch na prawdę.Przetestuj i upewnij się, że wzrost prędkości może zostać ponownie zastosowany po jednej sekundzie.
Zakończony skryptlocal speedBoost = script.Parentlocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10speedBoost.CanTouch = falsetask.wait(1)speedBoost.CanTouch = trueendendspeedBoost.Touched:Connect(onTouch)Graj z wartościami w skończonym skrypcie. Prędkość chodzenia może wynieść do 100. Domyślna wartość prędkości chodzenia wynosi 16.
Podsumowanie
Słowo kluczowe and można użyć, aby wymagać wielu warunków przed uruchomieniem kawałka kodu, takich jak wartość większa niż 0 i mniejsza niż 100.Lub że jeśli istnieje humanoid i jego prędkość chodzenia jest mniejsza lub równa 50.