Commit graph

186 commits

Author SHA1 Message Date
Enno Rehling
294b7bf01e route all casting through a single cast_spell function. 2017-04-30 10:00:29 +02:00
Enno Rehling
51ec560f72 Merge branch 'master' into develop
Conflicts:
	scripts/tests/e2/init.lua
	scripts/tests/e3/init.lua
	src/economy.c
	src/economy.test.c
	src/kernel/item.c
	src/modules/arena.c
2017-03-11 14:41:25 +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
50bdc71c1b kill lua_canuse_item and itype->canuse 2017-03-04 17:27:13 +01:00
Enno Rehling
c276b5a43c generate error, not crash.
todo: fix items
2017-02-28 14:22:59 +01:00
Enno Rehling
5a01eae522 make item_use function crash if new and old rules do not agree
add a 'test' function to E3 that exercises all those items
2017-02-28 14:22:59 +01:00
Enno Rehling
3a985108a6 change all magic resistance to use fractions. 2017-02-24 20:47:47 +01:00
Enno Rehling
3274065004 reduce complexity of building_protection. 2017-02-22 19:38:46 +01:00
Enno Rehling
04154628e6 remove funpointer for spoils 2017-02-20 09:18:04 +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
492aba543b delete at_scare
delete dead code (race.attribs has no at_skillmod)
delete race.attribs
2017-02-05 19:30:09 +01:00
Enno Rehling
2ecbf89f1a clean up and test various race.parameters 2017-02-04 23:16:16 +01:00
Enno Rehling
11c0330de1 make race::attack use spellref, too. 2017-01-28 19:52:28 +01:00
Enno Rehling
94737375f5 issue #621: delete battledebug code 2017-01-26 18:05:26 +01:00
Enno Rehling
774fa12a5a continued work for MSVC compilation 2017-01-26 18:05:25 +01:00
Enno Rehling
d94cde67a4 kill autoconf.h, replace platform.h for C99 compatibility work 2017-01-26 18:03:48 +01:00
Enno Rehling
f297d89958 merge monster.c and monsters.c
move RCF_DESERT handling to monsters.c
2017-01-26 17:57:21 +01:00
Enno Rehling
a4badc0a75 remove quicklist shim, use selist everywhere 2017-01-26 17:41:21 +01:00
Enno Rehling
7f9313f1a7 static analysis warnings.
PVS-Studio warnings reduced or suppressed.
2016-11-23 18:56:40 +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
eabaf8bebb fix last commit. 2016-11-19 16:27:37 +01:00
Enno Rehling
531da88b2a squash some static analysis warnings. 2016-11-19 15:19:23 +01:00
Enno Rehling
434cf8fce6 the unitid macro is boring. 2016-11-17 21:27:19 +01:00
Enno Rehling
bc5e744347 i2b is a bullshit macro. 2016-11-17 21:23:49 +01:00
Enno Rehling
a601a675f6 reduce config.h even more.
let's get all those global variables out of there.
2016-11-17 10:42:20 +01:00
Enno Rehling
bad4fb47c5 bad GUARD_NONE conversion, should have been false. 2016-11-05 16:20:00 +01:00
Enno Rehling
467ffe2db0 include guard.h directly, not through laws.h 2016-11-01 22:11:10 +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
63f60a2465 cache some more get_race calls, especially for RC_SPELL. 2016-10-03 20:36:46 +02:00
Enno Rehling
87873702ca eliminate RS_FARVISION enum, there is no other kind of RC_SPELL. 2016-09-24 20:31:31 +02:00
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
73f33a7d0f Merge branch 'develop'
Conflicts:
	src/kernel/config.c
2016-09-19 20:22:53 +02:00
Enno Rehling
a7fbe4901b eliminate old_race. make the catdragon act like a dragon. 2016-09-19 18:42:14 +02:00
Enno Rehling
71fa3600f7 recalculate [first,last) after lighthouses aand trvelthru 2016-09-13 09:09:35 +02:00
Enno Rehling
0124bafdc4 delete dead code 2016-09-11 16:44:35 +02:00
Enno Rehling
86ef225ccb add some more local caching. 2016-09-11 12:48:00 +02:00
Enno Rehling
d0c1b2daa4 that's all folks. no more static curse_type caches. 2016-08-29 20:36:26 +01:00
Enno Rehling
b43ac6ab27 remove static initialization code 2016-08-29 19:52:43 +01:00
Enno Rehling
2c5063095d fixed: tests that try to create duplicate spells do not spam stderr. 2016-08-29 14:49:31 +01:00
Enno Rehling
fd273848ae add an assert_alloc macro for allocations that cannot fail. 2016-08-29 09:26:49 +01:00
Enno Rehling
1f3413a9b4 annotations 2016-08-29 08:55:59 +01:00
Enno Rehling
0d609f2115 test magicwalls and strongwalls effects on buildings. 2016-08-29 08:53:09 +01:00
Enno Rehling
194f96c50f eliminate some possible null-pointer exceptions 2016-08-28 21:03:23 +01:00
Enno Rehling
238a0e22f2 Merge branch 'test-alliance' of https://github.com/ennorehling/eressea into ennorehling-test-alliance
Conflicts:
	src/util/CMakeLists.txt
2016-08-08 08:46:09 +02:00
Enno Rehling
40dbe2b0cb delete old healing effects on read
remove obsolete effect-handling from battle.c
2016-06-17 21:49:31 +02:00
Steffen Mecke
e6907f570e use up old potion effects 2016-06-13 09:25:08 +02:00
Steffen Mecke
afdd20c4dd healing potion works once per battle with 100% 2016-06-12 23:23:22 +02:00
Steffen Mecke
61d93b7931 fix two bugs concerning horse bonus
switched E3 horse damage and attack bonuses
horses help fleeing if when riding is 0
2016-06-12 23:16:06 +02:00
Enno Rehling
11ae7dd55e add a test for default_order, so I can change it. 2016-04-09 18:49:25 +02:00
Enno Rehling
e6f3dc8b85 Merge branch 'master' into develop
Conflicts:
	scripts/run-turn.lua
	src/buildno.h
	src/kernel/group.c
	src/kernel/save.c
	src/kernel/save.test.c
	src/kernel/version.h
	src/util/password.c
	src/util/password.test.c
	tests/run-turn.sh
2016-02-23 10:47:33 +01:00
Enno Rehling
29c9e719da eliminate plane.watchers feature
. we don't use them anywhere
. they have no tests
. they crash readgame when watchers have died
2016-02-18 08:48:54 +01:00
Enno Rehling
8a3bb35987 eliminate global log_flags, revert the mode arguments for fopen.
turns out that text is default, and windows hates it if I open a binary file without 'b'
standardize on using join_path to create filenames
(use backslash on windows, even though fopen doesn't seem to care).
2016-02-05 23:10:05 +01:00
Enno Rehling
1075b7ce17 Merge branch 'master' into develop 2015-12-06 18:39:54 +01:00
Enno Rehling
d04d8e782e https://bugs.eressea.de/view.php?id=2173
rewrite the rules for magical damage reduction
2015-12-06 18:34:31 +01:00
Steffen Mecke
864c875316 fix typo: fiery breath was icy 2015-12-05 22:27:03 +01:00
Enno Rehling
1d57bf527d Merge branch 'master' into develop
Conflicts:
	src/battle.test.c
	src/buildno.h
2015-12-05 17:27:04 +01:00
Enno Rehling
62ee1468b8 https://bugs.eressea.de/view.php?id=2166
* fix magic resistance calculation in calculate_armor.
* add related tests.
* refactor BF_CANATTACK -> BF_NO_ATTACK because it is easier.
2015-12-05 17:17:21 +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
48c75466b6 kill static caches for floating-point variables 2015-11-22 17:32:35 +01:00
Enno Rehling
3bd458b5e8 optimization: read configuration once before all battles, not before or during each individual one. 2015-11-22 15:29:43 +01:00
Enno Rehling
7bbf11c6b6 eliminate more static cached configuration values 2015-11-22 15:14:50 +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
7dae5aa035 eliminate silly caching logic from natural armor calculation 2015-11-21 19:02:14 +01:00
Enno Rehling
26b6ae4e30 github issue #374
stick some assertions in natural_armor
refactor it for readability
eliminate a static memory leak
reset num_races to zero at end of test
2015-11-07 18:21:47 +01:00
Enno Rehling
c090f8e1f4 CID 22441 Unchecked return value from library 2015-11-04 12:03:26 +01:00
Enno Rehling
d6cd1feb48 CID 22456: 'Constant' variable guards dead code
github issue #360
prayers sind ein feature, das nie fertig entwickelt wurde
2015-11-04 11:59:17 +01:00
Enno Rehling
978dd1400f CID 22465 Division or modulo by zero 2015-11-04 11:57:13 +01:00
Enno Rehling
a02b5f343e CID 22488 Dereference after null check 2015-11-04 11:55:04 +01:00
Enno Rehling
154c2076a2 fixing bug 2149: projectile armor shall only protect against projectiles
https://bugs.eressea.de/view.php?id=2149
2015-11-03 19:12:40 +01:00
Enno Rehling
f959f43f1e extensive tests for armor calculation 2015-11-03 18:59:09 +01:00
Enno Rehling
15ff621cbb refactor: extract damage calculation from terminate
start writing tests (WIP)
2015-11-03 14:22:50 +01:00
Enno Rehling
4052f52472 Merge pull request #345 from TurnerSE/bug/#2145
Bug/#2145
2015-11-03 13:04:28 +01:00
Philipp Dreher
5178bbd674 moved application of armor-penetration
halfed armor now includes the effect of natural armor, but not the
effect of magic armor
2015-11-03 00:05:55 +01:00
Philipp Dreher
b6443e40ba reanimated dead code 2015-11-01 17:14:51 +01:00
Enno Rehling
be0563c1f0 CID 22560: Copy into fixed size buffer (STRING_OVERFLOW) 2015-10-30 11:43:45 +01:00
Enno Rehling
0a67d53264 CID 26256: (NULL_RETURNS) 2015-10-29 16:41:53 +01:00
Enno Rehling
f2b0ba1ec6 eliminate find_spell warning for games where nobody is cursed, and you cannot summon igjarjuk 2015-10-27 12:40:03 +01:00
Enno Rehling
3eead446d0 reduce cron log spam 2015-09-26 22:42:22 +02:00
Enno Rehling
5f7b9129bc Merge branch 'master' into develop
Conflicts:
	tests/runtests.bat
2015-09-12 22:47:33 +02:00
Enno Rehling
a027139057 remove global variable verbosity in favor of static in main.c (use log_* functions everywhere) 2015-09-12 20:58:09 +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
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
9312b44f8e move seen_region logic to a separate seen.[hc] module for testing.
currently failing test:

  1) Failure (tests.report.test_lighthouse):
  ./scripts/tests/common.lua:1051: true expected but was false
2015-09-08 09:56:56 +02:00
Enno Rehling
70aff6f567 Merge pull request #283 from ennorehling/cursed-faction
The revenge of Igjarjuk
2015-08-31 07:58:16 +02:00
Enno Rehling
8c860811e2 Summon Igjarjuk only at the start of a battle, not after. 2015-08-30 23:15:04 +02:00
Enno Rehling
7bb882b15b add a spell for igjarjuk (WIP) 2015-08-30 10:57:08 +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
9586d970e8 fix bad castorder creation for combat spell (some unions are the WORST) 2015-08-22 18:51:10 +02:00
Enno Rehling
dd667aa752 cursed factions get to fight a wolfhowl if they attack (WIP) 2015-08-22 17:56:36 +02:00
Enno Rehling
4c32fe19ee eliminate some dead code that was still marked with TODO. 2015-08-21 10:54:09 +02:00
Enno Rehling
c8cbeea660 STRLCPY macro redefinition and fixes for gcc. work for monkeys. 2015-08-17 22:48:21 +02:00
Enno Rehling
b999e3c963 replace strlcpy/wrptr pairs with new STRLCPY macro. 2015-08-17 19:37:02 +02:00
Enno Rehling
c0a760a645 Merge branch 'develop' of github.com:eressea/server into develop 2015-08-06 19:54:51 +02:00
Enno Rehling
6c8300a47e Merge branch 'feature/bug-1588-magicpower-limit' of https://github.com/ennorehling/eressea into ennorehling-feature/bug-1588-magicpower-limit
Conflicts:
	scripts/tests/e2/init.lua
	src/battle.c
	src/bind_unit.c
	src/kernel/spellid.h
	src/magic.c
	src/magic.h
2015-08-06 19:53:24 +02:00
Enno Rehling
4d061d8592 repair update_long_order and K_DESTROY handling according to discussion in https://bugs.eressea.de/view.php?id=2080 2015-08-04 22:47:55 +02:00
Enno Rehling
0a57933e30 minor optimizations, error checking (static analysis) 2015-07-12 14:17:27 +02:00
Enno Rehling
758f4a592d minor optimizations, error checking (static analysis) 2015-07-12 14:10:33 +02:00
Enno Rehling
1e9e3a3b6a Bug 1596: Schwer verwundete fliehen auch nach der Taktik-Runde.
https://bugs.eressea.de/view.php?id=1596
remove an unnecessary (and wrong) check.
2015-07-04 17:54:00 +02:00
Enno Rehling
bfd93c68b2 remove bogus assert 2015-07-02 15:44:21 +02:00