Hello all,
I did research before I decided to post this so at least I know I can read and follow directions. The code I have draws rectangles, which is awesome, but I have been wracking my brain trying to figure out how to replace the rectangles with a picture I made instead of just filling them in with the color brown. I will attach some pictures so this isn't as crazy sounding as I type it here.
Current rectangles: https://db.tt/Nq72xGm8
New rectangles after picture added: https://db.tt/ny9rD2ye
After doing a search on your site I found some references but not sure if they exactly answer the question I am asking. Here is the code chunk I would like help with:
///////////////////////////////////////////////////////////////////
// Add rectangles at top increasing height at start and decreasing
// at the end. These rectangles will move from right to left side
// of the screen and increase in height with time to make game herder.
//////////////////////////////////////////////////////////////////
float upX= 0;
float heightUp= 30;
heightPlus= 5;
for(int i= 0; i<30; i++){
final int num= i;
final Rectangle rect= new Rectangle(upX, 0, 60, heightUp){
protected void onManagedUpdate(float pSecondsElapsed){
if(state== 50){
heightPlus= 0;
}
if(this.getX()+ this.getWidth()<0){
this.setHeight(this.getHeight()+ heightPlus);
if(num==0){
this.setPosition(rectsUp.get(29).getX()+ rectsUp.get(29).getWidth(), this.getY());
}else{
this.setPosition(rectsUp.get(num-1).getX()+ rectsUp.get(num-1).getWidth(), this.getY());
}
}
if(this.collidesWith(copterCollider) && !gameOver){
gameOver= true;
}
super.onManagedUpdate(pSecondsElapsed);
}
};
rect.setColor(colorRed/255f, colorGreen/255f, colorBlue/255f);
scene.attachChild(rect);
rectsUp.add(rect);
final PhysicsHandler rectHandler= new PhysicsHandler(rect);
rect.registerUpdateHandler(rectHandler);
rect.setUserData(rectHandler);
rectHandlers.add(rectHandler);
if(num<15){
heightUp+= 3;
}else{
heightUp-= 3;
}
upX+= 60;
}
I understand that the picture has to be called and inserted but I suppose I assumed it would be a lot easier than what it is turning out to be because the rectangles are already drawn.
My thought on the subject is that at the point where the code reads: rect.setColor(colorRed/255f, colorGreen/255f, colorBlue/255f); I would keep the code the way it is basically but change setColor to call the picture or even change the variables in a way to show the picture instead of colors. After looking on Google I found a few posts that were in the ball park that talked about using a specific code, but it is slightly confusing to me how to implement it. The main article I found is located here: http://stackoverflow.com/questions/15247971/fill-rectangle-with-image-in-java and in that same article is a second link which takes me to a website with a tutorial: http://docs.oracle.com/javase/tutorial/2d/images/drawimage.html.
Could someone explain to me in a more simplified English what exactly to do? I'm not looking for step by step just a better idea on how to accomplish my goal.
Any help on the subject would be fantastic, thank you in advance.
~Michael