Commit graph

113 commits

Author SHA1 Message Date
Enno Rehling
a3ad9a0222 I am now calling get_race far too often. Fix this a bit. 2016-09-20 20:27:41 +02:00
Enno Rehling
025c0b91d9 cache the toad race 2016-09-19 07:02:45 +02:00
Enno Rehling
f47113e9bd eliminate static curse variables (gbdream & more) 2016-08-29 20:31:18 +01:00
Enno Rehling
2a8013f3f9 fix bug 2194, poorly 2016-03-25 17:05:01 +01:00
Enno Rehling
547532bc63 remove deprecated learn_skill function and configuration 2016-03-24 22:31:07 +01:00
Enno Rehling
be6a7a5e39 refactor test_create_locale
- create a mostly functional locale for testing
- use it for test factions
refactor learn_skill injection
- use days, not chance
- fix or mutilate broken tests
2016-03-24 13:01:42 +01:00
Enno Rehling
f97b6c9821 bug: learn_skill was not learning the right skill
refactor: further reduce learn_skill_depr usage
2016-03-24 13:01:42 +01:00
Enno Rehling
e75843e5c1 learn_skill tests were unstable because of random progress (disable it) 2016-03-24 13:01:40 +01:00
Enno Rehling
c91da12883 refactor demon_skillchange to use learn_skill
Also extracting it into the study module. No idea yet how I am going to sense this for a test, so the test currently does nothing.
2016-03-24 12:59:50 +01:00
Enno Rehling
af83efca44 rewrite learn_skill to not use the deprecated function. 2016-03-24 12:51:23 +01:00
Enno Rehling
b5a4faa745 deprecate learn_skill taking a double
- introduce days-based learn_skill
- add a simple test
2016-03-24 12:51:21 +01:00
Enno Rehling
ae7d86dae0 just a little bit of refactoring 2016-03-11 21:36:10 +01:00
Enno Rehling
d43265f937 a new test for the happy case of a working academy
dependency injection for learn_skill
memory leak fixes (triggers, armor)
2016-03-09 23:20:05 +01:00
Enno Rehling
02cfacd7f8 refactorings
- learn_skill from unit.c to study.c
- add academy.c module
2016-03-09 14:52:50 +01:00
Enno Rehling
3d5c7ba8fb refactoring: move produceexp from unit.c to study.c 2016-03-09 14:50:54 +01:00
Enno Rehling
e1f27448bc disable broken test.
fix test_study_with_teacher (simple optimization was in the wrong place)
2016-03-09 14:50:04 +01:00
Enno Rehling
13f51ab796 create a test that crashes for bug 2194 2016-03-09 14:50:04 +01:00
Enno Rehling
0189111876 update key attribute api
prepare to replace at_key. do not return the internals. add basic test.
2016-02-09 06:43:19 +01:00
Enno Rehling
0410581907 Merge branch 'market_tests' of https://github.com/stm2/server into stm2-market_tests
Conflicts:
	src/move.test.c
	src/study.c
