Compare commits
2 commits
157ee0de51
...
8425e89254
Author | SHA1 | Date | |
---|---|---|---|
8425e89254 | |||
dbb478f9ec |
3 changed files with 10 additions and 5 deletions
|
@ -1,10 +1,11 @@
|
||||||
# Marble Machinations
|
# Marble Machinations
|
||||||
|
A zach-like programming-adjacent puzzle game.
|
||||||
|
Still in development, but core features are mostly stable.
|
||||||
|
|
||||||
logic mostly like https://git.crispypin.cc/CrispyPin/marble
|
logic mostly like https://git.crispypin.cc/CrispyPin/marble
|
||||||
|
|
||||||
## todo
|
## todo
|
||||||
### meta
|
### meta
|
||||||
- itch page text
|
|
||||||
- engine tests
|
- engine tests
|
||||||
- blag post about marble movement logic
|
- blag post about marble movement logic
|
||||||
### game
|
### game
|
||||||
|
@ -29,7 +30,7 @@ logic mostly like https://git.crispypin.cc/CrispyPin/marble
|
||||||
- validate solutions in server (with limits)
|
- validate solutions in server (with limits)
|
||||||
- show histograms
|
- show histograms
|
||||||
- author name in solutions and blueprints
|
- author name in solutions and blueprints
|
||||||
#### undecided
|
### undecided
|
||||||
- footprint score (tiles that were non-empty at any point in the run)
|
- footprint score (tiles that were non-empty at any point in the run)
|
||||||
- option to use 8-bit marbles?
|
- option to use 8-bit marbles?
|
||||||
- blueprint rotation?
|
- blueprint rotation?
|
||||||
|
|
|
@ -620,7 +620,7 @@ impl Editor {
|
||||||
self.draw_board(d, &globals.textures);
|
self.draw_board(d, &globals.textures);
|
||||||
self.board_overlay(d, &globals.textures);
|
self.board_overlay(d, &globals.textures);
|
||||||
self.draw_bottom_bar(d, globals);
|
self.draw_bottom_bar(d, globals);
|
||||||
self.draw_top_bar(d, &globals.textures);
|
self.draw_top_bar(d, globals);
|
||||||
|
|
||||||
if self.active_tool == Tool::Blueprint {
|
if self.active_tool == Tool::Blueprint {
|
||||||
self.draw_blueprint_sidebar(d, &globals.textures);
|
self.draw_blueprint_sidebar(d, &globals.textures);
|
||||||
|
@ -786,7 +786,8 @@ impl Editor {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn draw_top_bar(&mut self, d: &mut RaylibDrawHandle, textures: &Textures) {
|
fn draw_top_bar(&mut self, d: &mut RaylibDrawHandle, globals: &Globals) {
|
||||||
|
let textures = &globals.textures;
|
||||||
// background
|
// background
|
||||||
d.draw_rectangle(
|
d.draw_rectangle(
|
||||||
0,
|
0,
|
||||||
|
@ -822,7 +823,8 @@ impl Editor {
|
||||||
(40, 4),
|
(40, 4),
|
||||||
textures.get("save"),
|
textures.get("save"),
|
||||||
(&mut self.tooltip, "save"),
|
(&mut self.tooltip, "save"),
|
||||||
) {
|
) || globals.is_pressed(ActionId::Save)
|
||||||
|
{
|
||||||
self.exit_state = ExitState::Save;
|
self.exit_state = ExitState::Save;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@ pub enum ActionId {
|
||||||
Paste,
|
Paste,
|
||||||
Erase,
|
Erase,
|
||||||
ToggleMenu,
|
ToggleMenu,
|
||||||
|
Save,
|
||||||
StartSim,
|
StartSim,
|
||||||
StopSim,
|
StopSim,
|
||||||
StepSim,
|
StepSim,
|
||||||
|
@ -65,6 +66,7 @@ impl Default for Input {
|
||||||
bind_key(ActionId::Paste, vec![LCtrl], V);
|
bind_key(ActionId::Paste, vec![LCtrl], V);
|
||||||
bind_key(ActionId::Erase, vec![], Backspace);
|
bind_key(ActionId::Erase, vec![], Backspace);
|
||||||
bind_key(ActionId::ToggleMenu, vec![], Escape);
|
bind_key(ActionId::ToggleMenu, vec![], Escape);
|
||||||
|
bind_key(ActionId::Save, vec![LCtrl], S);
|
||||||
bind_key(ActionId::StartSim, vec![], Enter);
|
bind_key(ActionId::StartSim, vec![], Enter);
|
||||||
bind_key(ActionId::StopSim, vec![], Enter);
|
bind_key(ActionId::StopSim, vec![], Enter);
|
||||||
bind_key(ActionId::StepSim, vec![], Space);
|
bind_key(ActionId::StepSim, vec![], Space);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue