Java 2D-kollision, vattentätt, kameran följer karaktären
Halloj!
Har stött på ett problem som jag inte lyckas lösa.
Har kodat ett spel som skall likna link to the past. Allt har gått bra tills nu. Har nyligen lagt in en kod som gör så att det ser ut som om användaren följer karaktären från ovan. Dvs "kameran följer karaktären". Det innebär att jag måste flytta alla andra objekt i motsatt riktning mot karaktären, med karaktärens hastighet och samtidigt låsa karaktären vid sin aktuella position, eller åtminstonne sätta en position åt denne för varje uppdatering.
Jag har även en kod som loopar igenom alla olika objekt som rör sig för att se om någon krockar. Tex. if(character.getX() < enemy.getX().getIconWidth()) etcetc. ni förstår säkert, jag kollar om de båda rektangulära bilderna överlappar varandra.
Jag utvecklade vidare kollisionen för att alla objekt skulle kunna ha större hastighet än vad själva ikonen i själva verket var genom att förutse en krock innan jag flyttar på karaktären. Går igenom varje pixel tex. från x = 150 til och med 150 + aktuell hastighet på objektet. Genom den metoden kunde jag förutse en krock INNAN karaktären flyttade på sig. Det var skitbra tills jag började med ovanstående, att låta kameran följa karaktäre, vilket bidrog till uppdateringar av objekten, vilket bidrog avv jag läckte in vatten så att säga.
Har någon något förslag på hur jag kan komma runt detta problem? Det måste finnas nåt sätt att ha i princip 100000 i pixelhastighet hos objekten men ändå kunna krocka med ett objekt som ligger endas 3 pixlar ifrån, OCH kunna följas av kameran (dvs. att alla andra objekt runt omkring flyttas i motsatt riktning)
Tack för svar!
EDIT: Själva problemet med att kameran följer karaktären är ju att om jag kollar alla pixlar framför karaktären till och med karaktärens storlek på hastigheten och inte upptäcker en krock så ber jag denne flytta sig framåt med så många pixlar som denne har hastighet. Sedan ber jag alla objekt runt omkring att flytta sig i motsatt riktning med karaktärens hastighet. DÅ kommer en krock uppstå fastän att ajg inte registrerat det. Så objektet flyter rätt igenom karaktären, eller mer "hoppar över"