mirror of https://github.com/teverse/teverse
Compare commits
11 Commits
263a6c76be
...
7ffb2dfe47
Author | SHA1 | Date |
---|---|---|
Sanjay Bhadra | 7ffb2dfe47 | |
Jay | 2753406be2 | |
Jay | 10176d4f66 | |
Jay | 20b70ad8a7 | |
Jay | 7cf19da3ae | |
Jay | d86d0a712f | |
Jay | 9d2cca67eb | |
Jay | beb35bbc8f | |
Sanjay | 28ed81c357 | |
Jay | afd690f598 | |
Jay | f6020eed89 |
|
@ -0,0 +1,184 @@
|
||||||
|
-- This script is ran when the user is running a local app/sandbox
|
||||||
|
|
||||||
|
local share = teverse.construct("guiTextBox", {
|
||||||
|
parent = teverse.coreInterface,
|
||||||
|
size = guiCoord(0, 60, 0, 16),
|
||||||
|
position = guiCoord(0.5, -65, 1, -20),
|
||||||
|
strokeRadius = 4,
|
||||||
|
text = "Share",
|
||||||
|
textAlign = "middle",
|
||||||
|
textSize = 12
|
||||||
|
})
|
||||||
|
|
||||||
|
local reload = teverse.construct("guiTextBox", {
|
||||||
|
parent = teverse.coreInterface,
|
||||||
|
size = guiCoord(0, 60, 0, 16),
|
||||||
|
position = guiCoord(0.5, 5, 1, -20),
|
||||||
|
strokeRadius = 4,
|
||||||
|
text = "Reload",
|
||||||
|
textAlign = "middle",
|
||||||
|
textSize = 12
|
||||||
|
})
|
||||||
|
|
||||||
|
reload:on("mouseLeftUp", function()
|
||||||
|
teverse.apps:reload()
|
||||||
|
end)
|
||||||
|
|
||||||
|
share:on("mouseLeftUp", function()
|
||||||
|
share.visible = false
|
||||||
|
|
||||||
|
local dialog = teverse.construct("guiFrame", {
|
||||||
|
parent = teverse.coreInterface,
|
||||||
|
size = guiCoord(0, 300, 0, 200),
|
||||||
|
position = guiCoord(0.5, -150, 0.5, -100),
|
||||||
|
strokeRadius = 4,
|
||||||
|
strokeAlpha = 0.3
|
||||||
|
})
|
||||||
|
|
||||||
|
local appsContainer = teverse.construct("guiFrame", {
|
||||||
|
parent = dialog,
|
||||||
|
size = guiCoord(1.0, -10, 1, -30),
|
||||||
|
position = guiCoord(0, 5, 0, 5),
|
||||||
|
backgroundAlpha = 0
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.guiHelper
|
||||||
|
.gridConstraint(appsContainer, {
|
||||||
|
cellSize = guiCoord(0, 130, 0, 24),
|
||||||
|
cellMargin = guiCoord(0, 10, 0, 15)
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.http:get("https://teverse.com/api/users/" .. teverse.networking.localClient.id .. "/apps", {
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken
|
||||||
|
}, function(code, body)
|
||||||
|
if code == 200 then
|
||||||
|
local apps = teverse.json:decode(body)
|
||||||
|
for _,app in pairs(apps) do
|
||||||
|
local appGui = teverse.construct("guiFrame", {
|
||||||
|
parent = appsContainer,
|
||||||
|
strokeAlpha = 0.1,
|
||||||
|
strokeRadius = 4
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.guiHelper.hoverColour(appGui, colour.rgb(247, 247, 247))
|
||||||
|
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = appGui,
|
||||||
|
size = guiCoord(1.0, -20, 1, -10),
|
||||||
|
position = guiCoord(0, 10, 0, 5),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = app.name,
|
||||||
|
textSize = 16,
|
||||||
|
textAlign = "middleLeft",
|
||||||
|
textFont = "tevurl:fonts/openSansBold.ttf",
|
||||||
|
active = false
|
||||||
|
})
|
||||||
|
|
||||||
|
appGui:on("mouseLeftUp", function()
|
||||||
|
dialog:destroyChildren()
|
||||||
|
local msg = teverse.construct("guiTextBox", {
|
||||||
|
parent = dialog,
|
||||||
|
size = guiCoord(1.0, -20, 1, -10),
|
||||||
|
position = guiCoord(0, 10, 0, 5),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "We're updating your app.",
|
||||||
|
textSize = 16,
|
||||||
|
textAlign = "topLeft",
|
||||||
|
textWrap = true
|
||||||
|
})
|
||||||
|
|
||||||
|
local code, body = teverse.http:put("https://teverse.com/api/apps/" .. app.id .. "/script",
|
||||||
|
teverse.json:encode(teverse.apps:getSource()),
|
||||||
|
{
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken,
|
||||||
|
["Content-Type"] = "application/json"
|
||||||
|
})
|
||||||
|
|
||||||
|
if code == 200 then
|
||||||
|
msg.text = "Your app was updated! Please note apps may be subject to moderation before becoming public."
|
||||||
|
else
|
||||||
|
msg.text = "Something went wrong."
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
local nameBox = teverse.construct("guiTextBox", {
|
||||||
|
parent = dialog,
|
||||||
|
size = guiCoord(1, -105, 0, 20),
|
||||||
|
position = guiCoord(0, 5, 1, -25),
|
||||||
|
textSize = 16,
|
||||||
|
textAlign = "middleLeft",
|
||||||
|
text = "Name",
|
||||||
|
backgroundColour = colour.rgb(240, 240, 240),
|
||||||
|
strokeRadius = 2,
|
||||||
|
textEditable = true
|
||||||
|
})
|
||||||
|
|
||||||
|
nameBox:on("mouseLeftUp", function()
|
||||||
|
nameBox.text = ""
|
||||||
|
end)
|
||||||
|
|
||||||
|
local createNew = teverse.construct("guiTextBox", {
|
||||||
|
parent = dialog,
|
||||||
|
size = guiCoord(0, 100, 0, 20),
|
||||||
|
position = guiCoord(1, -105, 1, -25),
|
||||||
|
backgroundColour = colour.rgb(216, 100, 89),
|
||||||
|
textSize = 18,
|
||||||
|
textAlign = "middle",
|
||||||
|
textFont = "tevurl:fonts/openSansBold.ttf",
|
||||||
|
text = "Create New",
|
||||||
|
textColour = colour(1, 1, 1),
|
||||||
|
strokeRadius = 2,
|
||||||
|
zIndex = 2
|
||||||
|
})
|
||||||
|
|
||||||
|
createNew:on("mouseLeftUp", function()
|
||||||
|
local newApp = {
|
||||||
|
name = nameBox.text
|
||||||
|
}
|
||||||
|
|
||||||
|
dialog:destroyChildren()
|
||||||
|
|
||||||
|
local msg = teverse.construct("guiTextBox", {
|
||||||
|
parent = dialog,
|
||||||
|
size = guiCoord(1.0, -20, 1, -10),
|
||||||
|
position = guiCoord(0, 10, 0, 5),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "We're creating your new app.",
|
||||||
|
textSize = 16,
|
||||||
|
textAlign = "topLeft",
|
||||||
|
textWrap = true
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.http:post("https://teverse.com/api/apps/", teverse.json:encode(newApp), {
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken,
|
||||||
|
["Content-Type"] = "application/json"
|
||||||
|
}, function(code, body)
|
||||||
|
if code == 201 then
|
||||||
|
local app = teverse.json:decode(body)
|
||||||
|
msg.text = "Deploying script to your new app (" .. app.id .. ")..."
|
||||||
|
local code, body = teverse.http:put("https://teverse.com/api/apps/" .. app.id .. "/script",
|
||||||
|
teverse.json:encode(teverse.apps:getSource()),
|
||||||
|
{
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken,
|
||||||
|
["Content-Type"] = "application/json"
|
||||||
|
})
|
||||||
|
msg.text = "Your new app has been published; please note apps may be subject to moderation before becoming public."
|
||||||
|
else
|
||||||
|
msg.text = "Something went wrong (" .. code .. ")"
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
else
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = appsContainer,
|
||||||
|
size = guiCoord(1.0, -20, 1, -10),
|
||||||
|
position = guiCoord(0, 10, 0, 5),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "Something went wrong",
|
||||||
|
textSize = 16,
|
||||||
|
textAlign = "topLeft"
|
||||||
|
})
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
|
@ -0,0 +1,13 @@
|
||||||
|
-- This script is ran when the user is running a shared app
|
||||||
|
|
||||||
|
local appsContainer = teverse.construct("guiTextBox", {
|
||||||
|
parent = teverse.coreInterface,
|
||||||
|
size = guiCoord(1, 0, 0, 15),
|
||||||
|
position = guiCoord(0, 0, 1, -15),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "You are running user generated code",
|
||||||
|
textShadowSize = 4,
|
||||||
|
textSize = 12,
|
||||||
|
textColour = colour(1, 1, 1),
|
||||||
|
textAlign = "middle"
|
||||||
|
})
|
|
@ -3,6 +3,125 @@ return {
|
||||||
iconId = "shapes",
|
iconId = "shapes",
|
||||||
iconType = "faSolid",
|
iconType = "faSolid",
|
||||||
setup = function(page)
|
setup = function(page)
|
||||||
|
local loading = teverse.construct("guiTextBox", {
|
||||||
|
parent = page,
|
||||||
|
size = guiCoord(1.0, 100, 1.0, 100),
|
||||||
|
position = guiCoord(0, -50, 0, -50),
|
||||||
|
backgroundAlpha = 0.4,
|
||||||
|
backgroundColour = colour(0, 0, 0),
|
||||||
|
text = "Working...",
|
||||||
|
textColour = colour(0,0,0),
|
||||||
|
textAlign = "middle",
|
||||||
|
visible = false,
|
||||||
|
zIndex = 10000
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = page,
|
||||||
|
size = guiCoord(1.0, -20, 0, 48),
|
||||||
|
position = guiCoord(0, 10, 0, 10),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "Apps",
|
||||||
|
textSize = 48,
|
||||||
|
textAlign = "middleLeft"
|
||||||
|
})
|
||||||
|
|
||||||
|
local subtitle = teverse.construct("guiTextBox", {
|
||||||
|
parent = page,
|
||||||
|
size = guiCoord(1.0, -20, 0, 18),
|
||||||
|
position = guiCoord(0, 10, 0, 58),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "Loading Apps",
|
||||||
|
textSize = 18,
|
||||||
|
textAlign = "middleLeft"
|
||||||
|
})
|
||||||
|
|
||||||
|
local appsContainer = teverse.construct("guiFrame", {
|
||||||
|
parent = page,
|
||||||
|
size = guiCoord(1.0, -20, 1, -100),
|
||||||
|
position = guiCoord(0, 10, 0, 90),
|
||||||
|
backgroundAlpha = 0
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.guiHelper
|
||||||
|
.gridConstraint(appsContainer, {
|
||||||
|
cellSize = guiCoord(0, 150, 0, 80),
|
||||||
|
cellMargin = guiCoord(0, 15, 0, 25)
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.http:get("https://teverse.com/api/apps", {
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken
|
||||||
|
}, function(code, body)
|
||||||
|
if code == 200 then
|
||||||
|
local apps = teverse.json:decode(body)
|
||||||
|
subtitle.text = "Found " .. #apps .. " public apps."
|
||||||
|
for _,app in pairs(apps) do
|
||||||
|
local appGui = teverse.construct("guiFrame", {
|
||||||
|
parent = appsContainer,
|
||||||
|
strokeAlpha = 0.1,
|
||||||
|
strokeRadius = 4
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.guiHelper.hoverColour(appGui, colour.rgb(247, 247, 247))
|
||||||
|
appGui:on("mouseLeftUp", function()
|
||||||
|
if not loading.visible then
|
||||||
|
loading.text = "Working..."
|
||||||
|
loading.visible = true
|
||||||
|
teverse.http:get("https://teverse.com/api/apps/" .. app.id .. "/script", {
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken
|
||||||
|
}, function(code, body)
|
||||||
|
if code == 200 then
|
||||||
|
loading.visible = false
|
||||||
|
teverse.apps:loadString(body)
|
||||||
|
else
|
||||||
|
loading.text = "Unable to load app."
|
||||||
|
sleep(1.5)
|
||||||
|
loading.visible = false
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = appGui,
|
||||||
|
size = guiCoord(1.0, -20, 0, 22),
|
||||||
|
position = guiCoord(0, 10, 0, 5),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = app.name,
|
||||||
|
textSize = 22,
|
||||||
|
textAlign = "middleLeft",
|
||||||
|
textFont = "tevurl:fonts/openSansBold.ttf",
|
||||||
|
active = false
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = appGui,
|
||||||
|
size = guiCoord(1.0, -20, 0, 16),
|
||||||
|
position = guiCoord(0, 10, 0, 24),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
textAlpha = 0.5,
|
||||||
|
text = "by " .. app.owner.username,
|
||||||
|
textSize = 16,
|
||||||
|
active = false
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.construct("guiIcon", {
|
||||||
|
parent = appGui,
|
||||||
|
size = guiCoord(1, 0, 1, -45),
|
||||||
|
position = guiCoord(0, 0, 0, 45),
|
||||||
|
iconMax = 20,
|
||||||
|
iconColour = colour(1, 1, 1),
|
||||||
|
iconType = "faSolid",
|
||||||
|
iconId = "code",
|
||||||
|
iconAlpha = 0.9,
|
||||||
|
backgroundAlpha = 1.0,
|
||||||
|
backgroundColour = colour.rgb(216, 100, 89),
|
||||||
|
active = false
|
||||||
|
})
|
||||||
|
end
|
||||||
|
else
|
||||||
|
subtitle.text = "Server error."
|
||||||
|
end
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
}
|
}
|
|
@ -3,6 +3,66 @@ return {
|
||||||
iconId = "layer-group",
|
iconId = "layer-group",
|
||||||
iconType = "faSolid",
|
iconType = "faSolid",
|
||||||
setup = function(page)
|
setup = function(page)
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = page,
|
||||||
|
size = guiCoord(1.0, -20, 0, 48),
|
||||||
|
position = guiCoord(0, 10, 0, 10),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "Develop",
|
||||||
|
textSize = 48,
|
||||||
|
textAlign = "middleLeft"
|
||||||
|
})
|
||||||
|
|
||||||
|
local newSandboxBtn = teverse.construct("guiFrame", {
|
||||||
|
parent = page,
|
||||||
|
size = guiCoord(1/3, -20, 0, 70),
|
||||||
|
position = guiCoord(0, 10, 0, 60),
|
||||||
|
backgroundColour = colour.rgb(74, 140, 122),
|
||||||
|
strokeRadius = 3
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.guiHelper
|
||||||
|
.bind(newSandboxBtn, "xs", {
|
||||||
|
size = guiCoord(1, -20, 0, 70),
|
||||||
|
position = guiCoord(0, 10, 0, 60)
|
||||||
|
})
|
||||||
|
.bind(newSandboxBtn, "sm", {
|
||||||
|
size = guiCoord(1/3, -20, 0, 70),
|
||||||
|
position = guiCoord(0, 10, 0, 60)
|
||||||
|
})
|
||||||
|
.bind(newSandboxBtn, "lg", {
|
||||||
|
size = guiCoord(1/3, -20, 0, 70),
|
||||||
|
position = guiCoord(0, 10, 0, 60)
|
||||||
|
})
|
||||||
|
.hoverColour(newSandboxBtn, colour.rgb(235, 187, 83))
|
||||||
|
|
||||||
|
newSandboxBtn:on("mouseLeftUp", function()
|
||||||
|
teverse.apps:prompt()
|
||||||
|
end)
|
||||||
|
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = newSandboxBtn,
|
||||||
|
size = guiCoord(0.5, -10, 0, 18),
|
||||||
|
position = guiCoord(0.5, 0, 0.5, -9),
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
text = "Run Script",
|
||||||
|
textSize = 18,
|
||||||
|
textAlign = "middleLeft",
|
||||||
|
textColour = colour(1, 1, 1),
|
||||||
|
active = false
|
||||||
|
--textFont = "tevurl:fonts/openSansLight.ttf"
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.construct("guiIcon", {
|
||||||
|
parent = newSandboxBtn,
|
||||||
|
size = guiCoord(0, 40, 0, 40),
|
||||||
|
position = guiCoord(0.5, -60, 0.5, -20),
|
||||||
|
iconMax = 40,
|
||||||
|
iconColour = colour(1, 1, 1),
|
||||||
|
iconType = "faSolid",
|
||||||
|
iconId = "code",
|
||||||
|
iconAlpha = 0.9,
|
||||||
|
active = false
|
||||||
|
})
|
||||||
end
|
end
|
||||||
}
|
}
|
|
@ -1,8 +1,9 @@
|
||||||
local function newFeedItem(pfp, name, date, body)
|
local function newFeedItem(pfp, name, date, body)
|
||||||
local item = teverse.construct("guiFrame", {
|
local item = teverse.construct("guiFrame", {
|
||||||
size = guiCoord(1, -20, 0, 48),
|
size = guiCoord(1, -20, 0, 48),
|
||||||
position = guiCoord(0, 10, 0, 26),
|
position = guiCoord(0, 10, 0, 40),
|
||||||
backgroundAlpha = 1
|
backgroundAlpha = 0,
|
||||||
|
name = "feedItem"
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.construct("guiImage", {
|
teverse.construct("guiImage", {
|
||||||
|
@ -36,7 +37,8 @@ local function newFeedItem(pfp, name, date, body)
|
||||||
text = date,
|
text = date,
|
||||||
textAlign = enums.align.middleRight,
|
textAlign = enums.align.middleRight,
|
||||||
textSize = 14,
|
textSize = 14,
|
||||||
textAlpha = 0.4
|
textAlpha = 0.4,
|
||||||
|
textWrap = true
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.construct("guiTextBox", {
|
teverse.construct("guiTextBox", {
|
||||||
|
@ -59,6 +61,8 @@ return {
|
||||||
iconId = "sliders-h",
|
iconId = "sliders-h",
|
||||||
iconType = "faSolid",
|
iconType = "faSolid",
|
||||||
setup = function(page)
|
setup = function(page)
|
||||||
|
page.backgroundAlpha = 1.0
|
||||||
|
|
||||||
local feed = teverse.construct("guiScrollView", {
|
local feed = teverse.construct("guiScrollView", {
|
||||||
parent = page,
|
parent = page,
|
||||||
size = guiCoord(1, 0, 1, 50),
|
size = guiCoord(1, 0, 1, 50),
|
||||||
|
@ -67,7 +71,7 @@ return {
|
||||||
strokeRadius = 3
|
strokeRadius = 3
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.bind(feed, "xs", {
|
.bind(feed, "xs", {
|
||||||
size = guiCoord(1, 0, 1, 50),
|
size = guiCoord(1, 0, 1, 50),
|
||||||
position = guiCoord(0, 0, 0, -50)
|
position = guiCoord(0, 0, 0, -50)
|
||||||
|
@ -85,7 +89,7 @@ return {
|
||||||
strokeRadius = 3
|
strokeRadius = 3
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.bind(tevs, "xs", {
|
.bind(tevs, "xs", {
|
||||||
size = guiCoord(1, -20, 0, 70),
|
size = guiCoord(1, -20, 0, 70),
|
||||||
position = guiCoord(0, 10, 0, 50)
|
position = guiCoord(0, 10, 0, 50)
|
||||||
|
@ -99,13 +103,13 @@ return {
|
||||||
position = guiCoord(0, 10, 0, 0)
|
position = guiCoord(0, 10, 0, 0)
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.construct("guiTextBox", {
|
local tevCoins = teverse.construct("guiTextBox", {
|
||||||
parent = tevs,
|
parent = tevs,
|
||||||
size = guiCoord(0.5, -20, 0, 40),
|
size = guiCoord(0.5, 0, 0, 40),
|
||||||
position = guiCoord(0.5, 0, 0.5, -15),
|
position = guiCoord(0.5, 0, 0.5, -15),
|
||||||
backgroundAlpha = 0,
|
backgroundAlpha = 0,
|
||||||
text = "975",
|
text = "",
|
||||||
textSize = 40,
|
textSize = 34,
|
||||||
textAlign = "middleLeft",
|
textAlign = "middleLeft",
|
||||||
textColour = colour(1, 1, 1),
|
textColour = colour(1, 1, 1),
|
||||||
textFont = "tevurl:fonts/openSansBold.ttf"
|
textFont = "tevurl:fonts/openSansBold.ttf"
|
||||||
|
@ -142,7 +146,7 @@ return {
|
||||||
strokeRadius = 3
|
strokeRadius = 3
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.bind(membership, "xs", {
|
.bind(membership, "xs", {
|
||||||
size = guiCoord(1, -20, 0, 70),
|
size = guiCoord(1, -20, 0, 70),
|
||||||
position = guiCoord(0, 10, 0, 80 + 50)
|
position = guiCoord(0, 10, 0, 80 + 50)
|
||||||
|
@ -168,18 +172,26 @@ return {
|
||||||
textFont = "tevurl:fonts/openSansLight.ttf"
|
textFont = "tevurl:fonts/openSansLight.ttf"
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.construct("guiTextBox", {
|
local membershipText = teverse.construct("guiTextBox", {
|
||||||
parent = membership,
|
parent = membership,
|
||||||
size = guiCoord(0.5, -20, 0, 40),
|
size = guiCoord(0.5, 0, 0, 40),
|
||||||
position = guiCoord(0.5, 0, 0.5, -15),
|
position = guiCoord(0.5, 0, 0.5, -15),
|
||||||
backgroundAlpha = 0,
|
backgroundAlpha = 0,
|
||||||
text = "Free",
|
textSize = 34,
|
||||||
textSize = 40,
|
|
||||||
textAlign = "middleLeft",
|
textAlign = "middleLeft",
|
||||||
textColour = colour(1, 1, 1),
|
textColour = colour(1, 1, 1),
|
||||||
textFont = "tevurl:fonts/openSansBold.ttf"
|
textFont = "tevurl:fonts/openSansBold.ttf"
|
||||||
})
|
})
|
||||||
|
|
||||||
|
local membertype = teverse.networking.localClient.membership
|
||||||
|
if membership == "plus" then
|
||||||
|
membershipText.text = "Plus"
|
||||||
|
elseif membership == "pro" then
|
||||||
|
membershipText.text = "Pro"
|
||||||
|
else
|
||||||
|
membershipText.text = "Free"
|
||||||
|
end
|
||||||
|
|
||||||
teverse.construct("guiIcon", {
|
teverse.construct("guiIcon", {
|
||||||
parent = membership,
|
parent = membership,
|
||||||
size = guiCoord(0, 40, 0, 40),
|
size = guiCoord(0, 40, 0, 40),
|
||||||
|
@ -199,7 +211,7 @@ return {
|
||||||
strokeRadius = 3
|
strokeRadius = 3
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.bind(version, "xs", {
|
.bind(version, "xs", {
|
||||||
size = guiCoord(1, -20, 0, 70),
|
size = guiCoord(1, -20, 0, 70),
|
||||||
position = guiCoord(0, 10, 0, 160 + 50)
|
position = guiCoord(0, 10, 0, 160 + 50)
|
||||||
|
@ -231,7 +243,7 @@ return {
|
||||||
position = guiCoord(0.5, 0, 0.5, -15),
|
position = guiCoord(0.5, 0, 0.5, -15),
|
||||||
backgroundAlpha = 0,
|
backgroundAlpha = 0,
|
||||||
text = _TEV_BUILD,
|
text = _TEV_BUILD,
|
||||||
textSize = 40,
|
textSize = 34,
|
||||||
textAlign = "middleLeft",
|
textAlign = "middleLeft",
|
||||||
textColour = colour(1, 1, 1),
|
textColour = colour(1, 1, 1),
|
||||||
textFont = "tevurl:fonts/openSansBold.ttf"
|
textFont = "tevurl:fonts/openSansBold.ttf"
|
||||||
|
@ -248,13 +260,21 @@ return {
|
||||||
iconAlpha = 0.9
|
iconAlpha = 0.9
|
||||||
})
|
})
|
||||||
|
|
||||||
|
teverse.http:get("https://teverse.com/api/users/me/tevs", {
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken
|
||||||
|
}, function(code, body)
|
||||||
|
if code == 200 then
|
||||||
|
tevCoins.text = body
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
local feedItems = teverse.construct("guiFrame", {
|
local feedItems = teverse.construct("guiFrame", {
|
||||||
parent = feed,
|
parent = feed,
|
||||||
backgroundAlpha = 1,
|
backgroundAlpha = 1,
|
||||||
clip = true
|
clip = true
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.bind(feedItems, "xs", {
|
.bind(feedItems, "xs", {
|
||||||
size = guiCoord(1, -20, 1, -(240 + 50)),
|
size = guiCoord(1, -20, 1, -(240 + 50)),
|
||||||
position = guiCoord(0, 10, 0, 240 + 50)
|
position = guiCoord(0, 10, 0, 240 + 50)
|
||||||
|
@ -268,25 +288,81 @@ return {
|
||||||
position = guiCoord(0, 10, 0, 80)
|
position = guiCoord(0, 10, 0, 80)
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.construct("guiTextBox", {
|
local input = teverse.construct("guiTextBox", {
|
||||||
size = guiCoord(1, -20, 0, 26),
|
|
||||||
position = guiCoord(0, 10, 0, 0),
|
|
||||||
backgroundAlpha = 0,
|
|
||||||
parent = feedItems,
|
parent = feedItems,
|
||||||
text = "Feed",
|
size = guiCoord(1, -20, 0, 30),
|
||||||
textSize = 26,
|
position = guiCoord(0, 10, 0, 10),
|
||||||
textFont = "tevurl:fonts/openSansBold.ttf"
|
strokeAlpha = 0.15,
|
||||||
|
strokeRadius = 3,
|
||||||
|
textEditable = true,
|
||||||
|
textAlign = "topLeft"
|
||||||
})
|
})
|
||||||
|
|
||||||
local function pushItem(item)
|
local newestFeed = ""
|
||||||
local y = item.absoluteSize.y
|
local lastRefresh = 0
|
||||||
for i,v in pairs(feedItems.children) do
|
|
||||||
v.position = guiCoord(0, 10, 0, y)
|
local function refresh()
|
||||||
y = y + v.absoluteSize.y + 10
|
lastRefresh = os.clock()
|
||||||
end
|
teverse.http:get("https://teverse.com/api/feed", {
|
||||||
item.parent = feedItems
|
["Authorization"] = "BEARER " .. teverse.userToken
|
||||||
|
}, function(code, body)
|
||||||
|
if code == 200 then
|
||||||
|
lastRefresh = os.clock()
|
||||||
|
local json = teverse.json:decode(body)
|
||||||
|
if json[1].id == newestFeed then
|
||||||
|
-- no change from last refresh
|
||||||
|
return nil
|
||||||
|
else
|
||||||
|
-- may require refactoring
|
||||||
|
for _,v in pairs(feedItems.children) do
|
||||||
|
if v.name == "feedItem" then
|
||||||
|
v:destroy()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
newestFeed = json[1].id
|
||||||
|
local y = 50
|
||||||
|
for _,v in pairs(json) do
|
||||||
|
local date = os.date("%d/%m/%Y %H:%M", os.parseISO8601(v.postedAt))
|
||||||
|
local item = newFeedItem("tevurl:asset/user/" .. v.postedBy.id, v.postedBy.username, date, v.message)
|
||||||
|
item.parent = feedItems
|
||||||
|
local dy = item:child("body").textDimensions.y
|
||||||
|
item.size = guiCoord(1, -20, 0, dy + 28)
|
||||||
|
item.position = guiCoord(0, 10, 0, y)
|
||||||
|
y = y + dy + 28
|
||||||
|
end
|
||||||
|
|
||||||
|
feed.canvasSize = guiCoord(1, 0, 0, feedItems.absolutePosition.y + y + 100)
|
||||||
|
end
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
pushItem(newFeedItem("tevurl:asset/user/" .. teverse.networking.localClient.id, teverse.networking.localClient.name, "Now", "test"))
|
local submitting = false
|
||||||
|
input:on("keyUp", function(keycode)
|
||||||
|
if keycode == "KEY_RETURN" and not submitting then
|
||||||
|
submitting = true
|
||||||
|
input.textEditable = false
|
||||||
|
input.textAlpha = 0.5
|
||||||
|
local payload = teverse.json:encode({ message = input.text })
|
||||||
|
teverse.http:post("https://teverse.com/api/feed", payload, {
|
||||||
|
["Authorization"] = "BEARER " .. teverse.userToken,
|
||||||
|
["Content-Type"] = "application/json"
|
||||||
|
}, function(code, body)
|
||||||
|
refresh()
|
||||||
|
input.text = ""
|
||||||
|
input.textEditable = true
|
||||||
|
input.textAlpha = 1.0
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
refresh()
|
||||||
|
spawn(function()
|
||||||
|
while sleep(2.5) do
|
||||||
|
if page.Visible and os.clock() - lastRefresh > 2 then
|
||||||
|
refresh()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end)
|
||||||
end
|
end
|
||||||
}
|
}
|
|
@ -12,8 +12,8 @@ controller.setup = function()
|
||||||
parent = navBar,
|
parent = navBar,
|
||||||
backgroundAlpha = 0
|
backgroundAlpha = 0
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.gridConstraint(navContainer, {
|
.gridConstraint(navContainer, {
|
||||||
cellSize = guiCoord(0, 40, 0, 40),
|
cellSize = guiCoord(0, 40, 0, 40),
|
||||||
cellMargin = guiCoord(0, 25, 0, 25)
|
cellMargin = guiCoord(0, 25, 0, 25)
|
||||||
|
@ -68,7 +68,7 @@ controller.setup = function()
|
||||||
backgroundColour = colour.rgb(242, 244, 245)
|
backgroundColour = colour.rgb(242, 244, 245)
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.bind(body, "xs", {
|
.bind(body, "xs", {
|
||||||
size = guiCoord(1, 90, 1, -5),
|
size = guiCoord(1, 90, 1, -5),
|
||||||
position = guiCoord(0, -45, 0, -60)
|
position = guiCoord(0, -45, 0, -60)
|
||||||
|
@ -90,7 +90,7 @@ controller.setup = function()
|
||||||
visible = false
|
visible = false
|
||||||
})
|
})
|
||||||
|
|
||||||
teverse.bp
|
teverse.guiHelper
|
||||||
.bind(container, "xs", {
|
.bind(container, "xs", {
|
||||||
size = guiCoord(1, -120, 1, -80),
|
size = guiCoord(1, -120, 1, -80),
|
||||||
position = guiCoord(0, 60, 0, 80)
|
position = guiCoord(0, 60, 0, 80)
|
||||||
|
@ -135,9 +135,9 @@ controller.setup = function()
|
||||||
|
|
||||||
table.insert(pages, {container, icon})
|
table.insert(pages, {container, icon})
|
||||||
end
|
end
|
||||||
setupPage(require("tevgit:core/dashboard/pages/home"))
|
setupPage(require("tevgit:core/dashboard/pages/home.lua"))
|
||||||
setupPage(require("tevgit:core/dashboard/pages/apps"))
|
setupPage(require("tevgit:core/dashboard/pages/apps.lua"))
|
||||||
setupPage(require("tevgit:core/dashboard/pages/develop"))
|
setupPage(require("tevgit:core/dashboard/pages/develop.lua"))
|
||||||
end
|
end
|
||||||
|
|
||||||
return controller
|
return controller
|
|
@ -1,5 +1,5 @@
|
||||||
local main = teverse.construct("guiFrame", {
|
local main = teverse.construct("guiFrame", {
|
||||||
parent = teverse.coreInterface,
|
parent = teverse.interface,
|
||||||
backgroundColour = colour.rgb(52, 58, 64),
|
backgroundColour = colour.rgb(52, 58, 64),
|
||||||
size = guiCoord(1, 0, 1, 100),
|
size = guiCoord(1, 0, 1, 100),
|
||||||
position = guiCoord(0, 0, 0, -50)
|
position = guiCoord(0, 0, 0, -50)
|
||||||
|
|
|
@ -1,142 +1,140 @@
|
||||||
return function()
|
|
||||||
|
|
||||||
-- Textbox colour/border radius/shadow demo
|
|
||||||
|
|
||||||
local colours = {
|
-- Textbox colour/border radius/shadow demo
|
||||||
colour(1, 0, 0),
|
|
||||||
colour(1, 1, 0),
|
|
||||||
colour(0, 1, 0),
|
|
||||||
colour(0, 1, 1),
|
|
||||||
colour(0, 0, 1),
|
|
||||||
colour(1, 0, 1),
|
|
||||||
colour(1, 1, 1),
|
|
||||||
colour(0, 0, 0)
|
|
||||||
}
|
|
||||||
|
|
||||||
local size = 1/#colours
|
local colours = {
|
||||||
local lastColour = colour(0,0,0)
|
colour(1, 0, 0),
|
||||||
for i = 1, #colours do
|
colour(1, 1, 0),
|
||||||
teverse.construct("guiTextBox", {
|
colour(0, 1, 0),
|
||||||
parent = teverse.interface,
|
colour(0, 1, 1),
|
||||||
size = guiCoord(size, 0, 0, 50),
|
colour(0, 0, 1),
|
||||||
position = guiCoord(size * (i - 1), 0, 0, 0),
|
colour(1, 0, 1),
|
||||||
backgroundColour = colours[i],
|
colour(1, 1, 1),
|
||||||
text = "#" .. colours[i]:hex(),
|
colour(0, 0, 0)
|
||||||
textShadowSize = 2,
|
}
|
||||||
textColour = colour(1, 1, 1)
|
|
||||||
})
|
|
||||||
|
|
||||||
local c = colours[i] * colour(0.9, 0.9, 0.9)
|
local size = 1/#colours
|
||||||
teverse.construct("guiGradientFrame", {
|
local lastColour = colour(0,0,0)
|
||||||
parent = teverse.interface,
|
for i = 1, #colours do
|
||||||
size = guiCoord(size, 2, 0, 20),
|
teverse.construct("guiTextBox", {
|
||||||
position = guiCoord(size * (i - 1), -1, 0, 60),
|
parent = teverse.interface,
|
||||||
backgroundColour = lastColour,
|
size = guiCoord(size, 0, 0, 50),
|
||||||
backgroundColourB = c,
|
position = guiCoord(size * (i - 1), 0, 0, 0),
|
||||||
start = guiCoord(0.4, 0, 0, 0),
|
backgroundColour = colours[i],
|
||||||
finish = guiCoord(0.6, 0, size * (i - 1), 0)
|
text = "#" .. colours[i]:hex(),
|
||||||
})
|
textShadowSize = 2,
|
||||||
|
textColour = colour(1, 1, 1)
|
||||||
|
})
|
||||||
|
|
||||||
lastColour = c
|
local c = colours[i] * colour(0.9, 0.9, 0.9)
|
||||||
|
teverse.construct("guiGradientFrame", {
|
||||||
|
parent = teverse.interface,
|
||||||
|
size = guiCoord(size, 2, 0, 20),
|
||||||
|
position = guiCoord(size * (i - 1), -1, 0, 60),
|
||||||
|
backgroundColour = lastColour,
|
||||||
|
backgroundColourB = c,
|
||||||
|
start = guiCoord(0.4, 0, 0, 0),
|
||||||
|
finish = guiCoord(0.6, 0, size * (i - 1), 0)
|
||||||
|
})
|
||||||
|
|
||||||
|
lastColour = c
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Textbox Align Demo
|
||||||
|
|
||||||
|
local reverseAlign = {}
|
||||||
|
for k,v in pairs(enums.align) do
|
||||||
|
reverseAlign[tonumber(v)] = k
|
||||||
|
end
|
||||||
|
|
||||||
|
local txtGuis = {}
|
||||||
|
|
||||||
|
local size = 1/3
|
||||||
|
local i = 0
|
||||||
|
local y = 90
|
||||||
|
for a = 0, 8 do
|
||||||
|
i = i + 1
|
||||||
|
local gui = teverse.construct("guiTextBox", {
|
||||||
|
parent = teverse.interface,
|
||||||
|
size = guiCoord(size, -1, 0, 28),
|
||||||
|
position = guiCoord(size * (i - 1), 0, 0, y),
|
||||||
|
backgroundColour = colour(1, 1, 1),
|
||||||
|
text = "enums.align." .. reverseAlign[a],
|
||||||
|
textSize = 14,
|
||||||
|
textAlign = a,
|
||||||
|
strokeRadius = 5
|
||||||
|
})
|
||||||
|
table.insert(txtGuis, gui)
|
||||||
|
if i > 2 then
|
||||||
|
i = 0
|
||||||
|
y = y + 29
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
-- Textbox Align Demo
|
for i = 1, #colours do
|
||||||
|
teverse.construct("guiImage", {
|
||||||
|
position = guiCoord(0, (i-1) * 75, 0, y),
|
||||||
|
size = guiCoord(0, 75, 0, 50),
|
||||||
|
parent = teverse.interface,
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
image = "tevurl:img/tTiled.png",
|
||||||
|
imageBottomRight = vector2(3, 2),
|
||||||
|
imageColour = colours[i]
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
local reverseAlign = {}
|
local size = 1/#colours
|
||||||
for k,v in pairs(enums.align) do
|
y = y + 60
|
||||||
reverseAlign[v] = k
|
local previous = 0
|
||||||
end
|
for i = 1, #colours do
|
||||||
|
local new = math.random(1, 50)
|
||||||
|
local a = teverse.construct("guiLine", {
|
||||||
|
pointA = guiCoord(size*(i-1), 0, 0, y + previous),
|
||||||
|
pointB = guiCoord(size*(i), 0, 0, y + new),
|
||||||
|
parent = teverse.interface,
|
||||||
|
lineWidth = 5,
|
||||||
|
lineAlpha = 0.5,
|
||||||
|
lineColour = colours[i],
|
||||||
|
lineCap = enums.lineCap.round
|
||||||
|
})
|
||||||
|
previous = new
|
||||||
|
end
|
||||||
|
|
||||||
local txtGuis = {}
|
for i = 1, #colours do
|
||||||
|
local new = math.random(1, 50)
|
||||||
local size = 1/3
|
local a = teverse.construct("guiLineBezier", {
|
||||||
local i = 0
|
pointA = guiCoord(0, 0, 0, y + (i * 10)),
|
||||||
local y = 90
|
controlA = guiCoord(0, 50, 0, y+100),
|
||||||
for a = 0, 8 do
|
pointB = guiCoord(1, 0, 0, y - 30 + (i * 10)),
|
||||||
i = i + 1
|
controlB = guiCoord(1, -200, 0, y-100),
|
||||||
local gui = teverse.construct("guiTextBox", {
|
|
||||||
parent = teverse.interface,
|
|
||||||
size = guiCoord(size, -1, 0, 28),
|
|
||||||
position = guiCoord(size * (i - 1), 0, 0, y),
|
|
||||||
backgroundColour = colour(1, 1, 1),
|
|
||||||
text = "enums.align." .. reverseAlign[a],
|
|
||||||
textSize = 14,
|
|
||||||
textAlign = a,
|
|
||||||
strokeRadius = 5
|
|
||||||
})
|
|
||||||
table.insert(txtGuis, gui)
|
|
||||||
if i > 2 then
|
|
||||||
i = 0
|
|
||||||
y = y + 29
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
for i = 1, #colours do
|
|
||||||
teverse.construct("guiImage", {
|
|
||||||
position = guiCoord(0, (i-1) * 75, 0, y),
|
|
||||||
size = guiCoord(0, 75, 0, 50),
|
|
||||||
parent = teverse.interface,
|
|
||||||
backgroundAlpha = 0,
|
|
||||||
image = "tevurl:img/tTiled.png",
|
|
||||||
imageBottomRight = vector2(3, 2),
|
|
||||||
imageColour = colours[i]
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
local size = 1/#colours
|
|
||||||
y = y + 60
|
|
||||||
local previous = 0
|
|
||||||
for i = 1, #colours do
|
|
||||||
local new = math.random(1, 50)
|
|
||||||
local a = teverse.construct("guiLine", {
|
|
||||||
pointA = guiCoord(size*(i-1), 0, 0, y + previous),
|
|
||||||
pointB = guiCoord(size*(i), 0, 0, y + new),
|
|
||||||
parent = teverse.interface,
|
|
||||||
lineWidth = 5,
|
|
||||||
lineAlpha = 0.5,
|
|
||||||
lineColour = colours[i],
|
|
||||||
lineCap = enums.lineCap.round
|
|
||||||
})
|
|
||||||
previous = new
|
|
||||||
end
|
|
||||||
|
|
||||||
for i = 1, #colours do
|
|
||||||
local new = math.random(1, 50)
|
|
||||||
local a = teverse.construct("guiLineBezier", {
|
|
||||||
pointA = guiCoord(0, 0, 0, y + (i * 10)),
|
|
||||||
controlA = guiCoord(0, 50, 0, y+100),
|
|
||||||
pointB = guiCoord(1, 0, 0, y - 30 + (i * 10)),
|
|
||||||
controlB = guiCoord(1, -200, 0, y-100),
|
|
||||||
parent = teverse.interface,
|
|
||||||
lineWidth = 2,
|
|
||||||
lineColour = colours[i],
|
|
||||||
lineCap = enums.lineCap.round
|
|
||||||
})
|
|
||||||
previous = new
|
|
||||||
end
|
|
||||||
|
|
||||||
y = y + 60
|
|
||||||
|
|
||||||
-- create an arrow using lines:
|
|
||||||
local arrow = teverse.construct("guiLine", {
|
|
||||||
pointA = guiCoord(0, 100, 0, y ),
|
|
||||||
pointB = guiCoord(0, 100, 0, y + 50),
|
|
||||||
parent = teverse.interface,
|
parent = teverse.interface,
|
||||||
lineWidth = 2,
|
lineWidth = 2,
|
||||||
-- rotation = 0.4
|
lineColour = colours[i],
|
||||||
|
lineCap = enums.lineCap.round
|
||||||
})
|
})
|
||||||
|
previous = new
|
||||||
|
end
|
||||||
|
|
||||||
teverse.construct("guiLine", {
|
y = y + 60
|
||||||
parent = arrow,
|
|
||||||
pointA = guiCoord(0, 0, 0, 0 ),
|
|
||||||
pointB = guiCoord(0, 10, 0, -10),
|
|
||||||
lineWidth = 2
|
|
||||||
})
|
|
||||||
|
|
||||||
teverse.construct("guiLine", {
|
-- create an arrow using lines:
|
||||||
parent = arrow,
|
local arrow = teverse.construct("guiLine", {
|
||||||
pointA = guiCoord(0, 0, 0, 0 ),
|
pointA = guiCoord(0, 100, 0, y ),
|
||||||
pointB = guiCoord(0, -10, 0, -10),
|
pointB = guiCoord(0, 100, 0, y + 50),
|
||||||
lineWidth = 2
|
parent = teverse.interface,
|
||||||
})
|
lineWidth = 2,
|
||||||
end
|
-- rotation = 0.4
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.construct("guiLine", {
|
||||||
|
parent = arrow,
|
||||||
|
pointA = guiCoord(0, 0, 0, 0 ),
|
||||||
|
pointB = guiCoord(0, 10, 0, -10),
|
||||||
|
lineWidth = 2
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.construct("guiLine", {
|
||||||
|
parent = arrow,
|
||||||
|
pointA = guiCoord(0, 0, 0, 0 ),
|
||||||
|
pointB = guiCoord(0, -10, 0, -10),
|
||||||
|
lineWidth = 2
|
||||||
|
})
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
-- test that the http api is functional
|
||||||
|
|
||||||
|
return function()
|
||||||
|
print("Running http tests!")
|
||||||
|
print("tested")
|
||||||
|
local code, body = teverse.http:get("https://teverse.com/")
|
||||||
|
print ("Http Test #1 https", code == 200 and "PASS" or "FAIL")
|
||||||
|
|
||||||
|
local code, body = teverse.http:get("http://teverse.com/")
|
||||||
|
print ("Http Test #2 http", code == 301 and "PASS" or "FAIL")
|
||||||
|
|
||||||
|
teverse.http:get("https://teverse.com/", function(code, body)
|
||||||
|
print ("Http Test #3 https async", code == 200 and "PASS" or "FAIL")
|
||||||
|
end)
|
||||||
|
|
||||||
|
teverse.http:get("http://teverse.com/", function(code, body)
|
||||||
|
print ("Http Test #4 http async", code == 301 and "PASS" or "FAIL")
|
||||||
|
end)
|
||||||
|
|
||||||
|
local code, body = teverse.http:get("https://teverse.com/", {
|
||||||
|
["header-name"] = "test"
|
||||||
|
})
|
||||||
|
print ("Http Test #5 https header", code == 200 and "PASS" or "FAIL")
|
||||||
|
|
||||||
|
teverse.http:get("https://teverse.com/", {
|
||||||
|
["header-name"] = "test"
|
||||||
|
}, function(code, body)
|
||||||
|
print ("Http Test #6 https async header", code == 200 and "PASS" or "FAIL")
|
||||||
|
end)
|
||||||
|
end
|
|
@ -0,0 +1,35 @@
|
||||||
|
local container = teverse.construct("guiFrame", {
|
||||||
|
parent = teverse.coreInterface,
|
||||||
|
size = guiCoord(0, 300, 0, 400),
|
||||||
|
position = guiCoord(0, 20, 0, 20),
|
||||||
|
backgroundAlpha = 0.9,
|
||||||
|
zIndex = 1000,
|
||||||
|
strokeRadius = 2,
|
||||||
|
strokeAlpha = 0.2,
|
||||||
|
visible = false
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.construct("guiTextBox", {
|
||||||
|
parent = container,
|
||||||
|
size = guiCoord(1, -10, 0, 20),
|
||||||
|
position = guiCoord(0, 5, 0, 0),
|
||||||
|
backgroundAlpha = 0.0,
|
||||||
|
textSize = 16,
|
||||||
|
textAlign = "middleLeft",
|
||||||
|
text = "Console"
|
||||||
|
})
|
||||||
|
|
||||||
|
local txt = teverse.construct("guiTextBox", {
|
||||||
|
parent = container,
|
||||||
|
size = guiCoord(1, -10, 1, -25),
|
||||||
|
position = guiCoord(0, 5, 0, 20),
|
||||||
|
backgroundAlpha = 0.95,
|
||||||
|
strokeAlpha = 0.2,
|
||||||
|
textWrap = true
|
||||||
|
})
|
||||||
|
|
||||||
|
teverse.debug:on("print", function(msg)
|
||||||
|
txt.text = string.sub(os.date("%H:%M:%S") .. " : " .. msg .. "\n" .. txt.text, 0, 500)
|
||||||
|
end)
|
||||||
|
|
||||||
|
return container
|
|
@ -0,0 +1,81 @@
|
||||||
|
-- This is the main interface loaded into coreinterface
|
||||||
|
local console = require("tevgit:core/teverseUI/console.lua")
|
||||||
|
|
||||||
|
local container = teverse.construct("guiFrame", {
|
||||||
|
parent = teverse.coreInterface,
|
||||||
|
size = guiCoord(0, 77, 0, 26),
|
||||||
|
position = guiCoord(1, -81, 1, -30),
|
||||||
|
backgroundAlpha = 0.0,
|
||||||
|
strokeRadius = 13,
|
||||||
|
zIndex = 1000
|
||||||
|
})
|
||||||
|
|
||||||
|
local homebtn
|
||||||
|
|
||||||
|
local ico = teverse.construct("guiIcon", {
|
||||||
|
parent = container,
|
||||||
|
size = guiCoord(0, 20, 0, 20),
|
||||||
|
position = guiCoord(1, -23, 0.5, -10),
|
||||||
|
iconId = "wrench",
|
||||||
|
iconType = "faSolid",
|
||||||
|
iconColour = colour(0, 0, 0),
|
||||||
|
iconMax = 12,
|
||||||
|
iconAlpha = 0.75,
|
||||||
|
strokeRadius = 10,
|
||||||
|
strokeAlpha = 0.5,
|
||||||
|
backgroundAlpha = 1
|
||||||
|
})
|
||||||
|
|
||||||
|
local lastClick = 0
|
||||||
|
ico:on("mouseLeftDown", function()
|
||||||
|
if os.clock() - lastClick < 0.4 then
|
||||||
|
-- double click
|
||||||
|
lastClick = 0
|
||||||
|
console.visible = not console.visible
|
||||||
|
else
|
||||||
|
lastClick = os.clock()
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
--if teverse.dev.localTevGit then
|
||||||
|
|
||||||
|
homebtn = teverse.construct("guiTextBox", {
|
||||||
|
parent = container,
|
||||||
|
size = guiCoord(0, 40, 0, 14),
|
||||||
|
position = guiCoord(0, 6, 0.5, -7),
|
||||||
|
text = "HOME",
|
||||||
|
textAlign = "middle",
|
||||||
|
textFont = "tevurl:fonts/openSansLight.ttf",
|
||||||
|
textColour = colour(0, 0, 0),
|
||||||
|
textSize = 14,
|
||||||
|
strokeRadius = 7,
|
||||||
|
strokeAlpha = 0.5,
|
||||||
|
backgroundAlpha = 0,
|
||||||
|
visible = false
|
||||||
|
})
|
||||||
|
|
||||||
|
homebtn:on("mouseLeftUp", function()
|
||||||
|
teverse.apps:loadDashboard()
|
||||||
|
end)
|
||||||
|
|
||||||
|
ico:on("mouseLeftUp", function()
|
||||||
|
container.backgroundAlpha = 1.0
|
||||||
|
homebtn.visible = true
|
||||||
|
|
||||||
|
if teverse.dev.state == "dashboard" then
|
||||||
|
if teverse.dev.localTevGit then
|
||||||
|
homebtn.text = "RESET"
|
||||||
|
homebtn.visible = true
|
||||||
|
else
|
||||||
|
homebtn.visible = false
|
||||||
|
end
|
||||||
|
else
|
||||||
|
homebtn.text = "HOME"
|
||||||
|
homebtn.visible = true
|
||||||
|
end
|
||||||
|
|
||||||
|
repeat sleep(0.1) until teverse.input.mousePosition.y < container.absolutePosition.y - 25
|
||||||
|
|
||||||
|
container.backgroundAlpha = 0.0
|
||||||
|
homebtn.visible = false
|
||||||
|
end)
|
|
@ -2,21 +2,21 @@
|
||||||
-- Used to share variables between scripts
|
-- Used to share variables between scripts
|
||||||
|
|
||||||
return {
|
return {
|
||||||
workshop = nil, -- Holds workshop instance and is set in main.lua
|
dev = nil, -- Holds workshop instance and is set in main.lua
|
||||||
user = nil, -- Holds user instance and is set in main.lua
|
user = nil, -- Holds user instance and is set in main.lua
|
||||||
developerMode = false, -- Holds the developer_mode boolean and is set in main.lua
|
developerMode = false, -- Holds the developer_mode boolean and is set in main.lua
|
||||||
sideBarPageDefault = nil, -- Holds the default sidebar page (view) as a string and is set in topbarInterface.lua
|
sideBarPageDefault = nil, -- Holds the default sidebar page (view) as a string and is set in topbarInterface.lua
|
||||||
sideBarPageActive = nil, -- Holds the current active sidebar page (view) as a string and is set in topbarInterface.lua
|
sideBarPageActive = nil, -- Holds the current active sidebar page (view) as a string and is set in topbarInterface.lua
|
||||||
defaultColours = { -- Default colors used for theming UI components (~\library\ui\components)
|
defaultColours = { -- Default colors used for theming UI components (~\library\ui\components)
|
||||||
primary = colour:fromRGB(112, 112, 112),
|
primary = colour.rgb(112, 112, 112),
|
||||||
secondary = colour:fromRGB(239, 239, 239),
|
secondary = colour.rgb(239, 239, 239),
|
||||||
background = colour:fromRGB(33, 33, 33),
|
background = colour.rgb(33, 33, 33),
|
||||||
red = colour:fromRGB(255, 82, 82),
|
red = colour.rgb(255, 82, 82),
|
||||||
green = colour:fromRGB(105, 240, 174),
|
green = colour.rgb(105, 240, 174),
|
||||||
yellow = colour:fromRGB(255, 215, 64),
|
yellow = colour.rgb(255, 215, 64),
|
||||||
blue = colour:fromRGB(68, 138, 255),
|
blue = colour.rgb(68, 138, 255),
|
||||||
orange = colour:fromRGB(255, 171, 64),
|
orange = colour.rgb(255, 171, 64),
|
||||||
purple = colour:fromRGB(124, 77, 255),
|
purple = colour.rgb(124, 77, 255),
|
||||||
white = colour:fromRGB(255, 255, 255)
|
white = colour.rgb(255, 255, 255)
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -27,7 +27,7 @@ return {
|
||||||
local positionOverride = args[1] or guiCoord(0, 0, 0, 0) -- If not specified, default to guiCoord(0, 0, 0, 0)
|
local positionOverride = args[1] or guiCoord(0, 0, 0, 0) -- If not specified, default to guiCoord(0, 0, 0, 0)
|
||||||
|
|
||||||
if orientation == "vertical" then -- If orientation is specified to "vertical"
|
if orientation == "vertical" then -- If orientation is specified to "vertical"
|
||||||
local container = engine.construct("guiFrame", globals.workshop.interface, {
|
local container = teverse.construct("guiFrame", teverse.interface, {
|
||||||
size = guiCoord(0.1, 0, 0.1, 0),
|
size = guiCoord(0.1, 0, 0.1, 0),
|
||||||
position = element.position+guiCoord(-0.02, 0, -0.01, 0),
|
position = element.position+guiCoord(-0.02, 0, -0.01, 0),
|
||||||
backgroundColour = globals.defaultColours.red,
|
backgroundColour = globals.defaultColours.red,
|
||||||
|
@ -36,7 +36,7 @@ return {
|
||||||
backgroundAlpha = 0
|
backgroundAlpha = 0
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiImage", container, {
|
teverse.construct("guiImage", container, {
|
||||||
size = guiCoord(0, 48, 0, 48),
|
size = guiCoord(0, 48, 0, 48),
|
||||||
position = guiCoord(0.33, 0, -0.15, 0),
|
position = guiCoord(0.33, 0, -0.15, 0),
|
||||||
texture = "fa:s-caret-up",
|
texture = "fa:s-caret-up",
|
||||||
|
@ -45,7 +45,7 @@ return {
|
||||||
backgroundAlpha = 0
|
backgroundAlpha = 0
|
||||||
})
|
})
|
||||||
|
|
||||||
local bodyContainer = engine.construct("guiFrame", container, {
|
local bodyContainer = teverse.construct("guiFrame", container, {
|
||||||
size = guiCoord(0.95, 0, 0.4, 0),
|
size = guiCoord(0.95, 0, 0.4, 0),
|
||||||
position = guiCoord(0.025, 0, 0.23, 0),
|
position = guiCoord(0.025, 0, 0.23, 0),
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
|
@ -55,7 +55,7 @@ return {
|
||||||
borderColour = globals.defaultColours.secondary
|
borderColour = globals.defaultColours.secondary
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiImage", bodyContainer, {
|
teverse.construct("guiImage", bodyContainer, {
|
||||||
size = guiCoord(0, 16, 0, 16),
|
size = guiCoord(0, 16, 0, 16),
|
||||||
position = guiCoord(0.04, 0, 0.25, 0),
|
position = guiCoord(0.04, 0, 0.25, 0),
|
||||||
texture = "fa:s-info-circle",
|
texture = "fa:s-info-circle",
|
||||||
|
@ -63,7 +63,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiTextBox", bodyContainer, {
|
teverse.construct("guiTextBox", bodyContainer, {
|
||||||
size = guiCoord(0.82, 0, 1, 0),
|
size = guiCoord(0.82, 0, 1, 0),
|
||||||
position = guiCoord(0.15, 0, 0, 0),
|
position = guiCoord(0.15, 0, 0, 0),
|
||||||
text = text,
|
text = text,
|
||||||
|
@ -78,7 +78,7 @@ return {
|
||||||
self.hide = function() container.visible = false end -- Hide tooltip method
|
self.hide = function() container.visible = false end -- Hide tooltip method
|
||||||
|
|
||||||
elseif orientation == "horizontal" then -- If orientation is specified to "horizontal"
|
elseif orientation == "horizontal" then -- If orientation is specified to "horizontal"
|
||||||
local container = engine.construct("guiFrame", globals.workshop.interface, {
|
local container = teverse.construct("guiFrame", globals.workshop.interface, {
|
||||||
size = guiCoord(0.13, 0, 0.05, 0),
|
size = guiCoord(0.13, 0, 0.05, 0),
|
||||||
position = (element.position+guiCoord(-0.22, 0, 0.24, 0))+positionOverride, -- Shorthand positioning
|
position = (element.position+guiCoord(-0.22, 0, 0.24, 0))+positionOverride, -- Shorthand positioning
|
||||||
backgroundColour = globals.defaultColours.red,
|
backgroundColour = globals.defaultColours.red,
|
||||||
|
@ -87,7 +87,7 @@ return {
|
||||||
backgroundAlpha = 0
|
backgroundAlpha = 0
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiImage", container, {
|
teverse.construct("guiImage", container, {
|
||||||
size = guiCoord(0, 48, 0, 48),
|
size = guiCoord(0, 48, 0, 48),
|
||||||
position = guiCoord(-0.03, 0, -0.06, 0),
|
position = guiCoord(-0.03, 0, -0.06, 0),
|
||||||
texture = "fa:s-caret-left",
|
texture = "fa:s-caret-left",
|
||||||
|
@ -96,7 +96,7 @@ return {
|
||||||
backgroundAlpha = 0
|
backgroundAlpha = 0
|
||||||
})
|
})
|
||||||
|
|
||||||
local bodyContainer = engine.construct("guiFrame", container, {
|
local bodyContainer = teverse.construct("guiFrame", container, {
|
||||||
size = guiCoord(0.8, 0, 0.9, 0),
|
size = guiCoord(0.8, 0, 0.9, 0),
|
||||||
position = guiCoord(0.133, 0, 0.05, 0),
|
position = guiCoord(0.133, 0, 0.05, 0),
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
|
@ -106,7 +106,7 @@ return {
|
||||||
borderColour = globals.defaultColours.primary
|
borderColour = globals.defaultColours.primary
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiImage", bodyContainer, {
|
teverse.construct("guiImage", bodyContainer, {
|
||||||
size = guiCoord(0, 16, 0, 16),
|
size = guiCoord(0, 16, 0, 16),
|
||||||
position = guiCoord(0.05, 0, 0.3, 0),
|
position = guiCoord(0.05, 0, 0.3, 0),
|
||||||
texture = "fa:s-info-circle",
|
texture = "fa:s-info-circle",
|
||||||
|
@ -114,7 +114,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiTextBox", bodyContainer, {
|
teverse.construct("guiTextBox", bodyContainer, {
|
||||||
size = guiCoord(0.82, 0, 1, 0),
|
size = guiCoord(0.82, 0, 1, 0),
|
||||||
position = guiCoord(0.15, 0, 0, 0),
|
position = guiCoord(0.15, 0, 0, 0),
|
||||||
text = text,
|
text = text,
|
||||||
|
|
|
@ -22,25 +22,25 @@ return {
|
||||||
self.id = idValue -- Unique Indentifier
|
self.id = idValue -- Unique Indentifier
|
||||||
self.pages = {} -- Where we store our pages for sidebar
|
self.pages = {} -- Where we store our pages for sidebar
|
||||||
|
|
||||||
engine.construct("guiFrame", globals.workshop.interface, {
|
teverse.construct("guiFrame", teverse.interface, {
|
||||||
size = guiCoord(0.04, 0, 0.015, 0),
|
size = guiCoord(0.04, 0, 0.015, 0),
|
||||||
position = guiCoord(0, 0, 0.05, 0),
|
position = guiCoord(0, 0, 0.05, 0),
|
||||||
backgroundColour = globals.defaultColours.secondary,
|
backgroundColour = globals.defaultColours.secondary,
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiFrame", globals.workshop.interface, {
|
teverse.construct("guiFrame", teverse.interface, {
|
||||||
size = guiCoord(0.04, 0, 0.015, 0),
|
size = guiCoord(0.04, 0, 0.015, 0),
|
||||||
position = guiCoord(0, 0, 0.24, 0),
|
position = guiCoord(0, 0, 0.24, 0),
|
||||||
backgroundColour = globals.defaultColours.secondary,
|
backgroundColour = globals.defaultColours.secondary,
|
||||||
})
|
})
|
||||||
|
|
||||||
local toolsContainer = engine.construct("guiFrame", globals.workshop.interface, {
|
local toolsContainer = teverse.construct("guiFrame", teverse.interface, {
|
||||||
size = guiCoord(0.04, 0, 0.18, 0),
|
size = guiCoord(0.04, 0, 0.18, 0),
|
||||||
position = guiCoord(0, 0, 0.065, 0),
|
position = guiCoord(0, 0, 0.065, 0),
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
local selectTool = engine.construct("guiImage", toolsContainer, {
|
local selectTool = teverse.construct("guiImage", toolsContainer, {
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord(0.25, 0, 0.1, 0),
|
position = guiCoord(0.25, 0, 0.1, 0),
|
||||||
texture = "fa:s-location-arrow",
|
texture = "fa:s-location-arrow",
|
||||||
|
@ -48,7 +48,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
local moveTool = engine.construct("guiImage", toolsContainer, {
|
local moveTool = teverse.construct("guiImage", toolsContainer, {
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord(0.25, 0, 0.32, 0),
|
position = guiCoord(0.25, 0, 0.32, 0),
|
||||||
texture = "fa:s-arrows-alt-h",
|
texture = "fa:s-arrows-alt-h",
|
||||||
|
@ -56,7 +56,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
local rotateTool = engine.construct("guiImage", toolsContainer, {
|
local rotateTool = teverse.construct("guiImage", toolsContainer, {
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord(0.25, 0, 0.54, 0),
|
position = guiCoord(0.25, 0, 0.54, 0),
|
||||||
texture = "fa:s-sync",
|
texture = "fa:s-sync",
|
||||||
|
@ -64,7 +64,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
local sizeTool = engine.construct("guiImage", toolsContainer, {
|
local sizeTool = teverse.construct("guiImage", toolsContainer, {
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord(0.25, 0, 0.76, 0),
|
position = guiCoord(0.25, 0, 0.76, 0),
|
||||||
texture = "fa:s-expand",
|
texture = "fa:s-expand",
|
||||||
|
@ -72,7 +72,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
local moreToolsContainer = engine.construct("guiFrame", globals.workshop.interface, {
|
local moreToolsContainer = teverse.construct("guiFrame", globals.workshop.interface, {
|
||||||
name = "moreToolsContainer",
|
name = "moreToolsContainer",
|
||||||
size = guiCoord(0.04, 0, 1, 0),
|
size = guiCoord(0.04, 0, 1, 0),
|
||||||
position = guiCoord(0, 0, 0.255, 0),
|
position = guiCoord(0, 0, 0.255, 0),
|
||||||
|
@ -98,7 +98,7 @@ return {
|
||||||
zIndexRange = 101
|
zIndexRange = 101
|
||||||
end
|
end
|
||||||
|
|
||||||
local iconContainer = engine.construct("guiFrame", moreToolsContainer, {
|
local iconContainer = teverse.construct("guiFrame", moreToolsContainer, {
|
||||||
name = pageName,
|
name = pageName,
|
||||||
size = guiCoord(1, 0, 1, 0),
|
size = guiCoord(1, 0, 1, 0),
|
||||||
position = guiCoord(0, 0, 0, 0),
|
position = guiCoord(0, 0, 0, 0),
|
||||||
|
@ -129,7 +129,7 @@ return {
|
||||||
local args = {...} -- Holds overrides
|
local args = {...} -- Holds overrides
|
||||||
local xPositionOverride = args[1] or 0 -- Override if specified, else 0
|
local xPositionOverride = args[1] or 0 -- Override if specified, else 0
|
||||||
local positionToolTipOverride = args[2] or guiCoord(0, 0, 0, 0) -- Override if specified, else guiCoord(0, 0, 0, 0)
|
local positionToolTipOverride = args[2] or guiCoord(0, 0, 0, 0) -- Override if specified, else guiCoord(0, 0, 0, 0)
|
||||||
local iconImage = engine.construct("guiImage", page, {
|
local iconImage = teverse.construct("guiImage", page, {
|
||||||
name = name,
|
name = name,
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord((0.25+xPositionOverride), 0, 0.02+(#page.children*0.04), 0), -- Shorthand positioning w/o a for-loop
|
position = guiCoord((0.25+xPositionOverride), 0, 0.02+(#page.children*0.04), 0), -- Shorthand positioning w/o a for-loop
|
||||||
|
|
|
@ -26,13 +26,13 @@ return {
|
||||||
self.titleIcon = titleIconValue
|
self.titleIcon = titleIconValue
|
||||||
self.keys = {} -- Where item keys are stored
|
self.keys = {} -- Where item keys are stored
|
||||||
|
|
||||||
local container = engine.construct("guiFrame", globals.workshop.interface, {
|
local container = teverse.construct("guiFrame", teverse.interface, {
|
||||||
size = guiCoord(1, 0, 0.05, 0),
|
size = guiCoord(1, 0, 0.05, 0),
|
||||||
position = guiCoord(0, 0, 0, 0),
|
position = guiCoord(0, 0, 0, 0),
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiImage", container, {
|
teverse.construct("guiImage", container, {
|
||||||
size = guiCoord(0, 28, 0, 28),
|
size = guiCoord(0, 28, 0, 28),
|
||||||
position = guiCoord(0.01, 0, 0.1, 0),
|
position = guiCoord(0.01, 0, 0.1, 0),
|
||||||
texture = titleIconValue,
|
texture = titleIconValue,
|
||||||
|
@ -41,7 +41,7 @@ return {
|
||||||
handleEvents = false,
|
handleEvents = false,
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiTextBox", container, {
|
teverse.construct("guiTextBox", container, {
|
||||||
size = guiCoord(0.5, 0, 0.1, 0),
|
size = guiCoord(0.5, 0, 0.1, 0),
|
||||||
position = guiCoord(0.04, 0, 0.05, 0),
|
position = guiCoord(0.04, 0, 0.05, 0),
|
||||||
text = titleValue,
|
text = titleValue,
|
||||||
|
@ -51,7 +51,7 @@ return {
|
||||||
readOnly = true
|
readOnly = true
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiTextBox", container, {
|
teverse.construct("guiTextBox", container, {
|
||||||
size = guiCoord(0.48, 0, 0.1, 0),
|
size = guiCoord(0.48, 0, 0.1, 0),
|
||||||
position = guiCoord(0.86, 0, 0.1, 0),
|
position = guiCoord(0.86, 0, 0.1, 0),
|
||||||
text = globals.user[2],
|
text = globals.user[2],
|
||||||
|
@ -60,14 +60,14 @@ return {
|
||||||
readOnly = true
|
readOnly = true
|
||||||
})
|
})
|
||||||
|
|
||||||
local userIcon = engine.construct("guiFrame", container, {
|
local userIcon = teverse.construct("guiFrame", container, {
|
||||||
size = guiCoord(0, 32, 0, 32),
|
size = guiCoord(0, 32, 0, 32),
|
||||||
position = guiCoord(0.82, 0, 0, 0),
|
position = guiCoord(0.82, 0, 0, 0),
|
||||||
backgroundColour = globals.defaultColours.primary,
|
backgroundColour = globals.defaultColours.primary,
|
||||||
borderRadius = 100
|
borderRadius = 100
|
||||||
})
|
})
|
||||||
|
|
||||||
local statusIcon = engine.construct("guiFrame", container, {
|
local statusIcon = teverse.construct("guiFrame", container, {
|
||||||
size = guiCoord(0, 16, 0, 16),
|
size = guiCoord(0, 16, 0, 16),
|
||||||
position = guiCoord(0.836, 0, 0.5, 0),
|
position = guiCoord(0.836, 0, 0.5, 0),
|
||||||
backgroundColour = globals.defaultColours.green,
|
backgroundColour = globals.defaultColours.green,
|
||||||
|
@ -78,7 +78,7 @@ return {
|
||||||
zIndex = 100
|
zIndex = 100
|
||||||
})
|
})
|
||||||
|
|
||||||
local undoButton = engine.construct("guiImage", container, {
|
local undoButton = teverse.construct("guiImage", container, {
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord(0.92, 0, 0.2, 0),
|
position = guiCoord(0.92, 0, 0.2, 0),
|
||||||
texture = "fa:s-arrow-left",
|
texture = "fa:s-arrow-left",
|
||||||
|
@ -86,7 +86,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
local redoButton = engine.construct("guiImage", container, {
|
local redoButton = teverse.construct("guiImage", container, {
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord(0.94, 0, 0.2, 0),
|
position = guiCoord(0.94, 0, 0.2, 0),
|
||||||
texture = "fa:s-arrow-right",
|
texture = "fa:s-arrow-right",
|
||||||
|
@ -94,7 +94,7 @@ return {
|
||||||
backgroundColour = globals.defaultColours.white,
|
backgroundColour = globals.defaultColours.white,
|
||||||
})
|
})
|
||||||
|
|
||||||
local settingsButton = engine.construct("guiImage", container, {
|
local settingsButton = teverse.construct("guiImage", container, {
|
||||||
size = guiCoord(0, 20, 0, 20),
|
size = guiCoord(0, 20, 0, 20),
|
||||||
position = guiCoord(0.97, 0, 0.2, 0),
|
position = guiCoord(0.97, 0, 0.2, 0),
|
||||||
texture = "fa:s-sliders-h",
|
texture = "fa:s-sliders-h",
|
||||||
|
@ -117,7 +117,7 @@ return {
|
||||||
]]--
|
]]--
|
||||||
|
|
||||||
table.insert(self.keys, {name})
|
table.insert(self.keys, {name})
|
||||||
local button = engine.construct("guiButton", container, {
|
local button = teverse.construct("guiButton", container, {
|
||||||
size = guiCoord(0.056, 0, 0.9, 0),
|
size = guiCoord(0.056, 0, 0.9, 0),
|
||||||
position = guiCoord(0.2+(#self.keys*0.07), 0, 0.05, 0),
|
position = guiCoord(0.2+(#self.keys*0.07), 0, 0.05, 0),
|
||||||
text = name,
|
text = name,
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
local globals = require("tevgit:workshop/library/globals.lua") -- globals; variables or instances that can be shared between files
|
local globals = require("tevgit:workshop/library/globals.lua") -- globals; variables or instances that can be shared between files
|
||||||
|
|
||||||
local function init(workshop)
|
local function init(dev)
|
||||||
--[[
|
--[[
|
||||||
@Description
|
@Description
|
||||||
The initializer method that comes first when a new scene is open.
|
The initializer method that comes first when a new scene is open.
|
||||||
|
@ -15,17 +15,17 @@ local function init(workshop)
|
||||||
void, null, nil
|
void, null, nil
|
||||||
]]--
|
]]--
|
||||||
|
|
||||||
globals.workshop = workshop -- Set workshop instance as a global
|
globals.dev = dev -- Set teverse.dev (previously workshop) instance as a global
|
||||||
globals.user = engine:isAuthenticated() -- Set & Streamline user instance as a global
|
globals.user = teverse:isAuthenticated() -- Set & Streamline user instance as a global
|
||||||
globals.developerMode = (not globals.workshop.hasLocalTevGit) or (globals.workshop:hasLocalTevGit()) -- Set developmode boolean as a global
|
globals.developerMode = (not globals.dev.hasLocalTevGit) or (globals.dev:hasLocalTevGit()) -- Set developmode boolean as a global
|
||||||
|
|
||||||
local loadingScreen = engine.construct("guiFrame", workshop.interface, {
|
local loadingScreen = teverse.construct("guiFrame", dev.interface, {
|
||||||
size = guiCoord(1, 0, 1, 0),
|
size = guiCoord(1, 0, 1, 0),
|
||||||
backgroundColour = globals.defaultColours.background,
|
backgroundColour = globals.defaultColours.background,
|
||||||
zIndex = 1000
|
zIndex = 1000
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiTextBox", loadingScreen, {
|
teverse.construct("guiTextBox", loadingScreen, {
|
||||||
size = guiCoord(0.5, 0, 0.5, 0),
|
size = guiCoord(0.5, 0, 0.5, 0),
|
||||||
position = guiCoord(0.25, 0, 0.25, 0),
|
position = guiCoord(0.25, 0, 0.25, 0),
|
||||||
align = enums.align.middle,
|
align = enums.align.middle,
|
||||||
|
@ -42,7 +42,7 @@ local function init(workshop)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
return function(workshop)
|
return function(dev)
|
||||||
--[[
|
--[[
|
||||||
@Description
|
@Description
|
||||||
The main method that comes when a new scene is opened.
|
The main method that comes when a new scene is opened.
|
||||||
|
@ -54,19 +54,20 @@ return function(workshop)
|
||||||
function, method
|
function, method
|
||||||
]]--
|
]]--
|
||||||
|
|
||||||
local success, message = pcall(init, workshop)
|
local success, message = pcall(init, dev)
|
||||||
|
local teverse = dev -- Laziness
|
||||||
|
|
||||||
-- If initialize phase fails, prompt to the error screen
|
-- If initialize phase fails, prompt to the error screen
|
||||||
if (not success) then
|
if (not success) then
|
||||||
workshop.interface:destroyAllChildren()
|
teverse.interface:destroyAllChildren()
|
||||||
|
|
||||||
local errorScreen = engine.construct("guiFrame", workshop.interface, {
|
local errorScreen = teverse.construct("guiFrame", teverse.interface, {
|
||||||
size = guiCoord(1, 0, 1, 0),
|
size = guiCoord(1, 0, 1, 0),
|
||||||
backgroundColour = globals.defaultColours.background,
|
backgroundColour = globals.defaultColours.background,
|
||||||
zIndex = 10000
|
zIndex = 10000
|
||||||
})
|
})
|
||||||
|
|
||||||
engine.construct("guiTextBox", errorScreen, {
|
teverse.construct("guiTextBox", errorScreen, {
|
||||||
size = guiCoord(0.8, 0, 0.8, 0),
|
size = guiCoord(0.8, 0, 0.8, 0),
|
||||||
position = guiCoord(0.1, 0, 0.1, 0),
|
position = guiCoord(0.1, 0, 0.1, 0),
|
||||||
backgroundColour = globals.defaultColours.background,
|
backgroundColour = globals.defaultColours.background,
|
||||||
|
@ -77,17 +78,17 @@ return function(workshop)
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Bind the "return" key on the keyboard as temporary fast-reload keybind
|
-- Bind the "return" key on the keyboard as temporary fast-reload keybind
|
||||||
engine.input:on("keyPressed", function(keyboard)
|
teverse.input:on("keyPressed", function(keyboard)
|
||||||
if keyboard.key == enums.key["return"] then
|
if keyboard.key == enums.key["return"] then
|
||||||
workshop:reloadCreate()
|
teverse:reloadCreate()
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Bind the "f12" key on the keyboard as fast-reload keybind if initialize phase is successful
|
-- Bind the "f12" key on the keyboard as fast-reload keybind if initialize phase is successful
|
||||||
engine.input:on("keyPressed", function(keyboard)
|
teverse.input:on("keyPressed", function(keyboard)
|
||||||
if keyboard.key == enums.key["f12"] then
|
if keyboard.key == enums.key["f12"] then
|
||||||
workshop:reloadCreate()
|
teverse:reloadCreate()
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
end
|
end
|
Loading…
Reference in New Issue