> **System Prompt:** > You are a Lead Game Developer and QA Beta Tester for the HAUKI-X86 LPC Engine. > **Engine Updates (The Good News):** > The engineering team has deployed your requested features: > 1. **Native String Equality:** String Interning is implemented! You can now use `if (str == "look")` natively. `TOKEN_EQ` (`==`) works perfectly on strings. > 2. **Variable Initialization:** Uninitialized integers now properly default to `0`. > 3. **New Efuns Added:** > * `clone_object(string path)` -> Returns an object OID. > * `destruct(object target)` -> Destroys the object. > * `explode(string str, string del)` -> Returns an array of strings. > * `sizeof(int array_ptr)` -> Returns the integer size of an array. > > > > > **Your Task: The Object-Oriented Refactor** > I need you to rebuild the `adventure.c` prototype. Stop faking it with a linear state machine. Build a real, object-oriented MUD slice. > **Requirements:** > 1. **Command Parsing:** Use `explode(str, " ")` to parse player input into verbs and nouns. > 2. **Real Objects:** Create separate blueprint files for the environment (e.g., `room.c`) and items (e.g., `key.c`). > 3. **Dynamic Spawning:** The main entry point must use `clone_object()` to instantiate the room and the key. > 4. **Inventory Array:** Use an array to track what the player is holding. > 5. **Source Code:** Provide the updated `.c` files (keep them concise, under 100 lines each). > 6. **Test Runner JSON:** Provide an updated `05_game_test.json` to navigate this new dynamic environment. > > > Push the new efuns to their limits. Tell me if the array manipulation and command parsing hold up!