2015-11-26 18:42:23 +01:00
Enno Rehling
64b84481b2 refactoring: move parsing and allies code out of config.c 2015-11-24 18:52:09 +01:00
Enno Rehling
0a47f0e398 eliminate SkillCap feature, it was stupid and not used by any game, ever 2015-11-23 20:58:51 +01:00
Enno Rehling
2e392b4d7c eliminate even more static variable caches 2015-11-22 16:14:27 +01:00
Enno Rehling
a4cb5e2906 replace all get_param_* for global.parameters with config_get_* 2015-11-22 10:44:46 +01:00
Enno Rehling
990fda6234 clean up config.c, remove static configuration caching 2015-11-21 18:13:16 +01:00
Steffen Mecke
5326bbd9e4 refactored inside_building/building_is_active/active_building 2015-11-16 02:13:48 +01:00
Enno Rehling
24ff4c301d refactor: separate building_is_active from inside_building 2015-11-02 14:18:50 +01:00
Enno Rehling
1a252bc994 CID 26253: Control flow issues (DEADCODE)
transformations gone wrong in previous commit
2015-10-29 16:50:55 +01:00
Enno Rehling
b7dce8071c CID 26259: Memory - corruptions
I apparently don't know how strncat works.
2015-10-29 16:36:20 +01:00
Enno Rehling
e27c4b4164 coverity scan CID 22457: logically dead code
the original TEACH_FRIENDS feature could not possibly have worked?
2015-10-29 09:39:33 +01:00
Enno Rehling
f4c32acd05 coverity scan CID 22515: out-of-bounds access
increase buffer to stop coverity false positive
2015-10-29 09:32:31 +01:00
Enno Rehling
55b3bfd90e coverity scan CID 22574: copy into fixed size buffer
zOrder *should* probably be big enough, but static analysis says safe is safe.
2015-10-29 09:28:02 +01:00
Enno Rehling
65429a12c3 coverity scan CID 22585, 22586: result is not floating point 2015-10-29 09:06:51 +01:00
Enno Rehling
de808bf146 change effskill signature to take a region, change eff_skill to work on a skill * to avoid multiple lookups. 2015-08-27 16:16:55 +02:00
Enno Rehling
1e6a83f357 resize buffer in eval_command, it was too small for many commands.
increase MAXTEACHERS.
eliminate oldterrain warning in json_report.
2015-08-06 16:52:24 +02:00
Enno Rehling
27835dc4e1 unit tests for STUDY and TEACH commands. 2015-07-09 13:24:21 +02:00
Enno Rehling
e25d3c8ed1 Fix a bug reporting DETROY messages to the correct unit.
Add missing not-null assertions before accessing function parameters.
Eliminate all of the PVS-Studio warnings.
2015-07-07 00:49:12 +02:00
Enno Rehling
05ec74f9ec annotate with finds from PVS Studio trial static analysis 2015-07-06 21:31:27 +02:00
Enno Rehling
f054ea114b Bug 1861: increase MAXTEACHERS, warn if it is still too small. 2015-07-02 16:23:38 +02:00
Enno Rehling
9b64269b6d fix auto-study plus-equal typo 2015-03-19 15:31:25 +01:00
Enno Rehling
c54cbfd472 fix copyright notice 2015-01-30 22:10:29 +01:00
Enno Rehling
abca25d1d5 fix indentation in every file
fix copyright date
remove vi ts=2 code
remove a couple of superfluous extern declarations
2015-01-30 20:37:14 +01:00
Enno Rehling
5ebf05f625 additional tests for the parser.
move more parsing code out of config.c
2014-12-22 16:45:56 +01:00
Enno Rehling
c5774e652a also prevent monsters from studying unarmed combat if they cannot learn things.
refactor the unit_can_study functionality into a separate function, we are now using it in multiple places.
2014-12-14 16:17:01 +01:00
Enno Rehling
5751a9b3a9 Merge pull request #66 from badgerman/getunit-refactor
refactoring getunit
2014-12-13 13:26:32 +01:00
Enno Rehling
c4b898e968 remove some inactive #define macros and the code that goes with them.
mostly rules that were experimental, but have made it into common use (not worth the effort of making them configurable).
2014-12-13 11:53:16 +01:00
Enno Rehling
98994f233d remove the deprecated getunit function.
fix the build, missing return value from give_control_cmd.
2014-12-12 21:06:47 +01:00
Enno Rehling
481275aef1 refactor: eliminate the getunitpeasants global variable.
bugfix: it was possible to uncover stealth units with GIVE CONTROL.
2014-12-12 20:53:39 +01:00
Enno Rehling
1af315ebf2 move magic out of kernel, into src.
clean up/remove a ton of includes, especially of types.h (include in header if you need it, not in every .c file).
2014-11-01 12:57:01 +01:00
Enno Rehling
837227f69c PR code review comments.
- make study rule an enum, for easier debugging
- change parameter name (it's not a type)
2014-10-18 19:53:13 +02:00
CTD
1c8488f2b4 Wenn man 1/2 schreibt
sollte auch 1/2 im Code stehen.
2014-10-17 13:54:07 +02:00
CTD
aa07c550ab Auto Lehrer
Config via study.speedup (sollte in E2 und E3 schon mit dem Wert 0 in
der XML stehen)
Wert 1:
Wenn das gerade gelernte Talent wenig Lerntage hat als 1/3 der max.
möglichen (ohne Bonus wie Akademie) hat,  dann gibt es die doppelten
Lerntage. Entspricht etwa dem alten Lehrer Schema.
Wert 2: Es werden die Lerntage aller Talente der Einheit als
Vergleichswert genommen, dann aber gegen den halben maximalen
Lerntagewert.
Es werden niemals die Lerntage der aktuellen Stufe mit eingerechnet,
sondern nur die durchschnittlichen Lerntage der bereits fertig gelernten
Stufen.
In E2 sollte der Lehre Befehl deaktiviert werden wenn diese Option
aktiviert wird.
2014-10-17 13:54:00 +02:00
Enno Rehling
74582aeb2f fix remaining getstrtoken uses without null-check. 2014-09-21 16:43:17 +02:00
Enno Rehling
a9a0455207 reorganized directory structure.
flattening the directory structure, moving some modules to the src/ directory.
making stealth a separate file, under test.
more tests for some stuff.
2014-08-27 06:40:35 +02:00
Enno Rehling
808f343e34 make getstrtoken() return null at EOL, kill init_tokens.
init_order all the things!
added a bunch of new assertions to cover for oversights.
added some new tests for order parsing.
2014-08-23 09:17:58 +02:00
Enno Rehling
c79dd33bfb smarter processing of MAKE TEMP.
the order gets its own keyword. parsing is hard - composite commands are an anti-pattern.
this eliminates a lot of unnecessary mallocs for pushing/poping parser state.
2014-08-16 11:41:19 +02:00
Enno Rehling
c3dfbdea18 eliminate new_race array in favor of a function (TODO: make it fast) 2014-06-29 18:10:02 -07:00
Enno Rehling
2c831230a0 Added a test for expensive skills.
When resetting the game rules, make sure basic resources (money, hp, person) are initialized.
2014-06-22 07:55:14 -07:00
Enno Rehling
bff25f3c51 move skill_t into a separate file, give it unit tests.
name functions the same as we did for keyword/direction earlier.
to do: json configuration and lua test.
2014-06-20 23:59:04 -07:00
Enno Rehling
c8dc6be6f2 rename get_keyword, because something else should have that name. 2014-06-16 07:19:22 -07:00
Enno Rehling
3c4b6b9dd4 rename message.[hc] to messages.[hc] in kernel because of naming conflict with util/
begin json config files (WIP)
2014-06-09 09:56:49 -07:00
Enno Rehling
0ae8737062 rename MIN/MAX to _min/_max 2014-03-16 05:03:17 +01:00
Enno Rehling
528dd4b81f remove latin1 characters from some files
experimenting with .gitattributes some more
2014-03-06 19:12:12 -08:00
Enno Rehling
03c247c788 I am killing the core/ directory.
Lots of files are moving to a new location in src/
Some intersting CMake changes.
2014-02-18 05:45:00 +01:00
Renamed from core/src/gamecode/study.c (Browse further)