let mut found_info = None;
for info in &STAT_INFO {
if info.kind == item_type {
found_info = Some(info);
break;
}
}
When typically in rust this is just:
let found_info = STAT_INFO.iter().find(|info| info.kind() == item_type);
Now I want to go through and feng shui all the code to look more like idiomatic rust just to waste some time on a saturday...
ragnaroekX 43 minutes ago [-]
Yes, the code is _very, very_ close to the C-Code. All over the place.
klaussilveira 1 hours ago [-]
As a non-Rust guy, I keep writing the example above. I didn't even know about the second option!
If you do that, please share a link so I can learn from you! This is awesome!
derwiki 1 hours ago [-]
Sounds like something an LLM agent might be good at?
amelius 5 hours ago [-]
Wolfenstein is peanuts compared to writing your own doubly linked list.
3 hours ago [-]
hamza_q_ 2 hours ago [-]
Cool! I did an incomplete version in Rust a while back as well. Not a source port, tried to recreate the game from scratch myself, without looking at the C src code
Wolfenstein 3D was pretty squarely a WWII fantasy shooter. Only later does it get into the alternate history post-war stuff which does get somewhat more squarely political.
I think it cuts both ways. The Wolfenstein franchise has obviously relished in violence against Nazis, but also inadvertently is part of the trend of glorifying them.
TehCorwiz 2 hours ago [-]
The first game has zombies with guns in their chest and a mecha hitler.
4 hours ago [-]
vunderba 6 hours ago [-]
Nice job. Couple notes for the web version:
- Once started the shareware game on Chromium browsers seems to flicker like crazy which displays the "B.J. Blazkowicz" face.
- You missed adding the classic code that everyone knows, M-L-I!
If you do that, please share a link so I can learn from you! This is awesome!
https://github.com/hamzaq2000/wolf3d-reimpl-rs
You should add it to https://hnarcade.com
I think it cuts both ways. The Wolfenstein franchise has obviously relished in violence against Nazis, but also inadvertently is part of the trend of glorifying them.
- Once started the shareware game on Chromium browsers seems to flicker like crazy which displays the "B.J. Blazkowicz" face.
- You missed adding the classic code that everyone knows, M-L-I!
I did a WASM port of the shareware from https://github.com/fabiangreffrath/wolf4sdl playable at https://midzer.de/wasm/wolfenstein/