summaryrefslogtreecommitdiff
path: root/share/hackvr/examples/chess/board.sh
blob: dc3fb3b3092ec67849674acf02ff5bd3ce9013c4 (plain) (blame)
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
#!/usr/bin/env bash

e=$1 #elevation of board
width=8
height=8
cols="a b c d e f g h"

printf "junk set camera.r.x -45\n"

for x in $(seq 1 $width);do
 for y in $(seq 1 $height);do
  color=$[((($y % 2) + ($x % 2))%2)+16]
### board is on the wall. draw in x and y.
#  printf "%s%s addshape %s 4 %s %s %s %s %s %s %s %s %s %s %s %s\n" \
#     $(printf "%s\n" "$cols" | cut '-d ' -f$x) $y $color \
#     $x     $y $e \
#     $[x+1] $y $e \
#     $[x+1] $[y+1] $e \
#     $x     $[y+1] $e
### board is on floor. draw in x and z.
  printf "%s%s addshape %s 4 %s %s %s %s %s %s %s %s %s %s %s %s\n" \
      $(printf "%s\n" "$cols" | cut '-d ' -f$x) $y $color \
      $x     $e $y \
      $[x+1] $e $y \
      $[x+1] $e $[y+1] \
      $x     $e $[y+1]
 done
done

row8="rook knight bishop queen king bishop knight rook"
row1="$row8"

color="19 19 0 0 0 0 20 20"

#draw pawns. triangles.
for x in $(seq $width);do
 for y in 2 7;do
  locat="$(printf "%s\n" "$cols" | cut '-d ' "-f$x")$y"
  cat "./pieces/pawn" | sed 's/^[^ ][^ ]* addshape [0-9][0-9]* /piece_'"${locat}"' addshape '"$(printf "%s\n" "$color" | cut '-d ' "-f$y")"' /g'
### board is on wall. use x and y.
#  printf "piece_%s move %s %s %s\n" "$locat" "$x" "$y" "$e"
### board is on floor. use x and z.
  printf "piece_%s move %s %s %s\n" "$locat" "$x" "$e" "$y"
 done
 for y in 1 8;do
  locat="$(printf "%s\n" "$cols" | cut '-d ' "-f$x")$y"
  cat "./pieces/$(printf "%s\n" "$row1" | cut '-d ' "-f$x")" \
    | sed 's/^[^ ][^ ]* addshape [0-9][0-9]* /piece_'"${locat}"' addshape '"$(printf "%s\n" "$color" | cut '-d ' "-f$y")"' /g'
### board is on wall. use x and y.
#  printf "piece_%s move %s %s %s\n" "$locat" "$x" "$y" "$e"
### board is on floor. use x and z.
  printf "piece_%s move %s %s %s\n" "$locat" "$x" "$e" "$y"
 done
done