A simple Game of Life implementation in Java
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
преди 11 години
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package edu.stuy.goldfish;
  2. public class Patch {
  3. private int _xcor, _ycor, _state;
  4. private String _label;
  5. private Grid _grid;
  6. public Patch(Grid grid, int xcor, int ycor, int state, String label) {
  7. _grid = grid;
  8. _xcor = xcor;
  9. _ycor = ycor;
  10. _state = state;
  11. _label = label;
  12. }
  13. public Patch() {
  14. this(new Grid(), 0, 0, 0, "");
  15. }
  16. public Grid getGrid() {
  17. return _grid;
  18. }
  19. public int getX() {
  20. return _xcor;
  21. }
  22. public int getY() {
  23. return _ycor;
  24. }
  25. public int getState() {
  26. return _state;
  27. }
  28. public void setState(int state) {
  29. _state = state;
  30. }
  31. public String getLabel() {
  32. return _label;
  33. }
  34. public void setLabel(String label) {
  35. _label = label;
  36. }
  37. public String toString() {
  38. return _plabel;
  39. }
  40. public Patch[] get4Neighbors() {
  41. Patch[] neighbors = new Patch[4];
  42. neighbors[0] = _grid.getPatch(_xcor + 1, _ycor);
  43. neighbors[1] = _grid.getPatch(_xcor - 1, _ycor);
  44. neighbors[2] = _grid.getPatch(_xcor, _ycor + 1);
  45. neighbors[3] = _grid.getPatch(_xcor, _ycor - 1);
  46. }
  47. public Patch[] get8Neighbors() {
  48. Patch[] neighbors = new Patch[8];
  49. neighbors[0] = _grid.getPatch(_xcor + 1, _ycor);
  50. neighbors[1] = _grid.getPatch(_xcor - 1, _ycor);
  51. neighbors[2] = _grid.getPatch(_xcor, _ycor + 1);
  52. neighbors[3] = _grid.getPatch(_xcor, _ycor - 1);
  53. neighbors[4] = _grid.getPatch(_xcor + 1, _ycor + 1);
  54. neighbors[5] = _grid.getPatch(_xcor + 1, _ycor - 1);
  55. neighbors[6] = _grid.getPatch(_xcor - 1, _ycor + 1);
  56. neighbors[7] = _grid.getPatch(_xcor - 1, _ycor - 1);
  57. }
  58. public Patch clone() {
  59. return new Patch(_grid, _xcor, _ycor, _state, _label);
  60. }
  61. }