Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								6ab270d129 
								
							
								 
							
						 
						
							
							
								
								Retrieve unit noble position info, and use it in getProfessionName.  
							
							 
							
							
							
						 
						
							2012-04-26 12:03:56 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								763a301b4f 
								
							
								 
							
						 
						
							
							
								
								Add a few more lua api functions, documentation, and unit sort orders.  
							
							 
							
							... 
							
							
							
							Units::getProfessionName appears to work correctly for
everything except nobles. 
							
						 
						
							2012-04-23 21:30:53 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								125cd6622a 
								
							
								 
							
						 
						
							
							
								
								Support sorting units in many more ui contexts.  
							
							 
							
							
							
						 
						
							2012-04-22 19:22:00 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								3282ac3db2 
								
							
								 
							
						 
						
							
							
								
								Add a hotkey command that sorts units in lists using lua comparators.  
							
							 
							
							
							
						 
						
							2012-04-21 15:43:52 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								0a6982f404 
								
							
								 
							
						 
						
							
							
								
								Enable warnings correctly on linux and fix a lot of them.  
							
							 
							
							
							
						 
						
							2012-04-20 13:30:37 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								d95cc3435f 
								
							
								 
							
						 
						
							
							
								
								Fix lua wrapper sizeof for static arrays.  
							
							 
							
							... 
							
							
							
							Since it actually depends on the element type, it is more tricky. 
							
						 
						
							2012-04-20 13:04:03 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								0b32d374db 
								
							
								 
							
						 
						
							
							
								
								Implement SOIL/STONE substitution logic, and add compat in mapexport.  
							
							 
							
							
							
						 
						
							2012-04-19 23:02:30 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								4b87f1bcac 
								
							
								 
							
						 
						
							
							
								
								Refactor MapCache: make it parse everything that is known re tiles & mats.  
							
							 
							
							
							
						 
						
							2012-04-19 19:17:07 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								f655a0986d 
								
							
								 
							
						 
						
							
							
								
								Sync to changes in the data structure definitions.  
							
							 
							
							
							
						 
						
							2012-04-19 11:03:29 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								3beb2ebf25 
								
							
								 
							
						 
						
							
							
								
								Export the onStateChange event to core lua context & add some docs.  
							
							 
							
							
							
						 
						
							2012-04-17 11:45:09 +04:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								7946cafc86 
								
							
								 
							
						 
						
							
							
								
								Merge  https://github.com/jaxad0127/dfhack  
							
							 
							
							
							
						 
						
							2012-04-16 22:37:07 +02:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								9c25351281 
								
							
								 
							
						 
						
							
							
								
								Add a template to make using lua_pcallk a bit more convenient.  
							
							 
							
							
							
						 
						
							2012-04-16 18:01:21 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								3e4863bc80 
								
							
								 
							
						 
						
							
							
								
								Integrate coroutines with table-based error handling.  
							
							 
							
							... 
							
							
							
							Properly attach stack traces to errors passing the resume boundary.
Replaces coroutine.resume and coroutine.wrap with appropriately
modified versions, and adds a Lua::SafeResume function for C++. 
							
						 
						
							2012-04-16 14:45:04 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								48e4717dd2 
								
							
								 
							
						 
						
							
							
								
								Try working around some msvc problems.  
							
							 
							
							
							
						 
						
							2012-04-16 10:59:55 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								a1756a864c 
								
							
								 
							
						 
						
							
							
								
								Implement a way to do prompts from core context.  
							
							 
							
							... 
							
							
							
							The trick obviously is doing it without forcing DF to wait suspended.
Fortunately, lua has built-in coroutine support, so the interactive
prompt can simply yield and rely on the external loop to do the job.
To use this however the REPL had to be replaced with lua code. 
							
						 
						
							2012-04-15 21:50:22 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								14709e5d45 
								
							
								 
							
						 
						
							
							
								
								Add an official core lua context, and allow plugins to send events to it.  
							
							 
							
							... 
							
							
							
							- This context requires core suspend lock and asserts it in a few places.
