{"id":"sennoza/line","name":"line","scope":"sennoza","platform":"roblox","description":"A simply stupid remote wrapper for Roblox","version":"0.0.4","latest":"0.0.4","versions":["0.0.2","0.0.3","0.0.4-test","0.0.4","0.0.5-test"],"license":"SEE LICENSE IN LICENSE","licenseRating":"caution","licenseCaveats":["No attribution required, but recommended for good practice.","No warranty provided for the work.","No trademark or patent rights are waived.","Affirmer disclaims responsibility for clearing rights of other persons.","Custom license terms, automatically reviewed — read the packaged LICENSE file before shipping this in a game."],"licenseVerified":false,"dependencies":{},"integrity":"0ce5b746c6536df7291d537900e6dcb7daedd0667aa861c1db4eedbeaa8cc72a","likes":0,"downloads":0,"install":"forest install sennoza/line","url":"https://forest.dev/p/roblox/sennoza/line","files":"https://api.forest.dev/ai/package/roblox/sennoza/line/files","readme":"<div align=\"center\">\r\n\t<img align=\"center\" src=\"./media/lineLogo.png\" width=300>\r\n\r\n# Line\r\n### A very simple and undoubtedly very stupid remote wrapper for Roblox.\r\n---\r\n</div>\r\n\r\nInstallation:\r\n-\r\n#### Import with wally\r\n```toml\r\nLine = \"sennoza/line@0.0.2\"\r\n```\r\n---\r\n#### Import with Roblox\r\nPlace \"Line.luau\" into ReplicatedStorage\r\n\r\n---\r\n\r\nUsage:\r\n-\r\nCreate a second module in ReplicatedStorage to store your remote layout\r\n```lua\r\n-- Module in ReplicatedStorage\r\nlocal Line = require(game.ReplicatedStorage.Line)\r\n\r\n -- Return remote hierarchy table\r\nreturn {\r\n\tsomeNamespace = {\r\n\t\tsomeEvent = Line.event()\r\n\t},\r\n\r\n\tsomeOtherNamespace = {\r\n\t\tsomeEvent = Line.event()\r\n\t},\r\n}\r\n```\r\n\r\n*Access from server and client scripts*\r\n```lua\r\n-- Server Script\r\nlocal Line = require(game.ReplicatedStorage.Line)\r\n\r\nLine.someNamespace.someEvent.listen(function(client: Player, message: string)\r\n\tprint(client.Name, \"Said\", message)\r\nend)\r\n```\r\n```lua\r\n-- Client Script\r\nlocal Line = require(game.ReplicatedStorage.Line)\r\nLine.someNamespace.someEvent.sendServer(\"Hello!\")\r\n```\r\n---\r\n\r\nLine uses additive instance naming (foolishly) so your remote hierachy can be as many namespaces deep as you wish.\r\n---\r\nSimple API:\r\n```lua\r\n-- Server\r\nevent.sendClient(client: Player, ...any)\r\nevent.sendAllClients(...any)\r\nevent.sendClientList(list: {Player}, ...any)\r\n\r\n-- Client\r\nevent.sendServer(...any)\r\n\r\n-- Shared\r\nevent.listen(callback: (...any) -> ())\r\nevent.once(callback: (...any) -> ())\r\nevent.wait() -> (...any)\r\n```","readmeTruncated":false}