fog616 Posted December 5, 2020 Share Posted December 5, 2020 Trying to make a "interest" mod, not sure why it isn't working. Am I not understanding the Receive function? package.path = package.path .. ";data/scripts/lib/?.lua" package.path = package.path .. ";data/scripts/server/?.lua" include ("factions") include ("stringutility") local playerList = {} local playerTotal = 0 local timeSet = 0 function onStartUp() Server():registerCallback("onPlayerLogIn", "onPlayerLogIn") Server():registerCallback("onPlayerLogOff", "onPlayerLogOff") Galaxy():registerCallback("onPlayerCreated", "onPlayerCreated") Galaxy():registerCallback("onFactionCreated", "onFactionCreated") end function onShutDown() end function getUpdateInterval() return 60 end function update(timeStep) local server = Server() --server:broadcastChatMessage("Server", ChatMessageType.ServerInfo, "playerList true") local guardianRespawnTime = server:getValue("guardian_respawn_time") if guardianRespawnTime then guardianRespawnTime = guardianRespawnTime - timeStep; if guardianRespawnTime < 0 then guardianRespawnTime = nil end server:setValue("guardian_respawn_time", guardianRespawnTime) end timeSet = timeSet + timeStep if timeSet > 10 then timeSet = 0 local players = {server:getOnlinePlayers()} local playerListLength = tablelength(players) local i = 0 while i <= playerListLength do local playert = players[i + 1] server:broadcastChatMessage(playert) local resourceCount = {playert:getResources()} playert:receive(math.floor(playert.money * (2/((1+0.3)^(playert.money/1000000)))), math.floor(resourceCount[1] * (2/((1+0.5)^(resourceCount[1]/30000))), math.floor(resourceCount[2] * (2/((1+0.5)^(resourceCount[2]/30000))), math.floor(resourceCount[3] * (2/((1+0.5)^(resourceCount[3]/30000))), math.floor(resourceCount[4] * (2/((1+0.5)^(resourceCount[4]/30000))), math.floor(resourceCount[5] * (2/((1+0.5)^(resourceCount[5]/30000))), math.floor(resourceCount[6] * (2/((1+0.5)^(resourceCount[6]/30000))), math.floor(resourceCount[7] * (2/((1+0.5)^(resourceCount[7]/30000)))) --playert:receive(99999999999999999, 999999999999) i = i + 1 end end local serverRuntime = server:getValue("online_time") or 0 serverRuntime = serverRuntime + timeStep server:setValue("online_time", serverRuntime) end function onPlayerCreated(index) local player = Player(index) Server():broadcastChatMessage("Server", ChatMessageType.ServerInfo, "Player %s created!"%_t, player.name) end function onFactionCreated(index) end function onPlayerLogIn(playerIndex) local player = Player(playerIndex) Server():broadcastChatMessage("Server", ChatMessageType.ServerInfo, "Player %s joined the galaxy"%_t, player.name) matchResources(player) playerList[playerTotal] = player playerTotal = (playerTotal + 1) end function onPlayerLogOff(playerIndex) local player = Player(playerIndex) Server():broadcastChatMessage("Server", ChatMessageType.ServerInfo, "Player %s left the galaxy"%_t, player.name) end function tablelength(T) local count = 0 for _ in pairs(T) do count = count + 1 end return count end Any help would be great. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now