- Special 'event' objects are introduced. They can be invoked as
  functions, in which case they iterate all their fields and call
  them as functions. Errors are printed and consumed.
- When a plugin is opened by the core context, events registered in
  a special array are linked to it. The system is organized so as to
  avoid even trying to pass the event to lua if the module isn't loaded. 
							
						 
						
							2012-04-15 19:09:25 +04:00  
						
					 
				
					
						
							
							
								 
								Jared Adams
							
						 
						
							 
							
							
							
								
							
								f3c7a685f5 
								
							
								 
							
						 
						
							
							
								
								Make tiletypes more useful  
							
							 
							
							... 
							
							
							
							* Paint, filter, and brush state is now saved between calls.
 * Added 'all' paint option to set material, shape, special, and variant at
      the same time.
 * Added tiletypes-here (like liquids here, except is uses the saved brush
      settings)
 * Added tiletypes-here-point (like liquids here, always only the tile under
      the cursor)
 * Added tiletypes-command: runs tiletypes commands seperated by ';' tokens
      (affects saved state)
 * Make the internal workings match liquids a bit more
 * Give brush objects a descriptor string
 * Make Core::cheap_tokenise available 
							
						 
						
							2012-04-15 08:40:19 -06:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								cb27a1d839 
								
							
								 
							
						 
						
							
							
								
								Fix typo in the 1MB constant.  
							
							 
							
							
							
						 
						
							2012-04-15 11:31:05 +04:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								fc38371b29 
								
							
								 
							
						 
						
							
							
								
								Clean up some chaos in old code.  
							
							 
							
							
							
						 
						
							2012-04-15 01:15:15 +02:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								cb49c92b99 
								
							
								 
							
						 
						
							
							
								
								Allow plugins to export functions to lua with safe reload support.  
							
							 
							
							... 
							
							
							
							- To ensure reload safety functions have to be wrapped. Every call
  checks the loaded state and locks a mutex in Plugin. If the plugin
  is unloaded, calling its functions throws a lua error. Therefore,
  plugins may not create closures or export yieldable functions.
- The set of function argument and return types supported by
  LuaWrapper is severely limited when compared to being compiled
  inside the main library.
  Currently supported types: numbers, bool, std::string, df::foo,
  df::foo*, std::vector<bool>, std::vector<df::foo*>.
- To facilitate postponing initialization until after all plugins
  have been loaded, the core sends a SC_CORE_INITIALIZED event.
