Commit Graph

476 Commits (65ed483d69d362f17bff7c0397c268b99b52373a)

Author SHA1 Message Date
Giel van Schijndel b0c5590f6c Semantical error: call the function instead of evaluating it
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7219 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 20:52:18 +02:00
Giel van Schijndel 05d9661d7a * Do not change the function _swap_endianness on the fly to prevent it from being used in a 2.1 lobby
- Change this because altering _swap_endianness on the fly isn't threadsafe
  - Instead revert to code duplication (for now)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7218 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-28 00:46:45 +02:00
Giel van Schijndel a5aa693b95 Split out the different lobby protocol versions in a class per version:
* This removes the need to specify what type of protocol (e.g. BinaryProtocol vs. JsonProtocol) should be used
  - Instead only the (Warzone) version needs to be specified, the constructor function (Protocol()) will figure out the correct protocol class to use

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7217 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-28 00:46:45 +02:00
Giel van Schijndel b64911e732 * For reading use a context managed "readable" as well
- However, unlike "writeable" don't return a StringIO object for strings

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7216 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-28 00:46:45 +02:00
Giel van Schijndel 832f8728d2 Use the Protocol class to find out what port to listen on, instead of manually configuring
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7215 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-28 00:46:45 +02:00
Giel van Schijndel cdc8412bd7 Convert wztest.py to use the latest lobby code for testing the lobby
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7212 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 22:46:38 +02:00
Giel van Schijndel eebb624276 * Change the lobby IRC bot to use the same code as the lobby server for protocol handling and game representation
* Move the "list" function (to retrieve the lobby's list of games) to the Protocol class

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7211 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 22:46:38 +02:00
Giel van Schijndel 32417e1bb9 * Allow Protocol's encode and decode functions to work directly on * sockets and file objects (in addition to strings)
- This removes the requirement for the socket handler to be aware of the size of a single game
  - I.e. this allows variable sized games without another API change
 * Read and write Protocol data directly from and to the sockets, decoding and encoding on the fly

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7209 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:41 +02:00
Giel van Schijndel b68ab0bb6d Log tracebacks when exceptions occur and aren't handled
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7208 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:41 +02:00
Giel van Schijndel d1d787c8d6 * Make the game server's port version dependant
* Move checking of game's vitality to from the Game class to the Protocol class
  - Do this because checking of games is inherently protcol dependant

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7200 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:40 +02:00
Giel van Schijndel 4b74fd0cc5 Don't deal with requestHandler stuff in the Game class
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7199 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:40 +02:00
Giel van Schijndel 57aefa7a85 * Use unpack_from, instead of unpack, if multiple items are contained in the same buffer
* Use xrange() instead of range() when looping over its items
  - xrange() is faster and more lightweight as iterable

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7198 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:40 +02:00
Giel van Schijndel 227ecdb1f8 Lobby protocol: Workaround the fact that the 2.0.x versions don't perform endian swapping
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7197 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:40 +02:00
Giel van Schijndel 322c10e7a4 * Use struct.Struct objects instead of free functions from the "struct" module to perform encoding and decoding
* Perform version range comparisons like this: lowest_version <= version < one_higher_than_largest_version

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7196 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:39 +02:00
Giel van Schijndel 9ff472fad5 Fix a syntax and semantical error:
* Use the % operator for formatting strings
 * Use struct.unpack for decoding a struct (instead of struct.pack)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7195 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:39 +02:00
Giel van Schijndel 8bfd2acef1 Use a single function to perform the encoding as a C string
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7194 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-27 21:30:39 +02:00
Giel van Schijndel cffa0b65af Make BinaryProtocol more flexible to allow it to work with 2.0+ as well as the 2.2 lobby protocol (depending on what parameter was used during construction)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7128 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 16:03:19 +02:00
Giel van Schijndel 7f5bc28bd0 Move the Game, Protocol classes to files of their own (to allow them to be reused by the IRC bot, instead of duplicating code)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7127 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 16:03:19 +02:00
Giel van Schijndel f95bcd605b Move the IRC bot to the same directory as the lobby server
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7126 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:35 +02:00
Giel van Schijndel 1447766635 Whatever way we leave the bot's mainloop, make sure to terminate the lobby checking thread
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7125 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:35 +02:00
Giel van Schijndel 61d0fd23d0 Don't use Python 2.6 specific syntax (r7123)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7124 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:35 +02:00
Giel van Schijndel 2dc1bcfd12 * Catch and handle all socket errors, not just timeouts
- Don't just report failure to the user that request a lobby listing, report the error message (asociated with the exception) as well


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7123 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:35 +02:00
Giel van Schijndel e91765af19 * Notify all served IRC channels when shutting down
* Notify all served IRC channels when encoutering an unhandled exception (and shutting down as a result)


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7118 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:34 +02:00
Giel van Schijndel fef445101e * Rename the "help" command to "about"
* Change "commands" to dynamically look through the commands that are available and list them


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7117 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:34 +02:00
Giel van Schijndel a72e7d5288 * Move construction of BotCommands to its own class (__init__)
* Only attempt to call attributes of BotCommands if they're functions (rejecting __.*__ functions)
 * Return from readAndHandle as soon as we've handled a message


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7116 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:34 +02:00
Giel van Schijndel c9113f9730 * Pass the IRC write function as a lambda to BotCommands' functions
* When a user joins a served channel, send him a notice of the games currently present ("list" output)


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7113 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:33 +02:00
Giel van Schijndel b07a743f60 Properly store the gameFormat struct description in the class
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7112 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:33 +02:00
Giel van Schijndel d5cdfd7adb * Add channel operator support
* Add invite support
  - Invite users to all serviced channels when they make a request outside of a serviced channel (becmoing operator only for as long as necessary)


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7106 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:33 +02:00
Giel van Schijndel 6461dd0208 * Send replies only to the channel from which the request came
* Send general messages to all served channels
 * Prefix all replies with the nickname of the user who made the request


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7105 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:33 +02:00
Giel van Schijndel bbfe5e2abd Don't call the IRC command handling function in the try block (we don't want to protect against errors inside the IRC command function)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7104 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:33 +02:00
Giel van Schijndel f1b178e4b0 Add multi-channel support to wzlobbybot, one list of channels in which to serve requests, another just to be present in.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7103 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:32 +02:00
Giel van Schijndel e00035b75a Add the ability for wzlobbybot to identify against NickServ
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7102 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:32 +02:00
Giel van Schijndel 7261e3392a Update the lobbybot such that it can work both with 2.0,2.1 and 2.2 lobbies, defaulting to 2.1 (as that's the current release)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7101 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:32 +02:00
Giel van Schijndel d001fdbafc Notify the user when communication with the lobby fails
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7100 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:32 +02:00
Giel van Schijndel 88ddefb584 * Move the setup code of the lobby bot into a class of its own (Bot)
* Change to an event driven model for handling IRC commands
  - Add all IRC commands to a single class (BotCommands)
  - In class irc_connection.readAndHandle() call the corresponding function in BotCommands for the received IRC command


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7099 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-22 13:18:32 +02:00
Gerard Krol 2786cfc1e9 Add the --squash flag to gitsvngateway. With --squash it will not try to unravel any merges but instead commit it as one change. 2009-04-20 19:53:13 +02:00
Giel van Schijndel 5694b99b90 Set a timeout on the lobby client to prevent blocking on connections to the lobby
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7095 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:24 +02:00
Giel van Schijndel 846a21b8a7 Make sure that the change_notifier thread gets terminated when the user hits CTRL-C
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7094 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:24 +02:00
Giel van Schijndel f8f33d5424 * Interpolate __author__ in the "info" (about-style) message
* Use functions to join channels and send messages
 * Notify a user requesting for services from the bot in the wrong channel


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7093 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:24 +02:00
Giel van Schijndel ead99ec654 Properly align the "private" property
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7090 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:23 +02:00
Giel van Schijndel 8d5b42fe96 Lets consistently use TABs for indentation (instead of mixing with spaces)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7089 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:23 +02:00
Giel van Schijndel e399b2562c Split out the protocol from the Game class into a separate BinaryProtocol(Protocol) class
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7088 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:23 +02:00
Giel van Schijndel 4aa8982d0a * Save Game's data in a dictionary for easier access at some locations
- This additionally make is possible to split out the lobby protocol into a separate class later on
 * Show exception's messages when exceptions occur

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7087 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:22 +02:00
Giel van Schijndel 72d1881464 Remove trailing whitespace
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7086 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-20 15:31:22 +02:00
Buginator 562ade5d29 Use the correct version of the masterserver file
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7080 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-19 23:45:25 +02:00
Buginator c2e5d2462f Adds password support to warzone.
Adds feedback from the lobby server.

Notes: You have to enter a password *first*, and then either host the game, or join a game.

Thanks to elio for the new icons!


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7079 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-19 23:45:25 +02:00
Giel van Schijndel bd04dd7378 Make the lobby server executable
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7073 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-19 23:45:24 +02:00
Giel van Schijndel 4beca8d487 Make the IRC bot executable
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7024 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-15 20:36:58 +02:00
Buginator e1c91576c9 Game server port is now 2100
Master server port is now 9990 

Updated masterserver python program as well.

merge: r6994

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7018 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-12 14:12:07 +02:00
Per Inge Mathisen c0358510d8 Add missing include
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6982 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-12 14:12:03 +02:00
Giel van Schijndel cd7edf0f88 Use a more sofisticated regular expression for channel messages to ensure we only match messages that are intented for us (i.e. the lobby IRC bot)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6968 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:12 +02:00
Giel van Schijndel 74c3180bc3 Use a regular expression to extract messages intended for us (i.e. the lobby bot) instead of string manipulation with split & find
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6967 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:12 +02:00
Giel van Schijndel 9dfa15c8f1 Move the bot to #warzone2100-games and change it's real name to indicate it's Warzone 2100 origin & purpose
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6966 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:12 +02:00
Giel van Schijndel 3fea9dcbc3 Allow announcing to work properly still
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6965 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:11 +02:00
Giel van Schijndel eb27d5987e Comment on why the endian swapping is performed (while on the protocol level it shouldn't be needed)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6964 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:11 +02:00
Giel van Schijndel 693a2ab4b7 Use a contextmanager and python's with-statement to manage the socket's lifetime, this guarantees exception safety
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6963 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:11 +02:00
Giel van Schijndel 05b1e21416 Externalise code specific to querying the lobby server into a separate module
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6962 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:11 +02:00
Giel van Schijndel acfa601182 Fix syntax error in lobby IRC bot
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6961 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:11 +02:00
Giel van Schijndel 020b66a959 Don't use an IRC specific string representation of games
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6960 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:11 +02:00
Giel van Schijndel d02d2a01ab Committing on behalf of and with Gerard's permission:
The initial version of the IRC bot for Warzone's lobby with the GPLv2 added.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@6959 4a71c877-e1ca-e34f-864e-861f7616d084
2009-04-07 12:23:11 +02:00
Giel van Schijndel 1f89497235 Prevent leaking memory in mapFree by deallocating all memory we allocated
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6910 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-30 16:10:58 +02:00
Giel van Schijndel 40dcefc574 Remove the C++ implementation of the lobby server since it isn't used nor is it being maintained
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6907 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-30 16:10:57 +02:00
Gerard Krol 107f634977 Set svn:eol-style native and convert the line endings to \n.
This is to make sure Git on Windows does not complain when autocrlf and safecrlf are set.



git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6886 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-21 01:53:25 +01:00
Gerard Krol 3000958bca Swap the order of the arguments when calling same_commit to check if we need to push, because only old..new seems to work correctly. 2009-03-19 00:57:29 +01:00
Gerard Krol 31d09e583c Replace slashes by underscores for the gitsvngateway merge filename, and don't make it return a non-zero exit code when the --dry-run was successful. 2009-03-18 18:37:17 +01:00
Gerard Krol 596f6c38a1 Add a --no-fetch option to gitsvngateway to increase the speed of running it over a lot of branches. 2009-03-18 18:13:41 +01:00
Gerard Krol 4d230332a1 Add an --automatic switch to gitsvngateway, where it will not ask to merge changes but instead abort. 2009-03-18 17:58:42 +01:00
Gerard Krol c11e05a058 Use getopt to parse options for gitsvngateway and add the --dry-run, --prefix and --remote options. 2009-03-18 17:58:33 +01:00
Gerard Krol 0abfe13c4c Use the _gitsvngateway prefix for internally used branches. 2009-03-18 15:19:58 +01:00
Gerard Krol e58d41d67a gitsvngateway no longer uses a file to store its state but instead determines it by checking if certain branches exist. 2009-03-18 14:44:35 +01:00
Gerard Krol b43712ec75 Add some checks to gitsvngateway to speed up execution when there are no changes. 2009-03-18 14:01:04 +01:00
Gerard Krol 799ce310e1 Small changes to make gitsvngateway work with Git 1.6.0.6. 2009-03-18 13:17:52 +01:00
Gerard Krol 64d4b710c2 Use a slightly more robust way of detecting merges. It still is ugly though. 2009-03-17 20:16:05 +01:00
Gerard Krol 0a3467af02 Small cleanup of gitsvngateway, the code should be more robust now. 2009-03-17 16:50:18 +01:00
Gerard Krol bd0d42dcc0 The gitsvngateway now uses git cherry-pick instead of git merge --squash to prevent merge conflicts. 2009-03-17 16:23:45 +01:00
Gerard Krol 0f53e9ecf0 Use colour to print the messages from gitsvngateway to better separate them from the output from the Git commands. 2009-03-17 14:20:12 +01:00
Gerard Krol f52d181826 The gitsvngateway script now allows you to check what it is about to commit. It also tries to unravel a merge and commit the individual changes to SVN. 2009-03-17 13:53:31 +01:00
Gerard Krol 1b5816f89b Add "gitsvngateway", a script to pass commits from Git to SVN and from SVN to Git. 2009-03-17 11:20:25 +01:00
Per Inge Mathisen da04dd5173 map2lnd: Use the right edge brush set for each tileset.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6837 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-11 21:30:36 +00:00
Gerard Krol 71bc279c9e Fix some spelling errors in debug messages and comments. Patch by Paul Wise <pabs3>.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6832 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-11 11:51:40 +00:00
Per Inge Mathisen 811bb12786 map2png: Little utility to create PNG previews from map files. Very basic at the moment.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6830 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-09 23:05:54 +00:00
Per Inge Mathisen 7a9da735e2 map2lnd: Fix bug in setting the number of objects in the exported map.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6818 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-08 17:15:14 +00:00
Per Inge Mathisen b8268b2370 mapinfo: Correct for structure padding. Now we can parse savegame structures, too.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6817 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-08 17:06:11 +00:00
Per Inge Mathisen 48ff63c9d1 map2lnd: Export structures as well.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6816 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-08 16:52:17 +00:00
Per Inge Mathisen eb14b8753d map2lnd: Support exporting droids.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6815 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-08 15:11:54 +00:00
Per Inge Mathisen eb8329e481 mapinfo: Read droid data for editworld maps (not savegames).
mapinfo: Calculate number of players by checking construction droids.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6814 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-08 14:19:28 +00:00
Per Inge Mathisen 3fd2879d6a mapinfo: Fix crash on some failures upon trying to close already closed file.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6803 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-07 21:52:34 +00:00
Per Inge Mathisen c8dcde2182 map2lnd: Fix bug in positioning of features. Thanks again to Mysteryem for debugging help.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6797 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-07 18:57:41 +00:00
Per Inge Mathisen 9dbcf2dca1 Implement more robust error handling. Sanity check feature coordinates.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6796 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-07 18:47:07 +00:00
Per Inge Mathisen 788bd21477 map2lnd: Read tileset type and use it to determine which tileset is being exported. Also export all features.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6783 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-07 14:20:20 +00:00
Per Inge Mathisen a31fe8a6ec mapinfo: Add function to deduce a given map's tileset from the terrain type info.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6767 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-02 19:40:31 +00:00
Per Inge Mathisen a348f2683b map2lnd: Convert gateway information.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6766 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-02 18:53:08 +00:00
Per Inge Mathisen 17733f3946 map2lnd: Reuse physfs aux code from framework. More generic handling of partially big endian ported savegames. Initial support for features.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6757 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-01 12:44:54 +00:00
Per Inge Mathisen 8f3a5ab23d map2lnd: Update documentation some more with info from Editworld. Clean up the messy source a bit.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6755 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-01 01:21:29 +00:00
Per Inge Mathisen 28df89817c map2lnd: Fix documentation of map logic.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6754 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-01 00:58:41 +00:00
Per Inge Mathisen bed64f33e9 map2lnd: Fix geometry
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6753 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-01 00:25:13 +00:00
Per Inge Mathisen 9d986d917f map2ldn: Fix conversion error. Reported by Mysteryem.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6739 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-28 09:44:32 +00:00
Per Inge Mathisen 7b8e81ed8f map2lnd: Tons of bugfixes thanks to some help by Mysteryem. It is hardcoded to use Arizona at the moment, though.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6731 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-27 22:24:37 +00:00
Per Inge Mathisen 09ddf35b87 mapinfo: Parse .gam file and show scroll limits.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6730 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-26 23:17:05 +00:00
Per Inge Mathisen 08e9bd5efa Initial map to LND format converter from patch #787: LND format exporter, now as a separate
application. It has not been tested with editworld yet. Needs some TLC.


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6729 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-26 22:10:57 +00:00