Implementation of ObjectiveManager Core
Title: Implementation of ObjectiveManager Core
Description:
Develop and integrate the core system for ObjectiveManager, which will manage game objectives. The manager should provide functionality to create, update, retrieve progress, and delete objectives. This will serve as the foundation for integrating game modes in future iterations.
Requirements:
-
Create the main module
ObjectiveManagerwith the following CRUD functions:-
ObjectiveManager_Create— to create a new objective. -
ObjectiveManager_Get— to retrieve objective information by index. -
ObjectiveManager_Update— to update progress or properties of an objective. -
ObjectiveManager_Remove— to remove an objective.
-
-
Implement in-memory storage for objectives using an array or other data structure.
-
Add the following basic properties for each objective:
- Name (
name). - Description (
description). - Index (
index). - Progress (
progress).
- Name (
-
Enable support for managing multiple objectives simultaneously (multitasking).
-
Provide functions to export objective data for use by other modules:
- Retrieve a list of all objectives.
- Retrieve the current progress of each objective.
Acceptance Criteria:
-
ObjectiveManagercorrectly creates and manages multiple objectives. - Information about objectives is accessible via public API functions.
- CRUD functions are implemented and tested.
Tasks:
- [ ] Create the
Objectivestructure. - [ ] Develop CRUD functions.
- [ ] Implement data storage and management using an array.
- [ ] Write a test scenario to verify proper functionality.
- [ ] Add user-facing documentation. (?)
Time Estimate: 8-10 hours
Additional Notes:
This module must be flexible and independent of specific game modes, ensuring compatibility with future integrations like CTF, TDM, and others.