improved addon api

This commit is contained in:
Bitl 2022-07-07 15:12:47 -07:00
parent 09740b6d91
commit ee0cc6b67a
19 changed files with 288 additions and 89 deletions

73
AddonLoader.lua Normal file
View File

@ -0,0 +1,73 @@
-- put script names here
Addons = {"ClientNamePrinter", "ShadersCompatibility"}
-- DONT EDIT ANYTHING ELSE BELOW
Scripts = {}
function AddScript(name)
table.insert(Scripts, name)
end
for i,v in pairs(Addons) do
local fullname = "rbxasset://..//..//..//addons//".. v ..".lua"
AddScript(fullname)
end
Modules = {}
for i,v in pairs(Scripts) do
dofile(v)
_G.CSScript_AddModule(Modules)
end
function PreInit(Script, Client)
for i,v in pairs(Modules) do
pcall(function() v:PreInit(Script, Client) end)
end
end
function PostInit()
for i,v in pairs(Modules) do
pcall(function() v:PostInit() end)
end
end
function OnLoadCharacter(Player, Appearance)
for i,v in pairs(Modules) do
pcall(function() v:OnLoadCharacter(Player, Appearance) end)
end
end
function OnPlayerAdded(Player)
for i,v in pairs(Modules) do
pcall(function() v:OnPlayerAdded(Player) end)
end
end
function OnPlayerRemoved(Player)
for i,v in pairs(Modules) do
pcall(function() v:OnPlayerRemoved(Player) end)
end
end
function OnPlayerKicked(Player, Reason)
for i,v in pairs(Modules) do
pcall(function() v:OnPlayerKicked(Player, Reason) end)
end
end
function OnPrePlayerKicked(Player, Reason)
for i,v in pairs(Modules) do
pcall(function() v:OnPrePlayerKicked(Player, Reason) end)
end
end
_G.CSScript_PreInit=PreInit
_G.CSScript_PostInit=PostInit
_G.CSScript_OnLoadCharacter=OnLoadCharacter
_G.CSScript_OnPlayerAdded=OnPlayerAdded
_G.CSScript_OnPlayerRemoved=OnPlayerRemoved
_G.CSScript_OnPlayerKicked=OnPlayerKicked
_G.CSScript_OnPrePlayerKicked=OnPrePlayerKicked

View File

@ -1,37 +1,45 @@
local this = {}
-- executes before the game starts (server, solo, studio)
-- arguments: Script Type - returns the script type name (Server, Solo, Studio)
function PreInit(Script)
-- arguments: Script - returns the script type name (Server, Solo, Studio), Client - returns the Client name.
function this:PreInit(Script, Client)
end
-- executes after the game starts (server, solo, studio)
-- arguments: none
function PostInit()
function this:PostInit()
end
-- executes after a character loads (server, solo, studio)
-- arguments: Player - Player getting a character loaded, Appearance - The object containing the appearance values
-- notes: in play solo, you may have to respawn once to see any print outputs.
function OnLoadCharacter(Player, Appearance)
function this:OnLoadCharacter(Player, Appearance)
end
-- executes after a player joins (server)
-- arguments: Player - the Player joining
function OnPlayerAdded(Player)
function this:OnPlayerAdded(Player)
end
-- executes after a player leaves (server)
-- arguments: Player - the Player leaving
function OnPlayerRemoved(Player)
function this:OnPlayerRemoved(Player)
end
-- executes after a player gets kicked (server)
-- arguments: Player - the Player getting kicked, Reason - the reason the player got kicked
function this:OnPlayerKicked(Player, Reason)
end
-- executes before a player gets kicked (server)
-- arguments: Player - the Player getting kicked, Reason - the reason the player got kicked
function OnPlayerKicked(Player, Reason)
function this:OnPrePlayerKicked(Player, Reason)
end
_G.CSScript_PreInit=PreInit
_G.CSScript_PostInit=PostInit
_G.CSScript_OnLoadCharacter=OnLoadCharacter
_G.CSScript_OnPlayerAdded=OnPlayerAdded
_G.CSScript_OnPlayerRemoved=OnPlayerRemoved
_G.CSScript_OnPlayerKicked=OnPlayerKicked
-- DO NOT MODIFY THIS. this is required to load this addon into the game.
function AddModule(t)
table.insert(t, this)
end
_G.CSScript_AddModule=AddModule

19
ClientNamePrinter.lua Normal file
View File

@ -0,0 +1,19 @@
--adds a StringValue that lists the client's version.
local this = {}
function this:Name()
return "Client Name Printer"
end
function this:PreInit(Script, Client)
local ver = Instance.new("StringValue",game.Lighting)
ver.Name = "Version"
ver.Value = Client
end
function AddModule(t)
table.insert(t, this)
end
_G.CSScript_AddModule=AddModule

65
ShadersCompatibility.lua Normal file
View File

