Skip to content

Commit 61e532d

Browse files
committed
Prepare for publishing v1.2.0
1 parent 4841ab3 commit 61e532d

7 files changed

Lines changed: 20 additions & 8 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
# Changelog
22

3-
## Coming Soon™
3+
## v1.2.0 — November 14th, 2025
44

55
- Fixed typo in 'stack' level description
6-
- Add new Steam achievements
6+
- Update interface immediately with new name when renaming a solution
7+
- Add new Steam achievements!
78
- Cheapest XOR
89
- Low Latency Oscillator
910
- Compact Memory Cell
1011
- Low-Speed Serial
11-
- Update interface immediately with new name when renaming a solution
12+
- Binary Arithmetic
1213

1314
## v1.1.3 — November 11th, 2025
1415

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

assets/steam-assets.png

110 Bytes
Loading

beam_time/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "beam_time"
3-
version = "1.1.3"
3+
version = "1.2.0"
44
edition = "2024"
55

66
[[bin]]

beam_time/app.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ impl App {
6161
let config = (fs::read_to_string(data_dir.join(paths::CONFIG)).ok())
6262
.and_then(|s| toml::from_str::<Config>(&s).ok())
6363
.unwrap_or_default();
64-
let solved = (File::open(data_dir.join("solved.bin")).ok())
64+
let solved = (File::open(data_dir.join(paths::SOLVED)).ok())
6565
.and_then(|b| BINCODE_OPTIONS.deserialize_from(b).ok())
6666
.unwrap_or_default();
6767

beam_time/game/achievements.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,17 @@ pub fn award_campaign_achievements(app: &App, id: Uuid, (cost, latency): (u32, u
1111
const BASIC_OSCILLATOR: Uuid = uuid!("aa28086a-564e-46d3-9233-894c157d92fe");
1212
const RS_LATCH: Uuid = uuid!("f4444a1c-d2a8-4a7a-b311-ec39322c1776");
1313
const SERIAL_BUS: Uuid = uuid!("151094cc-afcf-4825-87e2-72a565c18162");
14+
const MULTIPLIER: Uuid = uuid!("898fede9-9bb5-455e-9671-4671d2bbdae3");
15+
const ADDER_SUBTRACTOR: Uuid = uuid!("597b1d3d-0441-460f-870d-ed77749a07d7");
16+
const TRIPLE_IT: Uuid = uuid!("c04be8ac-0a2e-44c8-b82b-4f1ef2566244");
17+
18+
if matches!(id, MULTIPLIER | ADDER_SUBTRACTOR | TRIPLE_IT)
19+
&& app.level_solved(&MULTIPLIER)
20+
&& app.level_solved(&ADDER_SUBTRACTOR)
21+
&& app.level_solved(&TRIPLE_IT)
22+
{
23+
award("binary_arithmetic");
24+
}
1425

1526
match id {
1627
BASIC_ROUTING => award("its_beam_time"),

beam_time/screens/game/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,10 @@ impl Screen for GameScreen {
143143
let level = self.board.transient.level.as_ref().unwrap();
144144
let (cost, _count) = price(&self.board.tiles, level);
145145

146-
// Award potential steam achievements
146+
// Mark solved and award potential steam achievements
147+
state.mark_level_complete(level.id);
147148
award_campaign_achievements(state, level_meta.id, (cost, latency));
148149

149-
state.mark_level_complete(level.id);
150150
// Upload solution to leaderboard server
151151
state
152152
.leaderboard

0 commit comments

Comments
 (0)