From b90c2c4bc61248d5ea2e894fc70b84bc00582406 Mon Sep 17 00:00:00 2001 From: Akshay Date: Wed, 7 Apr 2021 19:07:46 +0530 Subject: implement iso grids; lisp primitives to manipulate grids --- src/lisp/prelude.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/lisp') diff --git a/src/lisp/prelude.rs b/src/lisp/prelude.rs index fee787e..d0667d8 100644 --- a/src/lisp/prelude.rs +++ b/src/lisp/prelude.rs @@ -1,6 +1,7 @@ use crate::{ bitmap::MapPoint, brush::Brush, + grid::{Grid, GridKind}, guide::Guide, lisp::{ error::{EvalError, LispError}, @@ -257,6 +258,16 @@ pub fn new_env() -> Result { Ok(LispExpr::Unit) }); + primitive!(env, Arity::Exact(0), "grid-rectangle", |_, app| { + app.grid.kind = GridKind::Rectangle; + Ok(LispExpr::Unit) + }); + + primitive!(env, Arity::Exact(0), "grid-isometric", |_, app| { + app.grid.kind = GridKind::Isometric; + Ok(LispExpr::Unit) + }); + primitive!(env, Arity::Exact(0), "brush-fill", |_, app| { app.brush = Brush::Fill; Ok(LispExpr::Unit) -- cgit v1.2.3