Professional Documents
Culture Documents
Plane Crazy by KAKAZiT
Plane Crazy by KAKAZiT
com/dawid-
scripts/UI-Libs/main/fluxlib.txt")()
local Window = Flux:Window("PC Tools", "Press N to open/close", Color3.fromRGB(255,
110, 48), Enum.KeyCode.N)
local mouse = game.Players.LocalPlayer:GetMouse()
local uis = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local isVideoPlaying = true
local isSpamBlacklist = false
local isRandomPaint = false
local isRandomMaterial = false
local isGridEnabled = false
local materials = {
"Default",
"g",
"c",
"w",
"e",
"m",
"t",
"v",
"d",
"f",
"s",
"n",
"z",
"i",
"x"
}
function colourthisblock(block, r, g, b)
spawn(function()
local A_1 = block
local A_2 = Color3.new(r, g, b)
local Event = game:GetService("ReplicatedStorage").Remotes.Paint
Event:FireServer(A_1, A_2)
end)
end
function round(n)
return (n + 0.5) - (n + 0.5) % 1
end
function parachute()
while wait() do
local string_1 = nil
local string_2 = "Parachute";
local string_3 = "";
local string_4 = "";
local Target = game:GetService("ReplicatedStorage").Remotes.ListHandler;
Target:FireServer(string_1, string_2, string_3, string_4);
end
end
game:GetService("ReplicatedStorage").Remotes.Paint:FireServer(unpack(args))
else
break
end
end
end)
Tab1:Button("Paint Aircraft Random Colour", "paints your aircraft random colours
every 0.5 seconds", function()
if isRandomPaint then
isRandomPaint = false
else
isRandomPaint = true
end
while wait(0.2) do
if isRandomPaint then
local args = {
[1] =
workspace.PlayerAircraft[game.Players.LocalPlayer.Name].BlockStd.BlockStd,
[2] = Color3.new(math.random(0, 255) / 255, math.random(0, 255) /
255, math.random(0, 255) / 255),
[3] = "a"
}
game:GetService("ReplicatedStorage").Remotes.Paint:FireServer(unpack(args))
else
break
end
end
end)
Tab1:Button("Gravity gun", "gives a gravity gun that can move only your creation",
function()
loadstring(game:HttpGet(('https://pastebin.com/raw/6cfa5Wxa'),true))()
end)
Tab1:Button("Infinite Yield", "loads in infinite yield", function()
loadstring(game:HttpGet('https://raw.githubusercontent.com/EdgeIY/
infiniteyield/master/source'))()
end)
--[[
Tab1:Button("Mirror mode", "mirrors your placement", function()
end)
]]
Tab1:Button("Building Grid", "makes a platform so you dont have to build
scaffolding to place blocks", function()
if isGridEnabled then
isGridEnabled = false
pcall(function()
game.Workspace.PlayerAircraft[game.Players.LocalPlayer.Name].GridWall:Destroy()
end)
else
isGridEnabled = true
for i,zone in pairs(game.Workspace.BuildingZones:GetChildren()) do
if tostring(zone.Owner.Value) == game.Players.LocalPlayer.Name then
local wall = Instance.new("Part")
wall.Size = Vector3.new(130, 2.5, 130)
wall.Material = Enum.Material.SmoothPlastic
wall.Name = "GridWall"
wall.CanCollide = false
wall.Transparency = 0.7
wall.Anchored = true
wall.CFrame = CFrame.new(zone.Position.x, zone.Position.y + 3.5,
zone.Position.z)
wall.Parent =
game.Workspace.PlayerAircraft[game.Players.LocalPlayer.Name]
end
end
end
end)
Tab2:Button("Kill Rockets", "kill players using rockets. close tracking for better
effect", function()
pcall(function()
while wait() do
local guns = {}
for i,v in pairs(game:GetService("Workspace")
[game.Players.LocalPlayer.Name .. "Aircraft"]:GetChildren()) do
if v.Name == "Rocket" then
table.insert(guns, v)
zeroGrav(v.MainPart)
end
end
for i,v in pairs(game.Players:GetChildren()) do
local a = 1
if v.Name == game.Players.LocalPlayer.Name then
a = 0
end
if a == 1 then
pcall(function()
guns[i].MainPart.CFrame =
v.Character.HumanoidRootPart.CFrame +
v.Character.HumanoidRootPart.CFrame.lookVector * 100
local args = {
[1] = guns[i],
[2] = 1629193720
}
game:GetService("ReplicatedStorage").Remotes.spawnrocket:FireServer(unpack(args))
end)
end
end
end
end)
end)
function reset()
step:Disconnect()
removed:Disconnect()
print("Reset")
end
end)
game:GetService("ReplicatedStorage").Remotes.ListHandler:FireServer(unpack(args))
wait(0.2)
local args = {[1] = v.Name, [2] = "BlackList", [3] = false}
game:GetService("ReplicatedStorage").Remotes.ListHandler:FireServer(unpack(args))
wait(0.2)
end
end
else
b.b.b.b() -- scuffed break
end
end
end)
end)
--Here we are tapping into the runservice stepped event to process queued
chunks to generate
game:GetService("RunService").Stepped:connect(function()
--Only run if we have chunks to generate
if(#chunksToGenerate>0) then
--Here we are retreiving the first item in the list
local item = chunksToGenerate[1]
--Here we are setting the chunk's part to render green, to show that we
have generated the chunk(for debugging)
chunks[getChunkID(item.x, item.y)].part.BrickColor =
BrickColor.new(Color3.fromRGB(0,255,0))
--Here are some additional reused values for generating the terrain
local chunkgeneratorsettings = {
["xstart"] = item.x*settings.chunkSize,
["ystart"] = item.y*settings.chunkSize,
["width"] = math.ceil(settings.chunkSize/4),
["height"] = math.ceil(settings.chunkSize/4)
}
-- imagine yanderedev
-- snowy hills biome
if(_height<1) then
_height = 1
_material = Enum.Material.Water
elseif(_height<3) then
_material = Enum.Material.Sand
elseif (_height>math.random(100, 150)) then
_material = Enum.Material.Snow
else
_material = Enum.Material.Grass
end
game.workspace.Terrain:FillBlock(CFrame.new((_x*4)+chunkgeneratorsettings.xstart,_h
eight/2,(_y*4)+chunkgeneratorsettings.ystart), Vector3.new(1,_height,1), _material)
end
end
end
end)
--Now we are going to start handling chunks loading in around the players
--Chunk management
--The list of generated chunks
chunks = {}
--This gets the id in the list for the chunk
function getChunkID(x, y)
return tostring(x)..","..tostring(y)
end
part.Parent = game.Workspace
part.Name = "Chunk-"..tostring(x).."."..tostring(y)
--Here we are tapping into the run service stepped event to handle chunks
around the players
game:GetService("RunService").Stepped:connect(function()
for i, player in pairs(game.Players:GetPlayers()) do
if(player.character and player.character:findFirstChild("Head")) then
local _pos = {
["x"]=
math.floor((player.character.Head.Position.X)/settings.chunkSize),
["y"]=
math.floor((player.character.Head.Position.Z)/settings.chunkSize)
}
for _x = _pos.x-settings.renderDistance,
_pos.x+settings.renderDistance do
for _y = _pos.y-settings.renderDistance,
_pos.y+settings.renderDistance do
checkChunk(_x, _y)
end
end
end
end
end)
end)
Tab3:Textbox("Change thruster speed", "changes all movement speed by %, default
100%", true, function(text)
for i,v in pairs(game.Workspace[game.Players.LocalPlayer.Name ..
"Aircraft"]:GetDescendants()) do
pcall(function()
if v.ClassName == "Model" and v.Throttle then
v.Throttle.Value = tonumber(text)
end
end)
end
end)
Tab3:Button("Ocean Map", "turns the map into islands and oceans (client side)",
function()
local region = Region3.new(Vector3.new(-3750,-100,-2050),
Vector3.new(2500,43,2700))
region = region:ExpandToGrid(4)
game.Workspace.Terrain:FillRegion(region, 4, Enum.Material.Water)
end)
Tab3:Button("Kill TNT", "kill players using tnt in non-pvp servers", function()
local bomb = {}
local Players = game:GetService("Players")
local remotes = game:GetService("ReplicatedStorage"):WaitForChild("Remotes")
local explode = remotes:WaitForChild("Explode")
local player = Players.LocalPlayer
local aircraftName = player.Name.. "Aircraft"
local aircraft = game.Workspace:WaitForChild(aircraftName)
for i, v in pairs(aircraft:GetChildren()) do
if v.Name == "ExplosiveBlock" then
table.insert(bomb, v)
for j, k in pairs(v:GetDescendants()) do
if k:IsA("BasePart") then
k.CanCollide = false
end
end
local bodyPosition = Instance.new("BodyPosition")
bodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bodyPosition.Parent = v.PrimaryPart
bodyPosition.P = 1000000
bodyPosition.D = 100
end
end
function reset()
step:Disconnect()
removed:Disconnect()
print("Reset")
end
end)
local bomb = {}
for i, v in pairs(aircraft:GetChildren()) do
if v.Name == "ExplosiveBlock" then
table.insert(bomb, v)
end
end
for assad,block in
pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren
()) do
if block.Name == name then
for assad,block in
pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren
()) do
if block.Name == name then
block.BlockStd.Name = "BlockStd3"
block.BlockStd.Name = "BlockStd1"
block.BlockStd.Name = "BlockStd2"
block.BlockStd.Name = "BlockStd4"
block.BlockStd.Name = "BlockStd5"
end
end
for assad3, image_pixel in pairs(string_content) do
image_table = Split(tostring(image_pixel), " ")
local pixel_type = ""
local image_pixelX = image_table[1] - 2
local image_pixelY = image_table[2]
local image_R = image_table[3] / 255
local image_G = image_table[4] / 255
local image_B = image_table[5] / 255
if waitloop ~= image_pixelX then
wait()
end
waitloop = image_pixelX
if (image_pixelX % 2 == 0) then
if (image_pixelY % 2 == 0) then
pixel_type = "BlockStd4"
else
pixel_type = "BlockStd3"
end
else
if (image_pixelY % 2 == 0) then
pixel_type = "BlockStd1"
else
pixel_type = "BlockStd2"
end
end
for assad,block in
pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren
()) do
if block.Name == name then
block.Union.Name = "Union1"
block.Union.Name = "Union4"
block.Union.Name = "Union2"
block.Union.Name = "Union3"
end
end
for assad3, image_pixel in pairs(string_content) do
image_table = Split(tostring(image_pixel), " ")
local pixel_type = ""
local image_pixelX = image_table[1] - 2
local image_pixelY = image_table[2]
local image_R = image_table[3] / 255
local image_G = image_table[4] / 255
local image_B = image_table[5] / 255
if waitloop ~= image_pixelX then
wait()
end
waitloop = image_pixelX
if (image_pixelX % 2 == 0) then
if (image_pixelY % 2 == 0) then
pixel_type = "Union3"
else
pixel_type = "Union1"
end
else
if (image_pixelY % 2 == 0) then
pixel_type = "Union4"
else
pixel_type = "Union2"
end
end
print(framecount)
local framergb = Split(frame, "A")
local lastframergb = Split(string_content[framecount - 1], "A")
local frame_table = {}
local totalcount = 1
if isVideoPlaying then
for number=1, #framergb do
pcall(function()
local lastrgb = Split(lastframergb[number], " ")
local rgb = Split(framergb[number], " ")
local rgb1 = tonumber(rgb[1])
local rgb2 = tonumber(rgb[2])
local theblock =
game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]["BlockStd" ..
rgb1 .. "x" .. rgb2].PrimaryPart
local increment = 50 -- 1-255, 1 = absolute value,
higher = more noise but less lag
local lastrgbc = Color3.new(math.floor(lastrgb[3] /
increment), math.floor(lastrgb[4] / increment), math.floor(lastrgb[5] / increment))
local rgbc = Color3.new(math.floor(rgb[3] /
increment), math.floor(rgb[4] / increment), math.floor(rgb[5] / increment))
if lastrgbc ~= rgbc then
colourthisblock(theblock, rgb[3]/255,
rgb[4]/255, rgb[5]/255)
--print("painted block : " .. tostring(c) ..
"x" .. tostring(number2) .. " " .. tostring(rgb[1]) .. " " .. tostring(rgb[2]) .. "
" .. tostring(rgb[3]))
end
end)
end
else
b.b.b.b()
end
wait(0.033)
end
end
end
end
end)
Tab5:Textbox("Video inputstream", "testing currently not for use", true,
function(text)
local checkloop = 0
local waitloop = 0
for assad2,playerzone in pairs(game.Workspace.BuildingZones:GetChildren()) do
pcall(function()
if tostring(playerzone.Owner.Value) ==
tostring(game.Players.LocalPlayer) then
checkloop = 1
end
end)
if checkloop == 1 then
checkloop = 0
--[[
local image_link =
"https://smhreplitissotrashathandlingtonsoffileswhydoievenuseit.nexitysecond.repl.c
o/rendervideo?videolink=https://www.youtube.com/watch?v=cA9DEewBR_w"
local response = game:HttpGet(image_link)
local string_content = Split(response, "N")
]]--
local response = game:HttpGet(text)
local string_content = Split(response, "N")
for assad,block in
pairs(game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]:GetChildren
()) do
if block.Name == "BlockStd" then
if isVideoPlaying then
for number=1, #framergb do
pcall(function()
local lastrgb = Split(lastframergb[number], " ")
local rgb = Split(framergb[number], " ")
local rgb1 = tonumber(rgb[1])
local rgb2 = tonumber(rgb[2])
local theblock =
game.Workspace.PlayerAircraft[tostring(game.Players.LocalPlayer)]["BlockStd" ..
rgb1 .. "x" .. rgb2].PrimaryPart
local increment = 48 -- 1-255, 1 = absolute value,
higher = more noise but less lag
local lastrgbc = Color3.new(math.floor(lastrgb[3] /
increment), math.floor(lastrgb[4] / increment), math.floor(lastrgb[5] / increment))
local rgbc = Color3.new(math.floor(rgb[3] /
increment), math.floor(rgb[4] / increment), math.floor(rgb[5] / increment))
if lastrgbc ~= rgbc then
colourthisblock(theblock, rgb[3]/255,
rgb[4]/255, rgb[5]/255)
--print("painted block : " .. tostring(c) ..
"x" .. tostring(number2) .. " " .. tostring(rgb[1]) .. " " .. tostring(rgb[2]) .. "
" .. tostring(rgb[3]))
end
end)
end
else
b.b.b.b()
end
wait(0.033)
end
end
end
end
end)