Libove Blog

Personal Blog about anything - mostly programming, cooking and random thoughts


#

#TIL: Placing two spaces at the end of a line creates a line break in #markdown.





#

I'm missing the vocabulary for googling this.

Is there a better way to write this? I want to filter a vector of enums to elements that match one specific pattern.

.filter(|r| match r.kind {
    RoomKind::BedRoom(_) => true,
    _ => false
})

#rust #dev


#

#gamedev progress:

  • refactored entire "Person" struct into individual structs for "Guest" and "Employee".
    • Separated logic and data.
    • AI actions are now individual structs that implement an Action trait
  • Started working on a Mood & Thoughts system.

Screenshot of mood icon above guest


#

#gamedev progress:

Slow progress in the last couple of sessions. I've started to implement employees. Employees work at rooms/stations whenever a guest wants to interact with them (e.g. booking a room). I'm not yet 100% happy with the implementation (blaming my #rust skills).

Additionally implemented a hunger+restaurant prototype.

Screenshot from my hotel game. The guests are currently eating in the restaurant


#

#gamedev progress:

  • Implemented A* for navigation
  • Started implementing the guests #AI. At the moment they only book a room at the reception and then idle in their room. If no room is available they leave.
  • Added further debugging to show path, tasks stack and inventory.


#

#gamedev progress:

Wrote function to find all tiles which are reachable from another one. Rooms have now a property to define how they connect to their neighbors.

Game screenshot where reachable tiles are marked green