forked from gtrafimenkov/ja2-stracciatella
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO
47 lines (43 loc) · 3.17 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Misan:
- use SDL_Surface instead of FRAME_BUFFER for smacker flicks for blitting
GTr:
- (#41) replace all CASSERT with unit tests
- check VS warnings C4390: ';' : empty controlled statement found; is this the intent?
- replace all SGPFILENAME with std::string
- replace PODObj.h with one of the standard boost classes
HACK0010
TODO0021
- HACK0007 Stop PreRandom always returning 0 or 1 without ensuring an equal distribution, which would be a rather complex task with pregenerated randoms
- HACK0009 Workaround for trying to play samples with an empty ("") name. Investigate why this happens
- HACK000B Remove unused fields which are only kept for savegame compatibility
- HACK000C Workaround for code trying to access non-existent buttons
- HACK000D SDL_BlitSurface() sometimes returns with the direction flag set on x86, which violates the ABI. Remove the "cld" hack once SDL is fixed.
- HACK000E uninitialised variables
- HACK000F Investigate whether this workaround, when loading a map containing underflow fillers, is correct
- HACK0010 workaround for maps with overlapping objects: F6, K13, H15 are currently known
- TODO0000 remove RestrictMouseCursor() et al.
- TODO0001 implement blitters and related functions
- TODO0003 Implement sound streaming
- TODO0005 Make it endian agnostic
- TODO0006 The IMP personality quiz evaluation seems to have some bugs
- TODO0007 Deduct AIM_PENALTY_SMG when firing a SMG even when second hand is free?
- TODO0008 The random call here seems to be off-by-one. If it returns its maximum value then no assignment to iAttitude happens, because the next loop tries to find the n+1th peak of n peaks.
- TODO0009 Possible endless loop
- TODO000A Memory leak?
- TODO000B Some values in MovementNoise() can wrap and then produce incorrect results
- TODO000F Only half of the data gets saved/loaded
- TODO0011 gubAnimCrawlSpeeds[] is only declared, gubAnimCrawlingSpeeds[] is never referenced, looks like a typo
- TODO0012 Is this fix for the infinite loop when throwing right?
- TODO0013 Code and comment disagree
- TODO0014 Properly resolve the bReverse mess
- TODO0015 Inconsistency between AddStructToTailCommon() and AddStructToHead() regarding return value of FindStructure()
- TODO0017 does the order of printing and dirtying matter?
- TODO0018 give quest facts proper names
- TODO0019 remove quirk, which ignores failure to open a file, which happens at the start of the game
- TODO001A investigate, if these ScreenIDs are sensible
- TODO001B OBJECT_NO_OVERWRITE flag handling, when deciding which items an enemy should drop, is strange
- TODO001C Buffer overflow when plotting long (> 256 tiles) paths
- TODO001D When a merc leaves the helicopter, he is placed in the center of the map. But for the first merc (who creates a new squad) PlaceGroupInSector() is called, which moves him to an edge. The later call to SetSoldierExitHelicopterInsertionData() corrects this. Investigate if this can be simplified (maybe removing the PlaceGroupInSector() is possible)
- TODO001E The union in FACETYPE is ugly.
- TODO001F This does not work, when n_slots drops to 0 before all player groups are handled.
- TODO0021 It is crude to ignore FailedToAddNode. If multiple nodes are added, rollback is needed.