Menu
CoddyTech

Schwingen

Lektion 2 von 20 im Kurs Roblox-Spiel: Schlachtfelder von Coddy.

Mit einem Werkzeug in der Hand löst ein Klick (oder Tippen) das Activated-Ereignis des Werkzeugs aus, auch auf dem Server. Ein Schwung spielt Robloxs eigenen Schwertstreich ab: Eine Animation wird über ihre ID angegeben, und der Animator des Charakters innerhalb seines Humanoids lädt sie in einen Track, um sie abzuspielen:

local slash = Instance.new("Animation")
slash.AnimationId = "rbxassetid://522635514"
character.Humanoid.Animator:LoadAnimation(slash):Play()

Ohne Begrenzung könnte ein Spieler so schnell klicken, wie er möchte. Deshalb merkt sich ein Schwung pro Spieler in einer Tabelle, wann der letzte stattgefunden hat, und lässt innerhalb von Settings.SwingCooldown Sekunden keinen weiteren zu.

challenge icon

Aufgabe

Einfach
  1. Füge weiter oben local lastSwing = {} und die slash-Animation (id rbxassetid://522635514) hinzu.
  2. Schreibe swing(player) oberhalb von PlayerAdded: Gib die Funktion zurück, wenn der Spieler keinen lebenden Charakter hat oder vor weniger als Settings.SwingCooldown Sekunden geschwungen hat; speichere andernfalls die Zeit und spiele den Hieb auf seinem Animator ab.
  3. Verbinde dort, wo du das Schwert vergibst, dessen Activated mit swing(player).

Drücke Play, halte das Schwert und klicke. Dann Check.

Probier es selbst

local Players = game:GetService("Players")
local ServerStorage = game:GetService("ServerStorage")
local Settings = require(game.ReplicatedStorage.Settings)

print("Swords deal " .. Settings.SwordDamage .. " damage")

-- Jeder Spieler erhält Kills auf der Bestenliste und bei jedem neuen Leben ein Schwert
Players.PlayerAdded:Connect(function(player)
	local leaderstats = Instance.new("Folder")
	leaderstats.Name = "leaderstats"
	leaderstats.Parent = player

	local kills = Instance.new("IntValue")
	kills.Name = "Kills"
	kills.Parent = leaderstats

	player.CharacterAdded:Connect(function()
		local sword = ServerStorage.Sword:Clone()
		sword.Parent = player.Backpack
	end)
end)
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Roblox-Spiel: Schlachtfelder