Commit graph

131 commits

Author SHA1 Message Date
Enno Rehling
1b93c14806 Test E2 items in E2 only.
Remove eye of demon (broken item).
2017-02-27 18:50:48 +01:00
Enno Rehling
5ffe60193b move items with tests to items.c 2017-02-27 14:10:12 +01:00
Enno Rehling
60c2f1e807 test the birthday amulet 2017-02-27 14:01:41 +01:00
Enno Rehling
604b574d0f fix potion-use? need more testing 2017-02-27 11:39:55 +01:00
Enno Rehling
715c8569ba hacked the item-use function,
XML needs cleaning up, funpointer needs to die
2017-02-27 09:48:28 +01:00
Enno Rehling
b8ffc20d87 remove item_useonother callbacks (use is fine).
add a test for foolpotion.
2017-02-26 19:54:58 +01:00
Enno Rehling
d4b973fea4 remove resource_limit struct indirection. 2017-02-26 13:55:19 +01:00
Enno Rehling
3a985108a6 change all magic resistance to use fractions. 2017-02-24 20:47:47 +01:00
Enno Rehling
f4dc88c3be strip rawmaterial_type to just the funpointers 2017-02-23 07:53:28 +01:00
Enno Rehling
1498f2e1d7 refactor rawmaterial_type.
still have to decide if we need it at all.
2017-02-22 21:10:22 +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
3ea12be564 BENUTZE Muschel repariert.
at_keys hat jetzt auch zu jedem key ein value, und Funktionen zum Update altee Daten.
2017-02-13 18:48:38 +01:00
Enno Rehling
05b6c1c418 Merge branch 'develop' into c99 2017-01-11 09:30:50 +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
3fb12d8f1e replace snprintf and the like.
you cannot trust _snprintf in MSVC (no zero-termination).
2017-01-07 21:09:39 +01:00
Enno Rehling
ecd74c53f5 More PVS-Studio warnings eliminated. 2016-11-23 19:19:04 +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
d28d3f4690 move read/write_items to item.c.
fix bad memset in attrib.test.c.
2016-11-14 01:00:48 +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
d84ed1f89d move static variable cleanup to kernel_done.
clean up some more.
2016-09-07 21:22:05 +02:00
Enno Rehling
2d1a13a811 death to static caches! 2016-08-30 07:51:05 +01:00
Enno Rehling
fb2b6495e5 promote spell.test error logging to a tests.c API, use it for item.test 2016-08-29 15:19:17 +01:00
Enno Rehling
257ae38749 fix spellbook leak 2016-08-06 15:15:11 +02: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
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
c08235693d Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/item.c
	src/kernel/region.c
	src/laws.c
2016-01-30 23:09:02 +01:00
Enno Rehling
c557778731 fix https://bugs.eressea.de/view.php?id=2183 2016-01-30 23:04:41 +01:00
Enno Rehling
fa55f84b41 remove unnecessary assert that prevents throwing away money on an ocean
github issue #437
https://bugs.eressea.de/view.php?id=2173#c6411
2015-12-16 13:32:02 +01:00
Steffen Mecke
1f4c521ac8 encapsulate r->land->peasants, money, horses, herbs, morale 2015-12-08 17:57:23 +01:00
Enno Rehling
e14cc50252 CID 22522, 22520 Resource leak
helping coverity scan to understand this code
2015-11-09 20:05:55 +01:00
Enno Rehling
f959f43f1e extensive tests for armor calculation 2015-11-03 18:59:09 +01:00
Enno Rehling
c298b7fd74 coverity CID 22501 imroper use of negative value
explicitly use SK_MAGIC instead of a lookup. Faster, easier to reason about.
2015-10-29 11:06:25 +01:00
Enno Rehling
c70d987c09 memory leak: free weapon data 2015-10-13 22:27:43 +02:00
Enno Rehling
59e2c12605 completing the implementation of JSON terrains (WIP).
seeing a crash when trying to allocate a resource for stone in test_json_terrains.
2015-09-11 12:12:53 +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
89bc83c4ab Merge branch 'master' into develop
Conflicts:
	src/bind_region.c
	src/buildno.h
	src/kernel/item.c
