Compare commits

...

2 Commits

Author SHA1 Message Date
e-dt 7f9bf67163 Cleanup 4 years ago
e-dt c8735067f9 Cleanup 4 years ago
  1. 30
      src/apr.rs

30
src/apr.rs

@ -36,7 +36,6 @@ pub fn make_grid(ctx: &mut Context, r: u8, c: u8, board: &[Vec<u8>]) -> GameResu
0 => Color::WHITE,
1 => Color::BLACK,
_ => Color::BLACK, //impossible
//2 => Color::RED, 3 => Color::CYAN, 4 => Color::YELLOW, 5 => Color::GREEN, 6 => Color::BLUE, 7 => Color::MAGENTA, _ => Color::BLACK,
},
)?;
}
@ -49,22 +48,15 @@ impl Apr {
pub fn new(_ctx: &mut Context, r: u8, c: u8) -> GameResult<Apr> {
// Load/create resources such as images here.
let board = board::make_board(r, c);
let mut temp_vec: Vec<actor::Actor> = Vec::new();
let mut actors: Vec<actor::Actor> = Vec::new();
for i in 0..r {
temp_vec.push(Apr::make_actor(_ctx, "/pawn.png", i, 0, 0));
actors.push(Apr::make_actor(_ctx, "/pawn.png", i, 0, 0));
}
Ok(Apr {
grid: make_grid(_ctx, r, c, board.board.as_slice())?,
board: board,
board,
should_update_grid: false,
/*actors: vec![actor::Actor {
image: graphics::Image::new(_ctx, "/pawn.png")?,
posn: actor::ActorPosn::BoardPosn { x: 0, y: 0 },
behaviour: 0,
}],*/
//actors: vec![Apr::make_actor(_ctx, "/pawn.png", 0, 0, 0)],
actors: temp_vec,
actors,
behaviours: vec![behaviour::Behaviour {
moves: vec![(0, 1)],
}], //the pawn can go ONE forwards
@ -72,11 +64,11 @@ impl Apr {
}
pub fn make_actor(ctx: &mut Context, img_path: &str, _x: u8, _y: u8, b: u8) -> actor::Actor {
return actor::Actor {
actor::Actor {
image: graphics::Image::new(ctx, img_path).unwrap(),
posn: actor::ActorPosn::BoardPosn { x: _x, y: _y },
behaviour: b,
};
}
}
pub fn set_colour(&mut self, r: usize, c: usize, col: u8) {
@ -112,8 +104,7 @@ impl EventHandler for Apr {
}
actor::ActorPosn::BoardPosn { x, y } => {
if mouse::button_pressed(ctx, MouseButton::Left) {
let (posx, posy) =
self.board.closest_square_coords(posn.x, posn.y);
let (posx, posy) = self.board.closest_square_coords(posn.x, posn.y);
if posx == x && posy == y {
let x = board::START_X + board::BOARD_SQUARE_SIZE * (x as f32);
let y = board::START_Y + board::BOARD_SQUARE_SIZE * (y as f32);
@ -136,7 +127,12 @@ impl EventHandler for Apr {
let drawparams = graphics::DrawParam::new();
if self.should_update_grid {
self.grid = make_grid(ctx, self.board.row, self.board.col, self.board.board.as_slice())?;
self.grid = make_grid(
ctx,
self.board.row,
self.board.col,
self.board.board.as_slice(),
)?;
self.should_update_grid = false;
}
graphics::draw(ctx, &self.grid, drawparams)?;

Loading…
Cancel
Save