rechter Rand ermitteln

  • Hallo zusammen,
    ich habe eine funktion mit der ein sprite an den rechten Rand bewegt werden soll.
    bei der Bewegung nach links setze ich ja einfach die Endposition auf 0, bei rightMove den rechten Rand auf CAMERA_WIDTH zu setzen funktioniert aber nicht, da das sprite so über den Rand hinaus läuft.

    was mache ich falsch?

    Ich danke euch.

    Code
    private void rightMove( Sprite sprite) {
    
    
    		
    		sprite.registerEntityModifier(new MoveXModifier(1, sprite.getX(),
    				CAMERA_WIDTH  ));
    
    
    	}
  • Den Dreisatz zu Ende denken kann helfen. ;)
    (CAMERA_WIDTH? Warum auch immer CAMERA_WIDTH und nicht getWindowManager().getDefaultDisplay().getSize(new PointF())... Von der Kameragröße auf's Display schließen zu lassen halte ich für unklug.)

    Linker Rand ist gleich 0 + Spritepixel nach rechts.
    Ergo ist rechter Rand gleich Breite - Spritepixel.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.

    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Wird wohl möglich mit AndEngine geschrieben werden :D

    Auf alle fälle kannst du dein Sprite so wie du es möchtest immer so setzen:
    x = EndeDesBildschirms - sprite.getWidth()

    Sollte es aber wirklich mit der AndEngine geschrieben werden, verwende lieber bei "EndeDesBildschirms" mCamera.getXmax()

  • Warum sollte man, auch bei der AndEngine, von der Kameraauflösung auf das Display schließen?
    Das ist doch, pardon, hirnrissig.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.

    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Zum einen, sollte ich mich jetzt irren tuts mir leid, zum anderen:

    Die "Kamera" in der AndEngine ist immer das, was man sieht. (Etwas ähnliches wie das hier: http://madebyluke.com/gamedesign/tut…s/draw_view.png)

    Ich weiß nicht, inwiefern du mit dieser Engine vertraut bist, jedoch hat diese nichts mit der Kamera vom Handy zu tun. Kann aber sein, dass du das bereits wusstest und ich an dir vorbei rede :P

  • Ich ging in der Tat davon aus, dass sie den sichtbaren Bildschirmbereich 'View' nennen und wusste nicht, dass sie es als 'Camera' bezeichnen.
    Denn was ich da sehe ist ja nicht die Kamera, sondern das, was die Kamera sieht.

    Anyways, in dem Fall stimmt es natürlich. :)

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.

    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!