- As an example, the burrows plugin now exports its functions. 
							
						 
						
							2012-04-14 19:44:07 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								7a34a89f53 
								
							
								 
							
						 
						
							
							
								
								Add burrow subcommands to modify burrow unit and tile sets.  
							
							 
							
							
							
						 
						
							2012-04-14 14:12:59 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								2f54a48e63 
								
							
								 
							
						 
						
							
							
								
								Add a plugin that makes selected burrows auto-grow on digging.  
							
							 
							
							
							
						 
						
							2012-04-13 21:41:42 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								37cfb1fdcd 
								
							
								 
							
						 
						
							
							
								
								Add unit position and container api.  
							
							 
							
							
							
						 
						
							2012-04-13 16:10:19 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								2d8611a480 
								
							
								 
							
						 
						
							
							
								
								Add core api for moving items between ground and containers.  
							
							 
							
							
							
						 
						
							2012-04-12 18:37:27 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								38a8c43a25 
								
							
								 
							
						 
						
							
							
								
								Reverse-rebase the vtable pointers printed to stderr.log.  
							
							 
							
							
							
						 
						
							2012-04-12 11:21:25 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								583ccdcc0c 
								
							
								 
							
						 
						
							
							
								
								Support pre-initializing vtable pointers from symbols.xml  
							
							 
							
							
							
						 
						
							2012-04-12 10:54:53 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								5d5502ae34 
								
							
								 
							
						 
						
							
							
								
								Update the item owner modification api and export it to lua.  
							
							 
							
							
							
						 
						
							2012-04-11 20:10:31 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								0c2b78b96b 
								
							
								 
							
						 
						
							
							
								
								Add api for manipulating burrows to the core.  
							
							 
							
							
							
						 
						
							2012-04-11 19:42:05 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								c7b922250b 
								
							
								 
							
						 
						
							
							
								
								More maps api refactoring and renaming.  
							
							 
							
							... 
							
							
							
							getBlockAbs is a very confusing name; getTileBlock is better. 
							
						 
						
							2012-04-11 12:01:27 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								59ddbfacb7 
								
							
								 
							
						 
						
							
							
								
								Implement item occupancy tracking in MapCache.  
							
							 
							
							
							
						 
						
							2012-04-10 20:19:41 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								b15d2da819 
								
							
								 
							
						 
						
							
							
								
								Get rid of some obsolete api functions, and restructure MapCache.  
							
							 
							
							
							
						 
						
							2012-04-10 18:21:19 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								93c795cfc3 
								
							
								 
							
						 
						
							
							
								
								Job module api tweaks: add a namespace to match others and some funcs.  
							
							 
							
							
							
						 
						
							2012-04-10 11:43:36 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								45ae2ed67f 
								
							
								 
							
						 
						
							
							
								
								Pull a few utility functions into the core and publish to lua.  
							
							 
							
							
							
						 
						
							2012-04-07 19:08:30 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								0daafef690 
								
							
								 
							
						 
						
							
							
								
								Wrap MaterialInfo for lua.  
							
							 
							
							
							
						 
						
							2012-04-06 19:56:19 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								903e9ee716 
								
							
								 
							
						 
						
							
							
								
								Export a few more functions to lua.  
							
							 
							
							
							
						 
						
							2012-04-06 11:21:28 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								9eed9f0d24 
								
							
								 
							
						 
						
							
							
								
								Wrap a few utility functions defined on the c++ side for lua.  
							
							 
							
							
							
						 
						
							2012-04-05 19:55:59 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								28a741082f 
								
							
								 
							
						 
						
							
							
								
								Encode & decode names in utf-8 for transfer in remote messages.  
							
							 
							
							... 
							
							
							
							That's the encoding required by the protobuf spec. 
							
						 
						
							2012-04-05 18:10:16 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								3afed43cdb 
								
							
								 
							
						 
						
							
							
								
								Experimental: try wrapping a dfhack api function.  
							
							 
							
							
							
						 
						
							2012-04-05 11:59:39 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								d1b27418a6 
								
							
								 
							
						 
						
							
							
								
								Add a World::GetPersistentData version that auto-adds if not found.  
							
							 
							
							
							
						 
						
							2012-04-05 11:32:23 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								2d4af4ac3e 
								
							
								 
							
						 
						
							
							
								
								A few more utility functions for lua.  
							
							 
							
							
							
						 
						
							2012-04-03 20:02:01 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								a8fe0eccb4 
								
							
								 
							
						 
						
							
							
								
								Add functions for checking validity of lua wrapper objects.  
							
							 
							
							
							
						 
						
							2012-04-02 22:02:04 +04:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								2a998a5b8a 
								
							
								 
							
						 
						
							
							
								
								Merge  https://github.com/quietust/dfhack  
							
							 
							
							
							
						 
						
							2012-04-02 13:42:18 +02:00  
						
					 
				
					
						
							
							
								 
								Quietust
							
						 
						
							 
							
							
							
								
							
								06da0f9720 
								
							
								 
							
						 
						
							
							
								
								Fix coord/coord2d division/modulo operators to properly handle negative numbers (fixes some glitches with revflood and possibly other utils)  
							
							 
							
							
							
						 
						
							2012-04-01 19:44:35 -05:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								e3d50b9b04 
								
							
								 
							
						 
						
							
							
								
								Optimize wrapper: use pointers instead of strings as most frequent keys.  
							
							 
							
							
							
						 
						
							2012-04-01 18:34:04 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								a3e526abdb 
								
							
								 
							
						 
						
							
							
								
								Add df.is_instance(a,b) to check if typeof(b) is subtype of typeof(a).  
							
							 
							
							... 
							
							
							
							Allows both objects and types as arguments. Also accepts nil and
primitives as b, returning nil. 
							
						 
						
							2012-04-01 17:32:57 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								afe4eba957 
								
							
								 
							
						 
						
							
							
								
								Improve performance of the persistent data api, and wrap it for lua.  
							
							 
							
							... 
							
							
							
							Use an stl table for string keys to avoid linear cost of lookup.
This uncovered a bug in the new luaL_getsubtable function. 
							
						 
						
							2012-04-01 16:43:40 +04:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								7ff728b6fc 
								
							
								 
							
						 
						
							
							
								
								Track world and map changes separately for plugin_onstatechange  
							
							 
							
							
							
						 
						
							2012-04-01 02:56:54 +02:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								4bac6edd79 
								
							
								 
							
						 
						
							
							
								
								Merge  https://github.com/rh73/dfhack  
							
							 
							
							
							
						 
						
							2012-04-01 00:29:00 +02:00  
						
					 
				
					
						
							
							
								 
								Robert Heinrich
							
						 
						
							 
							
							
							
								
							
								39787e9cd5 
								
							
								 
							
						 
						
							
							
								
								Renamed digging commands to uniformly start with 'dig*'(vdig -> digv etc). Added command digl, diglx (dig layerstone instead of veins). Updated readme.rst.  
							
							 
							
							
							
						 
						
							2012-03-31 15:41:55 +02:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								0f41608ed4 
								
							
								 
							
						 
						
							
							
								
								Pull console output support and REPL out of dfusion into core lib.  
							
							 
							
							
							
						 
						
							2012-03-31 15:40:54 +04:00  
						
					 
				
					
						
							
							
								 
								Quietust
							
						 
						
							 
							
							
							
								
							
								07bb51946f 
								
							
								 
							
						 
						
							
							
								
								Fix bug in MapCache - squash veins with the correct priority  
							
							 
							
							
							
						 
						
							2012-03-29 18:59:07 -05:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								ec48405f0a 
								
							
								 
							
						 
						
							
							
								
								Fix mistake: static initialization code cannot access other static objects.  
							
							 
							
							... 
							
							
							
							Specifically, the eid->type() call depends on the order of linking. 
							
						 
						
							2012-03-29 22:56:06 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								85c91c92d8 
								
							
								 
							
						 
						
							
							
								
								Implement __pairs and __ipairs for DF objects.  
							
							 
							
							... 
							
							
							
							Structs enumerate fields in memory order in pairs().
Containers & biftields enumerate int indexes in ipairs, and
string keys in pairs (i.e. using index-enum for arrays). 
							
						 
						
							2012-03-29 14:39:13 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								bc74c5984e 
								
							
								 
							
						 
						
							
							
								
								Implement recursive transfer of values from lua to c++ structures.  
							
							 
							
							... 
							
							
							
							E.g. df.global.cursor = { x = 1, y = 2, z = 3 }. The lua data
