Commit Graph

57 Commits

Author SHA1 Message Date
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