Alexander Gavrilov
415cdad489
Make using new for allocating DF objects with vtables a compile-time error.
...
When done from plugins, it doesn't correctly initialize the vtable
because of some weird things MSVC does, so the only safe way is to
use df::allocate<df::foo>(). For consistency, it is also enforced
for code in the main library. It reveals the issue in the digging
invaders plugin, first found by warmist.
This change is linked to a modification in df-structures codegen.
2014-04-30 21:28:02 +04:00
expwnent
6805656dd0
Added enable/disable functionality to diggingInvaders.
2013-10-19 21:42:24 -04:00
expwnent
f459bfc4f1
diggingInvaders: added per-creature dig times and differentiated between smooth and rough constructions.
2013-06-15 23:04:15 -04:00
expwnent
776d088eb9
diggingInvaders: tweaks.
2013-06-11 07:25:07 -04:00
expwnent
f557376c3a
diggingInvaders: make invaders dig slowly, in a configurable way.
2013-06-11 05:14:56 -04:00
expwnent
0378bbb896
diggingInvaders: proper user interface.
2013-06-10 01:58:27 -04:00
expwnent
07a4839d8b
diggingInvaders: made it easy to flip between int64 and int32 for distance cost. It did not make a significant difference in performance when I timed it.
2013-06-09 23:26:07 -04:00
expwnent
4e715ca44b
diggingInvaders: made it only do a little work each frame instead of all at once with the pathfinding.
2013-06-09 23:07:51 -04:00
expwnent
c4533dcb0c
diggingInvaders: only path from one guy, and other minor tweaks.
2013-06-09 17:52:13 -04:00
expwnent
d26b11eb40
diggingInvaders: cleaned up pick creation.
2013-06-09 17:20:23 -04:00
expwnent
638affee06
diggingInvaders: tweaked pick creation. Don't recreate if they already have one.
2013-06-09 16:23:41 -04:00
expwnent
08114cf574
diggingInvaders: more fixes. Still a few issues with ramps probably.
2013-05-31 20:39:43 -04:00
expwnent
2b7dfca21e
diggingInvaders: cleanup, tweaks. Works for simple situations.
2013-05-31 19:27:22 -04:00
expwnent
f8261348ff
Merge branch 'master' into diggingInvaders
...
Also make edgeCost.cpp compile because I stopped midsentence for some reason.
Conflicts:
library/modules/Maps.cpp
2013-05-31 16:28:05 -04:00
expwnent
3c7ca2ad71
Digging invaders: buildings can only be destroyed orthogonally, made path cost deal with hatches and raised bridges, but did NOT yet make job assignment deal with them.
2013-01-05 11:06:46 -05:00
expwnent
a7d6cf5157
Digging invaders: fixed a few problems involving digging and stairs, added a way to debug path cost, added a way to set the cost of each type of invasion job, made invaders only pathfind to one local instead of all of them.
2013-01-04 21:02:09 -05:00
expwnent
fd05d30733
Digging invaders: improved edge cost evaluation.
2013-01-04 18:11:38 -05:00
expwnent
2ca943ae20
Digging invaders: comment out debug print statements.
2013-01-04 00:43:39 -05:00
expwnent
038cc91fcd
Digging invaders: fixed a bug where it would reassign long-lasting jobs, making them take forever. Also added a check for the case that invaders cannot dig to any locals.
2013-01-04 00:35:47 -05:00
expwnent
b6f0ae5b14
Digging invaders: keep track of who's working on the job, and check periodically to see if they quit.
2013-01-04 00:08:54 -05:00
expwnent
47eca42f68
Digging invaders: made it possible to customize which races can dig.
2013-01-03 23:18:40 -05:00
expwnent
0fecdfadb1
Digging Invaders: when assigning a job, get rid of old one. Handle loading and unloading. Optimizations for when invaders can already reach someone.
2013-01-03 22:46:17 -05:00
expwnent
ed6dcf9589
DiggingInvaders: made invaders dig automatically, instead of on request.
2013-01-03 21:25:50 -05:00
expwnent
b82d6940b6
Digging invaders: started on making invaders keep digging until done.
2013-01-03 18:45:53 -05:00
expwnent
1d6dec54c7
Digging Invaders: reorganized the files to make it easier to work with.
2013-01-03 18:14:16 -05:00
expwnent
34d9785ce5
Digging Invaders: minor changes.
2013-01-03 14:38:05 -05:00
expwnent
b62e50f2e1
DiggingInvaders: get rid of the framework for assigning multiple dig/deconstruct/etc operations at the same time.
2013-01-03 14:16:10 -05:00
expwnent
0b68e66dc9
DiggingInvaders: fixed a problem with deconstructing hatches.
2013-01-03 13:32:50 -05:00
expwnent
f60e44c395
DiggingInvaders: minor changes.
2013-01-03 13:11:11 -05:00
expwnent
7586e62374
Digging Invaders: fixed a problem with removing constructions.
2013-01-02 22:35:05 -05:00
expwnent
5201870356
Digging Invaders: get rid of debug prints.
2013-01-02 22:13:23 -05:00
expwnent
ae43865489
Digging Invaders: actually seems to basically work!
2013-01-02 22:11:05 -05:00
expwnent
144e0b4dcb
Digging Invaders: merged eventManager and recent.
2013-01-02 11:26:30 -05:00
expwnent
46b9148277
Digging invaders: it still doesn't work, but now it's a lot simpler.
2012-12-20 00:35:45 -05:00
expwnent
9cb3f19630
Digging invaders: Minor changes. Still unstable.
2012-12-19 20:44:22 -05:00
expwnent
fcbc5d1cb0
Digging invaders. Temp commit. Unstable.
2012-12-19 18:46:46 -05:00
expwnent
a09764e77b
Digging Invaders: more optimizations.
2012-12-18 15:22:21 -05:00
expwnent
110a9a5579
Digging Invaders: a bit faster.
2012-12-17 20:44:35 -05:00
expwnent
937769874d
Digging Invaders: kind of works, but WAAAAAY too slow.
2012-12-17 20:12:11 -05:00
expwnent
957a4da474
Minor changes.
2012-12-17 18:05:57 -05:00
expwnent
ef80dbacde
More fiddling. Almost kind of works.
2012-12-17 17:36:35 -05:00
expwnent
76fcf1c335
Digging invaders: multi-dimensional edge cost: always prefer walking over digging, no matter how far.
2012-12-17 14:22:45 -05:00
expwnent
94673e447d
diggingInvaders: reimplemented path-based digging. Works kind of ok.
2012-12-17 13:37:02 -05:00
expwnent
ed1766936b
diggingInvaders: sadly, it seems that minimum spanning tree is a terrible heuristic for vertex Steiner tree in this case.
2012-12-17 00:54:39 -05:00
expwnent
bf25ea5129
diggingInvaders: fixed a major bug with edge sorting.
2012-12-17 00:17:07 -05:00
expwnent
a61cbc661b
diggingInvaders: starting a rewrite. Unstable
2012-12-16 21:44:23 -05:00
expwnent
9aa95ddca8
diggingInvaders: int -> int32_t
2012-12-16 17:06:46 -05:00
expwnent
2760484c37
diggingInvaders: cleanup.
2012-12-16 16:53:02 -05:00
expwnent
45efcfc763
Warning: does not work. Temp commit!
2012-08-24 11:40:51 -04:00
expwnent
cb24f1e53a
Converted tabs to spaces.
2012-08-23 22:25:25 -04:00