Moin moin!
Hier möchte ich euch ein kleines Tutorial für einen Ad-Chat zeigen bzw. Allgemein für einen Chat.
Als erstes brauchen wir mal die Funktionen:
table.concat
#Operator --gibt die Länge eines Textes wieder
Als nächstes müssen wir eine Funktion schreiben:
Jetzt haben wir die Funktion erstellt und erweitern das ganze jetzt mit den beiden oben genannten Funktionen:
Lua
function chat( player, cmd, ...)
local text = {...}
local admessage = table.concat( text, " ") -- führt den Text und den Leeraum zusammen. Bsp: Hallo Test
local length = #admessage --zählt die Anzahl der Buchstaben
end
Jetzt haben wir die 2 Funktionen verwendet und starten nun unsere Abfragen
Zusätzlich fügen wir auch einen CommandHandler hinzu
Lua
function chat( player, cmd, ...)
local text = {...}
local admessage = table.concat( text, " ") -- führt den Text und den Leeraum zusammen. Bsp: Hallo Test
local length = #admessage --zählt die Anzahl der Buchstaben
if admessage == nil then -- wenn der Spieler keinen Text eingibt kommt die outputChatBox
outputChatBox("Bitte einen Text eingeben", player)
else -- wenn er einen Text eingibt
outputChatBox("Werbung von "..getPlayerName(player)..": "..admessage.."", getRootElement()) -- getRootElement() steht für alle Spieler
end
end
addCommandHandler("ad", chat)
Alles anzeigen
Jetzt wird schonmal ein Text ausgegeben
Wir erweitern diese Funktion nun mit einer Kostenabfrage
Lua
function chat( player, cmd, ...)
local text = {...}
local admessage = table.concat( text, " ") -- führt den Text und den Leeraum zusammen. Bsp: Hallo Test
local length = #admessage --zählt die Anzahl der Buchstaben
local cost = 100
local costperletter = 0.25
local adcosts = cost + costperletter*length -- Mathematische Berechnung für die Adkosten
if getPlayerMoney( player) < adcosts then -- wenn der Spieler weniger Geld hat kann er keine Ad schreiben
outputChatBox("Du hast kein Geld", player)
if admessage == nil then -- wenn der Spieler keinen Text eingibt kommt die outputChatBox
outputChatBox("Bitte einen Text eingeben", player)
else -- wenn er einen Text eingibt
else
outputChatBox("Werbung von "..getPlayerName(player)..": "..admessage.."", getRootElement()) -- getRootElement() steht für alle Spieler
takePlayerMoney( player, adcosts)
end
end
addCommandHandler("ad", chat)
Alles anzeigen
Ich hoffe mal das ist ein kleines und hilfreiches Tutorial.
mfg xEpic
Ps. ein Dankeschön an Justus wegen dem #Operator
//edit