@ -0,0 +1,65 @@
-- allows 2007M, 2006S, and 2007E users to join Shaders servers, and vice versa
local this = {}
local ClientName = "N/A"
function this:Name()
return "Shaders MP Compatibility"
end
-- executes before the game starts (server, solo, studio)
-- arguments: Script - returns the script type name (Server, Solo, Studio), Client - returns the Client name.
function this:PreInit(Script, Client)
ClientName = Client
end
function IsShaderSupportingClient()
-- hate this so much
if (ClientName == "2007E" or ClientName == "2007M" or ClientName == "2006S" or ClientName == "2007E-Shaders" or ClientName == "2007M-Shaders" or ClientName == "2006S-Shaders") then
return true
end
end
-- executes before a player gets kicked (server)
-- arguments: Player - the Player getting kicked, Reason - the reason the player got kicked
function this:OnPrePlayerKicked(Player, Reason)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
if (IsShaderSupportingClient()) then
validLauncher = false
for _,newVal in pairs(Player.Security:GetChildren()) do
if (newVal.Name == "LauncherMD5") then
if (newVal.Value == game.Lighting.Security.LauncherMD5.Value or newVal.Value == "") then
validLauncher = true
end
end
end
if (validLauncher == true) then
print(Player.Name .. " is using a valid modified client!")
local ver = Instance.new("StringValue",game.Lighting)
ver.Name = "SkipSecurity"
ver.Value = "temp"
end
end
end
-- executes after a character loads (server, solo, studio)
-- arguments: Player - Player getting a character loaded, Appearance - The object containing the appearance values
-- notes: in play solo, you may have to respawn once to see any print outputs.
function this:OnLoadCharacter(Player, Appearance)
if (game.Lighting.SkipSecurity.Value == "temp" then
game.Lighting.SkipSecurity:remove()
end
end
-- DO NOT MODIFY THIS. this is required to load this addon into the game.
function AddModule(t)
table.insert(t, this)
end
_G.CSScript_AddModule=AddModule

View File

@ -1,7 +1,14 @@
1.3 Snapshot v22.8222.20490.2
Enhancements:
- Added support for multiple addon scripts!
- Thanks to BRAVONATCHO for the idea!
- Added OnPrePlayerKicked to the scripting API.
- You can now join games with Shaders clients!
----------------------------------------------------------------------------
1.3 Snapshot v22.8222.20490.2
Enhancements:
- Added a Novetus Scripting API!
- Look in the Addon_Template.lua file for more info!
- Look in the addons/Addon_Template.lua file for more info!
----------------------------------------------------------------------------
1.3 Snapshot v22.8222.20490.1
Enhancements:

View File

@ -141,5 +141,8 @@ XCOPY "%cd%\Novetus\LICENSE.txt" "%dest%\LICENSE" /y
XCOPY "%cd%\Novetus\LICENSE-QUERY-PHP.txt" "%dest%\LICENSE-QUERY-PHP" /y
XCOPY "%cd%\Novetus\LICENSE-RESHADE.txt" "%dest%\LICENSE-RESHADE" /y
XCOPY "%cd%\Novetus\README-AND-CREDITS.TXT" "%dest%" /y
XCOPY "%cd%\Novetus\Addon_Template.lua" "%dest%" /y
XCOPY "%cd%\Novetus\addons\Addon_Template.lua" "%dest%" /y
XCOPY "%cd%\Novetus\addons\ClientNamePrinter.lua" "%dest%" /y
XCOPY "%cd%\Novetus\addons\ShadersCompatibility.lua" "%dest%" /y
XCOPY "%cd%\Novetus\addons\core\AddonLoader.lua" "%dest%" /y
if %debug%==1 pause

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -232,8 +234,8 @@ end
print("ROBLOX Client version '0.3.368.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2006S-Shaders") end)
Server = game:service("NetworkServer")
RunService = game:service("RunService")
PlayerService = game:service("Players")
@ -403,8 +405,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2006S-Shaders") end)
game:service("RunService"):run()
local plr = game.Players:createLocalPlayer(UserID)
game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm")
@ -434,8 +436,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2006S-Shaders") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -232,8 +234,8 @@ end
print("ROBLOX Client version '0.3.368.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2006S") end)
Server = game:service("NetworkServer")
RunService = game:service("RunService")
PlayerService = game:service("Players")
@ -403,8 +405,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2006S") end)
game:service("RunService"):run()
local plr = game.Players:createLocalPlayer(UserID)
game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm")
@ -434,8 +436,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2006S") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -294,8 +296,8 @@ end
print("ROBLOX Client version '0.3.368.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2007E-Shaders") end)
Server = game:service("NetworkServer")
RunService = game:service("RunService")
PlayerService = game:service("Players")
@ -461,8 +463,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2007E-Shaders") end)
game:service("RunService"):run()
local plr = game.Players:createLocalPlayer(UserID)
game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm")
@ -492,8 +494,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2007E-Shaders") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:findFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -294,8 +296,8 @@ end
print("ROBLOX Client version '0.3.368.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2007E") end)
Server = game:service("NetworkServer")
RunService = game:service("RunService")
PlayerService = game:service("Players")
@ -461,8 +463,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2007E") end)
game:service("RunService"):run()
local plr = game.Players:createLocalPlayer(UserID)
game.Workspace:insertContent("rbxasset://Fonts//libraries.rbxm")
@ -492,8 +494,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2007E") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -354,8 +356,8 @@ end
print("ROBLOX Client version '0.3.512.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2007M-Shaders") end)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
PlayerService = game:GetService("Players")
@ -520,8 +522,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2007M-Shaders") end)
game:GetService("RunService"):run()
local plr = game.Players:CreateLocalPlayer(UserID)
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -550,8 +552,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2007M-Shaders") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -354,8 +356,8 @@ end
print("ROBLOX Client version '0.3.512.0' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2007M") end)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
PlayerService = game:GetService("Players")
@ -520,8 +522,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2007M") end)
game:GetService("RunService"):run()
local plr = game.Players:CreateLocalPlayer(UserID)
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -550,8 +552,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2007M") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -472,8 +474,8 @@ rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2008M") end)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
Server:start(Port, 20)
@ -638,8 +640,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2008M") end)
game:GetService("RunService"):run()
local plr = game.Players:CreateLocalPlayer(UserID)
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -669,8 +671,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2008M") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -553,8 +555,8 @@ rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2009E-HD") end)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
Server:start(Port, 20)
@ -732,8 +734,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2009E-HD") end)
game:GetService("RunService"):run()
local plr = game.Players:CreateLocalPlayer(UserID)
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -763,8 +765,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2009E-HD") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -12,6 +12,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -553,8 +555,8 @@ rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2009E") end)
Server = game:GetService("NetworkServer")
RunService = game:GetService("RunService")
Server:start(Port, 20)
@ -732,8 +734,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2009E") end)
game:GetService("RunService"):run()
local plr = game.Players:CreateLocalPlayer(UserID)
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
@ -763,8 +765,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2009E") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -13,6 +13,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -558,8 +560,8 @@ rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2010L") end)
assert((type(Port)~="number" or tonumber(Port)~=nil or Port==nil),"CSRun Error: Port must be nil or a number.")
local NetworkServer=game:GetService("NetworkServer")
local RunService = game:GetService("RunService")
@ -754,8 +756,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2010L") end)
game:GetService("RunService"):Run()
local plr = game.Players:CreateLocalPlayer(UserID)
plr.Name = PlayerName
@ -788,8 +790,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2010L") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -17,6 +17,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -582,8 +584,8 @@ rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications,ValidatedScripts)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2011E") end)
assert((type(Port)~="number" or tonumber(Port)~=nil or Port==nil),"CSRun Error: Port must be nil or a number.")
local NetworkServer=game:GetService("NetworkServer")
local RunService = game:GetService("RunService")
@ -787,8 +789,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2011E") end)
game:GetService("RunService"):Run()
local plr = game.Players:CreateLocalPlayer(UserID)
plr.Name = PlayerName
@ -828,8 +830,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio()
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2011E") end)
pcall(function() _G.CSScript_PostInit() end)
end

