Files
2024-05-26 13:23:20 -04:00

109 lines
2.6 KiB
Scheme

; focus on the main sequence of actual rules going off
(define-rules chaturanji
(init-board:
((🜃♗ 🜃♙ _ _ 🜁♚ 🜁♜ 🜁♞ 🜁♝)
(🜃♘ 🜃♙ _ _ 🜁♟ 🜁♟ 🜁♟ 🜁♟)
(🜃♖ 🜃♙ _ _ _ _ _ _)
(🜃♔ 🜃♙ _ _ _ _ _ _)
(_ _ _ _ _ _ 🜂♟ 🜂♚)
(_ _ _ _ _ _ 🜂♟ 🜂♜)
(🜄♙ 🜄♙ 🜄♙ 🜄♙ _ _ 🜂♟ 🜂♞)
(🜄♗ 🜄♘ 🜄♖ 🜄♔ _ _ 🜂♟ 🜂♝)))
;; ← ↑ → ↓ ↖ ↗ ↘ ↙
;; ■ □
(turns
(pass)
(define (die-roll)
(let ((die (+ 1 (random 6)))
(die2 (+ 1 (random 6)))) #;(second-die)
(list die die2)))
; (clockwise-turnshift)
(moves
(🜃
(♔
; 地王's asana is D1 (earth quadrant)
(((♔ ■/_))
((_ ♔ ))
(((? ■/_)
((? ♔)
)
; or
(♙ ; PEON
(((♙ _))
((_ ♙)))
(((? ♙ _ _ ? ? ? ?))
((? _ ♙ _ ? ? ? ?)))
;; capture logic ↗ ↘
) ; /padati
; ... or or
;; make this logic clearer: (king or pawn) or (rest of pieces)
(♖ #;hasti
(((♖ _ → ■/_))
((_ _ → ♖))
(movement: all-directions))) #;/hasti
(♘ #;ashva
(((♘ ? ? )
(? ? ■/_))
((_ ? ?)
(? ? ♘))
(movement:
all-directions (all-directions flip-horizontally)))) #;/ashva
(♗ #;ship
(((? ? … ■/_)
(⁝ ⁝ ↗ ⁝ )
(? _ … ? )
(♗ ? … ? ))
;; todo... add jump as well, ship moves 2 spaces
;this ((? ? … ♗ )
;may (⁝ ⁝ ↗ ⁝)
;be (? _ … ?)
;unnecessary (_ ? … ?))
(movement: all-directions))) #;/ship
); bhumi(player(1))
(🜁 (transform 🜃
(♙ ♟) (♔ ♚) (♖ ♜) (♘ ♞) (♗ ♝)
(transformations:
flip-clockwise))) ; vayu raj
(🜂 (transform 🜁
(♙ ♟) (♔ ♚) (♖ ♜) (♘ ♞) (♗ ♝)
(transformations:
flip-clockwise))) ; tejas raj
(🜄 (transform 🜂
(♙ ♟) (♔ ♚) (♖ ♜) (♘ ♞) (♗ ♝)
(transformations:
flip-clockwise))) ; apas raj
) ; moves
(order-of-play: 🜃 🜁 🜂 🜄)
) ; turns
(shatpada
(let ((player ; end of rank
))) ; and has captured, (check bank)
);/promo
(sinhasana
(let ((enemy-raj asana (if (equal?
))))); lands on the raj asana
;capture
;; remove enemy piece and add to 'bank'
;freeze
(let ((ally-raj asana (if (equal?
))))); lands on the ally's raj asana
;capture
;control pieces {or freeze}
)
(vrihannauka
(let ((enemy-ship enemy-ship ally-ship asana (if (equal?
))))) ; 'ship triumph' when a square occurs
(chaturanga #; occurs
(let ((enemy-raj asana #; blah
)))
); chaturanji occurs
);define-rules chaturanji