package com.lloydm.javakogengine_chess; class Gibbet { public static int MAXGIBBET = 100 * Config.FACTOR * 10; public static int MAXINDEX = 0; public static float ACCELERATION = 0.25f; public static float GROUNDH = 65.0f; public static int GIBCOUNTER = 0; public static int GIBMOD = 8; public static float VX = 1.5f; public static float VY = 5f; public static float ELASTIC = -0.5f; public static float MINVY = 0.01f; public static int LIFE = 180; public static int SPECIAL = 0;//25sep2021 // public int img; //(array index into Game.images[img] public int imgindex; //0-99 (sub position within the cell) public int subx; public int suby; public int subw; public int subh; public float vx; public float vy; public float x; public float y; public float h; public float yy; public int scrx; public int scry; public int life; public float angle; public int special;//25sep2021 ///////////////////Method Definition/////////////// public Gibbet() { img = -1; life = 0; } ///////////////////Method Definition/////////////// public static void clearall(Game game) { for(int i=0;i=0 && lpimg0) { Game.gibbet[i].life--; Game.gibbet[i].x+=Game.gibbet[i].vx * (float)(Config.delta)/100f;//18sep2021 Game.gibbet[i].y+=Game.gibbet[i].vy * (float)(Config.delta)/100f;//18sep2021 Game.gibbet[i].yy+=Game.gibbet[i].vy * (float)(Config.delta)/100f;//18sep2021 Game.gibbet[i].vy+=ACCELERATION; Game.gibbet[i].scrx = (int)Game.gibbet[i].x - Game.CORNERX; Game.gibbet[i].scry = (int)Game.gibbet[i].y - Game.CORNERY + (int)Game.gibbet[i].h; Game.gibbet[i].angle+=(float)Functions.sign(Game.gibbet[i].vx)*0.05f; if(Game.gibbet[i].yy>GROUNDH) { Game.gibbet[i].vy *= ELASTIC; } if(Functions.abs(Game.gibbet[i].vy) Game.RESOLUTIONX + 100 || Game.gibbet[i].scry > Game.RESOLUTIONY + 100) { Game.gibbet[i].life = 0; } } if(Game.gibbet[i].life<=0 && i==MAXINDEX) { MAXINDEX--; if(MAXINDEX<0) { MAXINDEX = 0; } } } } ///////////////////Method Definition/////////////// public void draw(Game game) { //25sep2021 added special.... RenderList.drawsubimage(game,Game.images[img].texture,scrx,scry,angle,0.7f,0.7f,0,special,false,1f,img,subx,suby,subw,subh); } ///////////////////Method Definition/////////////// public static void drawall(Game game) { for(int i=0;i<=MAXINDEX;i++) { if(Game.gibbet[i].life>0 && Game.gibbet[i].scrx>=-100 && Game.gibbet[i].scry>=-100 && Game.gibbet[i].scrx1)//25sep2021 { Game.gibbet[i].special = 1; } if(Game.gibbet[i].special<0)//25sep2021 { Game.gibbet[i].special=0; } Game.gibbet[i].draw(game); } } } }