mirror of
https://github.com/rojo-rbx/rojo.git
synced 2026-04-21 13:15:50 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e482aba030 | ||
|
|
535e4d42bb | ||
|
|
54398d4c4b |
@@ -2,6 +2,14 @@
|
|||||||
|
|
||||||
## Unreleased Changes
|
## Unreleased Changes
|
||||||
|
|
||||||
|
## [7.2.1] - July 8, 2022
|
||||||
|
* Fixed notification sound by changing it to a generic sound. ([#566])
|
||||||
|
* Added setting to turn off sound effects. ([#568])
|
||||||
|
|
||||||
|
[#566]: https://github.com/rojo-rbx/rojo/pull/566
|
||||||
|
[#568]: https://github.com/rojo-rbx/rojo/pull/568
|
||||||
|
[7.2.0]: https://github.com/rojo-rbx/rojo/releases/tag/v7.2.0
|
||||||
|
|
||||||
## [7.2.0] - June 29, 2022
|
## [7.2.0] - June 29, 2022
|
||||||
* Added support for `.luau` files. ([#552])
|
* Added support for `.luau` files. ([#552])
|
||||||
* Added support for live syncing Attributes and Tags. ([#553])
|
* Added support for live syncing Attributes and Tags. ([#553])
|
||||||
|
|||||||
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -1858,7 +1858,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rojo"
|
name = "rojo"
|
||||||
version = "7.2.0"
|
version = "7.2.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"backtrace",
|
"backtrace",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "rojo"
|
name = "rojo"
|
||||||
version = "7.2.0"
|
version = "7.2.1"
|
||||||
rust-version = "1.57.0"
|
rust-version = "1.57.0"
|
||||||
authors = ["Lucien Greathouse <me@lpghatguy.com>"]
|
authors = ["Lucien Greathouse <me@lpghatguy.com>"]
|
||||||
description = "Enables professional-grade development tools for Roblox developers"
|
description = "Enables professional-grade development tools for Roblox developers"
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ local bindingUtil = require(script.Parent.bindingUtil)
|
|||||||
|
|
||||||
local Theme = require(Plugin.App.Theme)
|
local Theme = require(Plugin.App.Theme)
|
||||||
local Assets = require(Plugin.Assets)
|
local Assets = require(Plugin.Assets)
|
||||||
local playSound = require(Plugin.playSound)
|
|
||||||
|
|
||||||
local BorderedContainer = require(Plugin.App.Components.BorderedContainer)
|
local BorderedContainer = require(Plugin.App.Components.BorderedContainer)
|
||||||
|
|
||||||
@@ -53,7 +52,7 @@ function Notification:didMount()
|
|||||||
})
|
})
|
||||||
)
|
)
|
||||||
|
|
||||||
playSound(Assets.Sounds.Notification)
|
self.props.soundPlayer:play(Assets.Sounds.Notification)
|
||||||
|
|
||||||
self.timeout = task.spawn(function()
|
self.timeout = task.spawn(function()
|
||||||
local clock = os.clock()
|
local clock = os.clock()
|
||||||
@@ -182,6 +181,7 @@ function Notifications:render()
|
|||||||
|
|
||||||
for index, notif in ipairs(self.props.notifications) do
|
for index, notif in ipairs(self.props.notifications) do
|
||||||
notifs[notif] = e(Notification, {
|
notifs[notif] = e(Notification, {
|
||||||
|
soundPlayer = self.props.soundPlayer,
|
||||||
text = notif.text,
|
text = notif.text,
|
||||||
timestamp = notif.timestamp,
|
timestamp = notif.timestamp,
|
||||||
timeout = notif.timeout,
|
timeout = notif.timeout,
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ local defaultSettings = {
|
|||||||
openScriptsExternally = false,
|
openScriptsExternally = false,
|
||||||
twoWaySync = false,
|
twoWaySync = false,
|
||||||
showNotifications = true,
|
showNotifications = true,
|
||||||
|
playSounds = true,
|
||||||
}
|
}
|
||||||
|
|
||||||
local Settings = {}
|
local Settings = {}
|
||||||
|
|||||||
@@ -210,12 +210,20 @@ function SettingsPage:render()
|
|||||||
layoutOrder = 2,
|
layoutOrder = 2,
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
PlaySounds = e(Setting, {
|
||||||
|
id = "playSounds",
|
||||||
|
name = "Play Sounds",
|
||||||
|
description = "Toggle sound effects",
|
||||||
|
transparency = self.props.transparency,
|
||||||
|
layoutOrder = 3,
|
||||||
|
}),
|
||||||
|
|
||||||
TwoWaySync = e(Setting, {
|
TwoWaySync = e(Setting, {
|
||||||
id = "twoWaySync",
|
id = "twoWaySync",
|
||||||
name = "Two-Way Sync",
|
name = "Two-Way Sync",
|
||||||
description = "EXPERIMENTAL! Editing files in Studio will sync them into the filesystem",
|
description = "EXPERIMENTAL! Editing files in Studio will sync them into the filesystem",
|
||||||
transparency = self.props.transparency,
|
transparency = self.props.transparency,
|
||||||
layoutOrder = 3,
|
layoutOrder = 4,
|
||||||
}),
|
}),
|
||||||
|
|
||||||
Layout = e("UIListLayout", {
|
Layout = e("UIListLayout", {
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ local Dictionary = require(Plugin.Dictionary)
|
|||||||
local ServeSession = require(Plugin.ServeSession)
|
local ServeSession = require(Plugin.ServeSession)
|
||||||
local ApiContext = require(Plugin.ApiContext)
|
local ApiContext = require(Plugin.ApiContext)
|
||||||
local preloadAssets = require(Plugin.preloadAssets)
|
local preloadAssets = require(Plugin.preloadAssets)
|
||||||
|
local soundPlayer = require(Plugin.soundPlayer)
|
||||||
local Theme = require(script.Theme)
|
local Theme = require(script.Theme)
|
||||||
local PluginSettings = require(script.PluginSettings)
|
local PluginSettings = require(script.PluginSettings)
|
||||||
|
|
||||||
@@ -272,6 +273,7 @@ function App:render()
|
|||||||
Padding = UDim.new(0, 5),
|
Padding = UDim.new(0, 5),
|
||||||
}),
|
}),
|
||||||
notifs = e(Notifications, {
|
notifs = e(Notifications, {
|
||||||
|
soundPlayer = self.props.soundPlayer,
|
||||||
notifications = self.state.notifications,
|
notifications = self.state.notifications,
|
||||||
onClose = function(index)
|
onClose = function(index)
|
||||||
self:closeNotification(index)
|
self:closeNotification(index)
|
||||||
@@ -347,10 +349,11 @@ return function(props)
|
|||||||
plugin = props.plugin,
|
plugin = props.plugin,
|
||||||
}, {
|
}, {
|
||||||
App = PluginSettings.with(function(settings)
|
App = PluginSettings.with(function(settings)
|
||||||
local settingsProps = Dictionary.merge(props, {
|
local mergedProps = Dictionary.merge(props, {
|
||||||
settings = settings,
|
settings = settings,
|
||||||
|
soundPlayer = soundPlayer.new(settings),
|
||||||
})
|
})
|
||||||
return e(App, settingsProps)
|
return e(App, mergedProps)
|
||||||
end),
|
end),
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ local Assets = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
Sounds = {
|
Sounds = {
|
||||||
Notification = "rbxassetid://9716079936",
|
Notification = "rbxassetid://203785492",
|
||||||
},
|
},
|
||||||
StartSession = "",
|
StartSession = "",
|
||||||
SessionActive = "",
|
SessionActive = "",
|
||||||
|
|||||||
@@ -5,8 +5,8 @@ local isDevBuild = script.Parent.Parent:FindFirstChild("ROJO_DEV_BUILD") ~= nil
|
|||||||
return strict("Config", {
|
return strict("Config", {
|
||||||
isDevBuild = isDevBuild,
|
isDevBuild = isDevBuild,
|
||||||
codename = "Epiphany",
|
codename = "Epiphany",
|
||||||
version = {7, 2, 0},
|
version = {7, 2, 1},
|
||||||
expectedServerVersionString = "7.0 or newer",
|
expectedServerVersionString = "7.2 or newer",
|
||||||
protocolVersion = 4,
|
protocolVersion = 4,
|
||||||
defaultHost = "localhost",
|
defaultHost = "localhost",
|
||||||
defaultPort = 34872,
|
defaultPort = 34872,
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
-- Roblox decided that sounds only play in Edit mode when parented to a plugin widget, for some reason
|
-- Sounds only play in Edit mode when parented to a plugin widget, for some reason
|
||||||
local plugin = plugin or script:FindFirstAncestorWhichIsA("Plugin")
|
local plugin = plugin or script:FindFirstAncestorWhichIsA("Plugin")
|
||||||
local widget = plugin:CreateDockWidgetPluginGui("Rojo_soundPlayer", DockWidgetPluginGuiInfo.new(
|
local widget = plugin:CreateDockWidgetPluginGui("Rojo_soundPlayer", DockWidgetPluginGuiInfo.new(
|
||||||
Enum.InitialDockState.Float,
|
Enum.InitialDockState.Float,
|
||||||
@@ -9,7 +9,18 @@ local widget = plugin:CreateDockWidgetPluginGui("Rojo_soundPlayer", DockWidgetPl
|
|||||||
widget.Name = "Rojo_soundPlayer"
|
widget.Name = "Rojo_soundPlayer"
|
||||||
widget.Title = "Rojo Sound Player"
|
widget.Title = "Rojo Sound Player"
|
||||||
|
|
||||||
return function(soundId)
|
local SoundPlayer = {}
|
||||||
|
SoundPlayer.__index = SoundPlayer
|
||||||
|
|
||||||
|
function SoundPlayer.new(settings)
|
||||||
|
return setmetatable({
|
||||||
|
settings = settings,
|
||||||
|
}, SoundPlayer)
|
||||||
|
end
|
||||||
|
|
||||||
|
function SoundPlayer:play(soundId)
|
||||||
|
if self.settings and self.settings:get("playSounds") == false then return end
|
||||||
|
|
||||||
local sound = Instance.new("Sound")
|
local sound = Instance.new("Sound")
|
||||||
sound.SoundId = soundId
|
sound.SoundId = soundId
|
||||||
sound.Parent = widget
|
sound.Parent = widget
|
||||||
@@ -20,3 +31,5 @@ return function(soundId)
|
|||||||
|
|
||||||
sound:Play()
|
sound:Play()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
return SoundPlayer
|
||||||
Reference in New Issue
Block a user