Commit ce9dfc2
committed
Refactor async quest management into modular system
Fix for: #539
Resolved the issue in the quest cache system by introducing a removal list that's processed after each async tick on the map.
And I started refactoring the async quest handling with the following goals in mind:
- Removed reliance on static quest cache data.
- Reorganized logic into non-static classes for better maintainability.
- Added a QuestManagerAsync, modeled after RimWorld’s source code.
- Abstracted the dependency on AsyncTimeComp via an interface — with the idea that time handling might eventually be tied to factions or players across maps.
- Simplified and clarified some complex LINQ queries.
- Aimed to make the code more expressive and easier to follow.
- Added TODOs for items discovered during testing.
Cheers1 parent f0221d0 commit ce9dfc2
File tree
11 files changed
+420
-310
lines changed- Source/Client
- AsyncTime
- Quests
11 files changed
+420
-310
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
2 | 7 | | |
3 | 8 | | |
4 | 9 | | |
5 | 10 | | |
6 | 11 | | |
7 | 12 | | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
| 16 | + | |
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| |||
429 | 429 | | |
430 | 430 | | |
431 | 431 | | |
432 | | - | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
433 | 438 | | |
434 | 439 | | |
435 | 440 | | |
| |||
439 | 444 | | |
440 | 445 | | |
441 | 446 | | |
442 | | - | |
443 | 447 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | | - | |
4 | 1 | | |
5 | 2 | | |
6 | 3 | | |
| |||
10 | 7 | | |
11 | 8 | | |
12 | 9 | | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| |||
102 | 102 | | |
103 | 103 | | |
104 | 104 | | |
| 105 | + | |
105 | 106 | | |
106 | 107 | | |
107 | 108 | | |
| |||
135 | 136 | | |
136 | 137 | | |
137 | 138 | | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
138 | 147 | | |
139 | 148 | | |
140 | 149 | | |
| |||
This file was deleted.
0 commit comments