Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Скриптинг lua (роблокс студио)

ivanpoinoi Ученик (197), закрыт 2 недели назад
Приветствую! У меня есть режим в роблокс и он от первого лица, то есть курсор заблокирован. Я хочу, чтобы при нажатие на клавишу H открывался магазин, где курсор разблокируется и там будет висеть баннер вместо 100 хп 1000. Он должен стоить 300 робуксов и выдаваться тому кто его купил. после выхода из магазина курсор должен снова блокироваться.
Лучший ответ
Илья Ротков Мыслитель (6677) 3 недели назад
тг есть? я тебе скину полностью код и что надо делать потому что что тут лимит по символам, а писать надо много
ivanpoinoiУченик (197) 3 недели назад
@NRC19
Илья Ротков Мыслитель (6677) ivanpoinoi, нету такого
Остальные ответы
♡$ⴎG@r₱u₷sყ♡ Высший разум (342836) 3 недели назад
На клиенте LocalScript: UserInputService для кнопки H и изменения MouseBehavior (LockCenter/Default), показ/скрытие UI.
На сервере Script: MarketplaceService для покупки и обработки ProcessReceipt, выдача ХП игроку после успешной покупки.
Создай сам UI для магазина и кнопки покупки
Electro-magnetic Plasma-cannon Знаток (277) 3 недели назад
в чем проблема самому написать
- Ученик (103) 3 недели назад
сделай скрипт с помощью нейросетей (chatgpt | Grok 3 | deepseek)
ПОТОМ Мастер (1938) 3 недели назад
при открытии сделай у любой кнопки (image button, text button) в магазине параметр modal = true, при закрытии false
Александр Жуков Знаток (259) 3 недели назад
Пример реализации функционала в Roblox Studio с помощью Lua:

1. Обработка нажатия H для открытия магазина.
2. Разблокировка курсора и показ баннера.
3. Покупка за Robux через MarketplaceService.
4. Блокировка курсора после выхода из магазина.
5. Выдача предмета (например, увеличение HP).

Скрипт для StarterPlayerScripts или LocalScript:

```lua
local UserInputService, MarketplaceService, Players = game:GetServices("UserInputService", "MarketplaceService", "Players")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local runService = game:GetService("RunService")

local PRODUCT_ID = 123456789 -- замените на ваш ID

local shopGui, bannerGui

local function lockMouse()
UserInputService.MouseIconEnabled, UserInputService.MouseBehavior = false, Enum.MouseBehavior.LockCenter
end

local function unlockMouse()
UserInputService.MouseIconEnabled, UserInputService.MouseBehavior = true, Enum.MouseBehavior.Default
end

local function createShopGui()
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "ShopGui"
screenGui.Parent = playerGui

local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 400, 0, 300)
frame.Position = UDim2.new(0.5, -200, 0.5, -150)
frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
frame.Parent = screenGui

local closeButton = Instance.new("TextButton")
closeButton.Text = "Закрыть"
closeButton.Size = UDim2.new(0, 80, 0, 30)
closeButton.Position = UDim2.new(1, -90, 0, 10)
closeButton.Parent = frame

local buyButton = Instance.new("TextButton")
buyButton.Text = "Купить за 300 Robux"
buyButton.Size = UDim2.new(0, 200, 0, 50)
buyButton.Position = UDim2.new(0.5, -100, 0.7, -25)
buyButton.Parent = frame

local banner = Instance.new("TextLabel")
banner.Text = "Премиум баннер: 1000 HP"
banner.Size = UDim2.new(0, 300, 0, 50)
banner.Position = UDim2.new(0.5, -150, 0.2, -25)
banner.BackgroundColor3 = Color3.fromRGB(255, 215, 0)
banner.TextColor3 = Color3.new(0,0,0)
banner.Parent = frame

closeButton.MouseButton1Click:Connect(function() screenGui.Enabled = false; lockMouse() end)
buyButton.MouseButton1Click:Connect(function() MarketplaceService:PromptProductPurchase(player, PRODUCT_ID) end)
MarketplaceService.PromptProductPurchaseFinished:Connect(function(player, pid, wasPurchased) if wasPurchased then player.Character.Humanoid.MaxHealth, player.Character.Humanoid.Health = 1000, 1000 end)
end

UserInputService.InputBegan:Connect(function(input)
if input.KeyCode == Enum.KeyCode.H then
if not shopGui then
shopGui = createShopGui()
unlockMouse()
end
end
end)
```
Похожие вопросы