File: Robot.java

package info (click to toggle)
laby 0.7.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 908 kB
  • sloc: ml: 3,823; xml: 133; sh: 115; pascal: 88; java: 70; perl: 69; php: 69; ansic: 68; javascript: 64; cpp: 59; makefile: 51; ruby: 48; python: 40; lisp: 32
file content (78 lines) | stat: -rw-r--r-- 1,873 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
import java.io.InputStreamReader;
import java.io.BufferedReader;

public class Robot {

  BufferedReader r;
  public enum Tile {
      laby_name_Void, laby_name_Wall, laby_name_Rock,
      laby_name_Web, laby_name_Exit, laby_name_Unknown
  }

  public Tile laby_name_Void = Tile.laby_name_Void;
  public Tile laby_name_Wall = Tile.laby_name_Wall;
  public Tile laby_name_Rock = Tile.laby_name_Rock;
  public Tile laby_name_Web = Tile.laby_name_Web;
  public Tile laby_name_Exit = Tile.laby_name_Exit;
  public Tile laby_name_Unknown = Tile.laby_name_Unknown;

  Robot() {
      r = new BufferedReader(new InputStreamReader(System.in));
      output("start"); input();
  }

  public void output(String s) {
      System.out.format("%s%n", s);
  }

  String input() {
      try {
	  String s = r.readLine();
	  if (s.equals("quit")) System.exit(0);
	  return s;
      }
      catch (java.io.IOException e) {
	  System.exit(1);
	  return null;
      }
  }

  public void laby_name_left() {
      output("left"); input();
  }

  public void laby_name_right() {
      output("right"); input();
  }

  public void laby_name_forward() {
      output("forward"); input();
  }

  public void laby_name_take() {
      output("take"); input();
  }

  public void laby_name_drop() {
      output("drop"); input();
  }

  public void laby_name_escape() {
      output("escape"); input();
  }

  public Tile laby_name_look() {
    output("look");
    String ans = input ();
    if (ans.equals("void")) return Tile.laby_name_Void;
    if (ans.equals("wall")) return Tile.laby_name_Wall;
    if (ans.equals("rock")) return Tile.laby_name_Rock;
    if (ans.equals("web")) return Tile.laby_name_Web;
    if (ans.equals("exit")) return Tile.laby_name_Exit;
    return Tile.laby_name_Unknown;
  }

  public void laby_name_say(String s) {
      System.out.format("say %s%n", s); input();
  }
}