Advertisement
arinado

checkers(idea)

Nov 24th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.07 KB | None | 0 0
  1. package arina_dorofeeva;
  2.  
  3. public class Checkers {
  4.     String colour;
  5.  
  6. }
  7. package arina_dorofeeva;
  8.  
  9. public class Checker extends Checkers {
  10.     private static class Field{
  11.         static String letter;
  12.         static int number;
  13.     }
  14.     protected void setSquare(String letter, int number) {
  15.         if ((((int) (letter.charAt(0)) % 2 == 0) && number % 2 == 0) || (((int) (letter.charAt(0)) % 2 != 0) && number % 2 != 0)) {
  16.             Field.letter = letter;
  17.             Field.number = number;
  18.         }
  19.     }
  20.     protected String getLetter() {
  21.         return Field.letter;
  22.     }
  23.     protected int getNumber() {
  24.         return Field.number;
  25.     }
  26.  
  27.     protected void makeAMove(String l, int n ) {
  28.         String letter = getLetter();
  29.         int number = getNumber();
  30.         int ascii = (int) letter.charAt(0);
  31.         ascii += 1;
  32.         letter = "" + (char) ascii;
  33.         number += 1;
  34.         if (l.equals(letter) && n == number)
  35.             setSquare(letter, number);
  36.         else {
  37.             ascii -= 2;
  38.             letter = "" + (char) ascii;
  39.             if (l.equals(letter) && n == number)
  40.                 setSquare(letter, number);
  41.         }
  42. }
  43. }
  44.  
  45. package arina_dorofeeva;
  46.  
  47. public class King extends Checkers {
  48.     private static class Field{
  49.  
  50.         static String letter;
  51.         static int number;
  52.     }
  53.     protected void setSquare(String letter, int number) {
  54.         if ((((int) (letter.charAt(0)) % 2 == 0) && number % 2 == 0) || (((int) (letter.charAt(0)) % 2 != 0) && number % 2 != 0)) {
  55.             Field.letter = letter;
  56.             Field.number = number;
  57.         }
  58.     }
  59.     protected String getLetter() {
  60.         return Field.letter;
  61.     }
  62.     protected int getNumber() {
  63.         return Field.number;
  64.     }
  65.     protected void makeAMove(String l, int n ) {
  66.             String letter = getLetter();
  67.             int number = getNumber();
  68.             if ((int)letter.charAt(0)-(int)l.charAt(0)==n-number){
  69.                 setSquare(l,n);
  70.             }
  71.         }
  72.     }
  73.  
  74. package arina_dorofeeva;
  75.  
  76. import java.io.PrintStream;
  77. import java.util.Locale;
  78. import java.util.Scanner;
  79.  
  80. public class Main {
  81.     public static Scanner in = new Scanner(System.in);
  82.     public static PrintStream out = System.out;
  83.     public static void assertTrue(boolean condition){
  84.         if (condition)
  85.             return;
  86.         else
  87.             throw new AssertionError("Not correct!");
  88.     }
  89.  
  90.     public static void main(String[] args) {
  91.         in.useLocale(Locale.US);
  92.         Checker check=new Checker();
  93.         check.colour="light";
  94.         check.setSquare("a",1);
  95.         check.makeAMove("b",2);
  96.         out.println(check.getLetter()+check.getNumber());
  97.         King king=new King();
  98.         king.colour="dark";
  99.         king.setSquare("c",7);
  100.         king.setSquare("h",1);
  101.         out.println(king.getLetter()+king.getNumber());
  102.         king.makeAMove("e",5);
  103.         king.makeAMove("a",7);
  104.         out.println(king.getLetter()+king.getNumber());
  105.         out.println(check.colour+" "+check.getLetter()+check.getNumber());
  106.  
  107.     }
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement