Commit graph

201 commits

Author SHA1 Message Date
Enno Rehling
8c11cb676f fix some failing tests. 2017-06-04 14:18:28 +02:00
Enno Rehling
5b807e2057 crash casued by spell conversion.
remove unit from faction, not only region!
also remove spammy warning that has no value.
2017-06-04 14:13:05 +02:00
Enno Rehling
3306488641 Merge pull request #695 from ennorehling/feature/refactor-rcspell
refactor observers, lighthouses
2017-05-28 12:50:05 +02:00
Enno Rehling
18daa9db2f entirely remove RC_SPELL 2017-05-24 08:52:19 +02:00
Enno Rehling
58d9aa58a0 BUG 2326: Untote Helden fehlen in der Kampfübersicht
https://bugs.eressea.de/view.php?id=2326
2017-05-21 11:14:16 +02:00
Enno Rehling
c6a8a76e31 strip skillmod down to the essentials. 2017-04-02 20:17:39 +02:00
Enno Rehling
ed99f60186 decluttering settings.h 2017-03-31 21:37:30 +02:00
Enno Rehling
a93dc5459b BUG 2313: spells must not be counted.
https://bugs.eressea.de/view.php?id=2313
2017-03-12 13:39:25 +01:00
Enno Rehling
decc38a056 BUG 2313: proper accounting in remove_unit.
https://bugs.eressea.de/view.php?id=2313
2017-03-12 13:02:55 +01:00
Enno Rehling
d633c2a9fb BUG 2310: counting units and people.
reduce number of count_all loops made,
make f->num_units and f->num_people be correct.
2017-03-11 19:36:26 +01:00
Enno Rehling
05bb109a09 BUG 2303: allied units are not traitors.
had to rewrite the creport code for this, it is probably less efficient now than ever, but at least it works.
2017-03-06 21:35:48 +01:00
Enno Rehling
bfb5a9b692 set age_unit and name_unit funpointers in rc_create.
no more <function/> in XML races.
rename juju-zombie => juju.
2017-02-20 22:07:36 +01:00
Enno Rehling
ba1fdcce59 remove race.describe funpointer 2017-02-20 07:47:36 +01:00
Enno Rehling
4e5f1d05ce Be very strict about C standards.
Compile with -std=c89 in gcc.
remove all // comments (they are nice, but unnecessary).
variables only declared at start of block.
various pedantery.
backwards compatible va_copy for pre-C99 gcc.
2017-02-18 21:15:14 +01:00
Enno Rehling
4828045fd7 there is no NEWATSROI, remove dead code 2017-02-12 18:52:41 +01:00
Enno Rehling
b05c2564e5 make att_modification not crash when a good/bad dream curse has no magician. 2017-02-12 13:22:44 +01:00
Enno Rehling
3b3e39a319 optimization: elf-special "regen.forest" is now a config.
this is an E3 feature
eliminates rc.parameters for elves
allows use of a local cached static
2017-02-04 23:21:36 +01:00
Enno Rehling
1c347ca5ba race.healing is now an int percentage, not a float multiplier 2017-02-03 18:18:55 +01:00
Enno Rehling
fd9583df3d fix healing for elves in a forest.
rename _magres back to magres.
rc->parameters is not linked to config_changed invalidation.
add tests.
2017-02-03 17:43:40 +01:00
Enno Rehling
8b7dae6977 kill autoconf.h, replace platform.h for C99 compatibility work 2017-01-10 16:31:05 +01:00
Enno Rehling
4a802be67c fix undead name generation. 2016-12-31 20:03:50 +01:00
Enno Rehling
ec4060cb9a fix curse-vigour calculation math.
also fix a ton of small other niggles from pvs-studio.
2016-11-20 19:08:39 +01:00
Enno Rehling
2f305f16d9 additional testing for renumber. 2016-11-17 21:08:35 +01:00
Enno Rehling
11b122048b reduce dependency on save.h
moving a_write* functions to attrib.h, which was most of the reason everyone and their mom include save.h
2016-11-13 19:40:38 +01:00
Enno Rehling
754ad78db7 WIP: remove GUARD_* flags.
TODO: does not compile
TODO: write new guard.test.c tests
2016-10-31 07:45:06 +01:00
Enno Rehling
2fbc7a44d5 add missing tests for recent failures. 2016-10-23 13:02:53 +02:00
Enno Rehling
a921a6594a Merge branch 'develop' of https://github.com/ennorehling/eressea.git 2016-10-23 10:03:46 +02:00
Enno Rehling
f12eda8bdf remove cfindhash, again.
curse and unit ids can collide, there is no reason why they should be from the same pool.
2016-10-23 10:03:33 +02:00
Enno Rehling
ac4e32a8f5 Merge branch 'master' into develop 2016-10-23 09:59:42 +02:00
Enno Rehling
34a6dd8d54 fix crash in 997: re-introduce cfindhash.
this prevents duplicate curse.no values.
2016-10-22 22:35:10 +02:00
Enno Rehling
38721e2046 remove all mention of centaurs from the code and configuration 2016-10-07 19:33:50 +02:00
Enno Rehling
c53ac9d8aa remove RS_FARVISION, it is the only spell that uses units. 2016-10-01 21:03:16 +02:00
Enno Rehling
423e293745 some more config lookup caching 2016-09-23 20:39:08 +02:00
Enno Rehling
f8ac5c390d SAMRT_INTERVALS is no longer an option, but regular 2016-09-20 09:39:21 +02:00
Enno Rehling
9af5fb0326 cache some of the highest-ranking ct_find callers 2016-09-19 04:23:49 +02:00
Enno Rehling
e7739867df use curse_type caching in att_modification 2016-09-19 03:55:12 +02:00
Enno Rehling
6c9c460815 fix failing unit tests, remove deleted unit from f->units list. 2016-09-18 11:46:54 +02:00
Enno Rehling
f946d50001 alternative implementation for dfindhash that doesn't use as much memory.
do not set u->faction = NULL for deleted units.
2016-09-11 20:09:48 +02:00
Enno Rehling
87fed5b7d2 Merge pull request #548 from ennorehling/refactor-volcano
new tests, TODOs removed, remove code duplication
2016-08-31 17:19:29 +01:00
Enno Rehling
8a157de36c only name monsters that have a naming function. test is bad, failing. 2016-08-31 16:43:02 +02:00
Enno Rehling
2d1a13a811 death to static caches! 2016-08-30 07:51:05 +01:00
Enno Rehling
873e6f8086 remove more static curse_type variables 2016-08-29 20:34:30 +01:00
Enno Rehling
f47113e9bd eliminate static curse variables (gbdream & more) 2016-08-29 20:31:18 +01:00
Enno Rehling
0d609f2115 test magicwalls and strongwalls effects on buildings. 2016-08-29 08:53:09 +01:00
Enno Rehling
33701ab891 make describe_braineater more generic (describe_race). 2016-08-28 20:44:45 +01:00
Enno Rehling
0f3de70ced refactor to push back the const-ness of generated names. 2016-08-28 19:06:14 +01:00
Enno Rehling
0ac30c65a1 refactoring prior to removing static variable 2016-08-28 18:15:00 +01:00
Enno Rehling
b2e79dc5e9 building maintenance unit tests.
backfilling some very basic test coverage.
2016-08-21 20:01:30 +02:00
Enno Rehling
4f5bd43dcf Merge branch 'master' into develop
Conflicts:
	src/buildno.h
2016-08-07 00:47:50 +02:00
Enno Rehling
44b6a87649 death by NMR was broken, because I can't write loops good. 2016-08-07 00:40:10 +02:00
Enno Rehling
db5b90e80b clarify building_type.maxsize and add error logging for bug 2221.
https://bugs.eressea.de/view.php?id=2221
2016-08-06 13:52:29 +02:00
Enno Rehling
d0f54bf69a Merge branch 'feature/kill-maintenance' of https://github.com/ennorehling/eressea into ennorehling-feature/kill-maintenance
Conflicts:
	src/kernel/config.c
	src/kernel/config.h
	src/tests.c
2016-07-30 23:27:03 +02:00
Enno Rehling
98a3b31953 cfindhash is gone 2016-03-25 21:51:49 +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
8a9d617aa3 read_referernce takes a gamedata object.
with all the trimmings that requires,
this is for github issue $479
2016-02-24 11:53:22 +01:00
Enno Rehling
7f6ced99b9 attrib.read gets a gamedata object (remove dependency on global.data_version) 2016-02-24 11:44:18 +01:00
Enno Rehling
ca500a499e adding a much-needed getter function for faction_alive 2016-01-11 12:25:23 +01:00
Enno Rehling
b4389c91fe fix compilation (what was I thinking?), remove uses of f.alive where they should not be needed. 2016-01-11 11:54:45 +01:00
Enno Rehling
5187788f3c pass the parent of an attribute into a_age and attrib_type::age 2015-12-16 22:18:44 +01:00
Enno Rehling
c85e489f4f Merge branch 'monster_leftovers' of https://github.com/stm2/server into stm2-monster_leftovers
Conflicts:
	src/kernel/unit.c
	src/laws.test.c
	src/monsters.c
2015-11-25 14:25:42 +01:00
Enno Rehling
f559c263e3 cleanup of config.c: move more code to other modules like unit.c and faction.c 2015-11-24 19:53:27 +01:00
Enno Rehling
84a943b698 fix gcc build 2015-11-24 19:15:53 +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
817d81dbf9 remove the rules.hunger.reduces_skill variable, no game was doing anything other than the default. 2015-11-23 21:05:25 +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
66dd1b8172 remove produce_exp caching in static variables (more slowdown) 2015-11-22 10:21:37 +01:00
Enno Rehling
990fda6234 clean up config.c, remove static configuration caching 2015-11-21 18:13:16 +01:00
Enno Rehling
7e27928d17 eliminate static variables and cache logic from more modules 2015-11-21 12:28:20 +01:00
Steffen Mecke
8cec4b20e0 reduce code obfuscation 2015-11-17 02:14:08 +01:00
Steffen Mecke
1789bc06e9 monster faction may learn from experience 2015-11-17 02:13:57 +01:00
Enno Rehling
b81e56d306 CID 22486 Dereference after null check 2015-11-05 08:32:21 +01:00
Enno Rehling
42ae086def unit is inisde a building also when it was not paid for 2015-11-02 14:49:48 +01:00
Enno Rehling
24ff4c301d refactor: separate building_is_active from inside_building 2015-11-02 14:18:50 +01:00
Enno Rehling
21a2313e2a CID 22517: Parse warning (PW.PARAM_SET_BUT_NOT_USED) 2015-10-30 15:20:06 +01:00
Enno Rehling
e1eb5098d4 CID 22554: Improper use of negative value (REVERSE_NEGATIVE)
I believe this was a false positive, but more asserts can never hurt.
2015-10-30 12:40:48 +01:00
Enno Rehling
4f25831407 coverity scan CID 22576: arguments in wrong order
I believe that was a false positive, and will try to aquelch it by naming the arguments better.
2015-10-29 11:24:01 +01:00
Enno Rehling
3055f517dc move guard implementation into a module (WIP) 2015-09-12 22:53:54 +02:00
Enno Rehling
7906cdbcb6 do not read gamename from XML, read it from JSON only (two mechanisms for the same feature are too many) 2015-09-12 16:49:18 +02:00
Enno Rehling
8a95ea0c00 speeding up produceexp_chance 2015-09-12 16:41:22 +02:00
Enno Rehling
9bdc811582 produceexp uses a json-configurable constant
make get_param_flt return a double, floats are for wimps.
2015-09-12 16:38:51 +02:00
Enno Rehling
68c448b3fb fix signature of callback 2015-09-12 16:29:57 +02:00
Enno Rehling
d1686849e0 refactoring: move produceexp into unit module, for want of a better one. add a bit of test coverage.
https://bugs.eressea.de/view.php?id=2137 - fix learning-by-doing with less than u->number people.
2015-09-12 16:25:47 +02:00
Enno Rehling
cf08cdf3fb configuration type-fixes: int to bool where appropriate (possibly incomplete)
rename some rules to make it more obvious that they are flags or other integer values.
2015-09-11 10:04:08 +02:00
Enno Rehling
60111282b3 make findunitr be O(1) instead of O(#r->units) 2015-09-09 13:29:58 +02: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
bc1c3dd712 move NEWATSROI out of item_modification 2015-08-26 19:59:11 +02:00
Enno Rehling
afbc4c816b refactoring ship speed, extract total skills of sailors into a function. 2015-08-07 12:43:18 +02:00
Enno Rehling
8dc4e93e90 fix missing units from CR, add a test, partially convert from FILE* to stream 2015-08-05 14:45:46 +02:00
Enno Rehling
2288b8fb27 Merge remote-tracking branch 'upstream/master' into develop
Conflicts:
	.travis.yml
	s/build
	s/cmake-init
	s/runtests
	src/buildno.h
	src/kernel/config.c
	src/kernel/save.c
	src/kernel/unit.c
	src/laws.c
	src/move.c
2015-08-03 19:43:26 +02:00
Enno Rehling
9938b3fb66 eliminate update_gbdream completely, make code smaller and simpler.
simplify tests (no need to use create_spell if we don't use it)
increase build no for hotfix.
2015-08-02 23:16:41 +02:00
Enno Rehling
d99ffaf1ed filter by curse-type before trying to call update_gbdreams. 2015-08-02 22:45:59 +02:00
Enno Rehling
a119f7617f add some assertions to make sure update_gbdream is not called without a magician 2015-08-02 21:17:21 +02:00
Enno Rehling
59745c7ed0 parentheses to fix operator precedence. 2015-07-03 16:13:24 +02:00
Enno Rehling
8e5fc28bfc refactoring more of goodies.h into strings.h 2015-05-18 08:59:38 +02:00
Enno Rehling
bf5fae2ef5 Fix visual studio compilation for Solthar's curse changes (float/int conversions, uninitialized variable). 2015-05-11 23:54:21 -07:00
Steffen Mecke
d9f8479055 removed duplication in good/bad dreams code 2015-05-07 17:54:59 +02:00
Enno Rehling
88d370a7b8 fixing sea serpent names
https://bugs.eressea.de/view.php?id=2057
2015-04-21 12:35:39 +02:00