2015-08-20 16:58:07 +02:00
Enno Rehling
d69bf18e23 suspect some submodule shenanigans 2015-08-20 16:26:32 +02:00
Enno Rehling
7087c0e0ab Update to latest submodules, fix iniparser and critbit.
I did this before, must have lost it in the merge. Crazy.
2015-07-12 10:38:01 +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
ef4052b0f6 the outcome of a casual static analysis session. 2015-07-06 19:53:09 +02: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
23b8f2bc8a call init_locales after parse_json from Lua, downgrade missing string warnings during that to DEBUG (because it's quite common not to have them).
also, these int to bool conversion warnings made a good point, even if I could not reproduce them.
2015-01-08 20:55:29 +01:00
Enno Rehling
db083389c7 avoid fix_demand hitting an endless loop, kill bad use of static variables. 2014-12-31 20:01:01 +01:00
Enno Rehling
228983202d properly free items at cleanup. 2014-12-30 23:49:50 +01:00
Enno Rehling
cd70b8684d fix escape_string mmeory corruption error.
fix a number of small stuff that happens when loading very old data files (like 572).
2014-12-12 11:28:37 +01:00
Enno Rehling
d7c2fc2b04 remove the R_UNIT resource.
https://bugs.eressea.de/view.php?id=1945
assert that only items can be reserved.
2014-12-11 23:24:00 +01:00
Enno Rehling
01877f5169 cleanup, fix a TODO, eliminate dead code. 2014-12-10 09:39:11 +01:00
Enno Rehling
ce3e9cd7d0 Add missing test coverage for update_guards. Fix the weapon:minskill default. 2014-10-14 18:37:45 +02:00
Enno Rehling
e9abfc0f24 peasant blood should not have ill effects on non-demon units that are empty.
This fixes http://bugs.eressea.de/view.php?id=1981
2014-08-28 20:01:37 +02:00
Enno Rehling
920902f8eb replace resource_type::_name array with a single string. 2014-08-24 23:58:30 +02:00
Enno Rehling
4c00777553 make race::_name a string, not an array of strings. add a test for rc_name. 2014-08-24 23:58:29 +02:00
Enno Rehling
7d17cafdd6 simple tests for build().
cleaning up the code to give it a common setup function.
change the golem code to use flag, not hard-coded race.
unify the golems, make code more readable, kill a block of unused code.
2014-08-24 17:09:32 +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
CTD1
6987c61d97 Bug 0002014: Zwergenausrüstung kann nicht hergestellt werden
Nicht auf die Fraction Rasse checken, (die ist normalerweise Halbling, kann aber auch Zwerg sein wenn mit der Starteinheit eigenartige Dinge gemacht wurden) sondern ob der Hersteller eine Zwergen oder Golem ist.
Da Zwergensachen nur von Zwergen benutzt werden können, stellt es keinen Vorteil für andere Völker da wenn sie über Golems Zwergensachen machen können.
2014-07-15 15:34:42 +02:00
Enno Rehling
7a6b237de0 Merge branch 'master' of github.com:TomBraun/server into TomBraun-master
Conflicts:
	src/kernel/build.c
	src/kernel/item.c
2014-06-29 20:05:44 -07:00
Enno Rehling
12661fc373 new_itemtype has been replaced, delete it. 2014-06-29 19:09:37 -07: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
11a264742b appearance is something only items have, so move it to item_type 2014-06-29 17:35:37 -07:00
Enno Rehling
2a00301949 unused variable 2014-06-29 17:31:33 -07:00
Enno Rehling
5d32896407 rt_register is no longer required, new_resourcetype replaced by rt_get_or_create. 2014-06-29 17:02:45 -07:00
Enno Rehling
95929a99b5 we are about to remove rt_register, but not quite yet. 2014-06-29 16:46:42 -07:00
Enno Rehling
773f3767d3 eliminate cb_items 2014-06-29 16:41:03 -07:00
Enno Rehling
7ee6f0444d reduce use of cb_items, because we want to remove it. 2014-06-29 16:39:53 -07:00
Enno Rehling
7249630e3c Eliminate some Visual Studio warnings, rename itemnames->resourcenames. 2014-06-29 15:41:04 -07:00
TomBraun
d4fdddbc27 Iron golems can now create dwarfen only items
(makes irongolems usable for dwarfs)
2014-06-25 13:24:06 +02:00
TomBraun
0400bcafad Iron and Stone golems now use the corect number of stones / iron.
0001946: Eisengolems stellen keine Waren her
http://bugs.eressea.de/view.php?id=1921
2014-06-25 13:22:42 +02:00
Enno Rehling
92f43a7b51 eliminate it_find calls, replace it_find with something backed by rt_find 2014-06-24 22:44:05 -07:00
Enno Rehling
dc8a8cdd71 rt_find -> get_resourcetype optimization 2014-06-24 08:19:11 -07:00
Enno Rehling
d581737744 optimization: caching resource types in get_resourcetype.
eliminate some it_find calls.
eliminate static variables, they make testing hard.
2014-06-24 07:42:45 -07:00
Enno Rehling
77ee0b7af7 remote the item_t enum for good 2014-06-23 19:17:13 -07:00
Enno Rehling
73da14e305 getting rid of the olditemtypes[] array
reduce use of statics
reduce use of item_t enum
2014-06-23 07:28:10 -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
d503937999 working on making json config understand ships and buildings.
new tests in progress.
remove giveitem.c attribute, the name clashed with a trigger,
and it was only part of an arena that is gone from the game, I think.
2014-06-12 22:14:07 -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
7358c48580 removing some naming conflicts that hapen when trying to re-enable amalgamation builds. 2014-04-11 19:41:17 -07:00
Enno Rehling
0ae8737062 rename MIN/MAX to _min/_max 2014-03-16 05:03:17 +01: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/kernel/item.c (Browse further)