must be represented by raw lua tables.
For structs, the entries in the table are assigned to matching fields.
For containers, if a 'resize' field is missing or nil, the table is
treated like 1-based lua array, and the container is resized to match
its # length. Otherwise, the field must be either an explicit number,
true or false. If it is true, the size is selected by the highest index
in the table. After that, entries are copied using 0-based indices.
For pointers, the table must match the target object. If the pointer
is null, the object is auto-allocated; this can be controlled using
the 'new' field, the value of which will be passed to df.new(). 
							
						 
						
							2012-03-27 21:47:52 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								157f23be5c 
								
							
								 
							
						 
						
							
							
								
								Fix warnings.  
							
							 
							
							
							
						 
						
							2012-03-26 12:42:05 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								00a5bfcf3e 
								
							
								 
							
						 
						
							
							
								
								Work around a msvc issue with spurious specialization ambiguity errors.  
							
							 
							
							
							
						 
						
							2012-03-26 10:46:51 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								d0090e9551 
								
							
								 
							
						 
						
							
							
								
								Fix lua wrapper: create one function identity instance per method.  
							
							 
							
							... 
							
							
							
							Otherwise all methods of the same prototype are lumped into one. 
							
						 
						
							2012-03-25 21:12:20 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								1d81cb56ba 
								
							
								 
							
						 
						
							
							
								
								Make enum attributes accessible through the lua wrapper.  
							
							 
							
							... 
							
							
							
							TODO: make them completely read-only. 
							
						 
						
							2012-03-25 19:12:59 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								0412aaebe4 
								
							
								 
							
						 
						
							
							
								
								Add a delete() method to the objects in the lua wrapper.  
							
							 
							
							
							
						 
						
							2012-03-25 15:48:18 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								7209e4d3f2 
								
							
								 
							
						 
						
							
							
								
								Attach static methods to the type objects in the lua wrapper.  
							
							 
							
							
							
						 
						
							2012-03-25 15:20:58 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								8d345be6e7 
								
							
								 
							
						 
						
							
							
								
								Expose virtual methods in the lua wrapper.  
							
							 
							
							
							
						 
						
							2012-03-25 14:06:05 +04:00  
						
					 
				
					
						
							
							
								 
								Quietust
							
						 
						
							 
							
							
							
								
							
								947adeac83 
								
							
								 
							
						 
						
							
							
								
								Silence warning 4482  
							
							 
							
							
							
						 
						
							2012-03-24 18:18:29 -05:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								517b2ffadb 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'peterix/master'  
							
							 
							
							
							
						 
						
							2012-03-24 16:30:07 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								0c7fc233bd 
								
							
								 
							
						 
						
							
							
								
								Support resize/erase/insert for containers, and allow any index in BitArray.  
							
							 
							
							
							
						 
						
							2012-03-24 16:28:53 +04:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								8a847dbaba 
								
							
								 
							
						 
						
							
							
								
								Tweaks and cleanups  
							
							 
							
							... 
							
							
							
							Removed t_virtual.
Made lua use C++ compiler
Removed many silly exception types from Error.h and renamed the rest.
Removed Brush classes from tiletypes plugin. 
							
						 
						
							2012-03-24 12:13:51 +01:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								d865d54a90 
								
							
								 
							
						 
						
							
							
								
								Split LuaWrapper.cpp into two files.  
							
							 
							
							
							
						 
						
							2012-03-24 13:25:10 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								053bfe345c 
								
							
								 
							
						 
						
							
							
								
								Implement allocation and copy for c++ objects in the lua wrapper.  
							
							 
							
							
							
						 
						
							2012-03-24 12:43:53 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								2b1f8aa2bb 
								
							
								 
							
						 
						
							
							
								
								Add a _field method that returns refs to struct and container items.  
							
							 
							
							... 
							
							
							
							Hack: allocate ad-hoc pointer identities as full lua userdata. 
							
						 
						
							2012-03-23 12:55:29 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								ccc8fac166 
								
							
								 
							
						 
						
							
							
								
								Get rid of the write mode field table in metamethods.  
							
							 
							
							... 
							
							
							
							Two separate tables can be confusing, e.g. if a builtin field
