Um nicht gleich bei jeder cod frage ein neues topic zu öffnen, wäre ich für diesen Thread.
Hier kann jeder seine Frage stellen, wenn er Hilfe braucht! Egal ob Lua oder c, c++ jeder soll hilfe bekommen
Wenn ihr jemanden helfen wollt, zitiert seinen Beitrag und schreibt die antwort.
Um das Übersichtlicher zu gestalten sind die Fragen immer grün und antworten immer rot Statt, einen Danke post, wird auf Danke gedrückt um spam zu vermeiden
Schön wäre bei einer Code antwort ein code rahmen (oben in der leiste # zeichen)
Ich fange mal an:
Wie lautet der code in Lua eine analogpad drehung im urzeigersinn zu machen?
also welche koordinaten hat das analogpad?
Sorry aber für was gibt es dann noch den Development Bereich ?
für projekte, tutorials undso
Was bringt bei LUA der Error : stack Overflow?
Was bringt bei LUA der Error : stack Overflow?
Der bringt dir dass dein HB abstürzt
Ne im Ernst jetzt... Steht da noch ne zeile dabei? Dann poste bitte mal den betreffenden Code.
PS: http://en.wikipedia.org/wiki/Stack_overflow
So wie ich das verstehe, wird zu viel Speicher verwendet, und deshalb stürzt es ab.
Ich hab allerdings keine Ahnung, welcher Speicher...
Yo da steht Zeile 40 also script.lua:40
Hier die Zeilen,die mit derselben Funktion zusammen hängen(39-42):
function System.copyFile(ms,f)
System.copyFile(ms, f, 0)
System.removeFile(ms)
end
entweder ist der flash nicht assigned oder deine pfadangabe ist falsch, würde ich jetzt schätzen
Hmmm... werde gleich mal mein Script gründlich überprüfen
Overflow = Zu viel Speicher wird verbraucht. (Overflow=Überfließen oder so)
Das ist wie wenn man 1,5 Liter Wasser in ein 1 Liter - Gefäß kippen will wenn du verstehst was ich meine
D.h., der Stack wird überfüllt.
Leider hab ich keine Ahnung was ein Stack ist
PS: Sagts mir wenn ich scheiße laber...
Ich habe auch ein LUA Problem mit dem ich schon lange sitzte:
Ich habe eine Function gemacht um eine Datei mit dem Namen Maplist.txt auszulesen und auszugeben. Das läuft wunderbar. Mein Problem ist aber ich weiß nicht wie ich die Namen aus der Maplist zu Variablen machen. Ich möchte dass man eine Maplist hat die man selbst erweitern kann.
Also aus der Maplist werden 5 verschiedene Namen ausgelesen und wiedergegeben und man soll die Namen auswählen können und der ausgewählte Name wird als Variable "Mapaus" gespeichert.
Ich hoffe ihr versteht es wie ich es meine.
Mein Maplist auslese und wiedergabe Code:
function printAllLines(Maplist,farbeW)
y=10
zeilen = {}
Maplist = io.open("Maplist.txt","r")
for line in Maplist:lines() do
zeilen[line] = line
y=y+10
screen:print(0,y,zeilen[line],farbeW)
end
datei:close()
Stack = Stapel
Der Stack ist der Stapelspeicher des Computers. Dort werden alle lokalen Variablen, und ggf. die Rücksprungadresse gespeichert. D.h. du hast zuviel lokale Variablen verwendet (wie auch immer die in lua funktionieren), oder du hast auf ein Array mit einem zu hohen Index zugegriffen (wie auch immer ein solches in LUA funzt). Wenn jetzt der Error nicht wäre, würde die Rücksprungadresse von den Variablen/dem Array überschrieben werden (oder im Fall von nem lesezugriff auf ein Array mit zu hohen Index würde die Rücksprungadresse gelesen werden).
Das ist die große Gefahr von Stack Overflows, die zu den meisten Exploits führen
Für alle die sich dafür interessieren:
http://advancedpsp.tk/foro_es/viewtopic.php?f=23&t=52 (dass ist jetzt allgemein über Exploits, sehr interessant)
Ich habe auch ein LUA Problem mit dem ich schon lange sitzte:
Ich habe eine Function gemacht um eine Datei mit dem Namen Maplist.txt auszulesen und auszugeben. Das läuft wunderbar. Mein Problem ist aber ich weiß nicht wie ich die Namen aus der Maplist zu Variablen machen. Ich möchte dass man eine Maplist hat die man selbst erweitern kann.
Also aus der Maplist werden 5 verschiedene Namen ausgelesen und wiedergegeben und man soll die Namen auswählen können und der ausgewählte Name wird als Variable "Mapaus" gespeichert.
Ich hoffe ihr versteht es wie ich es meine.
ich hab mal ein menü aus AX genommen und deinen vorgaben angepasst. hoffe es läuft, es ist ungetestet:
----------Deine Funktion leicht modifiziert
function readAllLines(txtname)
zeilen = {}
Maplist = io.open(txtname,"r")
for line in Maplist:lines() do
zeilen[line] = line
end
datei:close()
return zeilen
end
----------vorbereitung fuers menue
zeilen=readAllLines("Maplist.txt")
blue=Color.new(0,0,255)
white=Color.new(255,255,255)
mapwahl={}
farbe={}
auswahl=1
anzahl=table.getn(zeilen)
ypos=15
oldpad=Controls.read()
while true do
pause=0
flip=1
screen:clear()
oldpad=pad
pad=Controls.read()
----------pruefen ob eingaben gemacht wurden
if pad:up() then
if auswahl>1 then
auswahl=auswahl-1
pause=6
end
if ypos<30-(auswahl*15) then
ypos=30-15*auswahl
end
end
if pad:analogY()<-30 then
if auswahl>1 then
auswahl=auswahl-1
pause=pad:analogX()/128
end
if ypos<30-(auswahl*15) then
ypos=30-15*auswahl
end
end
if pad:down() then
if auswahl<anzahl then
auswahl=auswahl+1
pause=6
end
if ypos>240-(auswahl*15) then
ypos=0-(15*(auswahl-17))
end
end
if pad:analogY()>30 then
if auswahl<anzahl then
auswahl=auswahl+1
pause=(pad:analogY()/127)*(-1)
end
if ypos>240-(auswahl*15) then
ypos=0-(15*(auswahl-17))
end
end
----------Farben festlegen
counter=0
counterfarbe=0
while counterfarbe<auswahl do
counterfarbe=counterfarbe+1
farbe[counterfarbe]=white
end
counterfarbe=auswahl
while counterfarbe<anzahl do
counterfarbe=counterfarbe+1
farbe[counterfarbe]=white
end
farbe[auswahl]=blue
----------Menue auf den Bildschirm bringen
yposa=ypos
ypos=ypos+4
while counter<anzahl do
counter=counter+1
screen:print(10,ypos,zeilen[counter],farbe[counter])
ypos=ypos+15
end
----------reagieren falls kreuz gedrueckt wird
if oldpad:cross() and not pad:cross() then
Mapaus=zeilen[auswahl]
end
ypos=yposa
if flip==1 then
screen.flip()
end
screen.waitVblankStart(pause)
end
da das nicht wenig code ist (für ne eigentlich kleine hilfe) hab ich auf die rote Farbe beim code verzichtet, immerhin ist ja der rahmen schon rot XD
falls fehlermeldungen kommen, sag sie mir bitte, ich dürfte die dann schnell beheben können (normalerweise)
Ich bekomme jetzt in Zeile 30 den Error : [string "?"]:30: bad argument #1 to "ipairs" (table expected, got nil)
Es ist etwas mit dem Code hier
if pad:up() then
if auswahl>1 then
auswahl=auswahl-1
pause=6
end
if ypos<30-(auswahl*15) then
ypos=30-15*auswahl
end
end