Guten Tag Community,
PS: Anfänger am werke
Ich habe mir gestern einmal ein Scoreboard durch das von Dkong gestellte Tutorial zusammen gebaut.
Das ganze habe ich jetzt auch schon schön gestaltet doch das Problem
welches ich nun habe ist das mir noch ein paar funktionen fehlen.
Gestern hat mir schon jmd für die funktion "state" geholfen. Danke nochmal dafür #McRyder
Meine weiteren Probleme wären eine funktion für die anzeige von
Record (die meist erreichteste spieler anzahl des servers)Online Players (erklärt sich von selbst)
ID (eine einfach strukturierte tabelle welche die jeweilige Spieler id auf den Server anzeigt)
Ersteinmal wollte ich gerne Online Players zum laufen bringen.
Zitatdurch die von mir Wiki zur verfügung gestellte hilfe fand ich diese version getPlayerCount
Das ganze habe ich dann in eine in meine meta als "<script type="server" src="server.lua" />" eingetragen.
Doch wie verbinde ich sachen von der in Server.lua enthaltenen scripte mit der von Client.lua ?
Und wie lasse ich wenn das nicht richtig sein sollte ist die Spieler zählen ?Server.lua
Luafunction playerCount ( ) (getPlayerCount()) end addEventHandler ( "onPlayerJoin", getRootElement(), playerCount ) addEventHandler ( "onPlayerQuit", getRootElement(), playerCount )
ausschnitt aus Client.lua
Lua Alles anzeigenfor i, player in ipairs(getElementsByType("player")) do i = i+1 dxDrawRectangle(x, y+66+i*13, width/16, 20, tocolor(0, 0, 0, 150)) -- # dxDrawRectangle(x+40, y+66+i*13, width/3, 20, tocolor(0, 0, 0, 150)) -- Player dxDrawRectangle(x+242.5, y+66+i*13, width/6, 20, tocolor(0, 0, 0, 150)) -- Money dxDrawRectangle(x+345, y+66+i*13, width/6, 20, tocolor(0, 0, 0, 150)) -- FPS dxDrawRectangle(x+487, y+66+i*13, width/10, 20, tocolor(0, 0, 0, 150)) -- state dxDrawRectangle(x+550, y+66+i*13, width/12, 20, tocolor(0, 0, 0, 150)) -- ping dxDrawText(getPlayerCount(Player), x+13, y+66+i*14, x+width/16, y+66) dxDrawText(getPlayerName(player), x+45, y+66+i*14, x+width/3, y+66, tocolor(255, 255, 255, 255), 1, "default", "left", "top", false, false, false, true) dxDrawText(getPlayerMoney(player), x+250, y+66+i*14, x+width/2, y+66) dxDrawText("FPS", x+382, y+66+i*14, x+width/2, y+66) dxDrawText(statecheck (player), x+507, y+66+i*14, x+width/2, y+66) dxDrawText(getPlayerPing(player), x+570, y+66+i*14, x+width/2, y+66)
Bitte hier weiterlesen
Da ich durch #MasterM den Zähler wv spieler zurzeit online sind zum laufen bekommen habe würde ich nun gerne mit einen meiner nächsten 2 Problemen weitermachen.
Auch hier nocheinmal danke an dich.
Record (die meist erreichteste spieler anzahl des servers)
ID (eine einfach strukturierte tabelle welche die jeweilige Spieler id auf den Server anzeigt) Bsp. Spieler joint Id 1 nächster Spieler Id 2 ...
Die Frage ist wie lasse ich die spieler anzahl Zählen und danach bei jeden neuen Record saven ?
Auf der Seite wurde mir erklärt wie man solch sachen in eine datei speichern und laden kann.
Doch wie lasse ich sie ausrechnen + warum folgt da ein fehler ?
Hättet ihr vielleicht eine bessere idee wie man das ganze scripten könnte ?
local solve = io.open("recordsaver.txt", "r")
function recordsave ( thePlayer)
if #getElementsByType("player")>solve then
local file = io.open("recordsave.txt", "a")
file:write("+1")
file:flush()
file:close()
end
end
ZitatERROR: nscoreboard\client.lua:69:attempt to index global ´io´ (a nil value)