View File

@ -15,6 +15,8 @@ function newWaitForChild(newParent,name)
end
function KickPlayer(Player,reason)
pcall(function() _G.CSScript_OnPrePlayerKicked(Player,reason) end)
if (game.Lighting:FindFirstChild("SkipSecurity") ~= nil) then
do return end
end
@ -580,8 +582,8 @@ rbxversion = version()
print("ROBLOX Client version '" .. rbxversion .. "' loaded.")
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Notifications,ValidatedScripts,NewGUI)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Server") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Server", "2011M") end)
pcall(function()
id = -1
if NewGUI == true then
@ -791,8 +793,8 @@ function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,He
end
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ItemID,NewGUI)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Solo") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Solo", "2011M") end)
pcall(function()
id = -1
if NewGUI == true then
@ -841,8 +843,8 @@ function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,
end
function CSStudio(NewGUI)
pcall(function() dofile("rbxasset://scripts//Addon.lua") end)
pcall(function() _G.CSScript_PreInit("Studio") end)
pcall(function() dofile("rbxasset://..//..//..//addons//core//AddonLoader.lua") end)
pcall(function() _G.CSScript_PreInit("Studio", "2011M") end)
pcall(function()
id = -1
if NewGUI == true then

View File

@ -8,6 +8,6 @@ ExtendedVersionNumber=True
ExtendedVersionEditChangelog=True
//ExtendedVersionTemplate=%version% v?.2022.%extended-revision%%lite%
ExtendedVersionTemplate=%version% Snapshot v22.%build%.%revision%.%extended-revision%
ExtendedVersionRevision=2
ExtendedVersionRevision=1
IsLite=False
InitialBootup=True
InitialBootup=False