progress ig. mid 2007 tho
This commit is contained in:
parent
53037e0830
commit
add9cee416
14
CSView.lua
14
CSView.lua
|
|
@ -15,10 +15,10 @@ function LoadCharacterNew(playerApp,newChar)
|
||||||
local customtype = newVal.CustomizationType.Value
|
local customtype = newVal.CustomizationType.Value
|
||||||
if (customtype == 1) then
|
if (customtype == 1) then
|
||||||
pcall(function()
|
pcall(function()
|
||||||
charparts[newVal.ColorIndex.Value].BrickColor = newVal.Value
|
charparts[newVal.ColorIndex.Value].BrickColor = newVal.Value
|
||||||
end)
|
end)
|
||||||
elseif (customtype == 2) then
|
elseif (customtype == 2) then
|
||||||
pcall(function()
|
pcall(function()
|
||||||
local newHat = game.Workspace:InsertContent("rbxasset://../../../charcustom/hats/"..newVal.Value)
|
local newHat = game.Workspace:InsertContent("rbxasset://../../../charcustom/hats/"..newVal.Value)
|
||||||
if newHat[1] then
|
if newHat[1] then
|
||||||
if newHat[1].className == "Hat" then
|
if newHat[1].className == "Hat" then
|
||||||
|
|
@ -29,7 +29,7 @@ function LoadCharacterNew(playerApp,newChar)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
elseif (customtype == 3) then
|
elseif (customtype == 3) then
|
||||||
pcall(function()
|
pcall(function()
|
||||||
local newTShirt = game.Workspace:InsertContent("rbxasset://../../../charcustom/tshirts/"..newVal.Value)
|
local newTShirt = game.Workspace:InsertContent("rbxasset://../../../charcustom/tshirts/"..newVal.Value)
|
||||||
if newTShirt[1] then
|
if newTShirt[1] then
|
||||||
if newTShirt[1].className == "ShirtGraphic" then
|
if newTShirt[1].className == "ShirtGraphic" then
|
||||||
|
|
@ -40,7 +40,7 @@ function LoadCharacterNew(playerApp,newChar)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
elseif (customtype == 4) then
|
elseif (customtype == 4) then
|
||||||
pcall(function()
|
pcall(function()
|
||||||
local newShirt = game.Workspace:InsertContent("rbxasset://../../../charcustom/shirts/"..newVal.Value)
|
local newShirt = game.Workspace:InsertContent("rbxasset://../../../charcustom/shirts/"..newVal.Value)
|
||||||
if newShirt[1] then
|
if newShirt[1] then
|
||||||
if newShirt[1].className == "Shirt" then
|
if newShirt[1].className == "Shirt" then
|
||||||
|
|
@ -51,7 +51,7 @@ function LoadCharacterNew(playerApp,newChar)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
elseif (customtype == 5) then
|
elseif (customtype == 5) then
|
||||||
pcall(function()
|
pcall(function()
|
||||||
local newPants = game.Workspace:InsertContent("rbxasset://../../../charcustom/pants/"..newVal.Value)
|
local newPants = game.Workspace:InsertContent("rbxasset://../../../charcustom/pants/"..newVal.Value)
|
||||||
if newPants[1] then
|
if newPants[1] then
|
||||||
if newPants[1].className == "Pants" then
|
if newPants[1].className == "Pants" then
|
||||||
|
|
@ -62,7 +62,7 @@ function LoadCharacterNew(playerApp,newChar)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
elseif (customtype == 6) then
|
elseif (customtype == 6) then
|
||||||
pcall(function()
|
pcall(function()
|
||||||
local newFace = game.Workspace:InsertContent("rbxasset://../../../charcustom/faces/"..newVal.Value)
|
local newFace = game.Workspace:InsertContent("rbxasset://../../../charcustom/faces/"..newVal.Value)
|
||||||
if newFace[1] then
|
if newFace[1] then
|
||||||
if newFace[1].className == "Decal" then
|
if newFace[1].className == "Decal" then
|
||||||
|
|
@ -75,7 +75,7 @@ function LoadCharacterNew(playerApp,newChar)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
elseif (customtype == 7) then
|
elseif (customtype == 7) then
|
||||||
pcall(function()
|
pcall(function()
|
||||||
local newPart = game.Workspace:InsertContent("rbxasset://../../../charcustom/heads/"..newVal.Value)
|
local newPart = game.Workspace:InsertContent("rbxasset://../../../charcustom/heads/"..newVal.Value)
|
||||||
if newPart[1] then
|
if newPart[1] then
|
||||||
if newPart[1].className == "SpecialMesh" or newPart[1].className == "CylinderMesh" or newPart[1].className == "BlockMesh" then
|
if newPart[1].className == "SpecialMesh" or newPart[1].className == "CylinderMesh" or newPart[1].className == "BlockMesh" then
|
||||||
|
|
|
||||||
|
|
@ -721,7 +721,15 @@ namespace NovetusLauncher
|
||||||
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
|
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
|
||||||
}
|
}
|
||||||
string mapfile = GlobalVars.MapsDir + @"\\" + GlobalVars.Map;
|
string mapfile = GlobalVars.MapsDir + @"\\" + GlobalVars.Map;
|
||||||
string rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
|
string rbxexe = "";
|
||||||
|
if (GlobalVars.LegacyMode == true)
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp_studio.exe";
|
||||||
|
}
|
||||||
string quote = "\"";
|
string quote = "\"";
|
||||||
string args = "";
|
string args = "";
|
||||||
if (!GlobalVars.FixScriptMapMode)
|
if (!GlobalVars.FixScriptMapMode)
|
||||||
|
|
@ -784,7 +792,15 @@ namespace NovetusLauncher
|
||||||
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
|
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
|
||||||
}
|
}
|
||||||
string mapfile = GlobalVars.MapsDir + @"\\" + GlobalVars.Map;
|
string mapfile = GlobalVars.MapsDir + @"\\" + GlobalVars.Map;
|
||||||
string rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
|
string rbxexe = "";
|
||||||
|
if (GlobalVars.LegacyMode == true)
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp_server.exe";
|
||||||
|
}
|
||||||
string quote = "\"";
|
string quote = "\"";
|
||||||
string args = "";
|
string args = "";
|
||||||
string md5dir = SecurityFuncs.CalculateMD5(Assembly.GetExecutingAssembly().Location);
|
string md5dir = SecurityFuncs.CalculateMD5(Assembly.GetExecutingAssembly().Location);
|
||||||
|
|
@ -822,7 +838,15 @@ namespace NovetusLauncher
|
||||||
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
|
luafile = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\content\\scripts\\" + GlobalVars.ScriptGenName + ".lua";
|
||||||
}
|
}
|
||||||
string mapfile = GlobalVars.MapsDir + @"\\" + GlobalVars.Map;
|
string mapfile = GlobalVars.MapsDir + @"\\" + GlobalVars.Map;
|
||||||
string rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
|
string rbxexe = "";
|
||||||
|
if (GlobalVars.LegacyMode == true)
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp.exe";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rbxexe = GlobalVars.ClientDir + @"\\" + GlobalVars.SelectedClient + @"\\RobloxApp_studio.exe";
|
||||||
|
}
|
||||||
string quote = "\"";
|
string quote = "\"";
|
||||||
string args = "";
|
string args = "";
|
||||||
if (!GlobalVars.FixScriptMapMode)
|
if (!GlobalVars.FixScriptMapMode)
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,28 @@
|
||||||
|
<roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
|
||||||
|
<External>null</External>
|
||||||
|
<External>nil</External>
|
||||||
|
<Item class="Script" referent="RBX0">
|
||||||
|
<Properties>
|
||||||
|
<bool name="Disabled">false</bool>
|
||||||
|
<Content name="LinkedSource"><null></null></Content>
|
||||||
|
<string name="Name">ResetCommand</string>
|
||||||
|
<ProtectedString name="Source">function onChatted(msg, speaker)
|
||||||
|
|
||||||
|
source = string.lower(speaker.Name)
|
||||||
|
msg = string.lower(msg)
|
||||||
|
-- Note: This one is NOT caps sensitive
|
||||||
|
|
||||||
|
if msg == "!!!reset" then
|
||||||
|
speaker.Character.Humanoid.Health = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function onPlayerEntered(newPlayer)
|
||||||
|
newPlayer.Chatted:connect(function(msg) onChatted(msg, newPlayer) end)
|
||||||
|
end
|
||||||
|
|
||||||
|
game.Players.ChildAdded:connect(onPlayerEntered)</ProtectedString>
|
||||||
|
<bool name="archivable">true</bool>
|
||||||
|
</Properties>
|
||||||
|
</Item>
|
||||||
|
</roblox>
|
||||||
|
|
@ -0,0 +1,419 @@
|
||||||
|
settings().Network.maxDataModelSendBuffer = 1000000
|
||||||
|
settings().Network.sendRate = 1000000
|
||||||
|
|
||||||
|
--function made by rbxbanland
|
||||||
|
function newWaitForChild(newParent,name)
|
||||||
|
local returnable = nil
|
||||||
|
if newParent:FindFirstChild(name) then
|
||||||
|
returnable = newParent:FindFirstChild(name)
|
||||||
|
else
|
||||||
|
repeat wait() returnable = newParent:FindFirstChild(name) until returnable ~= nil
|
||||||
|
end
|
||||||
|
return returnable
|
||||||
|
end
|
||||||
|
|
||||||
|
function LoadCharacterNew(playerApp,newChar,RemoveTeapotTurret)
|
||||||
|
local charparts = {[1] = newWaitForChild(newChar,"Head"),[2] = newWaitForChild(newChar,"Torso"),[3] = newWaitForChild(newChar,"Left Arm"),[4] = newWaitForChild(newChar,"Right Arm"),[5] = newWaitForChild(newChar,"Left Leg"),[6] = newWaitForChild(newChar,"Right Leg")}
|
||||||
|
for _,newVal in pairs(playerApp:GetChildren()) do
|
||||||
|
local customtype = newVal.CustomizationType.Value
|
||||||
|
if (customtype == 1) then
|
||||||
|
pcall(function()
|
||||||
|
charparts[newVal.ColorIndex.Value].BrickColor = newVal.Value
|
||||||
|
end)
|
||||||
|
elseif (customtype == 2) then
|
||||||
|
pcall(function()
|
||||||
|
local newHat = game.Workspace:InsertContent("rbxasset://../../../charcustom/hats/"..newVal.Value)
|
||||||
|
if newHat[1] then
|
||||||
|
if newHat[1].className == "Hat" then
|
||||||
|
if (RemoveTeapotTurret == true) then
|
||||||
|
if (newHat[1].Name ~= "TeapotTurret.rbxm") then
|
||||||
|
newHat[1].Parent = newChar
|
||||||
|
else
|
||||||
|
newHat[1]:remove()
|
||||||
|
end
|
||||||
|
else
|
||||||
|
newHat[1].Parent = newChar
|
||||||
|
end
|
||||||
|
else
|
||||||
|
newHat[1]:remove()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
elseif (customtype == 3) then
|
||||||
|
pcall(function()
|
||||||
|
local newTShirt = game.Workspace:InsertContent("rbxasset://../../../charcustom/tshirts/"..newVal.Value)
|
||||||
|
if newTShirt[1] then
|
||||||
|
if newTShirt[1].className == "ShirtGraphic" then
|
||||||
|
newTShirt[1].Parent = newChar
|
||||||
|
else
|
||||||
|
newTShirt[1]:remove()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function InitalizeClientAppearance(Player,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID)
|
||||||
|
local newCharApp = Instance.new("IntValue",Player)
|
||||||
|
newCharApp.Name = "Appearance"
|
||||||
|
--BODY COLORS
|
||||||
|
for i=1,6,1 do
|
||||||
|
local BodyColor = Instance.new("BrickColorValue",newCharApp)
|
||||||
|
if (i == 1) then
|
||||||
|
if (HeadColorID ~= nil) then
|
||||||
|
BodyColor.Value = BrickColor.new(HeadColorID)
|
||||||
|
else
|
||||||
|
BodyColor.Value = BrickColor.new(1)
|
||||||
|
end
|
||||||
|
BodyColor.Name = "HeadColor"
|
||||||
|
elseif (i == 2) then
|
||||||
|
if (TorsoColorID ~= nil) then
|
||||||
|
BodyColor.Value = BrickColor.new(TorsoColorID)
|
||||||
|
else
|
||||||
|
BodyColor.Value = BrickColor.new(1)
|
||||||
|
end
|
||||||
|
BodyColor.Name = "TorsoColor"
|
||||||
|
elseif (i == 3) then
|
||||||
|
if (LeftArmColorID ~= nil) then
|
||||||
|
BodyColor.Value = BrickColor.new(LeftArmColorID)
|
||||||
|
else
|
||||||
|
BodyColor.Value = BrickColor.new(1)
|
||||||
|
end
|
||||||
|
BodyColor.Name = "LeftArmColor"
|
||||||
|
elseif (i == 4) then
|
||||||
|
if (RightArmColorID ~= nil) then
|
||||||
|
BodyColor.Value = BrickColor.new(RightArmColorID)
|
||||||
|
else
|
||||||
|
BodyColor.Value = BrickColor.new(1)
|
||||||
|
end
|
||||||
|
BodyColor.Name = "RightArmColor"
|
||||||
|
elseif (i == 5) then
|
||||||
|
if (LeftLegColorID ~= nil) then
|
||||||
|
BodyColor.Value = BrickColor.new(LeftLegColorID)
|
||||||
|
else
|
||||||
|
BodyColor.Value = BrickColor.new(1)
|
||||||
|
end
|
||||||
|
BodyColor.Name = "LeftLegColor"
|
||||||
|
elseif (i == 6) then
|
||||||
|
if (RightLegColorID ~= nil) then
|
||||||
|
BodyColor.Value = BrickColor.new(RightLegColorID)
|
||||||
|
else
|
||||||
|
BodyColor.Value = BrickColor.new(1)
|
||||||
|
end
|
||||||
|
BodyColor.Name = "RightLegColor"
|
||||||
|
end
|
||||||
|
local indexValue = Instance.new("NumberValue")
|
||||||
|
indexValue.Name = "ColorIndex"
|
||||||
|
indexValue.Parent = BodyColor
|
||||||
|
indexValue.Value = i
|
||||||
|
local typeValue = Instance.new("NumberValue")
|
||||||
|
typeValue.Name = "CustomizationType"
|
||||||
|
typeValue.Parent = BodyColor
|
||||||
|
typeValue.Value = 1
|
||||||
|
end
|
||||||
|
--HATS
|
||||||
|
for i=1,3,1 do
|
||||||
|
local newHat = Instance.new("StringValue",newCharApp)
|
||||||
|
if (i == 1) then
|
||||||
|
if (RightLegColorID ~= nil) then
|
||||||
|
newHat.Value = Hat1ID
|
||||||
|
newHat.Name = Hat1ID
|
||||||
|
else
|
||||||
|
newHat.Value = "NoHat.rbxm"
|
||||||
|
newHat.Name = "NoHat.rbxm"
|
||||||
|
end
|
||||||
|
elseif (i == 2) then
|
||||||
|
if (RightLegColorID ~= nil) then
|
||||||
|
newHat.Value = Hat2ID
|
||||||
|
newHat.Name = Hat2ID
|
||||||
|
else
|
||||||
|
newHat.Value = "NoHat.rbxm"
|
||||||
|
newHat.Name = "NoHat.rbxm"
|
||||||
|
end
|
||||||
|
elseif (i == 3) then
|
||||||
|
if (RightLegColorID ~= nil) then
|
||||||
|
newHat.Value = Hat3ID
|
||||||
|
newHat.Name = Hat3ID
|
||||||
|
else
|
||||||
|
newHat.Value = "NoHat.rbxm"
|
||||||
|
newHat.Name = "NoHat.rbxm"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
local typeValue = Instance.new("NumberValue")
|
||||||
|
typeValue.Name = "CustomizationType"
|
||||||
|
typeValue.Parent = newHat
|
||||||
|
typeValue.Value = 2
|
||||||
|
end
|
||||||
|
--T-SHIRT
|
||||||
|
local newTShirt = Instance.new("StringValue",newCharApp)
|
||||||
|
if (TShirtID ~= nil) then
|
||||||
|
newTShirt.Value = TShirtID
|
||||||
|
newTShirt.Name = TShirtID
|
||||||
|
else
|
||||||
|
newTShirt.Value = "NoTShirt.rbxm"
|
||||||
|
newTShirt.Name = "NoTShirt.rbxm"
|
||||||
|
end
|
||||||
|
local typeValue = Instance.new("NumberValue")
|
||||||
|
typeValue.Name = "CustomizationType"
|
||||||
|
typeValue.Parent = newTShirt
|
||||||
|
typeValue.Value = 3
|
||||||
|
end
|
||||||
|
|
||||||
|
function LoadSecurity(playerApp,Player,ServerSecurityLocation)
|
||||||
|
if (playerApp==nil) then
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
else
|
||||||
|
if ((playerApp:GetChildren() ~= 0) or (playerApp:GetChildren() ~= nil)) then
|
||||||
|
for _,newVal in pairs(playerApp:GetChildren()) do
|
||||||
|
if (playerApp:FindFirstChild("ClientEXEMD5")) then
|
||||||
|
if ((newVal.Name == "ClientEXEMD5")) then
|
||||||
|
if ((newVal.Value ~= ServerSecurityLocation.Security.ClientEXEMD5.Value) or (newVal.Value == nil) or (newVal.Value == "")) then
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
end
|
||||||
|
|
||||||
|
if (playerApp:FindFirstChild("LauncherMD5")) then
|
||||||
|
if ((newVal.Name == "LauncherMD5")) then
|
||||||
|
if ((newVal.Value ~= ServerSecurityLocation.Security.LauncherMD5.Value) or (newVal.Value == nil) or (newVal.Value == "")) then
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
end
|
||||||
|
|
||||||
|
if (playerApp:FindFirstChild("ClientScriptMD5")) then
|
||||||
|
if ((newVal.Name == "ClientScriptMD5")) then
|
||||||
|
if ((newVal.Value ~= ServerSecurityLocation.Security.ClientScriptMD5.Value) or (newVal.Value == nil) or (newVal.Value == "")) then
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Modified Client"
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Modified Client")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function InitalizeSecurityValues(Location,ClientEXEMD5,LauncherMD5,ClientScriptMD5)
|
||||||
|
local newCharApp = Instance.new("IntValue",Location)
|
||||||
|
newCharApp.Name = "Security"
|
||||||
|
local newClientMD5 = Instance.new("StringValue",newCharApp)
|
||||||
|
if (ClientEXEMD5 ~= nil) then
|
||||||
|
newClientMD5.Value = ClientEXEMD5
|
||||||
|
else
|
||||||
|
newClientMD5.Value = ""
|
||||||
|
end
|
||||||
|
newClientMD5.Name = "ClientEXEMD5"
|
||||||
|
local newLauncherMD5 = Instance.new("StringValue",newCharApp)
|
||||||
|
if (LauncherMD5 ~= nil) then
|
||||||
|
newLauncherMD5.Value = LauncherMD5
|
||||||
|
else
|
||||||
|
newLauncherMD5.Value = ""
|
||||||
|
end
|
||||||
|
newLauncherMD5.Name = "LauncherMD5"
|
||||||
|
local newClientScriptMD5 = Instance.new("StringValue",newCharApp)
|
||||||
|
if (ClientScriptMD5 ~= nil) then
|
||||||
|
newClientScriptMD5.Value = ClientScriptMD5
|
||||||
|
else
|
||||||
|
newClientScriptMD5.Value = ""
|
||||||
|
end
|
||||||
|
newClientScriptMD5.Name = "ClientScriptMD5"
|
||||||
|
end
|
||||||
|
|
||||||
|
print("ROBLOX Client version '0.3.512.0' loaded.")
|
||||||
|
|
||||||
|
function CSServer(Port,PlayerLimit,ClientEXEMD5,LauncherMD5,ClientScriptMD5,RemoveTeapotTurret)
|
||||||
|
Server = game:GetService("NetworkServer")
|
||||||
|
RunService = game:GetService("RunService")
|
||||||
|
Server:start(Port, 20)
|
||||||
|
RunService:run()
|
||||||
|
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
|
||||||
|
game:GetService("Players").MaxPlayers = PlayerLimit
|
||||||
|
game:GetService("Players").PlayerAdded:connect(function(Player)
|
||||||
|
if (game:GetService("Players").NumPlayers > game:GetService("Players").MaxPlayers) then
|
||||||
|
local message = Instance.new("Message")
|
||||||
|
message.Text = "You were kicked. Reason: Too many players on server."
|
||||||
|
message.Parent = Player
|
||||||
|
wait(2)
|
||||||
|
Player:remove()
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' kicked. Reason: Too many players on server.")
|
||||||
|
else
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' added")
|
||||||
|
Player:LoadCharacter()
|
||||||
|
LoadSecurity(newWaitForChild(Player,"Security"),Player,game.Lighting)
|
||||||
|
if (Player.Character ~= nil) then
|
||||||
|
LoadCharacterNew(newWaitForChild(Player,"Appearance"),Player.Character,RemoveTeapotTurret)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
coroutine.resume(coroutine.create(function()
|
||||||
|
while Player ~= nil do
|
||||||
|
wait(0.1)
|
||||||
|
if (Player.Character ~= nil) then
|
||||||
|
if (Player.Character.Humanoid.Health == 0) then
|
||||||
|
wait(5)
|
||||||
|
Player:LoadCharacter()
|
||||||
|
LoadCharacterNew(newWaitForChild(Player,"Appearance"),Player.Character,RemoveTeapotTurret)
|
||||||
|
elseif (Player.Character.Parent == nil) then
|
||||||
|
wait(5)
|
||||||
|
Player:LoadCharacter()
|
||||||
|
LoadCharacterNew(newWaitForChild(Player,"Appearance"),Player.Character,RemoveTeapotTurret)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end))
|
||||||
|
end)
|
||||||
|
game:GetService("Players").PlayerRemoving:connect(function(Player)
|
||||||
|
print("Player '" .. Player.Name .. "' with ID '" .. Player.userId .. "' leaving")
|
||||||
|
end)
|
||||||
|
game:GetService("RunService"):Run()
|
||||||
|
pcall(function() game.Close:connect(function() Server:Stop() end) end)
|
||||||
|
InitalizeSecurityValues(game.Lighting,LauncherMD5,ClientEXEMD5,ClientScriptMD5)
|
||||||
|
Server.IncommingConnection:connect(IncommingConnection)
|
||||||
|
end
|
||||||
|
|
||||||
|
function CSConnect(UserID,ServerIP,ServerPort,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType,ClientEXEMD5,LauncherMD5,ClientScriptMD5,Ticket)
|
||||||
|
local suc, err = pcall(function()
|
||||||
|
client = game:GetService("NetworkClient")
|
||||||
|
player = game:GetService("Players"):CreateLocalPlayer(UserID)
|
||||||
|
player:SetSuperSafeChat(false)
|
||||||
|
pcall(function() player:SetUnder13(false) end)
|
||||||
|
pcall(function() player:SetAccountAge(365) end)
|
||||||
|
pcall(function() player.Name=PlayerName or "" end)
|
||||||
|
game:GetService("Visit")
|
||||||
|
InitalizeClientAppearance(player,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID)
|
||||||
|
InitalizeSecurityValues(player,LauncherMD5,ClientEXEMD5,ClientScriptMD5)
|
||||||
|
end)
|
||||||
|
|
||||||
|
local function dieerror(errmsg)
|
||||||
|
game:SetMessage(errmsg)
|
||||||
|
wait(math.huge)
|
||||||
|
end
|
||||||
|
|
||||||
|
if not suc then
|
||||||
|
dieerror(err)
|
||||||
|
end
|
||||||
|
|
||||||
|
local function disconnect(peer,lostconnection)
|
||||||
|
game:SetMessage("You have lost connection to the game")
|
||||||
|
end
|
||||||
|
|
||||||
|
local function connected(url, replicator)
|
||||||
|
replicator.Disconnection:connect(disconnect)
|
||||||
|
local marker = nil
|
||||||
|
local suc, err = pcall(function()
|
||||||
|
game:SetMessageBrickCount()
|
||||||
|
marker = replicator:SendMarker()
|
||||||
|
end)
|
||||||
|
if not suc then
|
||||||
|
dieerror(err)
|
||||||
|
end
|
||||||
|
marker.Received:connect(function()
|
||||||
|
local suc, err = pcall(function()
|
||||||
|
game:ClearMessage()
|
||||||
|
end)
|
||||||
|
if not suc then
|
||||||
|
dieerror(err)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
local function rejected()
|
||||||
|
dieerror("Failed to connect to the Game. (Connection rejected)")
|
||||||
|
end
|
||||||
|
|
||||||
|
local function failed(peer, errcode, why)
|
||||||
|
dieerror("Failed to connect to the Game. (ID="..errcode.." ["..why.."])")
|
||||||
|
end
|
||||||
|
|
||||||
|
local suc, err = pcall(function()
|
||||||
|
game:SetMessage("Connecting to server...")
|
||||||
|
client.ConnectionAccepted:connect(connected)
|
||||||
|
client.ConnectionRejected:connect(rejected)
|
||||||
|
client.ConnectionFailed:connect(failed)
|
||||||
|
client:Connect(ServerIP,ServerPort, 0, 20)
|
||||||
|
end)
|
||||||
|
|
||||||
|
if not suc then
|
||||||
|
local x = Instance.new("Message")
|
||||||
|
x.Text = err
|
||||||
|
x.Parent = workspace
|
||||||
|
wait(math.huge)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function CSSolo(UserID,PlayerName,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID,IconType)
|
||||||
|
local plr = game.Players:CreateLocalPlayer(UserID)
|
||||||
|
game:GetService("RunService"):run()
|
||||||
|
game.Workspace:InsertContent("rbxasset://Fonts//libraries.rbxm")
|
||||||
|
plr.Name = PlayerName
|
||||||
|
plr:LoadCharacter()
|
||||||
|
InitalizeClientAppearance(plr,Hat1ID,Hat2ID,Hat3ID,HeadColorID,TorsoColorID,LeftArmColorID,RightArmColorID,LeftLegColorID,RightLegColorID,TShirtID,ShirtID,PantsID,FaceID,HeadID)
|
||||||
|
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,false)
|
||||||
|
game:GetService("Visit")
|
||||||
|
while true do
|
||||||
|
wait(0.001)
|
||||||
|
if (plr.Character ~= nil) then
|
||||||
|
if (plr.Character.Humanoid.Health == 0) then
|
||||||
|
wait(5)
|
||||||
|
plr:LoadCharacter()
|
||||||
|
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,RemoveTeapotTurret)
|
||||||
|
elseif (plr.Character.Parent == nil) then
|
||||||
|
wait(5)
|
||||||
|
plr:LoadCharacter() -- to make sure nobody is deleted.
|
||||||
|
LoadCharacterNew(newWaitForChild(plr,"Appearance"),plr.Character,RemoveTeapotTurret)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
_G.CSServer=CSServer
|
||||||
|
_G.CSConnect=CSConnect
|
||||||
|
_G.CSSolo=CSSolo
|
||||||
BIN
tshirt.png
BIN
tshirt.png
Binary file not shown.
|
Before Width: | Height: | Size: 42 KiB |
BIN
tshirt_2006.png
BIN
tshirt_2006.png
Binary file not shown.
|
Before Width: | Height: | Size: 2.6 KiB |
Loading…
Reference in New Issue