overrides a writable custom one only in the read table. 
							
						 
						
							2012-03-23 10:56:29 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								ead28db451 
								
							
								 
							
						 
						
							
							
								
								Remove the return type from lua_read, because it always returns 1.  
							
							 
							
							
							
						 
						
							2012-03-23 09:38:49 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								27824642d9 
								
							
								 
							
						 
						
							
							
								
								Minor refactoring of container indexing and object allocation.  
							
							 
							
							
							
						 
						
							2012-03-22 10:56:32 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								ad10303cec 
								
							
								 
							
						 
						
							
							
								
								Implement bitfields and add a _kind metadata field to types and objects.  
							
							 
							
							
							
						 
						
							2012-03-21 20:04:37 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								9b78fffe92 
								
							
								 
							
						 
						
							
							
								
								Support containers in the lua wrapper.  
							
							 
							
							
							
						 
						
							2012-03-21 13:26:53 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								73e138c9fd 
								
							
								 
							
						 
						
							
							
								
								Support ordinary struct and class fields.  
							
							 
							
							
							
						 
						
							2012-03-20 21:34:27 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								6c661bcaa9 
								
							
								 
							
						 
						
							
							
								
								Add support for primitive type fields in lua wrapper.  
							
							 
							
							
							
						 
						
							2012-03-20 13:56:29 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								dbbd9acfad 
								
							
								 
							
						 
						
							
							
								
								Export the type tree with enum keys to lua.  
							
							 
							
							
							
						 
						
							2012-03-19 20:12:27 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								296d3a0af3 
								
							
								 
							
						 
						
							
							
								
								Skeleton type metadata for future use in lua bindings.  
							
							 
							
							
							
						 
						
							2012-03-19 16:59:11 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								d4626f9751 
								
							
								 
							
						 
						
							
							
								
								Add unit professions and filtering on status.  
							
							 
							
							
							
						 
						
							2012-03-18 15:35:38 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								e33414fa69 
								
							
								 
							
						 
						
							
							
								
								Export unit curse, squad, death and burrow info.  
							
							 
							
							
							
						 
						
							2012-03-18 13:52:39 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								b9ecd03fe2 
								
							
								 
							
						 
						
							
							
								
								Make the server suspend the core around calls unless disabled.  
							
							 
							
							... 
							
							
							
							I expect the majority of methods will have to suspend the core
first thing anyway, so this will reduce typing and bugs.
Also get rid of the "me->" ugliness by splitting threadFn. 
							
						 
						
							2012-03-18 11:04:15 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								aa63493bb8 
								
							
								 
							
						 
						
							
							
								
								Add a ListSquads request.  
							
							 
							
							
							
						 
						
							2012-03-17 20:04:15 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								368b92f81f 
								
							
								 
							
						 
						
							
							
								
								Add a RPC call to retrieve unit info.  
							
							 
							
							... 
							
							
							
							For performance reasons, material flag arrays are changed to use ints,
with enum item name mappings retrievable via a different RPC call. 
							
						 
						
							2012-03-17 17:41:56 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								15ccfbb086 
								
							
								 
							
						 
						
							
							
								
								Add a ListMaterials remote call for bulk download of basic material info.  
							
							 
							
							
							
						 
						
							2012-03-17 15:36:42 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								58eb199036 
								
							
								 
							
						 
						
							
							
								
								Add many new template functions for enums & bitfields.  
							
							 
							
							... 
							
							
							
							An incompatible change: ENUM_KEY_STR returns std::string now.
The old behavior is available via enum_item_key_str function. 
							
						 
						
							2012-03-17 12:52:22 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								14d6a62e1d 
								
							
								 
							
						 
						
							
							
								
								Move CoreService to a separate file.  
							
							 
							
							
							
						 
						
							2012-03-17 12:09:30 +04:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								3168a2ef62 
								
							
								 
							
						 
						
							
							
								
								Add a tiletype function to get basic shapes from shapes. Track modules.  
							
							 
							
							
							
						 
						
							2012-03-16 20:41:07 +01:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								976fa18d72 
								
							
								 
							
						 
						
							
							
								
								A number of interface tweaks in RemoteClient.  
							
							 
							
							... 
							
							
							
							- Associate a default output stream with the whole connection.
  If not explicitly specified in the constructor, uses stdout.
