2017-06-12 57 views
0

基本上我有一个SHARED lua文件,我在此定义该表。 我这样做是因为我认为如果我们在共享文件中定义表,我们可以使用它在客户端和服务器端。不在客户端上打印的共享表

SHARED.lua:

TableA = {} 

然后我编辑在SERVER LUA文件。

SERVER.lua:

function UpdateTable() 
    // Clean Table first 
    for k in pairs(TableA) do 
     TableA[k] = nil 
    end 
    ... not worth showing the rest ... 
    // Insert New Values 
    for i=1, 10 do 
     table.insert(TableA, result[i]) 
    end 
    // Debug Print 
    print(table.ToString(TableA)) // It Prints every value correctly 
end 

现在,当我尝试打印客户端,它说的表存在,但它是空的。

CLIENT.lua:

print(table.ToString(TableA))// Prints "{}" and it shouldn't be empty 

注:UpdateTable()运行每隔5min

回答

1

显然,当我们定义共享一个表,并不意味着价值将通过服务器和客户端共享。这只意味着代码将在服务器/客户端上运行。 你必须为他们联网才能“共享”桌面上的值。

+1

是的,你完全正确。 'net'库是实现服务器/客户端同步的最好方式,实际上你可以使用'net.WriteTable'通过网络库发送整个表,尽管我只会建议这个初始状态,然后使用各种各样的发送增量更新净功能。 – MattJeanes

相关问题