Files
wnsrc/gamemodes/darkrp/plugins/goi_factory/3d2d/cl_nets.lua
lifestorm 73479cff9e Upload
2024-08-04 22:55:00 +03:00

174 lines
4.4 KiB
Lua

--[[
| This file was obtained through the combined efforts
| of Madbluntz & Plymouth Antiquarian Society.
|
| Credits: lifestorm, Gregory Wayne Rossel JR.,
| Maloy, DrPepper10 @ RIP, Atle!
|
| Visit for more: https://plymouth.thetwilightzone.ru/
--]]
net.Receive("ix.terminal.CWUWorkshiftData", function(len, client)
local ent = net.ReadEntity()
local data = util.JSONToTable(net.ReadString())
local terminalPanel = ent.terminalPanel
if terminalPanel then
if !IsValid(terminalPanel.shiftPanel) then
terminalPanel:ProceedShiftBuilding(data)
else
terminalPanel:PopulateWorkshift(data)
end
end
end)
net.Receive("ix.terminal.CWUWorkshiftSound", function()
surface.PlaySound(ix.config.Get("broadcastSound", "ambience/3d-sounds/alarms/workshiftalarm.ogg"))
end)
net.Receive("ix.terminal.AuthError", function(len, client)
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:AuthError()
end
end)
net.Receive("ix.terminal.DiscAttach", function(len, client)
local ent = net.ReadEntity()
local disc = net.ReadString()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:SetDisc(disc)
terminalPanel:OnDiscAttach()
end
end)
net.Receive("ix.terminal.DiscDetach", function(len, client)
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:SetDisc(nil)
terminalPanel:OnDiscDetach()
end
end)
net.Receive("ix.terminal.Scan", function(len, client)
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:Encode()
end
end)
net.Receive("ix.terminal.UpdateCWUTerminals", function(len)
local cityTbl = util.JSONToTable(net.ReadString())
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:Populate(cityTbl)
end
end)
net.Receive("ix.terminal.RequestCities", function(len)
local cities = util.JSONToTable(net.ReadString())
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:CreateMarketPanel(cities)
end
end)
net.Receive("ix.terminal.RequestMainCityInfo", function(len)
local cityInfo = util.JSONToTable(net.ReadString())
local budgets = util.JSONToTable(net.ReadString())
local ent = net.ReadEntity()
local option = net.ReadString()
local terminalPanel = ent.terminalPanel
if terminalPanel then
if option == "status" then
terminalPanel:CreateStatusPanel(cityInfo, budgets)
elseif option == "cart" then
terminalPanel:BuildCart(terminalPanel.cartPanel, cityInfo)
end
end
end)
net.Receive("ix.terminal.GetCityStock", function(len)
local items = util.JSONToTable(net.ReadString())
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:CreateStock(items)
end
end)
net.Receive("ix.terminal.turnOn", function(len)
local ent = net.ReadEntity()
local client = net.ReadEntity()
local data = net.ReadString()
data = util.JSONToTable(data)
if IsValid(ent) then
ent:CreateStartScreen(client, data)
end
end)
net.Receive("ix.terminal.turnOff", function(len)
local ent = net.ReadEntity()
if IsValid(ent) then
ent:PurgeScreenPanels()
end
end)
net.Receive("ix.terminal.CWUCardInserted", function(len)
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:OnCWUCardInserted()
end
end)
net.Receive("ix.terminal.CWUCardRemoved", function(len)
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:OnCWUCardRemoved()
end
end)
net.Receive("ix.terminal.SendCIDInfo", function(len)
local genData = util.JSONToTable(net.ReadString())
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:OnCIDInserted(genData)
end
end)
net.Receive("ix.terminal.SendCIDRemoved", function(len)
local ent = net.ReadEntity()
local terminalPanel = ent.terminalPanel
if terminalPanel then
terminalPanel:OnCIDRemoved()
end
end)