Hallo,
Ich arbeit grad noch an ein Projekt und habe jetz 10 Datein (1.lua,2.lua......)
So und ich möchte jezt das die Zufällig aufgerufen werden sprich (3.lua,8.lua.... oder iwie anders).
Wie mach ich das?
Lg
Also der erste Tipp war eintfach nur shit..
Weil dort in diesen Befehl so ziemlich alles fehlte...
Das 2 kannte ich schon war aber doch iwie hilfreich...
Aber danke
du kannst es folgendermaßen machen:
zufall = math.random(8)
while true do
if zufall == 1 then
dofile(1.lua)
end
if zufall == 2 then
dofile(2.lua)
end
if zufall == 3 then
dofile(3.lua)
end
[...]
end
hmm...dann wählt er sie aber nicht zufällig aus sondern öffnet immer nur 1.lua
dann ist der zufall halt immer lua1^^
mom ich muss mal etwas suchen
Hey,
werde auch in den Ferien mal Lua anschauen.
@ Dreiundanchzig, zu deinem Code habe ich eine Frage.
Für was ist die (8) bei math.random(8)
(Sry bin totaler neuling)
Hey,
werde auch in den Ferien mal Lua anschauen.
@ Dreiundanchzig, zu deinem Code habe ich eine Frage.
Für was ist die (8) bei math.random(8)
(Sry bin totaler neuling)
der Befehl heißt
Beispiel:
random = math.random(1, 8)
Das bewirkt, dass eine Zahl von 1 bis 8 zufällig gewählt wird, wobei 1 und 8 mit berücksichtigt werden, also auch verwendet werden.
Verwendet man
bewirkt es dasselbe wie
random = math.random(1, 8)
fängt aber immer bei 1 an.
Man kann natürlich auch
random = math.random(3, 8)
verwenden, dann wird eine Zahl von 3 bis 8 generiert.
Hoffentlich verständlich genug
Aber es soll ja immer eine andere Datei sein...
Es ist immer nur 1 oder 3 oda so...
Ich will aber im Index auf Los klicken und dann soll z.b File 1,2 oder 3 abgehn.
Und wenn ich dann in 2 bin soll es dann eben 1 oder 3 sein
mir ist gerade etwas aufgefallen..
hast du die " bei dofile() gesetzt?
eigentlich müsste meine Methode funktionieren...
ja habs gesetzt..
geht trotzdem net so ganz
Naja Bumuckl hilft mir grad
//sry für doppelpost iwie lädt mein Inet wieder ewig wenn ich auf edit geh
Also ich hab ne Lösung gefunden und zwar diesen code:
function round(xnumber)
afterpoint=xnumber-math.floor(xnumber)
if afterpoint>=0.5 then return math.ceil(xnumber)
else return math.floor(xnumber) end
end
function random(xfrom, xto)
return (round(math.random()*(xto-xfrom))+xfrom)
end
selected_dir="auto/"
files=System.listDirectory(selected_dir)
luafiles={}
filecounter=0
for index, file in ipairs(files) do
_,_,extension=string.find(string.lower(file.name),"\.([^\.]+)$")
if extension=="lua" then
luafiles["file"..filecounter]=file.name
filecounter=filecounter+1
end
end
if filecounter>0 then
random_number=random(0, (filecounter-1))
lua_script=selected_dir..luafiles["file"..random_number]
else
-- no lua file found; return etc
end
dofile(lua_script)