- Add methods that use this default stream to RemoteFunction.
- Add easily usable wrappers for CoreSuspend and CoreResume. 
							
						 
						
							2012-03-16 14:11:46 +04:00  
						
					 
				
					
						
							
							
								 
								Quietust
							
						 
						
							 
							
							
							
								
							
								5464564ef6 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://github.com/angavrilov/dfhack  
							
							 
							
							... 
							
							
							
							Conflicts:
	library/xml 
							
						 
						
							2012-03-15 20:12:01 -05:00  
						
					 
				
					
						
							
							
								 
								Quietust
							
						 
						
							 
							
							
							
								
							
								4d66218783 
								
							
								 
							
						 
						
							
							
								
								Update bprobe to print civzone subtypes  
							
							 
							
							
							
						 
						
							2012-03-15 20:09:56 -05:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								c72fb76316 
								
							
								 
							
						 
						
							
							
								
								MSVC fixage for the new socket API  
							
							 
							
							
							
						 
						
							2012-03-15 22:05:33 +01:00  
						
					 
				
					
						
							
							
								 
								Quietust
							
						 
						
							 
							
							
							
								
							
								57a41a0deb 
								
							
								 
							
						 
						
							
							
								
								Fix indentation  
							
							 
							
							
							
						 
						
							2012-03-15 11:50:38 -05:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								f84b1539a8 
								
							
								 
							
						 
						
							
							
								
								Change to the traits representation of enum and bitfield properties.  
							
							 
							
							
							
						 
						
							2012-03-15 20:46:08 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								4eb4811777 
								
							
								 
							
						 
						
							
							
								
								Make the DF suspend lock recursive, and add RPC calls for batch suspend.  
							
							 
							
							... 
							
							
							
							The idea is that if you have to execute many RPC calls, it is
faster to suspend once. The service class takes care to auto-resume
in the destructor in case the client just disappears. 
							
						 
						
							2012-03-15 15:33:19 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								605ee9669a 
								
							
								 
							
						 
						
							
							
								
								Plugin-exported functions now actually work.  
							
							 
							
							
							
						 
						
							2012-03-15 14:06:50 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								87f925e72e 
								
							
								 
							
						 
						
							
							
								
								Add support for exporting functions from plugins, with example in rename.  
							
							 
							
							... 
							
							
							
							TODO: test by actually calling them remotely. 
							
						 
						
							2012-03-15 13:01:23 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								e7851f5abd 
								
							
								 
							
						 
						
							
							
								
								Improve support for void RPC functions, dfhack-run, etc.  
							
							 
							
							
							
						 
						
							2012-03-15 11:07:43 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								560e977f05 
								
							
								 
							
						 
						
							
							
								
								Implement trivial RPC interface for dfhack via TCP & protobufs.  
							
							 
							
							... 
							
							
							
							Use it to make an executable capable of calling commands remotely. 
							
						 
						
							2012-03-14 19:57:29 +04:00  
						
					 
				
					
						
							
							
								 
								Alexander Gavrilov
							
						 
						
							 
							
							
							
								
							
								c42e2ff053 
								
							
								 
							
						 
						
							
							
								
								Support crafts and add a couple of options in workflow.  
							
							 
							
							
							
						 
						
							2012-03-14 12:09:02 +04:00  
						
					 
				
					
						
							
							
								 
								Quietust
							
						 
						
							 
							
							
							
								
							
								a4ce1fff13 
								
							
								 
							
						 
						
							
							
								
								Update MapCache to allow decoding tiles underneath ice and constructions, and allow revflood to take those into account  
							
							 
							
							
							
						 
						
							2012-03-13 15:40:38 -05:00  
						
					 
				
					
						
							
							
								 
								Petr Mrázek
							
						 
						
							 
							
							
							
								
							
								75113b715a 
								
							
								 
							
						 
						
							
							
								
								Misc fixes for warnings...  
							
							 
							
							
							
						 
						
							2012-03-10 16:03:11 +01:00