Daniel Evans
887e0333c8
Improve state access to always get the current scene
...
Prevents events being recieved by states that are no-longer in effect
Fixes #292
2017-09-17 00:45:58 +01:00
Anonymous Maarten
a1333360c5
rwlib: Add option to abort/break on failed checks or at request
...
- RW_ABORT/RW_ASSERT/RW_BREAKPOINT are only defined in debug mode
- the callback is needed to unlock the mouse when entering
the debugger
2017-09-16 22:19:39 +01:00
darkf
1bca493dfa
Remove last mman reference
2017-09-16 19:50:51 +01:00
Aldoxtor
7a8c602c75
add missing override
2017-09-12 01:40:31 +01:00
Anonymous Maarten
0308f809d6
config: Add the unknown keys to the what() message
2017-08-15 15:58:01 +01:00
Anonymous Maarten
a92f24cbb4
config: unknown data will be kept in memory and saved onto disk
2017-08-15 15:58:01 +01:00
Aldoxtor
81734ae2fe
initialize some variables in constructor
2017-04-21 20:24:32 +01:00
vflyson
57ad566681
improve the ammo count display logic
2017-03-13 19:15:15 +00:00
vflyson
87fb087485
only allow to scroll through weapons if alive
2017-03-13 19:15:15 +00:00
Anonymous Maarten
d8cda62668
config: fix input string parsing
2017-02-20 01:01:30 +00:00
Anonymous Maarten
e28e429b86
rwgame+config: show an error dialog when an error occurred on parsing the config file
2017-02-20 01:01:30 +00:00
Anonymous Maarten
76f2665acf
config: log parsing Errors to a ParseResult object (which is queryable)
2017-02-20 01:01:30 +00:00
Anonymous Maarten
e0813e4378
config: fix TempFile.touch() + TempFile test + extra doc of getValidConfig
2017-02-20 01:01:30 +00:00
Anonymous Maarten
90001b11ac
config: fix reading of illegal values
...
The parser would crash when trying to convert e.g. "d" to an integer.
2017-02-20 01:01:30 +00:00
Anonymous Maarten
fe156e2984
config: bail out on invalid values
...
Avoid srcTree being filled with un-initialized values
such as bools, ints, floats...
2017-02-20 01:01:30 +00:00
Anonymous Maarten
66b09a64a5
config: added default INI string test + simplified tests + removed WTF
2017-02-20 01:01:30 +00:00
Anonymous Maarten
8f5664498c
config: saveConfig + tests added
2017-02-20 01:01:30 +00:00
Anonymous Maarten
ed185f2526
config: add tests on reading good and bad configuration files
2017-02-20 01:01:30 +00:00
Anonymous Maarten
1dc06d9a35
config: do not use dynamic memory + bail out early on error
2017-02-20 01:01:30 +00:00
Anonymous Maarten
05db65dbbc
config: allow reading INI from string, file, default and current config
...
This (slightly more complicated implementation) allows us,
once a configuration menu has been implemented,
to store the current/new configuration to a INI file.
The definitions of the parameters in rwgame/GameConfig.cpp
is limited to one location.
2017-02-20 01:01:30 +00:00
Anonymous Maarten
a725a51baa
spelling: recieve -> receive
2017-02-20 01:01:30 +00:00
Anonymous Maarten
65b14fcb9c
config: use boost::property_tree for INI read and default generation
...
* remove inih
* input.invert_y has now behavior as described on wiki
2017-02-20 01:01:30 +00:00
vflyson
aa8ea65f92
properly display the ammo count for weapons which don't have a clip
2017-02-19 00:57:30 +00:00
vflyson
9fc38c5d51
display the proper UI icon texture for detonator
2017-02-19 00:57:30 +00:00
vflyson
4121378729
make it impossible to scroll through weapons while driving
2017-02-19 00:57:30 +00:00
Vincent Flyson
481a705c39
make the health indicator blink if low ( #267 )
...
* make the health indicator blink if low
2017-02-15 00:30:28 +00:00
Daniel Evans
8e4d73fca9
Rename Model -> Clump
2017-02-08 21:44:25 +00:00
Daniel Evans
bb9e368dca
Prevent traffic from spawning in cutscenes
2017-01-30 21:40:17 +00:00
Daniel Evans
bb6698e373
Implement Hierarchy of game ZoneData
...
This allows querying of the most specific ZoneData for a given point
2017-01-30 00:24:44 +00:00
haphzd
e6ec1b69f0
Bring back culling events counter
2016-12-10 22:19:38 +03:00
haphzd
b5079f4ae2
Update profiler graphs drawing routine to use GameString
2016-12-10 21:52:02 +03:00
Daniel Evans
7c41821b6c
Use relative mouse motion to control player look
2016-12-06 22:43:01 +00:00
Daniel Evans
247f66f60d
Move cutscene and fixed camera control into IngameState
2016-12-04 01:33:26 +00:00
Daniel Evans
ddb62ed3cd
Rewrite of camera and character look code
...
Make states responsible for interpolating camera transformation
Apply look direction to character orientation
2016-12-04 01:06:27 +00:00
Daniel Evans
d75c476221
Remove global texture list and use a slot name to lookup textures
2016-12-03 21:59:37 +00:00
Daniel Evans
b65a513bbb
Remove usages of WorkContext
2016-12-02 00:56:38 +00:00
Daniel Evans
6ef99c0de9
Fix crash starting new game
...
The player doesn't always exist, so we do need to check..
2016-11-24 21:30:43 +00:00
Daniel Evans
f0e0e6e747
Extract game input state handling from IngameState
...
Prevents input getting "stuck" when input is removed in the pause menu
2016-11-19 23:50:34 +00:00
Daniel Evans
40f18dabb0
zero all input when player input is disabled
2016-11-19 23:50:34 +00:00
Daniel Evans
57edc3648b
Detect event starts by double-buffering state
2016-11-19 23:50:34 +00:00
Daniel Evans
684e32f4a9
Simplify Script system by removing SCMOpcodes
...
This was just a useless container for a set of modules. We only have
one module now so don't bother with it. This means we can remove some
more raw new & deletes from RWGame too.
2016-10-24 21:29:41 +01:00
Daniel Evans
fb4d9ea8c3
Use unique_ptr for GameWorld instance
2016-10-24 21:29:41 +01:00
Daniel Evans
81c27da97b
Make GameState instance a direct member of RWGame
2016-10-24 21:29:41 +01:00
Daniel Evans
32352baedd
Remove very dead debug code
2016-10-24 21:29:41 +01:00
Daniel Evans
d62e8a6cd2
Make MenuEntry height a property of the Menu
2016-10-24 21:29:41 +01:00
Daniel Evans
613d386488
Improve Menu system implementation
2016-10-24 21:29:41 +01:00
Daniel Evans
6a7802de87
Overhaul State and StateManager to remove pointers
...
Removed raw State pointers in favour of unique_ptrs
Avoid allowing control flow to re-enter States that have exited
Defer releasing states until the end of the frame
2016-10-24 21:29:40 +01:00
Daniel Evans
c54273bb63
Correct RWGame.hpp header guard
2016-10-19 22:34:51 +01:00
Daniel Evans
ad998e8a80
Avoid allocating RWGame members where possible
...
These objects don't need to be dynamically allocated, they can
take on the same lifetime as RWGame itself.
2016-10-19 22:34:51 +01:00
Daniel Evans
2f118631dc
Move some non-game code into GameBase class
...
This moves window setup and configuration loading into a base
class so that RWGame can focus on game related matters
2016-10-19 22:34:51 +01:00