• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

LUA (LÖVE) Programmierung "BoxCollide" Error (für Programmierprofis) Hilfe!

Status
Für weitere Antworten geschlossen.

AchtungTroll

Braumeister
Registriert
9 Juli 2012
Beiträge
318
Diamanten
0
Minecraft
Xusiy
Hallo Leute, ich habe mich mal an ein simples Spiel gewagt und war überglücklich als die Gegner spawnen, natürlich will ich auch das sie bei Berührung verschwinden. So weit so gut, es gibt irgend ein Fehler in diesen Abschnitt:
Code:
function boxCollide(rect1, rect2)	
	local rect1x2 , rect1y2 , rect2x2, rect2y2 = rect1.x + rect1.w, rect1.y + rect1.h, rect2.x + rect2.w + rect2.h
	
	return rect1.x < rect2x2 and rect1x2 > rect2.x and rect1.y < rect2y2 and rect1y2 > rect2.y
	
end
Ich glaub nicht das ihr was damit anfangen könnt, das wegen ist hier der ganze Sourcecode: http://www.mediafire.com/?697hwgu71g5h7nd
Ich hab wirklich 3 mal den gesamten Code durchgegangen, ich hab nichts gefunden. Ich bitte um hilfe!
 

Crafter213

Braumeister
Registriert
9 August 2012
Beiträge
353
Diamanten
0
Das ist nur eine Vermutung; von LUA hab ich auch keine Ahnung..;)


Code:
local rect1x2 , rect1y2 , rect2x2, rect2y2

Das sieht so aus, als ob du dir 4 lokale Variablen definierst. Richtig?
Wenn ja:

Code:
 = rect1.x + rect1.w, rect1.y + rect1.h, rect2.x + rect2.w + rect2.h
Das sieht so us, als ob du diesen Variablen Werte zuweist.
Da du vorher mehrere Variablen per Komma getrennt definiert hast, kannst du ihnen hier auch Werte Zuweisen;
dabei ist d erste Wert bis zum ersten Komma für die erste Variable, der zweite Wert für die zweite Variable usw...
Richtig oder völlig daneben? ;)

Nach der Ansicht definierst du 4 Variablen und gibst diesen 4 Variablen aber nur 3 Werte...



Wenns nicht passt: Ein Versuch wars wert ;)
 
Zuletzt bearbeitet:

AchtungTroll

Braumeister
Registriert
9 Juli 2012
Beiträge
318
Diamanten
0
Minecraft
Xusiy
Yea Danke :D Nach ner Zeit kommt aber ne fehlermeldung:
Naja, egal. Werd ich irgendwann mal fixen.
#3DIT:
Ok was solls, wer findet den Fehler?:
Code:
		for i,v in ipairs(enemies) do
			for ii,vv in ipairs(spaceship.bullet) do
				if boxCollide(enemies[i], spaceship.bullet[ii]) then
					table.remove(enemies, i)
					table.remove(spaceship.bullet, ii)
			end
		end
	end	
end

function boxCollide(rect1, rect2)
	
	local rect1x2 , rect1y2 , rect2x2 , rect2y2 = rect1.x + rect1.w, rect1.y + rect2.h , rect2.x + rect2.w , rect2.y + rect2.h
	
	return rect1.x < rect2x2 and rect1x2 > rect2.x and rect1.y < rect2y2 and rect1y2 > rect2.y
	
end
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Oben