Андрей Мининов
Ученик
(175)
3 месяца назад
Слышь, братан, разберёмся чё за фигня у тебя с этим скриптом. Ты говоришь, что он у тебя не пашет, а в гугле и ютубе типы говорят, что всё норм. Давай глянем, чё там не так.
Вот у тебя скрипт, да? Значит, смотри:
```lua
local uis = game:GetService("UserInputService")
local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local debounce = false
uis.InputBegan:Connect(function(key, processed)
if debounce or processed then
return
end
if key.KeyCode == Enum.KeyCode.Q then
debounce = true
humanoid.WalkSpeed += 8
task.wait(0.5)
humanoid.WalkSpeed -= 8
end
task.wait(1.5)
debounce = false
end)
```
Понял, тут может быть пару косяков. Ща по порядку:
1. **Службы и переменные**: Проверь, что все службы и переменные правильно подключены и работают. Может быть, у тебя с `game.Players.LocalPlayer` или `game:GetService("UserInputService")` что-то не так.
2. **Подключение события**: Убедись, что ты правильно подключаешь события. Вдруг у тебя `InputBegan` вообще не срабатывает. Попробуй добавить простую проверку, типа `print("Key pressed")`, чтобы глянуть, срабатывает ли это событие.
3. **Косяк с debounce**: У тебя `task.wait(1.5)` стоит вне `if`-а. Попробуй его внутрь засунуть:
```lua
uis.InputBegan:Connect(function(key, processed)
if debounce or processed then
return
end
if key.KeyCode == Enum.KeyCode.Q then
debounce = true
humanoid.WalkSpeed += 8
task.wait(0.5)
humanoid.WalkSpeed -= 8
task.wait(1.5) -- Вот сюда засунь
debounce = false
end
end)
```
4. **Отладка и выводы**: Добавь выводы (`print`) в ключевые места, чтобы понять, где всё стопорится:
```lua
uis.InputBegan:Connect(function(key, processed)
print("Event triggered") -- Печатаем, когда событие сработало
if debounce or processed then
return
end
if key.KeyCode == Enum.KeyCode.Q then
print("Q pressed") -- Печатаем, когда нажата Q
debounce = true
humanoid.WalkSpeed += 8
task.wait(0.5)
humanoid.WalkSpeed -= 8
task.wait(1.5)
debounce = false
end
end)
```
Вот такие дела, братан. Попробуй эти штуки, и, если что, пиши ещё, разберёмся дальше.
local uis = game:GetService("UserInputService")
local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local debounce = false
uis.InputBegan:Connect(function(key, processed)
if debounce or processed then
return
end
if key.KeyCode == Enum.KeyCode.Q then
debounce = true
humanoid.WalkSpeed += 8
task.wait(0.5)
humanoid.WalkSpeed -= 8
end
task.wait(1.5)
debounce = false
end)