class bullet { float x, y; // συντεταγμένες του κέντρου float diam; // διάμετρος color xroma; float speed; // ταχύτητα κίνησης του βλήματος char dir; // κατεύθυνση κίνησης: 'U', 'D', 'R', 'L', ' ' boolean visible; // ΚΑΤΑΣΚΕΥΑΣΤΗΣ bullet (float px, float py, float pdiam, color pxroma) { x = px; y = py; diam = pdiam; xroma = pxroma; speed = 0; dir = ' '; visible = false; } // τέλος κατασκευαστή // ΙΚΑΝΟΤΗΤΑ του bullet να εμφανίζεται void display() { // υπολογισμός της νέας θέσης του βλήματος // ανάλογα με την κατεύθυνση κίνησής του if (dir == 'U') y = y - speed; else if (dir == 'R') x = x + speed; else if (dir == 'D') y = y + speed; else if (dir == 'L') x = x - speed; if (y > height+diam || y < -diam || x > width + diam || x < -diam) // αν βγει εκτός παραθύρου, γίνεται "αόρατο" { visible = false; speed = 0; } if (visible) // αν είναι visible, εμφανίζεται ως ellipse { fill(xroma); noStroke(); ellipse(x, y, diam, diam); } } // τέλος display() // IKANOTHTA του bullet να γίνεται ορατό void appear(float px, float py, float pspeed, char pdir) { visible = true; // γίνεται ορατό x = px; // στην θέση που θα δοθεί ως παράμετρος y = py; speed = pspeed; // και με ταχύτητα κ κατεύθυνση κίνησης dir = pdir; // που επίσης δίνονται ως παράμετροι } // τέλος appear() // IKANOTHTA του bullet να γίνεται ορατό void disappear() { visible = false; x = 0; y = 0; speed = 0; dir = ' '; } // τέλος disappear() } // τέλος class bullet