Se le dichiarazioni possono avere più requisiti che devono essere veri prima di eseguire il codice.La parola chiave and ti consente di combinare dichiarazioni.Il seguente codice valuta prima se due più due uguale sei e poi se quattro non uguale sei.Se entrambe le dichiarazioni sono vere, il codice verrà Eseguire.
-- non verrà eseguireif 2 + 2 == 6 and 4 ~= 6 thenprint("Both statements are true")end-- eseguireif 4 + 2 == 6 and 4 ~= 6 thenprint("Both statements are true")end
Crea un potenziamento
I potenziamenti sono oggetti in-experience che danno ai giocatori abilità speciali come volare, invisibilità o velocità.Questo potenziamento aumenterà la velocità di camminata del Giocatoreogni volta che il potenziamento viene toccato.Applicare continuamente potenziamenti può far sì che il giocatore vada troppo veloce, quindi and verrà utilizzato per controllare il limite superiore della velocità di camminata.
Configura il potenziamento
Usa questo codice con una parte semplice o un modello, come un cristallo, una moneta o una sfera neon luminosa.
Crea una nuova parte chiamata Powerup e inserisci uno script chiamato WalkSpeedManager .
Dichiara una variabile chiamata speedBoost e assegna l'oggetto padre dello script.
-- Dà un aumento temporaneo della velocità quando viene toccatolocal speedBoost = script.ParentConfigura una funzione chiamata onTouch e connettila all'evento Touched del oggetto padre. Quindi prova e controlla il tuo lavoro.
local speedBoost = script.Parentlocal function onTouch(otherPart)print("Something touched speedBoost")endspeedBoost.Touched:Connect(onTouch)La proprietà WalkSpeed è trovata sugli oggetti Humanoid.Usa lo stesso modello utilizzato quando si crea una parte di trappola e crea una condizione che controlla gli oggetti Umanoidi.
Cerca parti umanoidilocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenprint("A Humanoid was found")endend
Accelerare i giocatori
Il boost di velocità farà camminare più velocemente gli avatar ogni volta che viene toccato il boost di velocità.Questo diventerà rapidamente molto, molto veloce.La parola chiave and garantirà che i giocatori non possano andare troppo veloci abilitando solo l'aumento della velocità se il giocatore è sotto una certa velocità.
Se viene trovato un Umanoide, prendi il valore attuale di WalkSpeed e aggiungi 10 ad esso.Playtest, e il tuo avatar diventerà più veloce ogni volta che tocca il boost di velocità.
Aumenta la velocità di camminata attualelocal function onTouch(otherPart)local character = otherPart.Parentlocal humanoid = character:FindFirstChildWhichIsA("Humanoid")if humanoid thenhumanoid.WalkSpeed += 10endendspeedBoost.Touched:Connect(onTouch)Nella dichiarazione if, usa la parola chiave and per aggiungere una seconda condizione per cui il valore attuale di WalkSpeed è inferiore a 50.Dopo l'aggiunta del boost, il valore di WalkSpeed più veloce sarà 60.
Verifica se la velocità di camminata attuale è 50 o inferioreif humanoid and humanoid.WalkSpeed <= 50 thenhumanoid.WalkSpeed += 10end
Raffina l'aumento della velocità
OnTouch viene chiamato ogni volta che viene toccato il boost di velocità.Ogni passo o il più leggero rimbalzo attiva l'evento Touched e chiama la funzione connessa.La Proprietàdella parte, CanTouch può impedire all'evento Touched di essere attivato.Approfitta di CanTouch e disattiva il boost di velocità per un secondo ogni volta che è stato attivato.
Dopo aver applicato il boost, imposta la proprietà CanTouch della parte su false. Prova e assicurati che il boost si applichi solo una volta.
Disabilita l'aumento della velocitàlocal 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)Usa task.wait(1) per pausare lo script per un secondo, quindi imposta CanTouch su vero.Prova e assicurati che il boost di velocità possa essere riapplicato dopo un secondo.
scriptterminatolocal 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)Gioca con i valori nell' script finale. La velocità di camminata può salire a 100. Il valore predefinito di WalkSpeed è 16.
Sommariamente
La parola chiave and può essere utilizzata per richiedere più condizioni prima di eseguire un pezzo di codice, come un valore superiore a 0 e inferiore a 100.O che se c'è un Umanoide e la sua Velocità di camminata è inferiore o uguale a 50.