Merge lp:~victor-pelt/widelands/workers into lp:widelands
- workers
- Merge into trunk
Status: | Rejected | ||||
---|---|---|---|---|---|
Rejected by: | Hans Joachim Desserud | ||||
Proposed branch: | lp:~victor-pelt/widelands/workers | ||||
Merge into: | lp:widelands | ||||
Diff against target: |
1057 lines (+544/-42) 23 files modified
src/logic/building.cc (+26/-1) src/logic/building.h (+4/-0) src/logic/constructionsite.cc (+23/-0) src/logic/constructionsite.h (+2/-0) src/logic/game.cc (+7/-0) src/logic/game.h (+1/-0) src/logic/immovable.cc (+1/-0) src/logic/militarysite.cc (+15/-0) src/logic/militarysite.h (+2/-0) src/logic/player.cc (+21/-0) src/logic/player.h (+1/-0) src/logic/playercommand.cc (+60/-1) src/logic/playercommand.h (+24/-0) src/logic/production_program.cc (+8/-8) src/logic/production_program.h (+4/-1) src/logic/productionsite.cc (+69/-24) src/logic/productionsite.h (+9/-2) src/map_io/widelands_map_buildingdata_data_packet.cc (+4/-4) src/wui/buildingwindow.cc (+28/-1) src/wui/buildingwindow.h (+1/-0) src/wui/evictconfirm.cc (+180/-0) src/wui/evictconfirm.h (+35/-0) tribes/barbarians/conf (+19/-0) |
||||
To merge this branch: | bzr merge lp:~victor-pelt/widelands/workers | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Nasenbaer | Needs Fixing | ||
Nicolai Hähnle | Needs Fixing | ||
SirVer | Needs Fixing | ||
Review via email: mp+22750@code.launchpad.net |
Commit message
Description of the change
implement an evict button as well as a production program
to merge after build 15
- 5189. By Victor Pelt <peltco@Voyager>
-
code cleanup
passing by reference
const issues
- 5190. By SirVer
-
Merged atlantean castle menu graphics update
- 5191. By Victor Pelt <peltco@Voyager>
-
fix for non-opengl capable system
- 5192. By Victor Pelt <peltco@Voyager>
-
style fixes
- 5193. By SirVer
-
Fixed a small bug in buildlocale.py
- 5194. By SirVer
-
Two colored empire flag
- 5195. By SirVer
-
Made Atlantean flag plateau smaller. The clipping bug is then very hard to see and maybe does not longer disturb. Also made the atlantean flag two colored
- 5196. By SirVer
-
Moved some mac os x packagers to the section where they belong.
- 5197. By SirVer
-
merged hotspot fixes for barbarians
- 5198. By SirVer
-
Merged chucks resized barbarian buildings
- 5199. By SirVer
-
Merged chucks fixed scouts hut picture
- 5200. By SirVer
-
Atlantean flag was too dark. Lightened it up a bit
- 5201. By SirVer
-
Merged latest translations
- 5202. By SirVer
-
Merged Tinos usage fixes branch
- 5203. By SirVer
-
Added a tool to quickly detect and fix illegal line breaks in translations
- 5204. By SirVer
-
Merged latest translations
- 5205. By SirVer
-
Fixed remaining illegal linebreaks in translations
- 5206. By SirVer
-
Fixed --localedir cmdline option which would only work for the very first textdomain grabbed
Nicolai Hähnle (nha) wrote : | # |
1. In Player::evict:
1a. the bulldoze parameter is meaningless
1b. the check should be PCap_Evict instead of PCap_Bulldoze
1c. never throw an exception in code that is triggered from PlayerCommands, otherwise a rogue client could cause a server crash. So just print a diagnostic log() instead of the exception (also, there is a typo in the message)
2. Cmd_Evict:
2a. again, the recurse parameter makes no sense
2b. what's the point of starting a newly created command save format at version 2?
3. I am also curious about what the part in the worker program is good for.
4. You typo'd "bulldoze" in a file name. (Ironically, I did the exact same refactoring of BulldozeConfirm in my branch lp:~nha/widelands/refactor-building-ui; too bad I didn't see your changes before, we'll have to do some manual merging there)
5. In your wui changes, the PCap_Evict check is commented out, respectively incorrectly a PCap_Bulldoze check in the EvictConfirm dialog.
- 5207. By SirVer
-
Reintroduced fix for bug introduced in 5169 which was accidentally reverted in the merge commit 5196. Damn
- 5208. By SirVer
-
Merged ~360 commits worth of Lua enhancements. This commit breaks scenario save
games and maybe other save games as well.- Added Lua implementation, including persitence layer, tests, documentation,
internationalization in scripts
- Added documentation for the widelands richt text and a tutorial.
- Removed Triggers, Events, Map variables + all UI for it. Removed Command
Checking for Triggers and Events.
- Ported all scenario maps in campaigns and the green valley to Lua
- Introduced Player initialization via Lua. Added documentation for it.
- Also introduced Lua into the Editor. This is work in progress, doesn't hurt at
the moment but doesn't help either.
- Added a new tutorial explaining the game basics. Work in Progress. - 5209. By Nicolai Hähnle
-
Merge lp:~nha/widelands/fixes
Changes:
- Improve soldier performance (bug #536211)
- Workers reserve immovables they are going to work on (bug #536297)
- Improve text edit behavior when entering very long chat messages
- Reduce log()-message spam on the console (use --verbose to reenable)
- Various general cleanups - 5210. By SirVer
-
Update translation templates. Testing lua gettext
- 5211. By SirVer
-
Merged Nasenbaer's and my win-condition branch
- Add possibility to script winning conditions via Lua
- Only two very simple scripts are included which could use some improvement. I
trust that others will take this over.Note: This code is most useful in network games but has not been tested in one.
It should be safe though as it should be completely deterministic. - 5212. By SirVer
-
Fixed a typo in utils/buildcat.py
- 5213. By SirVer
-
Update translation templates to include win conditions
- 5214. By Nasenbaer
-
Do not hardcode language list anymore - this A) makes it easier and more dynamic to add languages (no recompile) - and B) will now only show the installed/found languages.
- 5215. By Nasenbaer
-
Merge current version of my map fixes and improvements branch
- 5216. By Nasenbaer
-
use localedir from config/commandline instead of hardcoded 'locale' in language selection.
- 5217. By SirVer
-
Merge chucks menu worker pictures
- 5218. By SirVer
-
Fixed tutorial start up which got broken through win-conditions merge
- 5219. By SirVer
-
Story Message Boxes should not be closed by right clicking, otherwise they are accidentally closed when they pop up
- 5220. By Nasenbaer
-
As requested by the chieftain ;) - here is a new map for the new excellent tutorial
- 5221. By Nicolai Hähnle
-
Merge lp:~aber/widelands/osx-locale-path-fix:
David Allwicher 2010-04-16 [OSX] locale path fix
- 5222. By Nicolai Hähnle
-
Loading: preserve compatibility with build15, drop compat for build <=10
- 5223. By Nicolai Hähnle
-
Merge lp:~nha/widelands/refactor-building-ui
Building windows with multiple "pages" consistently use tabs to switch between
them. Furthermore, some fixes to selections in the soldiers list as well
as general cleanups and refactorings in the wui code.Nicolai Hähnle 2010-04-17 wui: Improve UI::Table sorting and cleanup GameMessageMenu
Nicolai Hähnle 2010-04-17 wui: Refactor building windows to use a consistent tabbed scheme
Nicolai Hähnle 2010-04-16 wui: Minor cleanups
Nicolai Hähnle 2010-04-14 wui: Factor common soldier list functionality into a new SoldierList class
Nicolai Hähnle 2010-04-14 UI::Table: Fix selection update when item is removed
Nicolai Hähnle 2010-04-14 wui: Move remaining building windows into separate files
Nicolai Hähnle 2010-04-14 wui: Fix build errors
Nicolai Hähnle 2010-04-14 wui: Extract some building windows into their own source files
Nicolai Hähnle 2010-04-13 wui: Move BulldozeConfirm and WaresQueueDisplay out into separate files
Nicolai Hähnle 2010-04-13 wui: Add comments - 5224. By Nicolai Hähnle
-
Attempt to fix build problem with older versions of g++
- 5225. By Timowi
-
Changed reference to pointer
- 5226. By Jens Beyer (Qcumber-some)
-
Added scripting dir to symlinks for make lang
- 5227. By Nicolai Hähnle
-
Fix MapObjectDebugW
indow to conform with new UI layouting semantics - 5228. By Jens Beyer (Qcumber-some)
-
make install should copy the scripting dir
- 5229. By Nicolai Hähnle
-
Add "mapobject" command to debug console to open debug windows
Also, improve usability of this feature when the mapobject refers to a flag.
- 5230. By Timowi
-
Small fix to build_and_run script to accept more than one option to CFLAGS
- 5231. By Nicolai Hähnle
-
Carrier & Flag: additional log_general_info() info for debuggin
- 5232. By Nicolai Hähnle
-
Fix a subtle bug when roads are removed and built again
When a road attached to a flag was removed while its carrier was on its way
to pick up an item, then depending on the precise circumstances, this item
was sometimes not reset as waiting for a carrier.As a result, when the exact same road was then later rebuilt, the item could
get stuck "forever". - 5233. By SirVer
-
Merged Soeb's spelling fixes
- 5234. By SirVer
-
Merged english improvements branch for barbarians mission 1 by angreeone
- 5235. By SirVer
-
Language fixes in some scenario texts by Hanna
- 5236. By Victor Pelt <peltco@Voyager>
-
relative code paths for linux
- 5237. By Victor Pelt <peltco@Voyager>
-
allow changes of the widelands 'home' directory (where saves/replays are stored)
- 5238. By SirVer
-
Renamed aux.rst because it is a reserved filename under windows
- 5239. By SirVer
-
Added an include to fix compilation on mingw
- 5240. By SirVer
-
Merged chucks awesome new worker set
- 5241. By SirVer
-
Added a new animation to constructionsites that is played as soon as the builder arrives there
- 5242. By Timowi
-
Catch segfault if amount>max_amount. Throws gamedata exception now
- 5243. By Victor Pelt <peltco@Voyager>
-
idx should be unsigned (non negative)
- 5244. By Victor Pelt <peltco@Voyager>
-
remove dead code
- 5245. By SirVer
-
Fixed a mistake in lua script registering on windows
- 5246. By SirVer
-
Replaced some placeholder graphics with better placeholder graphics by chuckw
- 5247. By Nicolai Hähnle
-
Fix bug #566246: Broken Building Statistics Window due to recent UI changes
- 5248. By Nicolai Hähnle
-
Show workarea by default and move BuildingWindow such that mouse is over workarea button
See bug #566250. The accidental feature referenced in that bug report is thus
made official. - 5249. By SirVer
-
Fixed some english in emp01.wmf
- 5250. By SirVer
-
Updated language catalogs
- 5251. By Jari Hautio
-
Fixed invalid assignment that caused editor to crash on windows.
- 5252. By Jari Hautio
-
Fixed to build with visual studio.
- 5253. By SirVer
-
Made empire barracks more useful
- 5254. By SirVer
-
added some more starting ironore to t03.wmf and fixed bug that red player could be settled around
- 5255. By SirVer
-
added cattlefarm + a small message to t03.wmf
- 5256. By Nasenbaer
-
Fix regression from my language selection change - now English is shown again. Further change 'System default language' to 'Try system language', as not all languages are available.
- 5257. By Nasenbaer
-
Merge current version of my map_fixes_
and_improvement s branch - 5258. By Nasenbaer
-
Fix directory browsing in Map save dialog of the editor + a bunch of comment fixes
- 5259. By SirVer
-
Merged new builder animations from chuck
- 5260. By SirVer
-
Merged new worker graphics from chuck
- 5261. By Nasenbaer
-
merge current version of map_fixes_
and_improvement s branch - 5262. By Nicolai Hähnle
-
Change the sudden death key from F10 to Ctrl+F10
This should be enough to stop people from hitting it by accident.
- 5263. By Nicolai Hähnle
-
Fix bug #568371: Stray numbers in player table in GGZ menu
Sorting by user type is now done explicitly.
- 5264. By Nicolai Hähnle
-
Stock menu: Use tabs and add warehouse-only tabs
This fixes bugs #568368 and #568366 (rather, wishlist items).
- 5265. By Nicolai Hähnle
-
Add hotkeys N, G, and Delete to message window
N: toggle the message window
G: go to currently viewed message
Delete: archive the currently viewed message - 5266. By Nicolai Hähnle
-
Fix bug #536373: Race between "transfer" and "cancel" signals
If a gowarehouse task received a transfer (and thus a "transfer" signal), but
the transfer is almost immediately cancelled before the gowarehouse task is
replaced by a transfer task, the transfer wasn't cleaned up properly. Fix this
problem.Additionally, don't fail a transfer immediately just because we've been
blocked by a battle (this avoid crazy ping-pong generation and cancellation
of transfers, and so should also help performance during battle). - 5267. By Nicolai Hähnle
-
Show full length of wares queues
- 5268. By Nicolai Hähnle
-
Give fugitives a higher chance to find home successfully.
- 5269. By Jari Hautio
-
Options dialog uses no a copy of SDL_PixelFormat structure instead of changing bitperpixel always to 32pbm.
- 5270. By Nasenbaer
-
Fix bug #569686 - Gametype is selectable when loading a multiplayer game + some code improvements (working towards a fix for 569737)
- 5271. By Nasenbaer
-
Fix bug #569737 - failed assert when trying to overwrite save
- 5272. By Jens Beyer
-
Small typo in texts, failing make lang, corrected
Victor Pelt (victor-pelt) wrote : | # |
barbarians have a 'training mine' worker will get kicked out when no experience is needed. this is to showcase the capabilities not intended as is. but it allows for writing more complex programs /buildings (like a school where workers leave)
todo: eject just a specific worker. right now it's an all or nothing thing
todo: code cleanup
want to get this in before build 16 but will do code cleanup first
- 5273. By SirVer
-
Merged new graphics from chuck
- 5274. By SirVer
-
Adding UI scripting + watch-me-do functionality for tutorials:
- Added UI::NamedPanel, a UI::Panel with a name so that it can be accessed from
Lua
- Changed UI::TabPanel so that Tabs are NamedPanels
- Changed UI::Button so that Buttons are Named Panels
- Changed UI::Icongrid to use Flat buttons instead of custom homebrewn code.
Removed a lot of dead code there.
- added wl.ui module that allows for UI scripting. It represents the user interface as Tree structure
with wl.ui.MapView as root. Added tests and documentation.
- Moved some UI related stuff from wl.game.Player to wl.ui.MapView
- Renamed some functions in the auxiliary library, added new convenient functions.
- Enhanced the tutorial. - 5275. By SirVer
-
Merged chucks farm productivity balance fixes
- 5276. By SirVer
-
Updated messages catalog
- 5277. By SirVer
-
Fixed a typo: the tutorial started in the middle
- 5278. By SirVer
-
Updated catalogs again
- 5279. By SirVer
-
Fixed textdomain in tutorial
- 5280. By Raul Ferriz
-
Restored behavior on capacity buttons at soldier capacity control.
- 5281. By SirVer
-
Merged latest frontier graphics from chuck
- 5282. By SirVer
-
Fixed a type
- 5283. By SirVer
-
Typo fixes from chuck
- 5284. By SirVer
-
Removed some remaining documentation for triggers and events
- 5285. By Nicolai Hähnle
-
Fix bug #572383: Wrong usage of constructors
Patch by Pavol Rusnak
- 5286. By Nicolai Hähnle
-
Remove flag display in the building statistic menu (bug #568373)
- 5287. By Nicolai Hähnle
-
Remove legacy code in loading routines, breaking compatibility with build <=12
Savegames created using build13 or later should in theory still work, and at
least superficial testing works fine. - 5288. By SirVer
-
Big update to the tutorial mission
Tutorial scenario:
* made tutorial more robust against bad user input
- by allowing user input to be completely suppressed
- by adding a coroutine that rips everything the user builds when he shouldn't build anything.
* typo and grammatical fixes
* added infos about census & statistics
* added a chapter about resources & mining
* added infos about the mini map
* added a chapter about soldiers, training and warfare
* added mission objectivesCode:
* minimal Lua wrappings for constructionsites
* new functions to suppress user input processing in the UI
* new property fields in base immovables that offers the reverse mapping from Field.immovable
* possibility to disable autosave from lua code. This should get rid of a few
"Attemping to persist a c function errors" - 5289. By SirVer
-
Fixed a stupidity glitch from me
- 5290. By SirVer
-
Added stack traceback to debug output.
- 5291. By SirVer
-
Fixed a bug related to build in iterator functions pairs() and ipairs().
- 5292. By SirVer
-
Fixed a bug in the tutorial where the quarry constructionsite could already be gone, but we tried to access its field
- 5293. By SirVer
-
Fixed a regression were names of buildings were not displayed in the build grid
- 5294. By SirVer
-
Major overhaul of t02.wmf
- removed all game logic from the texts lua file
- added micro-brewery and cattlefarm objectives
- revamped and relayouted a lot of text. This invalidates a lot of translations.
- Removed duplicated text.
- Layouting is now done via functions to make the content easier editable. - 5295. By SirVer
-
Fixed a small bug in lua-xgettext.py. Added a missing " in t02.wmf
- 5296. By SirVer
-
Merged amazing new graphics form chuck
- 5297. By Nicolai Hähnle
-
Fix bug #574500: Regression from rev 5287 due to versioning confusion
The old code saved preload packages of games as version 1 when no interactive
player was present, without documenting it well. This caused some confusion
that should now be fixed properly. - 5298. By Chuck Wilder
-
Add new barbarian helmsmith to match the one in the building and a barbarian farmer workload animation
- 5299. By Chuck Wilder
-
Added new barbarian master-blacksmith and weaver workers.
- 5300. By Chuck Wilder
-
Added new barbarian baker worker.
- 5301. By Chuck Wilder
-
Added PlayerColor to cloth and spidercloth wares for all tribes so weavers will now produce cloth in a player's own color.
- 5302. By Chuck Wilder
-
New barbarian trainer, miner, chief-miner, and master-miner worker animations
- 5303. By Raul Ferriz
-
Change: Healing soldiers on militarysites.
Now only one soldier is healed a time. - 5304. By Raul Ferriz
-
Reduced healing on barbarian military sites.
- 5305. By Raul Ferriz
-
Reduced healing on empire military sites.
- 5306. By Raul Ferriz
-
Reduced healing on atlantean military sites.
- 5307. By Raul Ferriz
-
Adjusted healing on conquested buildings.
- 5308. By Raul Ferriz
-
Remove unused medic code
- 5309. By Raul Ferriz
-
Update Changelog
- 5310. By Nasenbaer
-
Fix for compilation without bzr files in path
- 5311. By Chuck Wilder
-
New barbarian brewer and master-brewer workers
- 5312. By Nasenbaer
-
fix for language list initial selection
- 5313. By Nasenbaer
-
DefaultAI improvement
- 5314. By Chuck Wilder
-
New barbarian burner worker and reduced size of frontier markers for atlantean and empire tribes
- 5315. By Chuck Wilder
-
New barbarian cattlebreeder worker and adjusted hotspot for barbarian builder walking animation
- 5316. By Nicolai Hähnle
-
Fix a regression introduced by r5313: Do not divide by zero
- 5317. By Nicolai Hähnle
-
Merge soldier-cleanup: Calculate soldier attributes directly from levels
- 5318. By Nicolai Hähnle
-
Experience required by workers per level is no longer random
Previously, required experience was rolled randomly between a min and max
value. Now, it is always deterministically the same value depending on the
worker type. - 5319. By Nicolai Hähnle
-
logic/immovable.cc: Cleanup unused variables
- 5320. By Nicolai Hähnle
-
Merge branch bob-saving
All classes derived from Bob now use the new save system.
- 5321. By Nicolai Hähnle
-
graphic/render.cc: Fix format string
- 5322. By Nicolai Hähnle
-
Fix a typo in an error message, pointed out by TinoM
- 5323. By SirVer
-
New soldier Stats with improved readability
- 5324. By SirVer
-
Fixed a bug in the tutorial
- 5325. By SirVer
-
Merged chucks lates graphic creations
- 5326. By Chuck Wilder
-
Last of the new barbarian worker models! Innkeeper, lime-burner, and smelter
Nasenbaer (nasenbaer) wrote : | # |
still needs fixing - did not chekout, build and test, but I can already see two problems:
* build_and_run.sh will not work on systems that do not have ccache and it will definitely not work on Windows plattforms. This is not acceptable as it is meant as general tool for all platforms
* The trainingsmine might be good as test, however it should not go to trunk + this way Barbarians will not be playable at all atm, as the building is missing in your bzr.
Please do not be demotivated from this post - the general idea is great and we need this feature - will try to check the code changes once i find some more time.
- 5327. By Timowi
-
* speedup RenderTarget:
:brighten_ rect
* avoid usage of brighten_rect by caching some ui elements
* cache tribenames in playerdescrgroup - 5328. By SirVer
-
Fixed a typo in the tutorial
- 5329. By Victor Pelt <peltco@Voyager>
-
fix bug with nosound option
- 5330. By Nicolai Hähnle
-
Introduce cookie_
priority_ queue, used by pathfinding algorithms This template class provides a priority queue that, unlike the STL
priority_queue, requires a cookie field in the objects that are stored in the
queue. This cookie field is used to implement decrease_key (and also the
typically less used increase_key) operations efficiently.Thus the previously duplicated functionality of RoutingNodeQueue and StarQueue
is now unified in this new template class. - 5331. By Nicolai Hähnle
-
Add new keyboard shortcuts for quick navigation
Ctrl+0 to Ctrl+9 remembers the current location, pressing 0 to 9 recalls it.
Pressing the comma ',' key goes back to the last seen location, the period '.'
key goes forward. - 5332. By Nicolai Hähnle
-
Add missing files of last commit. Shame on me.
- 5333. By SirVer
-
Used Mix_GetError instead of strerror
- 5334. By SirVer
-
Renamed NoteField to NoteFieldPossession
- 5335. By SirVer
-
Added a new notification that informs about transformated fields (terrain changes only at the moment) and pushes players that see this field to rediscover it
- 5336. By Nicolai Hähnle <prefect@morningstar>
-
Fix regression caused by the QuickNavigation change (bug #580172)
It is perfectly valid to have an unset MapView:
:m_changeview callback. - 5337. By Nicolai Hähnle
-
Fix bug #580377: Member function defined in .cc file should not be declared inline
- 5338. By Timowi
-
redraw button after resize
- 5339. By Timowi
-
Set background picture for all non flat buttons
- 5340. By Timowi
-
some code style fixes
- 5341. By Charles Wilder <chuck@chuck-gw-laptop>
-
Edited the tutorial01 script for clarification.
- 5342. By SirVer
-
Whitespace fixes in tutorial texts
- 5343. By Jens Beyer
-
Make internal cmake calls really platform independent (XCode problem)
- 5344. By SirVer
-
Corrected some calls to timed_scroll which seemed to have slipped when the function was changed
- 5345. By Timowi
-
set background for button in debug window
- 5346. By Timowi
-
fix creation of cache surface for button. Use panel size and not destination rendertarget size for cache surface
- 5347. By Timowi
-
Use panel size and not destination rendertarget size for cache surfaces in Slider, Listselect, scrollbar and editbox
- 5348. By SirVer
-
Enable fishers hut in t02.wmf. It is not mandatory to be build
- 5349. By Nicolai Hähnle
-
Rework worker creation when required wares are not all in the same place
- 5350. By Nicolai Hähnle
-
QuickNavigation: Fix referencing uninitialized values
- 5351. By Sigra
-
reported by stuur
- 5352. By Sigra
-
Do not translate this debug string (other strings here were not translated either. Show buildcaps information.
- 5353. By Nicolai Hähnle
-
Economy: Eliminate idle requests, return wares to warehouses explicitly
This also introduces transfers that are not bound to requests and eliminates
idle requests. In big games, this can improve performance dramatically. - 5354. By Tino
-
remove unnecessary include
- 5355. By Nicolai Hähnle
-
Fix bug #577247: When constructionsite finishes, set builder's location to the new building
With this change, the builder should no longer become a fugitive after
construction site completion. - 5356. By Nasenbaer
-
Fix for code in defaultAI as suggested by Erik
- 5357. By Nasenbaer
-
Fix calculation due to the fix in defaultAI code - now it begins to work :) - Thanks go to Erik, that he found that problem! :)
- 5358. By Nicolai Hähnle
-
Merge branch filesystem (random filesystem related bug fixes)
- 5359. By Jari Hautio
-
Fixed to compile and link with VS2008.
- 5360. By Jari Hautio
-
Fixed a crash in game startup in VS2008 builds. Now casting LuaInterface_Impl to void* and casting it back from void* both use same type. Value of this pointer is not same for LuaInterface* and LuaInterface_Impl*. This is propably due to use of virtual base class.
- 5361. By Nicolai Hähnle
-
Builder does not cause finished building to see its vision range
- 5362. By Nicolai Hähnle
-
Worker:
:gowarehouse: always leave buildings by their door. - 5363. By SirVer
-
Updated message catalog
- 5364. By SirVer
-
Merged music branch for new music
- 5365. By Nicolai Hähnle
-
Fix remaining "tabard cycling" problem and cleanup related to recent economy changes
This change ensures that we don't plan for more workers than we have resources for.
- 5366. By Nicolai Hähnle
-
More worker creation fixes: take currently running transfers into account
- 5367. By SirVer
-
Removed a '_' that confused the lua xgettext script.
- 5368. By SirVer
-
Updated catalogs to get rid of a wrong entry
- 5369. By Nicolai Hähnle
-
Fix replay bug when using recursive destroy (pressing Ctrl while destroying)
It is a bug for game logic to send a player command, so don't do that.
- 5370. By Nicolai Hähnle
-
Training soldiers: Scale current hitpoints when HP level changes
It seems somewhat implausible that soldiers would leave their training site
injured because their HP level has increased... - 5371. By Nicolai Hähnle
-
Merge branch soldier-list
- 5372. By Nicolai Hähnle
-
UI::EditBox: Consistently store data in EditBoxImpl
This also fixes a warning about initialization order in the EditBox constructor.
- 5373. By Chuck Wilder
-
New Blond Atlantean carrier and weaver workers
- 5374. By Chuck Wilder
-
New Atlantean woodcutter worker
- 5375. By Chuck Wilder
-
Added new Atlantean fisher worker
- 5376. By Chuck Wilder
-
Atlantean builder worker
- 5377. By Chuck Wilder
-
Fixed broken Atlantean builder animation
- 5378. By Chuck Wilder
-
THIS fixes the broken Atlantean fisher animation
- 5379. By Chuck Wilder
-
Removed outdated animation files for Atlantean fisher
- 5380. By Chuck Wilder
-
Modified Altantean fisher walking animation from 10fps to 20fps to circumvent missing file error
- 5381. By Nicolai Hähnle
-
Soldiers: make health bar opaque for better visibility
- 5382. By Nicolai Hähnle
-
Warehouse: add stock policies
This features allows players to control which warehouses certain wares are
stored in, at least to some extent. - 5383. By Nasenbaer
-
Fix last place where slider.png was used.
- 5384. By Nicolai Hähnle
-
Ignore "Don't stock" policy for workers that would otherwise have to be fugitives
- 5385. By Tino
-
remove unnecessary include
- 5386. By Chuck Wilder
-
Refined the fishing animation for Atlantean fisher
- 5387. By Chuck Wilder
-
New Atlantean stonecutter worker
- 5388. By Chuck Wilder
-
New Atlantean geologist worker
- 5389. By Chuck Wilder
-
New Atlantean hunter worker and changed Atlant meat ware hotspot
- 5390. By Nicolai Hähnle
-
Merge lp:~nha/widelands/teams
- 5391. By Nasenbaer
-
Silent this massive spammer ;) - important are the used language code and the used localedir - both are written to commandline at the beginning of the game.
- 5392. By Nasenbaer
-
this assert is wrong since the directory fix
- 5393. By Chuck Wilder
-
New Atlantean farmer worker
- 5394. By Chuck Wilder
-
Added new Atlantean blackroot_farmer worker and adjusted hotspots for Atlantean farmer
- 5395. By Nicolai Hähnle
-
Fix desync bug #590458 and allow syncstream writing without replay writing
This was a regression of the new Worker saving, because a part of the new
saving code did not guarantee consistency across systems. - 5396. By Nasenbaer
-
playerdescgroup hides team buttons in savegame now
- 5397. By Nasenbaer
-
translations update
- 5398. By Chuck Wilder
-
Add new Atlantean spiderbreeder worker. If you like a hardhat on the barbarian builder, you'll love this worker. :D
- 5399. By Timowi
-
remove conflict from last translation merge
- 5400. By Nasenbaer
-
First of all: doxygenization of comments
- 5401. By Nicolai Hähnle
-
Notify players when military sites are occupied
- 5402. By Nicolai Hähnle
-
logic/militarys
ite.cc: Fix a warning - 5403. By Timowi
-
fix janus name in developers
- 5404. By Nicolai Hähnle
-
Clean up the way Building-related messages are sent, and silence a problematic assert
- 5405. By Timowi
-
Fix a bug if filename of a renamed savegame is longer than the original name plus some paths in the file
- 5406. By Timowi
-
Fix road splitting: consider carrier type during reassign carriers and request second carrier if roadtype is busy
- 5407. By Timowi
-
merge opengl support
- 5408. By Timowi
-
Add more comments to the rendering functions and update some comments
- 5409. By Chuck Wilder
-
New Atlantean fish_breeder worker
- 5410. By Chuck Wilder
-
New Atlantean sawyer worker
- 5411. By Timowi
-
style fixes
- 5412. By Chuck Wilder
-
Changed Atlantean fish_breeder walk animation to 20 fps to circumvent an error that pointed to a phantom file
- 5413. By Chuck Wilder
-
New Atlantean forester worker
- 5414. By Timowi
-
Fix opengl code for msvc.
- 5415. By Chuck Wilder
-
New Atlantean baker worker
- 5416. By Nasenbaer
-
Improvements of defaultAI's road building
- 5417. By Chuck Wilder
-
New Atlantean miner worker
- 5418. By Chuck Wilder
-
New Atlantean horsebreeder worker and restored barbarian cattlebreeder's ox
- 5419. By Chuck Wilder
-
Adjusted Atlantean horsebreeder NE walking animation pc masks and deleted old walkload animation
- 5420. By Chuck Wilder
-
New Atlantean scout worker
- 5421. By Nasenbaer
-
merge my work branch - including some hopefully useful defaultAI additions and fixes + locale list updates + highering statistics saving (and so the steps in which statistics will rise) to 20 - initially this was to improve defaultAI's behaviour - however if someone dislikes the 5\% steps, I will of course revert.
- 5422. By Chuck Wilder
-
New Atlantean trainer worker
- 5423. By Nasenbaer
-
defaultAI should only destroy a building if stats are a bit longer on 0%
- 5424. By Nasenbaer
-
Fix data type mess up - there shouldn't be a need for conversion at all + fix a graphic name - when i "fixed" the "slider.png missing" bug, i actually didn't do it better ;)
- 5425. By Nasenbaer
-
Add small note for DefaultAI for vineyard + higher number of input slots for atlantean mines to allow for faster requests
- 5426. By Nasenbaer
-
Fix bug 533245 - buildings statistics were not calculated if buildings statistics were switched off / not visible
- 5427. By Nasenbaer
-
No wonder it did not work as it should. A typical Nasenbaer bug ;)
- 5428. By Nasenbaer
-
Small defaultAI improvement: If a single constructionsite is not connectable for more than 2 minutes, remove it.
- 5429. By Nasenbaer
-
defaultAI update: 1) block fields that weren't connectable to an economy before, 2) improve calculation for military sites need, 3) improve calculation for which building should be constructed (mostely to make the defaultAI place buildings smarter), 4) remove unneeded or doubled code, 5) higher the preciousness of thatchreed for barbarians to make it more likely they build a fernery
- 5430. By Chuck Wilder
-
New Atlantean armoursmith, toolsmith, and weaponsmith workers
- 5431. By Chuck Wilder
-
New Atlantean armoursmith, toolsmith, and weaponsmith workers
- 5432. By SirVer
-
Merged locale fixes from Jens
- 5433. By Chuck Wilder
-
Completed the Atlantean workers by adding the burner, miller, smelter and smoker.
- 5434. By Chuck Wilder
-
Changed color of barbarian farmer's hat
- 5435. By Chuck Wilder
-
Added new Empire builder worker
- 5436. By Chuck Wilder
-
Animated idle cycle for empire carrier worker
- 5437. By Nasenbaer
-
little tweak for foresters and other "recreating" buildings
- 5438. By Chuck Wilder
-
Add new empire farmer worker
- 5439. By Nasenbaer
-
Better height generation in random maps for more usable maps
- 5440. By Nasenbaer
-
Add basic version of automatically placed starting positions in autogenerated maps (+ ui)
- 5441. By Nasenbaer
-
Fix a mistake in a calculation in last commit
- 5442. By Nasenbaer
-
New attempt for starting position placement - this should work much better
- 5443. By Nasenbaer
-
This was left undone ;)
- 5444. By SirVer
-
Tried to fix operator< for Soldier_Descr
- 5445. By Nasenbaer
-
Yet another algorithm improvement try to have defaultAI build more reasonable "recreating buildings"(like foresters) - from 10 test runs it looked like a real improvement, but well...
- 5446. By Chuck Wilder
-
Add new empire fisher worker.
- 5447. By Nasenbaer
-
remove left overs to get widelands working again
- 5448. By Nasenbaer
-
Merge the host commands commit from widelands-server branch + boundary for network speed to avoid abuse in 2 player games
- 5449. By Nasenbaer
-
new host commands /forcePause and /endForcedPause
- 5450. By Nasenbaer
-
Give foresters more intelligence -> use immovable attribute "seed" to avoid replanting of tiny trees
- 5451. By Nasenbaer
-
Update changelog - we all should try to keep updating it in time in mind ;)
- 5452. By Nasenbaer
-
And even more intelligence for planting workers like foresters - plant the tree (or field or whatever it wants to plant) that suits best to the terrain. I removed the worker program setdescription (just kept as dummy for savegame compatibility), as now the plant command needs the full list of possible trees, fields, etc. anyways.
- 5453. By Nasenbaer
-
Crop animations
- 5454. By Chuck Wilder
-
Modified empire fisher worker animation frame rate from 10fps to 20fps to resolve missing file bug # 612316.
- 5455. By SirVer
-
Merged Jaris massive Lua fixes for Visual Studio
- 5456. By SirVer
-
Applied XCode work around/patch by David
- 5457. By SirVer
-
Update for new elder of graphics
- 5458. By Timowi
-
Fix a bug in opengl texture loading. Four byte formats without alpha channel were loaded incorrect
- 5459. By Chuck Wilder
-
Added new empire forester worker
- 5460. By Timowi
-
fix the new empire forester conf file
- 5461. By Jari Hautio
-
Fixed GGZ game hosting to work on windows.
- 5462. By Jari Hautio
-
Added option for building unit tests. Test are enabled by default and look for single threaded libs if multithreaded are not found. Also always include boost header dir and fixed dynamic linking on MSVC.
- 5463. By Timowi
-
Improve cmake to fit static linking better: Change order of libraries
- 5464. By Nasenbaer
-
update Changelog
- 5465. By Nasenbaer
-
Give defeated players of autocrat games full vision
- 5466. By Nasenbaer
-
Reimplement teamview + fix victory check for collectors
- 5467. By Nasenbaer
-
Add spectator mode for deafeated players of "endless" games.
- 5468. By Nasenbaer
-
Move some win condition functions to their own file, to avoid doubled, tribled, ... code + add check for defeated players to collectors winning condition - now defeated players become spectators in all three currently available winning conditions.
- 5469. By Nasenbaer
-
Do not show building statistics of opposing players anymore - thanks go to user "Der Meister" who provided the base for this patch.
- 5470. By Nasenbaer
-
Fix commandline parameter "homedir" and "datadir" parsing - thanks go to Stefan Karpinski for the patch
- 5471. By Nasenbaer
-
Add forgotten line breaks in help message
- 5472. By SirVer
-
All Lua files in the scripting/ directory are now added to the docs automagically via the extract_rst.py script. Fixed a underline in win_condition_
functions. lua - 5473. By Nasenbaer
-
Make atlantean small tower less strong (bug #577891)
- 5474. By Nasenbaer
-
Make barbarian weaving mill not buildable (bug #547090)
- 5475. By Jari Hautio
-
Changed place of defining stat to_stat on win32. Caused previously a crash with vs2008.
- 5476. By Jari Hautio
-
Fixed to really check magic number in zip files.
- 5477. By Nasenbaer
-
Move build_and_run.sh to compile.sh and rework it, to be much more intuitive for users.
- 5478. By Nasenbaer
-
Add widelands main directory check to update.sh as well.
- 5479. By Nasenbaer
-
Addition to get more information about bug 536024 + update of pot files
- 5480. By Jari Hautio
-
Switch to use static libraries and static msvc-runtime in windows/visual studio builds.
- 5481. By Nasenbaer
-
Handle taskless bobs in new mapobject format (no task assigned, if created in the editor) - fixes bug #537392
- 5482. By Nasenbaer
-
Fix bug #537392 - computerplayer does not adhere to currently allowed buildings
- 5483. By Nasenbaer
-
Add "real" work animations to builder and play "idle" animation, if the builder has nothing to do.
- 5484. By Nasenbaer
-
Fix bug #618449 - [fetchfromflag] - building dissappeared
- 5485. By Nasenbaer
-
Scout fix
- 5486. By Nasenbaer
-
Update ChangeLog
- 5487. By Nasenbaer
-
A fix for the fix for the scout ;)
- 5488. By Nasenbaer
-
undo this change - sorry forgot to revert this, was just for investigation of a bug.
- 5489. By Jari Hautio
-
On windows keep root dir always with backslashes. Otherwise FileSystem:
:pathIsAbsolute and FileSystem: :FS_Canonicaliz eName do not work properly. Screenshots work now again on windows. - 5490. By Jari Hautio
-
Fixed msvc iss installer file to copy scripting folder and omit dlls.
- 5491. By Nasenbaer
-
translations update
- 5492. By Nasenbaer
-
translations update 2
- 5493. By Nasenbaer
-
translations update part 3
- 5494. By Nasenbaer
-
and the language name list
- 5495. By Nasenbaer
-
Two new win conditions
- 5496. By Nasenbaer
-
a minor minor fix ;)
- 5497. By Jari Hautio
-
Fixed MSVC CXX compiler flags.
- 5498. By Nasenbaer
-
Fix training sites inputs
- 5499. By Nasenbaer
-
Some work on win conditions
- 5500. By Nasenbaer
-
Add missing pot files
- 5501. By Nasenbaer
-
Fix in win_conditions for localisation
- 5502. By Jari Hautio
-
Implemented support for redirecting stdio from widelands to files. Redirection is enabled if REDIRECT_STDIO is defined at compile time (enabled for MSVC builds). This allows windows version to write logs to home folder if executable folder is not writable (program files folder under Vista nd Win7). Fixes bug #625979.
- 5503. By SirVer
-
Hanna's and my work on the collectors win condition.
- Introduces a hook to implement custom statistics for win conditions/missions
(see docs/introduction, Section about Hooks). Will be useful for more win
conditions than collectors.
- The aim of collectors is now to only collect precious wares; we tuned the
parameters through a few test games, but fine tuning needs more games.
- Reverts some of Nasenbaers recent changes due to merge conflicts (sorry :( ). - 5504. By Nasenbaer
-
Reimplement my changes :)
- 5505. By SirVer
-
added statistics to woodgnome win condition. _calc_points is still pretty slow
- 5506. By Nasenbaer
-
Win condition improvements
- 5507. By SirVer
-
less confusing atlanteans corn graphic from chuck
- 5508. By Chuck Wilder
-
New empire hunter worker and adjusted hotspot for meat ware.
- 5509. By Sigra
-
Make these 2 programs identical (as they should be). The ":1" looked unintentional.
- 5510. By Nasenbaer
-
Fix typos in host commands
- 5511. By Nasenbaer
-
Basic "Share kingdom" feature via starting condition
- 5512. By Nasenbaer
-
Savegame loading for "share kingdom"
- 5513. By Nasenbaer
-
Update ChangeLog
- 5514. By Nasenbaer
-
to avoid bug reports with my lua implementation of "shared kingdom" - remove it again. Don't worry, there will be an even better "shared kingdom" feature ;)
- 5515. By SirVer
-
Fixed crash when there is not enough place for a starting building in the citadel starting conditions
- 5516. By Chuck Wilder
-
Add waiting animation for barbarian builder
- 5517. By SirVer
-
Added support for aborting road building via Lua. This was needed so that the tutorial could not be crashed so easily
- 5518. By SirVer
-
Fixed a typo in a documentation string
- 5519. By SirVer
-
Remove immovables that are in the way when building the trainingarea in the tutorial
- 5520. By Nasenbaer
-
Play full idle animation of builder
- 5521. By Chuck Wilder
-
Added waiting animation for atlantean and empire builder workers
- 5522. By Jens Beyer
-
Fix link to build_info.cc - otherwise KDevelop crashes over evaluating that link
- 5523. By SirVer
-
~200 commits worth of lua code refactoring
- Incorporated Editor into Lua scripting
- Testsuite for editor
- Lots of code was removed, for example pre/postfille
- removed module functions and Class constructores; entry point for scripting are now wl.Game() and
wl.Editor()
- Fixed a lot of TODOs in the scripting code
- Player Immovables do not crash the editor, but not much for Player
Infrastructure has been done - 5524. By SirVer
-
Already the first bug in my last commit found & fixed
- 5525. By Nasenbaer
-
Merge branch with shared kingdom feature and multiplayer scenario support
- 5526. By Nasenbaer
-
Fix a leftover from merge conflicts
- 5527. By Nasenbaer
-
obviously SirVer changed something ;)
- 5528. By SirVer
-
Tutorial was not localized.
- 5529. By Holger Rapp <rapp@mrt140>
-
Fixed linking of test_widelands_
scripting - 5530. By Nasenbaer
-
Indentation fix in lua file + translation loading fix in map Plateau.wmf
- 5531. By Chuck Wilder
-
Added new empire stonemason worker animation
- 5532. By Chuck Wilder
-
Added new empire lumberjack worker animation
- 5533. By Nasenbaer
-
Fix two hostside crashes and fix some compile time warnings
- 5534. By Nasenbaer
-
Add option to make ingame chat background *not* transparent, which makes chat messages much easier to see.
- 5535. By Nasenbaer
-
Change background color in launchgame menu chat for better readability of player names.
- 5536. By Nasenbaer
-
Fix two localization issues with player initializations
- 5537. By Nasenbaer
-
Do not show "skipped work", etc. in statistics string of a building, as it is already shown in the hover message, it clutters the screen and hides the real statistics; add hover message that indicates that a mine is empty; fixed a string with boost::format to make it better translateable; added a TODO comment to a part, where boost::format should definitley be used; updated pot files
- 5538. By Nasenbaer
-
Add two new maps - Desert tournament by ivh and Swamp Monks by me - both should be nice to play in shared kingdom mode :) - my map will get a multiplayer scenario as soon as I have some free time ;)
- 5539. By Nasenbaer
-
Do not change resolution, if no other resolution was selected in the options menu
- 5540. By Nasenbaer
-
Fix bug #622888
- 5541. By Nasenbaer
-
Add delete button to in game save menu
- 5542. By SirVer
-
Reworked changes from r5536 though I could not find anything wrong with the code in an attempt to fix bug 648270. Also added more debug output to trace this problem down.
- 5543. By SirVer
-
Fixed a screwup in statistics reading
- 5544. By SirVer
-
Clicking on a building will now open the building window in a way that it is less likely to cover the buildings location
- 5545. By SirVer
-
A second attempt to fix a tutorial crash
- 5546. By SirVer
-
Added a missing delete
- 5547. By SirVer
-
Added a lot of debug output to Cmd_LuaCoroutin
e::execute to track down bug 647155 - 5548. By Chuck Wilder
-
Added new empire scout worker animation and adjusted empire marble ware hot spot.
- 5549. By Chuck Wilder
-
Added new empire donkeybreeder worker animation
- 5550. By Chuck Wilder
-
Added new empire pig-breeder worker animation
- 5551. By Chuck Wilder
-
Added new empire shepherd worker animation
- 5552. By SirVer
-
Sped up win conditions territorial lord and wood gnome
- 5553. By SirVer
-
Made wl.map.
Map.get_ field() less flexible but faster in most cases. - 5554. By SirVer
-
Fixed an underline that was too short
- 5555. By SirVer
-
Renamed wl.map.Field.owners into wl.map.
Field.claimers. Updated tests and documentation. Added __tostring field to wl.bases.PlayerBase - 5556. By SirVer
-
Forgot to rename owners into claimers.
- 5557. By SirVer
-
Merged typo fixes by Hans Joachim Desserud
- 5558. By Timowi
-
fix scout desync. time_node_
last_unseen is only valid if vision is 1 - 5559. By Timowi
-
fix loading of savegames with player_
info_data_ packet version < 10 - 5560. By SirVer
-
Fixed linking on MSVC 2005
- 5561. By Timowi
-
remove left over from public-
static- member patch - 5562. By Chuck Wilder
-
Added new animations for the empire innkeeper and weaver workers. (The empire now has some members of the fairer gender.) Also, adjusted the hotspot and removed playercolor for the cloth ware of the barbarian and empire tribes to match a similar change to the atlantean spidercloth.
- 5563. By Chuck Wilder
-
Supplied updated conf file for empire innkeeper.
- 5564. By Jari Hautio
-
Fixed #619045. Build unit tests option is defaulted to OFF and boost unit test library is nto needed by default build anymore. Also removed empty Boost_unit_
test_framework_ LIBRARIES from widelands binary. - 5565. By Jari Hautio
-
Fixed Bug #648270. Windows machines can now host games. Resolved path issue in RealFSImpl:
:FindFiles so that it wont return slashes in the beginning if path argument is empty and fixed name extraction code in register_scripts function to remove slash in first position also. - 5566. By SirVer
-
Removed no longer needed debug output
- 5567. By SirVer
-
Fixed a bug in the 3. Barbarians scenario
- 5568. By Chuck Wilder
-
Added new empire master miner animation.
- 5569. By SirVer
-
Merged the minimap marker branch from ab-tools
- 5570. By SirVer
-
Preview workarea is on by default now as it is very useful. Removed a no longer used define
- 5571. By SirVer
-
Added more features around road building to lua. Made sure that road building is entered in the tutorial whenever it is expected
- 5572. By Chuck Wilder
-
Added new empire trainer worker.
- 5573. By Timowi
-
Error handling of lua coroutine. Now send message to all players insted of exit the game
- 5574. By Chuck Wilder
-
Added new empire armoursmith and toolsmith worker animations.
- 5575. By Chuck Wilder
-
Added new empire weaponsmith worker animation.
- 5576. By Timowi
-
merge fix-loading-
zipfiles branch. Now data files are stored in the root of zip files. - 5577. By Chuck Wilder
-
Added new empire baker worker animation
- 5578. By Chuck Wilder
-
Added new empire brewer worker animation
- 5579. By Chuck Wilder
-
Added new empire burner worker animations
- 5580. By Chuck Wilder
-
Added new empire miller and miner worker animations.
- 5581. By Chuck Wilder
-
Added new empire smelter worker animations. JUST ONE MORE WORKER TO GO!!! :)
- 5582. By Timowi
-
Fix zip filesystem code. Bug was introduced in 5576. Now MakeSubFilesystem and CreateSubFilesystem write to subdirectory as intended. Zipped files (maps and savegames) beteen 5576 and this revision are broken.
- 5583. By Chuck Wilder
-
Fixed Bug #536368 and Bug #536505 by completing new animations for the empire vinefarmer worker!
- 5584. By SirVer
-
Merged minimap branch again for some improvements
- 5585. By Timowi
-
fix spectator mode for netclient.
- 5586. By Nasenbaer
-
Update translations and fix bug #657269
- 5587. By Nasenbaer
-
Add vietnamese to language list
- 5588. By Jari Hautio
-
Fixed Bug #662045. Use dynamic linking for unit test framework outside windows platform.
- 5589. By Jari Hautio
-
Fix Bug 662908. Allow also static boost unit test framework to compile and link properly.
- 5590. By Timowi
-
fix ZipFilesystem:
:FindFiles. respects m_basename now and thus work in sub-filesystems - 5591. By SirVer
-
Removed some overly verbose debug output that is no longer needed
- 5592. By SirVer
-
Made detect_revision.py python3 compatible
- 5593. By Nasenbaer
-
Fix soldier die animation drawing
- 5594. By Nasenbaer
-
Merge widelands bugfix branch by hjd
- 5595. By Jari Hautio
-
Fixed MSVC build to work with unit tests.
- 5596. By SirVer
-
Merged nomeata's pause button branch
- 5597. By SirVer
-
Merged toggable buttons branch and button refactoring by Joachim Breitner. Updated ChangeLog
- 5598. By SirVer
-
Added Joachim breitner to the list of coders
- 5599. By SirVer
-
Initialize m_paused whenever it is defined
- 5600. By Chuck Wilder
-
New walking, idle and battle animations for the barbarian soldier
- 5601. By SirVer
-
Added +1 basket to empire starting wares. This allows to saturate the first marble mine and reduces the marble starving at the beginning
- 5602. By Jari Hautio
-
Improved scripting unit tests to check results properly.
- 5603. By Jari Hautio
-
Added copyright notice to test_luna.cc.
- 5604. By Chuck Wilder
-
New and Improved! Barbarian battle animation.
- 5605. By Chuck Wilder
-
Tweaked animation for barbarian soldier's walk.
- 5606. By Jari Hautio
-
Fixed invalid iteration loop in AI code found by VS2008 assertion. Likely caused crashes or heap corruption. May be related to bug #536024.
- 5607. By SirVer
-
Merged bugfix branch from nomeata
- 5608. By SirVer
-
Updated changelog with basket balance change
- 5609. By SirVer
-
Barbarian soldiers now need an axe from the axefactory to be produced
- 5610. By Chuck Wilder
-
Added walking animation for new empire soldier model
- 5611. By Chuck Wilder
-
New battle animation for the empire soldier.
- 5612. By SirVer
-
Made tile hopping easier by lowering some mountains
- 5613. By Chuck Wilder
-
Walking animation for new Atlantean soldier model. Comments, please! :)
- 5614. By Chuck Wilder
-
Completed battle animations for the Atlantean soldier in honor of WiHack 2010 Reloaded. There is now a full set of soldier animations for the tournament finals! GOOD LUCK!! :D
- 5615. By SirVer
-
Wares display reordering from nomeata and Kristin
- 5616. By Timowi
-
merge tmks soldier hp bar fix branch
- 5617. By Nicolai Hähnle
-
Fix player statistics savegame incompatibility bug
From now on, newly created savegame will remember the ware names in the stored
statistics. - 5618. By Nicolai Hähnle
-
(Hopefully) fix compile failure from last commit
- 5619. By SirVer
-
Maps are now sorted by number of players in the map select menu
- 5620. By SirVer
-
Merged nomeata's branch to remove temporary ware target quantitiy
- 5621. By SirVer
-
Show an icon when widelands runs
- 5622. By SirVer
-
fixed my last fix
- 5623. By Nasenbaer
-
Merge refactoring of multiplayer UI and shared kingdom branch
- 5624. By Jens Beyer
-
Fixed window docking bugs (assertion and wrong inner size)
- 5625. By SirVer
-
Statistics are now calculated via Cmd_CalculateSt
atistics. - 5626. By SirVer
-
Bugfix branch by nomeata
- 5627. By Chuck Wilder
-
For Bug#669085, adjusted menu images of the Empire war_lance and wood_lance to improve their visibility.
- 5628. By SirVer
-
Bugfix from nomeata
- 5629. By Nicolai Hähnle
-
Fix bug: Quit via window manager works properly from network game without GGZ now
- 5630. By Chuck Wilder
-
Updated the empire helm ware images in menus and the game to better resemble the new soldier model.
- 5631. By SirVer
-
Fix from nomeata
- 5632. By Jens Beyer
-
merge from spice-up-cmake branch
- 5633. By Jens Beyer
-
add target autotest only if WL_UNIT_TESTS is enabled
- 5634. By Jens Beyer
-
reorder libraries for linking as before merge
- 5635. By Jens Beyer
-
include test_widelands_
scripting only when WL_UNIT_TESTS is ON - 5636. By Jens Beyer
-
link SDLMain only in case of non-test environment
- 5637. By Jens Beyer
-
remove 'optimizepics' target
- 5638. By Jens Beyer
-
widelands_all library is first in linking
- 5639. By Jens Beyer
-
added WL_EXTRA_
LINK_LIBRARIES to specify which libraries should be used for linking; the list is appended at the end of the linking libraries - 5640. By SirVer
-
Fixed color output inside of vim. Should not be there
- 5641. By Nasenbaer
-
Fix for file transfer (the maximum number of all bytes (file part + commands) should not be bigger than 1024
- 5642. By Tino
-
merge fix branch
- 5643. By Jens Beyer
-
Remove SCons files and old unneeded files
- 5644. By Tino
-
correct path to supplementary files for cmake
- 5645. By Jens Beyer
-
added WL_STRICT option to treat almost every compilation warning as error
- 5646. By SirVer
-
Merged my style fixes branch. Just some, not all
- 5647. By SirVer
-
More style fixes
- 5648. By SirVer
-
Style fixes in the economy directory
- 5649. By Nasenbaer
-
Style fixes
- 5650. By Timowi
-
fix gcc warnings to compile with -Werror
- 5651. By Timowi
-
fix one more warning
- 5652. By Timowi
-
style fixes
- 5653. By SirVer
-
Added a new optimize_pngs.py script that uses various PNG shrinking tools to optimize our pngs
- 5654. By SirVer
-
Removed unused and unneeded ware flax from the barbarians. Hide cloth from the user (but keep it around) as it is currently not used
- 5655. By SirVer
-
Added carpenter to empire. Changed him to be the worker in the sawmill. Except for graphics, this fixes 536177
- 5656. By Nasenbaer
-
Style fixes and some small improvements
- 5657. By SirVer
-
Dungeon is not an enhanced building
- 5658. By Jens Beyer
-
change displayed message for disabled unit tests
- 5659. By Jens Beyer
-
one left over link from moving win32 directory fixed
- 5660. By Jari Hautio
-
Fixed to build with MSVC2008.
- 5661. By Jens Beyer
-
Lumberjacks and Stonemasons only find trees and stones which the player knows
- 5662. By Jens Beyer
-
change displayed message for disabled unit tests and enabled/disabled strict mode
- 5663. By Sigra
-
Merge style fixes.
- 5664. By Nasenbaer
-
Style fixes
- 5665. By Jens Beyer
-
Since build dir is empty, we can use it for compilation in compile.sh
- 5666. By Jens Beyer
-
added some compile.sh related files to .bzrignore
- 5667. By Jens Beyer
-
added removal of old build directory and removed creation of symlinks for old 'make lang'
- 5668. By Nasenbaer
-
Introduce new window class "HelpWindow" for easier and unique help window formation + a 'const' for a literal parameter makes no sense. Remove the const change in icons.h/.cc
- 5669. By Jens Beyer
-
remove old locale symlink in case of moving to new compile directory in compile.sh
- 5670. By Timowi
-
change std::vector,list etc [] to .at() in defaultAI and fix two container_iterate
- 5671. By Timowi
-
delete flag from new_flags in lose_immovable()
- 5672. By Timowi
-
fix crash in handle NETCMD_FILE_PART if HAVE_VARARRAY is not set.
- 5673. By Timowi
-
try to fix crash in game logic.
- 5674. By Timowi
-
fix the last commit
- 5675. By Jens Beyer
-
do not reconfigure config.h during make
- 5676. By Jens Beyer
-
removed stray files from SCons build system
- 5677. By Timowi
-
clean up my last fix
- 5678. By Chuck Wilder
-
New animation and menu icon for empire carpenter worker
- 5679. By Nasenbaer
-
Translation update
- 5680. By Nicolai Hähnle
-
Fix some style warnings
- 5681. By Nicolai Hähnle
-
Fix more style errors
- 5682. By SirVer
-
merged qcs svn handling removal. An anachronismus which we finally got rid from
- 5683. By Nicolai Hähnle
-
Increase line length limit to 110
- 5684. By Nicolai Hähnle
-
Savegame compatibility fixes and start a library of test games
This merge contains a bunch of assorted fixes for compatibility issues
related to removal of barbarian flax and introduction of empire carpenter. - 5685. By Jens Beyer
-
Exclude test sources and src/scripting/pdep/ from CodeCheck
- 5686. By SirVer
-
Enqueue Cmd_CalculateSt
atistics in all game types - 5687. By SirVer
-
More multiplayer scenario fixing
- 5688. By Nasenbaer
-
Fix multiplayer savegame loading UI + improve multiplayer UI
- 5689. By Jari Hautio
-
Fixed scripting test to compile with msvc2008. Boost stdint definitions and used 3rdparty stdint.h definitions dont work together.
- 5690. By Jari Hautio
-
Fixed to link with msvc2008. Consistently use struct Surface.
- 5691. By Nasenbaer
-
Add more infos to multiplayer UI and add a slightly better looking Empire icon
- 5692. By SirVer
-
Merged roughly 100 commits worth of ship logic, lua updates and atlantean scenario 1 stuff
- 5693. By Nasenbaer
-
Small fixes
- 5694. By Nasenbaer
-
Update locales and rewrite pot files for new strings
- 5695. By Timowi
-
fix use of uninitialized memory in Texture. Was not a error but created a output in valgrind
- 5696. By Timowi
-
fix include
- 5697. By Chuck Wilder
-
Add trial graphics for Atlantean campaign
- 5698. By Chuck Wilder
-
More new place-holder graphics
- 5699. By Nasenbaer
-
typo fixes and pot update
- 5700. By Chuck Wilder
-
Place-holder graphics for Atlantean Campaign
- 5701. By Chuck Wilder
-
Tweaked Atlant Campaign Graphics
- 5702. By Chuck Wilder
-
Added animations for new Atlantean shipwright worker.
- 5703. By Nasenbaer
-
Two fixes
- 5704. By SirVer
-
Shipwright for the atlanteans and cloth for the barbarians get a position in the wares display bracket, otherwise they are drawn in 0,0 and hide the information of the worker/ware that is displayed there
- 5705. By SirVer
-
Overwrote filler text of atlanteans campaign description
- 5706. By Nasenbaer
-
Revert a part of my last commit - seems my thoughts got mixed up :) sorry.
- 5707. By Nasenbaer
-
And fix for my lua code...
- 5708. By Chuck Wilder
-
Replaced some graphics for Atlant Campaign
- 5709. By Chuck Wilder
-
Adjusted Atlantean Cmpaign portraits to stand taller in their frames.
- 5710. By Tino
-
small variable declaration fix to make it compile on win32
- 5711. By Nasenbaer
-
Add support for "closeable" players in multiplayer savegames + fix a bug in mutliplayer UI
- 5712. By Chuck Wilder
-
Added new shipyard building for Atlanteans and resized the Atlantean shipwright worker
- 5713. By Nasenbaer
-
Fix problems from my last commit
- 5714. By Nasenbaer
-
Fix player color icon in multiplayer games
- 5715. By Nasenbaer
-
Try to fix player names in multiplayer games
- 5716. By Sigra
-
Add another test case for the C++ code style checkers.
- 5717. By Chuck Wilder
-
Enhance Atlantean shipyard
- 5718. By Chuck Wilder
-
Adjust conf files for Atlantean shipwright worker walkload, planks ware hot spot and trunk ware hot spot.
- 5719. By SirVer
-
Fixed remaining style errors
- 5720. By SirVer
-
Passing nil to any set_wares function lead to a crash. Added two new test cases and a proper fix
- 5721. By SirVer
-
Tweaked were message boxes would appear and how tall they are. This reduces the chance to oversee some text
- 5722. By Nasenbaer
-
New user interface and lua bindings for sharing a starting position into another player.
- 5723. By Nasenbaer
-
Two small fixes for multiplayer UI
- 5724. By Chuck Wilder
-
New Atlantean shipyard building and new animation for ship-construction, idle and sailing
- 5725. By SirVer
-
Made buttons in new economy options window repeating
- 5726. By SirVer
-
changed display name of goldstone to Gold Ore. Kept goldstone as internal name for compatibility
- 5727. By Chuck Wilder
-
New selection indicator for ware lists
- 5728. By Chuck Wilder
-
Adjusted colors on Atlantean Campaign graphics
- 5729. By Chuck Wilder
-
Resized Jundlina image that I had uploaded in error
- 5730. By SirVer
-
Added a shipwright worker. Fixed a text. Fixed a typo
- 5731. By SirVer
-
Merged angryone's fixes branch with some modifications by myself
- 5732. By SirVer
-
Added better difficulty descriptions to the campaign selection menu
- 5733. By SirVer
-
Surround direct speech with ""
- 5734. By SirVer
-
fixed description and names in elemental files of scenario maps
- 5735. By SirVer
-
Updated catalog files
- 5736. By Chuck Wilder
-
Gave Princess Jundlina some bling :)
- 5737. By Chuck Wilder
-
Adjust princess and sidolus graphics
- 5738. By Chuck Wilder
-
Ooops! Resized ANOTHER large file loaded in error
- 5739. By Chuck Wilder
-
Bug#671958 - Resized two loading image files from 2560x1920 to 1280x960 for a savings of 2001kB
- 5740. By Nicolai Hähnle
-
Worker:
:fetchfromflag: Sanity check that the item still wants to enter the building This fixes a very subtle race condition that can occur when an item's transfer
is cancelled because of enhancing a building while the building's worker carries
that item into the building. - 5741. By Nasenbaer
-
Fix a minor minor bug in the new multiplayer UI and initialize m_ai per default as empty string in Player class constructor
- 5742. By Nasenbaer
-
Initialize the full set of variables - be paranoid - better saver than save - no space for uninitialized values ;)
- 5743. By Nicolai Hähnle
-
Fix crash in Worker:
:return_ update When the "location" signal got overwritten (e.g. because of the soldier
blocking logic), this could cause a segmentation fault. - 5744. By Sigra
-
Merge many fixes for const correctness and style. Some improvements on the style checking, including integrating the python codechecker among the other tools and marking almost all of the grep checks redundant. Cut out a lot of unused cruft from the lua files (including some whole files). Add some FIXME comments where issues were found. Optimize the work programs of each tribe's smelting works. Now they are only skipped if there is a good reason. So now the wares are accumulated in their more refined form in case of abundance. (Similar to how the atlantean mill already worked.)
- 5745. By Nasenbaer
-
Improvements and fixes for the multiplayer launchgame menu
- 5746. By Tino
-
smelting config of atlantians refers to goldstone instead of goldore
- 5747. By SirVer
-
Reverted revision 5744 as it broke automatic lua documentation creation
- 5748. By Timowi
-
set background for buttons used by watchwindows in use-single-
watchwindow- mode - 5749. By SirVer
-
Missing strings marked for translations. Found by Dirk Stoecker. Also updated catalogs to get those into translations.
- 5750. By Chuck Wilder
-
Added animation, playercolor and a new look to the barbarian headquarters building from its new 3D model.
- 5751. By Chuck Wilder
-
Added new animation for the barbarian sentry building from its newly recreated 3d model. The idle state has been animated and contains playercolor. There is a new build sequence, as well. One frame has also been uploaded to represent an as yet unsupported worker-away state.
- 5752. By Chuck Wilder
-
Modified the build sequence of the barbarian sentry building to be 4 frames with each successive frame depicting another 25% of progress to completing the building.
- 5753. By SirVer
-
More translation markers from Dirk Stoecker
- 5754. By SirVer
-
Even more translation markers from Dirk Stoecker
- 5755. By Nicolai Hähnle
-
Refactor graphics system to clarify role of Picture and Surface
Pictures are things that can act as the *source* of a blit, while Surfaces
are things that can act as the *destination* of a blit -- or, more generally,
can be rendered to using a RenderTarget.In SDL mode, these two things coincide, but in OpenGL they don't.
Both can be accessed directly via the IPixelAccess interface, though with a
considerable performance penalty in the general case; in particular, OpenGL
texture readback is expected to be very slow usually. - 5756. By Chuck Wilder
-
Changed texture of barbarian headquarters stonework and recreated the palisade in larger logs of blackwood.
- 5757. By SirVer
-
Fixed a translation bug
- 5758. By Nicolai Hähnle
-
Fix attempt for bug #683082: copy constructor should take const argument
- 5759. By Chuck Wilder
-
Added playercolor, new idle animation and build sequence graphics for the barbarian stronghold from its new 3D model.
- 5760. By Chuck Wilder
-
Changed texture of stonework on barbarian headquarters building.
- 5761. By Nicolai Hähnle
-
Fix regression: crash in Slider offscreen rendering when in SDL mode
- 5762. By Nicolai Hähnle
-
Fix regression: same crash as previous commit for VerticalSlider
- 5763. By Chuck Wilder
-
Added idle animation, a build sequence and playercolor to the barbarian barrier building from its new 3D model.
- 5764. By Nicolai Hähnle
-
Transfer priority at flags (by Nizamov Shawkat)
Instead of processing items in strict FIFO order, transfer with high priority
are given preference.Priority can be controlled by setting low/medium/high priority in the
production site wares queues; on top of that, constructionsites are given
higher priority than everything else. - 5765. By Chuck Wilder
-
Barbarian donjon received new design with player color and build animation from its new 3D model.
- 5766. By Chuck Wilder
-
Adjusted scale of barbarian carrier idle animation.
- 5767. By Nicolai Hähnle
-
RenderTarget: remove explicit copy constructor
An identical copy constructor should automatically generated by the compiler,
so this is simply unneeded cruft. - 5768. By Jens Beyer
-
Match barbarian donjon idle pictures in military sites to the updated ones in tribe
- 5769. By Chuck Wilder
-
Updated the newly changed barbarian building images in the global militarysites folder.
- 5770. By Nicolai Hähnle
-
Cleanup UI::Panel caching logic
There is now a unified, working mechanism to cache the looks of a UI::Panel.
It has to be enabled explicitly using set_cache(true). Due to limitations in
the SDL blitter, it only works for opaque panels.The caching facility is a no-op in OpenGL mode.
All UI::Windows are cached by default. Some windows are not currently cached,
including the WatchWindow (where caching is clearly useless), the MiniMap,
and various statistics windows.The latter could theoretically re-eanble caching with some careful use of
update() calls, if there should be performance concerns about redrawing them
each frame. Most likely, that redraw is drowned out by the terrain renderer
anyway, and I haven't bothered to do profiling. - 5771. By Jens Beyer
-
remove special handling of localedir for Linux, it is now always part of datadir
- 5772. By Nasenbaer
-
Fix global militarysites conf files
- 5773. By Chuck Wilder
-
Barbarian battlearena was restyled and received new idle animation with playercolor plus a new build sequence from its recreated 3D model.
- 5774. By Chuck Wilder
-
Cropped barbarian battlearena images and replaced carrier worker with trainer worker for the battlearena.
- 5775. By Chuck Wilder
-
Adjusted scale of barbarian stonemason.
- 5776. By Nasenbaer
-
Fix loading of settlers 2 maps in Editor
- 5777. By SirVer
-
Added nizamov to the list of coders
- 5778. By Nasenbaer
-
Some work on the help window
- 5779. By Nicolai Hähnle
-
AbstractWaresDi
splay: update the panel properly when selection and hiding changes This fixes a bug where the panel cache for the warehouse and economy configure
windows wasn't refreshed properly in software rendering mode. - 5780. By Nicolai Hähnle
-
Adjust forward declarations for ImmovableProgram to struct
- 5781. By SirVer
-
Removed unused audio file
- 5782. By SirVer
-
Play a fanfare sound (by Solatis) when a military site is occupied.
- 5783. By SirVer
-
Properly implemented the playing of the fanfare sound
- 5784. By SirVer
-
added another fanfare for when you are under attack. Removed spoken military messages as english text is not fitting for the feeling. Also removed the site_defeated and site_lost messages completely as they were not particularily useful
- 5785. By Nasenbaer
-
further work on help window and multiplayer launch game menu help + pot file update
- 5786. By Jari Hautio
-
Silenced some unnecessary warnings in visual studio build.
- 5787. By Jens Beyer
-
make libwidelands_all static at all occasions and get rid of LinkExecutable macro
- 5788. By SirVer
-
Added a dirty workaround to fix compiling on GCC 4.0
- 5789. By Nasenbaer
-
Fix two small bugs in the new multip player launch game menu
- 5790. By Nasenbaer
-
Translations update
- 5791. By Nasenbaer
-
Merge a windows fix by ab-tools
- 5792. By Nasenbaer
-
Translateability fixes in new multi player launch game menu
- 5793. By Nasenbaer
-
Last ToDo for the multi player launchgame menu :)
- 5794. By Nasenbaer
-
Commit a defaultAI patch by carli with some minor changes by me
- 5795. By SirVer
-
Improved help texts in conf files by kristin and chuckw
- 5796. By Nasenbaer
-
Add dummy campaign map to show the players, that there are planned further maps, but they are not yet implemented.
- 5797. By Nasenbaer
-
A small translateability fix + update of pot files
- 5798. By Nasenbaer
-
Add carli to the developers list :)
- 5799. By Nasenbaer
-
Style fixes
- 5800. By Nasenbaer
-
Fix bug #680207 - Economy settings missing ores
- 5801. By Nasenbaer
-
Small usability bug fixes for new multi player launch game menu + update of copyright
- 5802. By Nasenbaer
-
Merge hjd's fix of atlantean miller's description with minor change by me
- 5803. By Nasenbaer
-
Small fix to avoid attacks of the enemy in tutorial01.wmf
- 5804. By Jari Hautio
-
Link additional apple and win32 dependencies through widelands_all to clean up code required for unit tests.
- 5805. By Nasenbaer
-
Update ChangeLog
- 5806. By Nicolai Hähnle
-
Productionsite: silence a signed vs. unsigned warning
- 5807. By Nicolai Hähnle
-
immovable.cc: Fix warning about initializer order in constructor
- 5808. By Nicolai Hähnle
-
animationgfx: Fix format string vs. parameter type mismatch
- 5809. By Nicolai Hähnle
-
Fix crash when savegame is deleted while the Load Game screen is open
- 5810. By Nicolai Hähnle
-
Fix bug #695016: Refresh soldiers list when soldiers are healing
- 5811. By Nicolai Hähnle
-
Refresh window caches for soldier list and economy configuration on changes
- 5812. By Nasenbaer
-
A hopefully complete fix for bug #659884
- 5813. By Nasenbaer
-
Commit fix for bug #707147 by Foppe Benedictus + decided fix for bug #695018 + a small style fix for my last commit
- 5814. By Nicolai Hähnle
-
Fix a "Hall of Mirrors" effect in the main menu in specific screen resolutions
Sometimes, the resizing in get_resized_
picture( ) gets a scaled picture size
that is off by one, resulting in a one-pixel wide strip in the final picture
that is not covered by the scaled original.Simply draw solid black bars in such regions to avoid ugly rendering artifacts.
- 5815. By Nicolai Hähnle
-
Initial refactoring of Font support
Major changes include:
- Word wrapping is done in a separate struct WordWrap, so that the wrapping
results can be stored in an easily usable data structure to answer questions
such as which line a specific character ended up in- The cache of pre-rendered strings specifically stores only lines of text,
so that multi-line texts no longer generate huge pictures, and only those
lines are rendered that can actually be seen- Since the caret is no longer part of the cache, it can easily be rendered
in OpenGL mode (bug #594688)Note that the refactoring is not complete. In fact, the entire rich text
renderer needs to be refactored to match the new philosophy in order to
enable hassle-free picture rendering in OpenGL mode (bug #594693), and in
order to fix a scrolling bug that manifests in software rendering mode
(bug #710250). - 5816. By Nasenbaer
-
Send message if saved game is directory
- 5817. By Nasenbaer
-
Fix bug #695735 - "scrollbar damaged in multiline textboxes in (unique) windows in FS menu" - in fact the problem was later resizing of multilinetextareas, where scrollbars were not resized.
- 5818. By Nasenbaer
-
Fix bug #580073 - Objectives menu not updated fast enough
- 5819. By Nasenbaer
-
Fix bug #536149: miner/master miner mixed up after enhancing to deep Mine
- 5820. By Nasenbaer
-
Fix bug in t01.wmf - lua code was outdated
- 5821. By Nasenbaer
-
Merged current version of translations branch
- 5822. By Nasenbaer
-
Add translation files for dummy scenario (so the explanation is translated as well) + update all the other pot files as well.
- 5823. By Nasenbaer
-
Implement wishlist bug #660869: Savegames do not store name of the win condition
- 5824. By Chuck Wilder
-
Added kingcreole's new barbarian mines!
- 5825. By Chuck Wilder
-
Added kingcreole to list of graphicians on the Developers Page
- 5826. By Jari Hautio
-
Fixed iconv linkage in windows visual studio build.
- 5827. By SirVer
-
Description fixes by hjd
- 5828. By SirVer
-
Updated language catalogs
- 5829. By Chuck Wilder
-
Added fraang's new build help icons! Replaced menu_toggle_
buildhelp. png, menu tabs and other icons that reflected the original build help symbols. Added fraang to the Graphicians in the Developers List. - 5830. By Chuck Wilder
-
Added kingcreole's new granitemine animation for the barbarians.
- 5831. By Nasenbaer
-
Merge martin's i18n branch :)
- 5832. By Nasenbaer
-
Add an include to fix compilation on GCC 4.6 - thanks go to user triceo who provided the patch :)
- 5833. By Nasenbaer
-
Fix for the case, that VERSION file is empty
- 5834. By Nasenbaer
-
Fix bug #720834 - Size Icons Too Big in Building Statistics Window
- 5835. By Nasenbaer
-
Fix bug #720338: Options show wrong resulution as selected if no ~/.widelands/conf exists
- 5836. By Nasenbaer
-
Fix bug #606925: In-game resolution internationaliz
ation - 5837. By Nasenbaer
-
Fix bug #708328: infinite loop(s) in building_
statistics_ menu.cc - 5838. By Nasenbaer
-
Add some forgotten developers - sorry girls and guys :)\!
- 5839. By Nasenbaer
-
Improved Version of dedicated server - yet unfinished and still opening a UI
- 5840. By Nasenbaer
-
All commands implemented - now we only need to rip out the UI ;)
- 5841. By Nasenbaer
-
And we've got a GUIless dedicated server :)
- 5842. By Nasenbaer
-
Last missing commit from dedicated branch
- 5843. By Nasenbaer
-
Small changes
- 5844. By Nicolai Hähnle
-
Merge cleanups by Hans Joachim Desserud
- 5845. By Tino
-
small win32 fix: it is Sleep() not sleep(). Because it takes microseconds as arguments i changed the value to 1000 to wait a second, if a microsecond was intended, please change back.
- 5846. By Nicolai Hähnle
-
Add some game tips to inform players of useful keyboard shortcuts
- 5847. By Chuck Wilder
-
Added kingcreole's new barbarian well and made minor correction to list of developers
- 5848. By Nicolai Hähnle
-
Refactor richtext rendering to store layout information in a RichText structure
Notable changes are:
1. Richtext is now no longer stored in one big off-screen picture. This change
should allow us to have longer richtext without problems, and it simplifies
support of images in OpenGL mode (bug #594693).2. Richtext is pre-layouted, and the layout stored in a dedicated data
structure, which trivially fixes the chat display bug #710250.3. Ascent and descent of text is calculated more precisely, which allows us to
have more natural looking multiline text.4. Text flows around images more naturally now, wasting less space.
- 5849. By Nicolai Hähnle
-
Fix bug #674464: brighten_rect darkens on negative factors in OpenGL mode
Note that this requires functionality from the imaging subset, but this should be
avaible pretty much everywhere. - 5850. By Nicolai Hähnle
-
Fix bug #714122: Screenshots now right-side up in OpenGL mode
Basically, we have to compensate for the fact that the OpenGL coordinate
system is upside-down compared to the one used by SDL. - 5851. By Nicolai Hähnle
-
Fix regression: Alignment of multiline textareas works correctly again
- 5852. By Nasenbaer
-
Make win32 behaviour mostely equivalent to the Unix version - thanks to Tino for pointing me to Sleep()
- 5853. By Nasenbaer
-
My last mini feature for build16: chat history
- 5854. By SirVer
-
Update catalogs for build 16 first-snow feature freeze
- 5855. By Nicolai Hähnle
-
Tino's changes to use GLEW, with some modifications
Use GLEW on all platforms, since we'll probably use it in other places as well
in the future. Also, document it as a new dependency. - 5856. By Tino
-
- added missing include for windows
- adapt wait times - 5857. By SirVer
-
Undid a change made in r5818 that broke the Lua testsuite
- 5858. By SirVer
-
Renamed Player.tribe and MapSlot.tribe to tribe_name to make it possible to add a wrapping for the tribe description which might than be called tribe
- 5859. By SirVer
-
Merged fixes to the compiling README by David Allwicher with very minor editing by myself
- 5860. By SirVer
-
Merged the datadir branch by David Allwicher which should make live easier for packagers
- 5861. By SirVer
-
Patch by Martin and Carli keeping the ordering of messages in tact.
- 5862. By SirVer
-
Removed all mentions of Scons. Also removed some mentions of svn
- 5863. By SirVer
-
Thanks to pluto library in CREDITS
- 5864. By SirVer
-
Update ChangeLog. Went through all commits since build 15.
- 5865. By SirVer
-
Merged latest translations
- 5866. By Jari Hautio
-
Support linking static version of glew library on Win32.
- 5867. By Nasenbaer
-
Merge aber's bug fix branch, which fixes a segfault at startup. Further a minimal usability bug fix for getting an errormessage from the dedicated server as answer on an unknown command.
- 5868. By Jari Hautio
-
More reasonable sleep times on windows for dedicated server. Sleep() takes integer argument and Sleep(0) is not good for lowering processor usage. On Windows Sleep resolution is tens of milliseconds so few millisecond sleeps are not reality.
- 5869. By Nicolai Hähnle
-
Sanitize richtext in chat messages on the client side
The previous server-side approach was at least partial snake oil, because
a malicious game host could easily remove those checks.The current checks still do not eliminate richtext entirely from system
messages, because formatting is used in the context of the meta server and
dedicated server, but it should mitigate the scope of potentially accessible
bugs (not that there are any known problematic bugs in the richtext renderer
in the first place, but better safe than sorry). - 5870. By Nicolai Hähnle
-
Fix bug #724169: Military site window no longer changes size erratically
Add Box::set_
min_desired_ breadth to set a minimum size for boxes, which is
used by the soldier list to fix the width to the maximum of strings that
will be displayed. - 5871. By Nicolai Hähnle
-
Fix bug #722789: Always flush animations before loading
This is a quick and easy fix, though looking at this, we might want to simply
cache all pictures in the long run, so that subsequent game loads can be faster
than the first load. That would be too intrusive a change at the current point
in time, though. - 5872. By Nicolai Hähnle
-
Fix bug #691909: Compatibility with old savegames with barbarian battlearena
- 5873. By Nicolai Hähnle
-
Fix bug #697375: Handle state.coords == Null() correctly in soldier attack code
Fixes loading older savegames; also added a savegame from build14 for future
testing. - 5874. By Nicolai Hähnle
-
Fix bug #670980: Cmd_EnemyFlagAc
tion::Write handles disappeared flag - 5875. By Nasenbaer
-
Fixes from Jari and me to fix a security issue.
- 5876. By Nicolai Hähnle
-
Fallback to global exception handling when loading the tutorial
There is no need to special-case exception handling, and this happens to also
fix bug #728057. - 5877. By Nicolai Hähnle
-
Fix bug #612348: Soldiers always move out of buildings to battle
- 5878. By Nicolai Hähnle
-
Allow can_act_as workers when loading transfers from savegames
No longer complain when a master miner is transferred to a mine to fill a
junior position. This fixes bug #687342. - 5879. By Nasenbaer
-
Merge patch by martin
- 5880. By Nasenbaer
-
Lowest possible Sleep() value for Windows + comment - all other fixes are more or less a feature and so may be implemented after build16 ;)
- 5881. By Nasenbaer
-
Update Changelog
- 5882. By Nasenbaer
-
Sorry my fault - the easiest fixes still need a check before committing - I better go to bed now ;)
- 5883. By Nasenbaer
-
Revert last fix and commit new fix along the lines aber suggested for bug #729772 - this time only the fontselection code (which was broken) is changed, so nothing else will be affected. However something seems to really go wrong.
- 5884. By Nasenbaer
-
Style fixes (including bug fix to show last entries) + updated of developers file
- 5885. By Nasenbaer
-
decrease window size if the available size is smaller than the desired window size
- 5886. By Nicolai Hähnle
-
Fix bug #647583: Do not show the "Destroy road" button in replays
- 5887. By Nasenbaer
-
Wow this was a very stupid bug - I better stop committing to trunk until I've learned, that replacing all dots in a file name means removing the suffix .wmf - seems nobody played the latest development version in the last few days, as all official maps were unplayable via network... :(
- 5888. By SirVer
-
Adjusted the height of message boxes in scenarios
- 5889. By SirVer
-
Reenabled removing players in the Editor
- 5890. By SirVer
-
Update translation catalogs
- 5891. By SirVer
-
Merged in new translations
- 5892. By Chuck Wilder
-
Upgraded iron and gold wares to metal ingots for all tribes
- 5893. By Chuck Wilder
-
Added fraang's upgraded build help icons with transparencies.
- 5894. By David Allwicher
-
Merged in new and fixed translations
- 5895. By SirVer
-
Fix a small jump in soldier windows
- 5896. By Nicolai Hähnle
-
Fix uninitialized variable that was flagged by Valgrind
This missing initialization is probably benign, but initializing the modules
field with 0 is the correct behaviour. - 5897. By SirVer
-
removed 'until now' from ChangeLog
- 5898. By SirVer
-
Added WL_RELEASE file for build-16 rc1
- 5899. By Tino
-
- update version string in several build files
- 5900. By SirVer
-
WL_RELEASE should not be in trunk, only in build 16 branch. Please do not push build16 branch to trunk
- 5901. By Nasenbaer
-
Fix program of deep_goldmine
- 5902. By SirVer
-
Backed out the fix introduce in 5901. It is a bug, but the changes would need more testing and are not critical for build 16
- 5903. By SirVer
-
Committed Jaris suggestions for Localization fixes
- 5904. By Tino
-
mine gold instead of coal
produce goldstone instead of gold - 5905. By SirVer
-
Completed repeat of revision 5901 since the feature freeze is lifted now
- 5906. By David Allwicher
-
Try to parse revision from debian/changelog
- 5907. By David Allwicher
-
remove illegal char
- 5908. By David Allwicher
-
catch Exeption in case bzr is not found
- 5909. By David Allwicher
-
don't require tilde in version string
- 5910. By David Allwicher
-
Merge branch to fix some warnings from png.h and in request.cc
- 5911. By David Allwicher
-
Merged in new translations
- 5912. By Nasenbaer
-
Fix the fix for bug #536149 - similar to the statement of the first fix: bug should be fixed now ... + typo in CMakeLists.txt
- 5913. By Nasenbaer
-
Fix animal positions on two maps
- 5914. By SirVer
-
Applied fixes for FreeBSD from Nathan Peters
- 5915. By SirVer
-
Fix for emp02.wmf by Leif Standstede
- 5916. By SirVer
-
Corrected the name of Leif
- 5917. By Martin
-
Added names and locales for languages: Asturian, Greek, Javanese, Chinese (Simpl.), Chinese (Trad.)
- 5918. By Nasenbaer
-
merge hjd's fix for bug 565406 - focus for save window
- 5919. By Nasenbaer
-
Add saving via chat command functionality to the dedicated server
- 5920. By Nasenbaer
-
small improvement to last commit
- 5921. By Nasenbaer
-
Merge bug fix by hjd for bug 734409 - campaign texts about enhancing metalworks
- 5922. By Nasenbaer
-
Merge hjd's ware-data branchs
- 5923. By Nasenbaer
-
Merge bug fix by hjd for bug 795457 - focus in chat window
- 5924. By SirVer
-
New desert world graphics for beach, desert and drysoil by Astuur.
- 5925. By SirVer
-
Fixed a small typo in the documentation of wl.map.
Field.resource_ amount - 5926. By SirVer
-
Removed stronghold mentionings from campaign texts. Patch by Leif Sandstede and Hans Joachim Desserud
- 5927. By Nasenbaer
-
Removed ancient no more used code and realigned code for better visibility a bit
- 5928. By Chuck Wilder <email address hidden>
-
Added Astuur's new water and ice floe terrain for desert, greenland and winterland
- 5929. By Chuck Wilder <email address hidden>
-
Adjusted framerate for winterland's ice floe animation from 8fps to 5fps
- 5930. By Chuck Wilder <email address hidden>
-
Added Astuur's new quarry stones for desert world
- 5931. By Chuck Wilder <email address hidden>
-
Added Astuur's new quarry stones and standing stones for all worlds
- 5932. By Chuck Wilder <email address hidden>
-
Removed old animation artifacts.
- 5933. By Chuck Wilder <email address hidden>
-
Corrected filenames inadvertantly capitalized by Windows
- 5934. By Chuck Wilder <email address hidden>
-
Added Astuur's new blackland water animation
- 5935. By Chuck Wilder <email address hidden>
-
Rescaled sstones 1-5 for all worlds
- 5936. By Chuck Wilder <email address hidden>
-
Added new roof and animation to empire armorsmithy and new roof to the empire weaponsmithy
- 5937. By Chuck Wilder <email address hidden>
-
Animated empire weaponsmithy build and working sequence
- 5938. By Chuck Wilder <email address hidden>
-
Remodeled the empire bakery
- 5939. By Chuck Wilder <email address hidden>
-
Added working animation for empire bakery
- 5940. By Chuck Wilder <email address hidden>
-
Updated empire smelting_works with new animations
- 5941. By SirVer
-
New empire fishing rods by Astuur
- 5942. By Chuck Wilder <email address hidden>
-
New working animation for empire smelting_works
- 5943. By SirVer
-
Added barriers to some maps. Suggested and patched by hjd
- 5944. By Nasenbaer
-
Add new win condition endless game (no fog) + fixed a broken conf file in winterland
- 5945. By Nasenbaer
-
merge current status of translations
- 5946. By Nasenbaer
-
Look of the street is now world depending (files rodt_... in worlddirectory/
pics) - 5947. By Chuck Wilder
-
New working animation for empire armoursmithy
- 5948. By Chuck Wilder <email address hidden>
-
Corrected conf file for sstones1 in all worlds
- 5949. By Nasenbaer
-
Add unoccupied state for buildings, played if a building is already built up complete, but no worker has yet entered the building. Added unoccupied state for barbarian helmsmithy, bakery, donjon, sentry and barrier - all other buildings without unoccupied state play the idle state per default.
- 5950. By Nasenbaer
-
Check client before any interaction in host commands
- 5951. By Nasenbaer
-
Fix Widelands Innosetup script for Windows installer to clean up all date before upgrading to a newer version
- 5952. By chuckw20 <email address hidden>
-
Modified empire armoursmithy and added unoccupied image
- 5953. By chuckw20 <email address hidden>
-
Corrected typo in empire armoursmithy conf file
- 5954. By chuckw20 <email address hidden>
-
New roofs for empire brewery, burner, donkeyfarm, farm, forester, inn, mill and tavern. Added PlayerColor to windmill.
- 5955. By chuckw20 <email address hidden>
-
New roofs for empire piggery, scouts_house, sheepfarm, and stonemasons_house. Added playercolor to scouts_house.
- 5956. By Nasenbaer
-
Fix several issues of dedicated server handling and general multiplayer
- 5957. By chuckw20 <email address hidden>
-
Added Astuur's new textures for the blackland quarry stones and added a new roof for the empire toolsmithy.
- 5958. By chuckw20 <email address hidden>
-
New roofs for empire vineyard, wareouse, weaving_mill and winery. Completes the re-roofing for empire buildings. Added PlayerColor to weaving_mill.
- 5959. By Nasenbaer
-
Added motd functionality to dedicated server, smallered idle cpu usage of dedicated servers drastically, fixed a problem with connecting to servers from metaserver - before only the first recieved ip was saved, so widelands always tried to connect to the server that was first selected - independent from whether it was connectable, whether it is already in game or perhaps even already shut down - so this is fixed now ;)
- 5960. By chuckw20 <email address hidden>
-
Added build and working animation to empire weaving_mill. Modified PlayerColor patterns in empire weaving_mill and windmill.
- 5961. By chuckw20 <email address hidden>
-
Added new working animation for empire bakery, Astuur's fishing rod to the barbarians, Astuur's iron slab graphic for all tribes, and Astuur's new animated sumpf terrain for greenland.
- 5962. By Nasenbaer
-
Added empty state for mines - once a mine is empty, the default animation will be set from 'idle' to 'empty', which is basically the same animation, just with an additional sign on the mine's wall showing a big black cross.
- 5963. By Nasenbaer
-
Fix for road loading in editor
- 5964. By Nasenbaer
-
Fix for previous revision for dedicated servers
- 5965. By Nasenbaer
-
Partly merge current scenario-branch into trunk - bringing first (yet maybe to be tuned) multiplayer scenario to widelands.
- 5966. By chuckw20 <email address hidden>
-
Added new models for barbarian fortress and citadel
- 5967. By chuckw20 <email address hidden>
-
Cropped barbarian fortress, added barbarian icon image to headquarters and adjusted its palisade
- 5968. By Nasenbaer
-
(Multiplayer) Fix a crash when switching to a saved game after having a scenario map selected before.
- 5969. By Nasenbaer
-
Fix bug #842960
- 5970. By chuckw20 Chuck Wilder <email address hidden>
-
Muted the color of the awning and emblem on the barbarian headquarters
- 5971. By chuckw20
-
Added build animation for the barbarian fortress
- 5972. By chuckw20
-
Corrected viewing angle of barbarian fortress
- 5973. By Nasenbaer
-
Fix for animation for building upgrade
- 5974. By SirVer
-
Merged latest translations
- 5975. By chuckw20
-
Completed build animation for barbarian citadel
- 5976. By chuckw20
-
For Bug #695035, adjusted hot spots
- 5977. By SirVer
-
Merged ware_hotspot fix by shevonar
- 5978. By SirVer
-
Merged fix to confgettext.py by shevonar
- 5979. By SirVer
-
Updated message catalogues
- 5980. By Victor Pelt
-
fix codecheck violations
- 5981. By Victor Pelt
-
fix code check violation
- 5982. By Victor Pelt
-
fix for bug 786243
create extra collumns if wares don't fit in a single collumn because of low resulution - 5983. By SirVer
-
Added shevonars real-name
- 5984. By Nasenbaer
-
merge lp:~shevonar/widelands/feature-random-tribe-and-AI, thanks shevonar for this cool feature :)
- 5985. By Victor Pelt
-
update trying to get branch in sync
- 5986. By Victor Pelt
-
left over merge issues
- 5987. By Victor Pelt
-
main tree compile.sh
- 5988. By Victor Pelt
-
fix all merge conflixts. runs and compiles now
- 5989. By Victor Pelt
-
merge with trunk
- 5990. By Victor Pelt
-
local improvement
- 5991. By Victor Pelt
-
merge with main tree
- 5992. By Victor Pelt
-
evict on construction sites working properly now
- 5993. By Victor Pelt
-
small cleanup
- 5994. By Victor Pelt
-
make working positions into a vector
improve evicting of production site
Hans Joachim Desserud (hjd) wrote : | # |
Hi all.
I haven't been involved in the review process for this proposal, so I don't know how close it was to making its way into trunk. However, we have had a different proposal for solving this problem [1] which has been merged and released in build 18 rc1. I've therefore taken the liberty to close this merge proposal. :)
[1] https:/
Unmerged revisions
- 5994. By Victor Pelt
-
make working positions into a vector
improve evicting of production site - 5993. By Victor Pelt
-
small cleanup
- 5992. By Victor Pelt
-
evict on construction sites working properly now
- 5991. By Victor Pelt
-
merge with main tree
- 5990. By Victor Pelt
-
local improvement
- 5989. By Victor Pelt
-
merge with trunk
- 5988. By Victor Pelt
-
fix all merge conflixts. runs and compiles now
- 5987. By Victor Pelt
-
main tree compile.sh
- 5986. By Victor Pelt
-
left over merge issues
- 5985. By Victor Pelt
-
update trying to get branch in sync
Preview Diff
1 | === modified file 'src/logic/building.cc' |
2 | --- src/logic/building.cc 2011-09-02 12:36:04 +0000 |
3 | +++ src/logic/building.cc 2011-09-23 21:20:33 +0000 |
4 | @@ -252,7 +252,8 @@ |
5 | m_flag (0), |
6 | m_defeating_player(0), |
7 | m_priority (DEFAULT_PRIORITY), |
8 | -m_seeing(false) |
9 | +m_seeing(false), |
10 | +m_evicted(false) |
11 | {} |
12 | |
13 | Building::~Building() |
14 | @@ -479,6 +480,30 @@ |
15 | egbase.create_immovable(pos, "destroyed_building", &t); |
16 | } |
17 | |
18 | +/* |
19 | +============= |
20 | +Remove workers from the building |
21 | +============= |
22 | +*/ |
23 | +void Building::evict(Editor_Game_Base & egbase) |
24 | +{ |
25 | + m_evicted = ! m_evicted; |
26 | + |
27 | + if (m_evicted) { |
28 | + Workers wl = get_workers(); |
29 | + Game & game = ref_cast<Game, Editor_Game_Base>(egbase); |
30 | + Workers::iterator b = wl.begin(); |
31 | + Workers::iterator e = wl.end(); |
32 | + while (b != e) |
33 | + { |
34 | + log ("Evicting worker"); |
35 | + (*b)->reset_tasks(game); |
36 | + (*b)->start_task_leavebuilding(game, true); |
37 | + ++b; |
38 | + } |
39 | + } |
40 | +} |
41 | + |
42 | |
43 | /* |
44 | =============== |
45 | |
46 | === modified file 'src/logic/building.h' |
47 | --- src/logic/building.h 2010-11-01 14:00:56 +0000 |
48 | +++ src/logic/building.h 2011-09-23 21:20:33 +0000 |
49 | @@ -143,6 +143,7 @@ |
50 | enum { |
51 | PCap_Bulldoze = 0, // can bulldoze/remove this buildings |
52 | PCap_Enhancable = 3, // can be enhanced to something |
53 | + PCap_Evict = 4 |
54 | }; |
55 | |
56 | public: |
57 | @@ -176,6 +177,8 @@ |
58 | |
59 | virtual bool burn_on_destroy(); |
60 | virtual void destroy(Editor_Game_Base &); |
61 | + virtual void evict (Editor_Game_Base &); |
62 | + bool is_evicted () const {return m_evicted;} |
63 | |
64 | void show_options(Interactive_GameBase &); |
65 | void hide_options(); |
66 | @@ -262,6 +265,7 @@ |
67 | |
68 | /// Whether we see our vision_range area based on workers in the building |
69 | bool m_seeing; |
70 | + bool m_evicted; |
71 | }; |
72 | |
73 | } |
74 | |
75 | === modified file 'src/logic/constructionsite.cc' |
76 | --- src/logic/constructionsite.cc 2011-09-10 16:13:48 +0000 |
77 | +++ src/logic/constructionsite.cc 2011-09-23 21:20:33 +0000 |
78 | @@ -147,10 +147,30 @@ |
79 | uint32_t caps = Building::get_playercaps(); |
80 | |
81 | caps |= 1 << PCap_Bulldoze; |
82 | + caps |= 1 << PCap_Evict; |
83 | |
84 | return caps; |
85 | } |
86 | |
87 | +void ConstructionSite::evict(Editor_Game_Base & egbase) { |
88 | + //toggle evict status, kick out workers |
89 | + Building::evict(egbase); |
90 | + |
91 | + if (m_evicted) { |
92 | + //builder left (or will be leaving soon) so remove builder |
93 | + m_builder = 0; |
94 | + if (m_builder_request) { |
95 | + delete m_builder_request; |
96 | + m_builder_request = 0; |
97 | + } |
98 | + } else { |
99 | + //un-evict. request a new builder |
100 | + if (m_builder.get(egbase) == 0 && m_builder_request == 0) { |
101 | + if (upcast(Game, game, &egbase)) |
102 | + request_builder(*game); |
103 | + } |
104 | + } |
105 | +} |
106 | |
107 | /* |
108 | =============== |
109 | @@ -172,6 +192,9 @@ |
110 | std::string ConstructionSite::get_statistics_string() |
111 | { |
112 | char buffer[40]; |
113 | + if (m_evicted) |
114 | + return _("(evicted)"); |
115 | + |
116 | snprintf |
117 | (buffer, sizeof(buffer), |
118 | _("%u%% built"), (get_built_per64k() * 100) >> 16); |
119 | |
120 | === modified file 'src/logic/constructionsite.h' |
121 | --- src/logic/constructionsite.h 2010-09-20 20:36:44 +0000 |
122 | +++ src/logic/constructionsite.h 2011-09-23 21:20:33 +0000 |
123 | @@ -93,6 +93,8 @@ |
124 | |
125 | virtual void log_general_info(Editor_Game_Base const &); |
126 | |
127 | + virtual void evict (Editor_Game_Base &); |
128 | + |
129 | protected: |
130 | virtual void create_options_window |
131 | (Interactive_GameBase &, UI::Window * & registry); |
132 | |
133 | === modified file 'src/logic/game.cc' |
134 | --- src/logic/game.cc 2011-09-04 18:28:23 +0000 |
135 | +++ src/logic/game.cc 2011-09-23 21:20:33 +0000 |
136 | @@ -741,6 +741,13 @@ |
137 | (get_gametime(), pi.owner().player_number(), pi, recurse)); |
138 | } |
139 | |
140 | +void Game::send_player_evict (PlayerImmovable & pi, bool const evict) |
141 | +{ |
142 | + send_player_command |
143 | + (*new Cmd_Evict |
144 | + (get_gametime(), pi.owner().player_number(), pi, true)); |
145 | +} |
146 | + |
147 | void Game::send_player_build |
148 | (int32_t const pid, Coords const coords, Building_Index const id) |
149 | { |
150 | |
151 | === modified file 'src/logic/game.h' |
152 | --- src/logic/game.h 2011-02-19 14:30:12 +0000 |
153 | +++ src/logic/game.h 2011-09-23 21:20:33 +0000 |
154 | @@ -147,6 +147,7 @@ |
155 | void send_player_command (Widelands::PlayerCommand &); |
156 | |
157 | void send_player_bulldoze (PlayerImmovable &, bool recurse = false); |
158 | + void send_player_evict (PlayerImmovable &, bool recurse = false); |
159 | void send_player_build (int32_t, Coords, Building_Index); |
160 | void send_player_build_flag (int32_t, Coords); |
161 | void send_player_build_road (int32_t, Path &); |
162 | |
163 | === modified file 'src/logic/immovable.cc' |
164 | --- src/logic/immovable.cc 2011-01-30 15:39:12 +0000 |
165 | +++ src/logic/immovable.cc 2011-09-23 21:20:33 +0000 |
166 | @@ -462,6 +462,7 @@ |
167 | (FCoords const f, Map const & map) const |
168 | { |
169 | uint32_t result = 0; |
170 | + |
171 | // Neighbours |
172 | FCoords const tr = map.tr_n(f); |
173 | FCoords const tl = map.tl_n(f); |
174 | |
175 | === modified file 'src/logic/militarysite.cc' |
176 | --- src/logic/militarysite.cc 2011-08-23 13:26:16 +0000 |
177 | +++ src/logic/militarysite.cc 2011-09-23 21:20:33 +0000 |
178 | @@ -754,4 +754,19 @@ |
179 | return 0; |
180 | } |
181 | |
182 | +/* |
183 | +======================= |
184 | +Override: MilitarySite can't evict workers |
185 | +======================= |
186 | +*/ |
187 | + |
188 | +uint32_t MilitarySite::get_playercaps() const throw () { |
189 | + uint32_t caps = ProductionSite::get_playercaps(); |
190 | + |
191 | + //exclude PCap_Evict from current caps |
192 | + caps &= ~(1 << PCap_Evict); |
193 | + |
194 | + return caps; |
195 | +} |
196 | + |
197 | } |
198 | |
199 | === modified file 'src/logic/militarysite.h' |
200 | --- src/logic/militarysite.h 2010-11-01 13:12:23 +0000 |
201 | +++ src/logic/militarysite.h 2011-09-23 21:20:33 +0000 |
202 | @@ -64,6 +64,8 @@ |
203 | char const * type_name() const throw () {return "militarysite";} |
204 | virtual std::string get_statistics_string(); |
205 | |
206 | + uint32_t get_playercaps() const throw (); |
207 | + |
208 | virtual void init(Editor_Game_Base &); |
209 | virtual void cleanup(Editor_Game_Base &); |
210 | virtual void act(Game &, uint32_t data); |
211 | |
212 | === modified file 'src/logic/player.cc' |
213 | --- src/logic/player.cc 2011-09-19 17:48:27 +0000 |
214 | +++ src/logic/player.cc 2011-09-23 21:20:33 +0000 |
215 | @@ -477,6 +477,27 @@ |
216 | } |
217 | } |
218 | |
219 | +/* |
220 | +=============== |
221 | +Evict worker from building |
222 | +=============== |
223 | +*/ |
224 | +void Player::evict(PlayerImmovable & imm, bool const recurse) |
225 | +{ |
226 | + if (imm.get_owner() != this) |
227 | + return; |
228 | + if (upcast(Building, building, &imm)) { |
229 | + if (!(building->get_playercaps() & (1 << Building::PCap_Evict))) |
230 | + return; |
231 | + if (recurse) { |
232 | + building->evict(egbase()); |
233 | + } |
234 | + } else { |
235 | + //can't evict anything else |
236 | + throw wexception |
237 | + ("Player::evict(%u): bad immobale type", imm.serial()); |
238 | + } |
239 | +} |
240 | |
241 | /* |
242 | =============== |
243 | |
244 | === modified file 'src/logic/player.h' |
245 | --- src/logic/player.h 2010-12-14 12:36:29 +0000 |
246 | +++ src/logic/player.h 2011-09-23 21:20:33 +0000 |
247 | @@ -433,6 +433,7 @@ |
248 | bool = false); |
249 | Building * build(Coords, Building_Index, bool = true); |
250 | void bulldoze(PlayerImmovable &, bool recurse = false); |
251 | + void evict(PlayerImmovable &, bool recurse = false); |
252 | void flagaction(Flag &); |
253 | void start_stop_building(PlayerImmovable &); |
254 | void enhance_building |
255 | |
256 | === modified file 'src/logic/playercommand.cc' |
257 | --- src/logic/playercommand.cc 2011-02-26 19:19:25 +0000 |
258 | +++ src/logic/playercommand.cc 2011-09-23 21:20:33 +0000 |
259 | @@ -59,7 +59,8 @@ |
260 | PLCMD_CHANGEMILITARYCONFIG, |
261 | PLCMD_MESSAGESETSTATUSREAD, |
262 | PLCMD_MESSAGESETSTATUSARCHIVED, |
263 | - PLCMD_SETSTOCKPOLICY |
264 | + PLCMD_SETSTOCKPOLICY, |
265 | + PLCMD_EVICT |
266 | }; |
267 | |
268 | /*** class PlayerCommand ***/ |
269 | @@ -72,6 +73,7 @@ |
270 | { |
271 | switch (des.Unsigned8()) { |
272 | case PLCMD_BULLDOZE: return new Cmd_Bulldoze (des); |
273 | + case PLCMD_EVICT: return new Cmd_Evict (des); |
274 | case PLCMD_BUILD: return new Cmd_Build (des); |
275 | case PLCMD_BUILDFLAG: return new Cmd_BuildFlag (des); |
276 | case PLCMD_BUILDROAD: return new Cmd_BuildRoad (des); |
277 | @@ -197,6 +199,63 @@ |
278 | fw.Unsigned8(recurse); |
279 | } |
280 | |
281 | +/*** class Cmd_Evict ***/ |
282 | +Cmd_Evict::Cmd_Evict (StreamRead & des) : |
283 | + PlayerCommand (0, des.Unsigned8()), |
284 | + serial (des.Unsigned32()), |
285 | + recurse (des.Unsigned8()) |
286 | +{} |
287 | + |
288 | +void Cmd_Evict::execute (Game & game) |
289 | +{ |
290 | + if (upcast(PlayerImmovable, pimm, game.objects().get_object(serial))) |
291 | + game.player(sender()).evict(*pimm, recurse); |
292 | +} |
293 | + |
294 | +void Cmd_Evict::serialize (StreamWrite & ser) |
295 | +{ |
296 | + ser.Unsigned8 (PLCMD_EVICT); |
297 | + ser.Unsigned8 (sender()); |
298 | + ser.Unsigned32(serial); |
299 | + ser.Unsigned8 (recurse); |
300 | +} |
301 | + |
302 | +#define PLAYER_CMD_EVICT_VERSION 2 |
303 | +void Cmd_Evict::Read |
304 | + (FileRead & fr, Editor_Game_Base & egbase, Map_Map_Object_Loader & mol) |
305 | +{ |
306 | + try { |
307 | + uint16_t const packet_version = fr.Unsigned16(); |
308 | + if (1 <= packet_version and packet_version <= PLAYER_CMD_EVICT_VERSION) { |
309 | + PlayerCommand::Read(fr, egbase, mol); |
310 | + Serial const pimm_serial = fr.Unsigned32(); |
311 | + try { |
312 | + serial = mol.get<PlayerImmovable>(pimm_serial).serial(); |
313 | + recurse = 2 <= packet_version ? fr.Unsigned8() : false; |
314 | + } catch (_wexception const & e) { |
315 | + throw game_data_error |
316 | + (_("player immovable %u: %s"), pimm_serial, e.what()); |
317 | + } |
318 | + } else |
319 | + throw game_data_error |
320 | + (_("unknnown/unhandled version %u"), packet_version); |
321 | + } catch (_wexception const & e) { |
322 | + throw game_data_error (_("evict: %s"), e.what()); |
323 | + } |
324 | +} |
325 | +void Cmd_Evict::Write |
326 | + (FileWrite & fw, Editor_Game_Base & egbase, Map_Map_Object_Saver & mos) |
327 | +{ |
328 | + //First write version |
329 | + fw.Unsigned16(PLAYER_CMD_EVICT_VERSION); |
330 | + //Write base classes |
331 | + PlayerCommand::Write(fw, egbase, mos); |
332 | + // Now serial |
333 | + Map_Object const * obj = egbase.objects().get_object(serial); |
334 | + fw.Unsigned32(obj ? mos.get_object_file_index(*obj) : 0); |
335 | + fw.Unsigned8(recurse); |
336 | +} |
337 | + |
338 | /*** class Cmd_Build ***/ |
339 | |
340 | Cmd_Build::Cmd_Build (StreamRead & des) : |
341 | |
342 | === modified file 'src/logic/playercommand.h' |
343 | --- src/logic/playercommand.h 2010-11-01 13:12:23 +0000 |
344 | +++ src/logic/playercommand.h 2011-09-23 21:20:33 +0000 |
345 | @@ -84,6 +84,30 @@ |
346 | bool recurse; |
347 | }; |
348 | |
349 | +struct Cmd_Evict:public PlayerCommand { |
350 | + Cmd_Evict() : PlayerCommand() {} // For savegame loading |
351 | + Cmd_Evict |
352 | + (int32_t const t, int32_t const p, |
353 | + PlayerImmovable & pi, |
354 | + bool const _recurse = false) |
355 | + : PlayerCommand(t, p), serial(pi.serial()), recurse(_recurse) |
356 | + {} |
357 | + |
358 | + Cmd_Evict (StreamRead &); |
359 | + |
360 | + void Write(FileWrite &, Editor_Game_Base &, Map_Map_Object_Saver &); |
361 | + void Read (FileRead &, Editor_Game_Base &, Map_Map_Object_Loader &); |
362 | + |
363 | + virtual uint8_t id() const {return QUEUE_CMD_BULLDOZE;} |
364 | + |
365 | + virtual void execute (Game &); |
366 | + virtual void serialize (StreamWrite &); |
367 | + |
368 | +private: |
369 | + Serial serial; |
370 | + bool recurse; |
371 | +}; |
372 | + |
373 | struct Cmd_Build:public PlayerCommand { |
374 | Cmd_Build() : PlayerCommand() {} // For savegame loading |
375 | Cmd_Build |
376 | |
377 | === modified file 'src/logic/production_program.cc' |
378 | --- src/logic/production_program.cc 2011-09-02 12:36:04 +0000 |
379 | +++ src/logic/production_program.cc 2011-09-23 21:20:33 +0000 |
380 | @@ -235,9 +235,9 @@ |
381 | bool ProductionProgram::ActReturn::Workers_Need_Experience::evaluate |
382 | (ProductionSite const & ps) const |
383 | { |
384 | - ProductionSite::Working_Position const * const wp = ps.m_working_positions; |
385 | - for (uint32_t i = ps.descr().nr_working_positions(); i;) |
386 | - if (wp[--i].worker->needs_experience()) |
387 | + ProductionSite::wp_const_iterator e = ps.m_working_positions.end(); |
388 | + for (ProductionSite::wp_const_iterator b = ps.m_working_positions.begin(); b != e; ++b) |
389 | + if (b->worker->needs_experience()) |
390 | return true; |
391 | return false; |
392 | } |
393 | @@ -481,8 +481,8 @@ |
394 | "(wrong declaration order?)"), |
395 | program_name, descr.descname().c_str()); |
396 | m_program = it->second; |
397 | + m_program_name = program_name; |
398 | } |
399 | - |
400 | // Override with specified handling methods. |
401 | #if 0 |
402 | log |
403 | @@ -548,10 +548,11 @@ |
404 | { |
405 | Program_Result const program_result = |
406 | static_cast<Program_Result>(ps.top_state().phase); |
407 | - |
408 | +#ifdef DEBUG |
409 | + log("%s Call %s\n", ps.descname().c_str(), m_program_name.c_str()); |
410 | +#endif |
411 | if (program_result == None) // The program has not yet been called. |
412 | - //ps.molog("%s Call %s\n", ps.descname().c_str(), |
413 | - // m_program->get_name().c_str()); |
414 | + |
415 | return ps.program_start(game, m_program->name()); |
416 | |
417 | switch (m_handling_methods[program_result - 1]) { |
418 | @@ -1019,7 +1020,6 @@ |
419 | return false; |
420 | } |
421 | |
422 | - |
423 | ProductionProgram::ActMine::ActMine |
424 | (char * parameters, ProductionSite_Descr & descr, |
425 | const std::string & production_program_name) |
426 | |
427 | === modified file 'src/logic/production_program.h' |
428 | --- src/logic/production_program.h 2010-11-21 11:44:22 +0000 |
429 | +++ src/logic/production_program.h 2011-09-23 21:20:33 +0000 |
430 | @@ -275,7 +275,10 @@ |
431 | #endif |
432 | private: |
433 | ProductionProgram * m_program; |
434 | - Program_Result_Handling_Method m_handling_methods[3]; |
435 | + Program_Result_Handling_Method m_handling_methods[3]; |
436 | +#ifdef DEBUG |
437 | + std::string m_program_name; |
438 | +#endif |
439 | }; |
440 | |
441 | /// Calls a program of the productionsite's main worker. |
442 | |
443 | === modified file 'src/logic/productionsite.cc' |
444 | --- src/logic/productionsite.cc 2011-09-02 12:36:04 +0000 |
445 | +++ src/logic/productionsite.cc 2011-09-23 21:20:33 +0000 |
446 | @@ -209,7 +209,7 @@ |
447 | |
448 | ProductionSite::ProductionSite(const ProductionSite_Descr & ps_descr) : |
449 | Building (ps_descr), |
450 | - m_working_positions (new Working_Position[ps_descr.nr_working_positions()]), |
451 | + m_working_positions (std::vector<Working_Position>(ps_descr.nr_working_positions())), |
452 | m_fetchfromflag (0), |
453 | m_program_timer (false), |
454 | m_program_time (0), |
455 | @@ -225,7 +225,7 @@ |
456 | } |
457 | |
458 | ProductionSite::~ProductionSite() { |
459 | - delete[] m_working_positions; |
460 | + m_working_positions.clear(); |
461 | } |
462 | |
463 | |
464 | @@ -236,6 +236,10 @@ |
465 | { |
466 | uint32_t const nr_working_positions = descr().nr_working_positions(); |
467 | uint32_t nr_workers = 0; |
468 | + |
469 | + if (m_evicted) |
470 | + return _("(evicted)"); |
471 | + |
472 | for (uint32_t i = nr_working_positions; i;) |
473 | nr_workers += m_working_positions[--i].worker ? 1 : 0; |
474 | if (!nr_workers) |
475 | @@ -355,7 +359,15 @@ |
476 | (*i.current)->update(); |
477 | |
478 | // Request missing workers. |
479 | - Working_Position * wp = m_working_positions; |
480 | + request_workers(); |
481 | + |
482 | + if (upcast(Game, game, &egbase)) |
483 | + try_start_working(*game); |
484 | +} |
485 | + |
486 | +void ProductionSite::request_workers() { |
487 | + // Request missing workers. |
488 | + wp_iterator wp = m_working_positions.begin(); |
489 | container_iterate_const(Ware_Types, descr().working_positions(), i) { |
490 | Ware_Index const worker_index = i.current->first; |
491 | for (uint32_t j = i.current->second; j; --j, ++wp) |
492 | @@ -365,8 +377,6 @@ |
493 | wp->worker_request = &request_worker(worker_index); |
494 | } |
495 | |
496 | - if (upcast(Game, game, &egbase)) |
497 | - try_start_working(*game); |
498 | } |
499 | |
500 | /** |
501 | @@ -429,11 +439,9 @@ |
502 | (Editor_Game_Base & egbase, const Worker_Descr & wdes) |
503 | { |
504 | bool assigned = false; |
505 | - Working_Position * current = m_working_positions; |
506 | + wp_iterator end = m_working_positions.end(); |
507 | for |
508 | - (Working_Position * const end = current + descr().nr_working_positions(); |
509 | - current < end; |
510 | - ++current) |
511 | + (wp_iterator current = m_working_positions.begin(); current != end; ++current) |
512 | { |
513 | if (current->worker) |
514 | continue; |
515 | @@ -468,10 +476,10 @@ |
516 | void ProductionSite::remove_worker(Worker & w) |
517 | { |
518 | molog("%s leaving\n", w.descname().c_str()); |
519 | - Working_Position * current = m_working_positions; |
520 | + wp_iterator end = m_working_positions.end(); |
521 | for |
522 | - (Working_Position * const end = current + descr().nr_working_positions(); |
523 | - current < end; |
524 | + (wp_iterator current = m_working_positions.begin(); |
525 | + current != end; |
526 | ++current) |
527 | if (current->worker == &w) { |
528 | *current = |
529 | @@ -523,7 +531,7 @@ |
530 | // placed on the slot that originally requested the arrived worker. |
531 | bool worker_placed = false; |
532 | Ware_Index idx = w->worker_index(); |
533 | - for (Working_Position * wp = psite.m_working_positions;; ++wp) { |
534 | + for (wp_iterator wp = psite.m_working_positions.begin();; ++wp) { |
535 | if (wp->worker_request == &rq) { |
536 | if (wp->worker_request->get_index() == idx) { |
537 | // Place worker |
538 | @@ -540,9 +548,8 @@ |
539 | } |
540 | } |
541 | while (!worker_placed) { |
542 | - uint8_t nwp = psite.descr().nr_working_positions(); |
543 | - uint8_t pos = 0; |
544 | - for (Working_Position * wp = psite.m_working_positions; pos < nwp; ++wp) { |
545 | + wp_iterator end = psite.m_working_positions.end(); |
546 | + for (wp_iterator wp = psite.m_working_positions.begin(); wp != end; ++wp) { |
547 | // Find a fitting slot |
548 | if (!wp->worker && !worker_placed) |
549 | if (wp->worker_request->get_index() == idx) { |
550 | @@ -551,7 +558,6 @@ |
551 | worker_placed = true; |
552 | break; |
553 | } |
554 | - ++pos; |
555 | } |
556 | if (!worker_placed) { |
557 | // Find the next smaller version of this worker |
558 | @@ -570,7 +576,7 @@ |
559 | ("Something went wrong! No fitting place for worker %s in %s at (%u, %u) found!", |
560 | w->descr().descname().c_str(), psite.descr().descname().c_str(), |
561 | psite.get_position().x, psite.get_position().y); |
562 | - pos = 0; |
563 | + //pos=0 does what? |
564 | } |
565 | } |
566 | |
567 | @@ -629,10 +635,6 @@ |
568 | void ProductionSite::program_act(Game & game) |
569 | { |
570 | State & state = top_state(); |
571 | -#if 0 |
572 | - molog |
573 | - ("PSITE: program %s#%i\n", state.program->get_name().c_str(), state.ip); |
574 | -#endif |
575 | if (m_is_stopped) { |
576 | program_end(game, Failed); |
577 | m_program_timer = true; |
578 | @@ -674,9 +676,13 @@ |
579 | */ |
580 | bool ProductionSite::can_start_working() const throw () |
581 | { |
582 | + if (m_evicted) |
583 | + return false; |
584 | + |
585 | for (uint32_t i = descr().nr_working_positions(); i;) |
586 | if (m_working_positions[--i].worker_request) |
587 | return false; |
588 | + |
589 | return true; |
590 | } |
591 | |
592 | @@ -869,8 +875,7 @@ |
593 | } |
594 | |
595 | /// Changes the default anim string to \li anim |
596 | -void ProductionSite::set_default_anim(std::string anim) |
597 | -{ |
598 | +void ProductionSite::set_default_anim(std::string anim) { |
599 | if (m_default_anim == anim) |
600 | return; |
601 | |
602 | @@ -880,4 +885,44 @@ |
603 | m_default_anim = anim; |
604 | } |
605 | |
606 | +/* |
607 | +=============== |
608 | +Override: Production sites can be bulldozed and evicted |
609 | +=============== |
610 | +*/ |
611 | +uint32_t ProductionSite::get_playercaps() const throw () { |
612 | + uint32_t caps = Building::get_playercaps(); |
613 | + |
614 | + caps |= 1 << PCap_Bulldoze; |
615 | + caps |= 1 << PCap_Evict; |
616 | + |
617 | + return caps; |
618 | +} |
619 | + |
620 | +void ProductionSite::evict (Editor_Game_Base & game) { |
621 | + /* |
622 | + * stop the program. a worker left so at least we should |
623 | + * recheck if there is any work to be done |
624 | + */ |
625 | + |
626 | + Building::evict(game); |
627 | + |
628 | + m_stack.clear(); |
629 | + m_program_timer = false; |
630 | + |
631 | + wp_iterator e = m_working_positions.end(); |
632 | + |
633 | + if (m_evicted) { |
634 | + for (wp_iterator wp = m_working_positions.begin(); wp != e; ++wp) { |
635 | + if (wp->worker_request) { |
636 | + delete wp->worker_request; |
637 | + wp->worker_request = 0; |
638 | + } |
639 | + } |
640 | + } else { |
641 | + //un-evict, request new workers |
642 | + request_workers(); |
643 | + } |
644 | +} |
645 | + |
646 | } |
647 | |
648 | === modified file 'src/logic/productionsite.h' |
649 | --- src/logic/productionsite.h 2011-09-02 12:36:04 +0000 |
650 | +++ src/logic/productionsite.h 2011-09-23 21:20:33 +0000 |
651 | @@ -136,6 +136,8 @@ |
652 | bool is_stopped() const {return m_is_stopped;} |
653 | void set_stopped(bool); |
654 | |
655 | + virtual void evict (Editor_Game_Base &); |
656 | + |
657 | struct Working_Position { |
658 | Working_Position(Request * const wr = 0, Worker * const w = 0) |
659 | : worker_request(wr), worker(w) |
660 | @@ -144,7 +146,10 @@ |
661 | Worker * worker; |
662 | }; |
663 | |
664 | - Working_Position const * working_positions() const { |
665 | + typedef std::vector<Working_Position>::iterator wp_iterator; |
666 | + typedef std::vector<Working_Position>::const_iterator wp_const_iterator; |
667 | + //Working_Position const * working_positions() const { |
668 | + const std::vector<Working_Position> & working_positions() const { |
669 | return m_working_positions; |
670 | } |
671 | |
672 | @@ -156,6 +161,7 @@ |
673 | virtual WaresQueue & waresqueue(Ware_Index); |
674 | |
675 | char const * type_name() const throw () {return "productionsite";} |
676 | + virtual uint32_t get_playercaps() const throw (); |
677 | virtual void init(Editor_Game_Base &); |
678 | virtual void cleanup(Editor_Game_Base &); |
679 | virtual void act(Game &, uint32_t data); |
680 | @@ -198,6 +204,7 @@ |
681 | State() : coord(Coords::Null()) {} |
682 | }; |
683 | |
684 | + void request_workers(); |
685 | Request & request_worker(Ware_Index); |
686 | static void request_worker_callback |
687 | (Game &, Request &, Ware_Index, Worker *, PlayerImmovable &); |
688 | @@ -227,7 +234,7 @@ |
689 | void set_post_timer (int32_t const t) {m_post_timer = t;} |
690 | |
691 | protected: // TrainingSite must have access to this stuff |
692 | - Working_Position * m_working_positions; |
693 | + std::vector<Working_Position> m_working_positions; |
694 | |
695 | int32_t m_fetchfromflag; ///< Number of items to fetch from flag |
696 | |
697 | |
698 | === modified file 'src/map_io/widelands_map_buildingdata_data_packet.cc' |
699 | --- src/map_io/widelands_map_buildingdata_data_packet.cc 2011-05-04 19:17:34 +0000 |
700 | +++ src/map_io/widelands_map_buildingdata_data_packet.cc 2011-09-23 21:20:33 +0000 |
701 | @@ -630,8 +630,8 @@ |
702 | (1 <= packet_version and |
703 | packet_version <= CURRENT_PRODUCTIONSITE_PACKET_VERSION) |
704 | { |
705 | - ProductionSite::Working_Position & wp_begin = |
706 | - *productionsite.m_working_positions; |
707 | + ProductionSite::wp_iterator wp_begin = |
708 | + productionsite.m_working_positions.begin(); |
709 | ProductionSite_Descr const & descr = productionsite.descr(); |
710 | Ware_Types const & working_positions = descr.working_positions(); |
711 | |
712 | @@ -647,7 +647,7 @@ |
713 | Ware_Index const worker_index = req.get_index(); |
714 | |
715 | // Find a working position that matches this request. |
716 | - ProductionSite::Working_Position * wp = &wp_begin; |
717 | + ProductionSite::wp_iterator wp = wp_begin; |
718 | for |
719 | (wl_const_range<Ware_Types> |
720 | j(working_positions);; |
721 | @@ -728,7 +728,7 @@ |
722 | |
723 | // Find a working position that matches this worker. |
724 | Worker_Descr const & worker_descr = worker->descr(); |
725 | - ProductionSite::Working_Position * wp = &wp_begin; |
726 | + ProductionSite::wp_iterator wp = wp_begin; |
727 | for |
728 | (wl_const_range<Ware_Types> j(working_positions);; |
729 | ++j) |
730 | |
731 | === modified file 'src/wui/buildingwindow.cc' |
732 | --- src/wui/buildingwindow.cc 2010-12-03 21:41:49 +0000 |
733 | +++ src/wui/buildingwindow.cc 2011-09-23 21:20:33 +0000 |
734 | @@ -20,6 +20,7 @@ |
735 | #include "buildingwindow.h" |
736 | |
737 | #include "bulldozeconfirm.h" |
738 | +#include "evictconfirm.h" |
739 | #include "game_debug_ui.h" |
740 | #include "graphic/rendertarget.h" |
741 | #include "interactive_player.h" |
742 | @@ -33,6 +34,7 @@ |
743 | #include "waresqueuedisplay.h" |
744 | |
745 | static char const * pic_bulldoze = "pics/menu_bld_bulldoze.png"; |
746 | +static char const * pic_evict = "pics/menu_bld_evict.png"; |
747 | static char const * pic_debug = "pics/menu_debug.png"; |
748 | |
749 | |
750 | @@ -209,6 +211,17 @@ |
751 | _("Destroy")), |
752 | UI::Box::AlignCenter); |
753 | } |
754 | + if (m_capscache & (1 << Widelands::Building::PCap_Evict)) { |
755 | + capsbuttons->add |
756 | + (new UI::Callback_Button |
757 | + (capsbuttons, "evict", |
758 | + 0, 0, 34, 34, |
759 | + g_gr->get_picture(PicMod_UI, "pics/but4.png"), |
760 | + g_gr->get_picture(PicMod_Game, pic_evict), |
761 | + boost::bind(&Building_Window::act_evict, boost::ref(*this)), |
762 | + _("Evict")), |
763 | + UI::Box::AlignCenter); |
764 | + } |
765 | } |
766 | |
767 | if (can_see) { |
768 | @@ -267,7 +280,21 @@ |
769 | |
770 | /* |
771 | =============== |
772 | -Callback for bulldozing request |
773 | +Callback for evicting request |
774 | +=============== |
775 | +*/ |
776 | +void Building_Window::act_evict() |
777 | +{ |
778 | + if (!m_building.is_evicted()) { |
779 | + show_evict_confirm(ref_cast<Interactive_Player, Interactive_GameBase>(igbase()), m_building); |
780 | + } else { |
781 | + igbase().game().send_player_evict(m_building); |
782 | + } |
783 | +} |
784 | + |
785 | +/* |
786 | +=============== |
787 | +Callback for Enhancing request |
788 | =============== |
789 | */ |
790 | void Building_Window::act_enhance(Widelands::Building_Index const id) |
791 | |
792 | === modified file 'src/wui/buildingwindow.h' |
793 | --- src/wui/buildingwindow.h 2010-10-31 11:18:00 +0000 |
794 | +++ src/wui/buildingwindow.h 2011-09-23 21:20:33 +0000 |
795 | @@ -56,6 +56,7 @@ |
796 | UI::Tab_Panel * get_tabs() {return m_tabs;} |
797 | |
798 | void act_bulldoze(); |
799 | + void act_evict(); |
800 | void act_debug(); |
801 | void show_workarea(); |
802 | void hide_workarea(); |
803 | |
804 | === added file 'src/wui/evictconfirm.cc' |
805 | --- src/wui/evictconfirm.cc 1970-01-01 00:00:00 +0000 |
806 | +++ src/wui/evictconfirm.cc 2011-09-23 21:20:33 +0000 |
807 | @@ -0,0 +1,180 @@ |
808 | +/* |
809 | + * Copyright (C) 2002-2004, 2006-2010 by the Widelands Development Team |
810 | + * |
811 | + * This program is free software; you can redistribute it and/or |
812 | + * modify it under the terms of the GNU General Public License |
813 | + * as published by the Free Software Foundation; either version 2 |
814 | + * of the License, or (at your option) any later version. |
815 | + * |
816 | + * This program is distributed in the hope that it will be useful, |
817 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
818 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
819 | + * GNU General Public License for more details. |
820 | + * |
821 | + * You should have received a copy of the GNU General Public License |
822 | + * along with this program; if not, write to the Free Software |
823 | + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
824 | + * |
825 | + */ |
826 | + |
827 | +#include "evictconfirm.h" |
828 | + |
829 | +#include "interactive_player.h" |
830 | +#include "logic/building.h" |
831 | +#include "logic/player.h" |
832 | +#include "ui_basic/textarea.h" |
833 | +#include "ui_basic/window.h" |
834 | +#include "upcast.h" |
835 | + |
836 | +#include <boost/format.hpp> |
837 | + |
838 | +using boost::format; |
839 | + |
840 | + |
841 | +/** |
842 | + * Confirmation dialog box for the evict request for a building. |
843 | + */ |
844 | +struct EvictConfirm : public UI::Window { |
845 | + EvictConfirm |
846 | + (Interactive_Player & parent, |
847 | + Widelands::Building & building, |
848 | + Widelands::PlayerImmovable * todestroy = 0); |
849 | + |
850 | + Interactive_Player & iaplayer() const { |
851 | + return ref_cast<Interactive_Player, UI::Panel>(*get_parent()); |
852 | + } |
853 | + |
854 | + virtual void think(); |
855 | + void close_window() {die();} |
856 | +private: |
857 | + Widelands::Object_Ptr m_building; |
858 | + Widelands::Object_Ptr m_todestroy; |
859 | + |
860 | + struct Message : public UI::Textarea { |
861 | + Message(EvictConfirm & parent, Widelands::Building const & building) : |
862 | + UI::Textarea |
863 | + (&parent, |
864 | + 0, 0, 0, 74, |
865 | + (format(_("Do you really want to evict workers from %s?")) |
866 | + % building.descname()) |
867 | + .str(), |
868 | + UI::Align_Left) |
869 | + {} |
870 | + } m_message; |
871 | + |
872 | + struct OK : public UI::Button { |
873 | + OK(EvictConfirm & parent) : |
874 | + UI::Button |
875 | + (&parent, "Ok", |
876 | + 6, 80, 80, 34, |
877 | + g_gr->get_picture(PicMod_UI, "pics/but4.png"), |
878 | + g_gr->get_picture(PicMod_Game, "pics/menu_okay.png")) |
879 | + {} |
880 | + void clicked(); |
881 | + } m_ok; |
882 | + |
883 | + struct Cancel : public UI::Button { |
884 | + Cancel(EvictConfirm & parent) : |
885 | + UI::Button |
886 | + (&parent, "Cancel", |
887 | + 114, 80, 80, 34, |
888 | + g_gr->get_picture(PicMod_UI, "pics/but4.png"), |
889 | + g_gr->get_picture(PicMod_Game, "pics/menu_abort.png")) |
890 | + {} |
891 | + void clicked() { |
892 | + ref_cast<EvictConfirm, UI::Panel>(*get_parent()).close_window(); |
893 | + } |
894 | + } m_cancel; |
895 | +}; |
896 | + |
897 | + |
898 | +/* |
899 | +=============== |
900 | +Create the panels. |
901 | +If todestroy is 0, the building will be destroyed when the user confirms it. |
902 | +Otherwise, todestroy is destroyed when the user confirms it. This is useful to |
903 | +confirm building destruction when the building's base flag is removed. |
904 | +=============== |
905 | +*/ |
906 | +EvictConfirm::EvictConfirm |
907 | + (Interactive_Player & parent, |
908 | + Widelands::Building & building, |
909 | + Widelands::PlayerImmovable * todestroy) |
910 | + : |
911 | + UI::Window (&parent, "Evict workers", 0, 0, 300, 120, _("Evict Workers?")), |
912 | + m_building (&building), |
913 | + m_todestroy(todestroy ? todestroy : &building), |
914 | + m_message (*this, building), |
915 | + m_ok (*this), |
916 | + m_cancel (*this) |
917 | +{ |
918 | + center_to_parent(); |
919 | + m_cancel.center_mouse(); |
920 | +} |
921 | + |
922 | + |
923 | +/* |
924 | +=============== |
925 | +Make sure the building still exists and can in fact be evictd. |
926 | +=============== |
927 | +*/ |
928 | +void EvictConfirm::think() |
929 | +{ |
930 | + Widelands::Editor_Game_Base const & egbase = iaplayer().egbase(); |
931 | + upcast(Widelands::Building, building, m_building .get(egbase)); |
932 | + upcast(Widelands::PlayerImmovable, todestroy, m_todestroy.get(egbase)); |
933 | + |
934 | + if |
935 | + (!todestroy || |
936 | + !building || |
937 | + not iaplayer().can_act(building->owner().player_number()) or |
938 | + !(building->get_playercaps() & (1 << Widelands::Building::PCap_Evict))) |
939 | + die(); |
940 | +} |
941 | + |
942 | + |
943 | +/* |
944 | +=============== |
945 | +Issue the CMD_EVICT command for this building. |
946 | +=============== |
947 | +*/ |
948 | +void EvictConfirm::OK::clicked() |
949 | +{ |
950 | + EvictConfirm & parent = |
951 | + ref_cast<EvictConfirm, UI::Panel>(*get_parent()); |
952 | + Interactive_Player & iaplayer = parent.iaplayer(); |
953 | + Widelands::Game & game = iaplayer.game(); |
954 | + upcast(Widelands::Building, building, parent.m_building.get(game)); |
955 | + upcast(Widelands::PlayerImmovable, todestroy, parent.m_todestroy.get(game)); |
956 | + |
957 | + if |
958 | + (todestroy && |
959 | + building && |
960 | + iaplayer.can_act(building->owner().player_number()) and |
961 | + building->get_playercaps() & (1 << Widelands::Building::PCap_Evict)) |
962 | + { |
963 | + game.send_player_evict |
964 | + (*todestroy, get_key_state(SDLK_LCTRL) or get_key_state(SDLK_RCTRL)); |
965 | + iaplayer.need_complete_redraw(); |
966 | + } |
967 | + |
968 | + parent.close_window(); |
969 | +} |
970 | + |
971 | + |
972 | +/** |
973 | + * Create a EvictConfirm window. |
974 | + * No further action is required by the caller: any action necessary to actually |
975 | + * evict all workers from the building if the user confirims |
976 | + * |
977 | + * \param building this is the building that the confirmation dialog displays. |
978 | + * \param toevict if this is non-zero, then workers will be evicted |
979 | + * instead of \p building if the user confirms the dialog. |
980 | + */ |
981 | +void show_evict_confirm |
982 | + (Interactive_Player & player, |
983 | + Widelands::Building & building, |
984 | + Widelands::PlayerImmovable * const toevict) |
985 | +{ |
986 | + new EvictConfirm(player, building, toevict); |
987 | +} |
988 | |
989 | === added file 'src/wui/evictconfirm.h' |
990 | --- src/wui/evictconfirm.h 1970-01-01 00:00:00 +0000 |
991 | +++ src/wui/evictconfirm.h 2011-09-23 21:20:33 +0000 |
992 | @@ -0,0 +1,35 @@ |
993 | +/* |
994 | + * Copyright (C) 2010 by the Widelands Development Team |
995 | + * |
996 | + * This program is free software; you can redistribute it and/or |
997 | + * modify it under the terms of the GNU General Public License |
998 | + * as published by the Free Software Foundation; either version 2 |
999 | + * of the License, or (at your option) any later version. |
1000 | + * |
1001 | + * This program is distributed in the hope that it will be useful, |
1002 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
1003 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1004 | + * GNU General Public License for more details. |
1005 | + * |
1006 | + * You should have received a copy of the GNU General Public License |
1007 | + * along with this program; if not, write to the Free Software |
1008 | + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
1009 | + * |
1010 | + */ |
1011 | + |
1012 | +#ifndef _EVICTCONFIRM_H_ |
1013 | +#define _EVICTCONFIRM_H_ |
1014 | + |
1015 | +struct Interactive_Player; |
1016 | + |
1017 | +namespace Widelands { |
1018 | +struct Building; |
1019 | +struct PlayerImmovable; |
1020 | +} |
1021 | + |
1022 | +void show_evict_confirm |
1023 | + (Interactive_Player & player, |
1024 | + Widelands::Building & building, |
1025 | + Widelands::PlayerImmovable * const toevict = 0); |
1026 | + |
1027 | +#endif // _BULLDOZECONFIRM_H_ |
1028 | |
1029 | === modified file 'tribes/barbarians/conf' |
1030 | --- tribes/barbarians/conf 2011-01-04 11:56:56 +0000 |
1031 | +++ tribes/barbarians/conf 2011-09-23 21:20:33 +0000 |
1032 | @@ -218,6 +218,25 @@ |
1033 | [initializations] |
1034 | headquarters_medium=_Headquarters medium |
1035 | castle_village=_Citadel village |
1036 | +granitemine=_Granite Mine |
1037 | +hardener=_Wood Hardener |
1038 | +helmsmithy=_Helmsmithy |
1039 | +hunters_hut=_Hunter's Hut |
1040 | +inn=_Inn |
1041 | +lime_kiln=_Lime Kiln |
1042 | +lumberjacks_hut=_Lumberjack's Hut |
1043 | +metalworks=_Metalwork Shop |
1044 | +micro-brewery=_Micro Brewery |
1045 | +oremine=_Iron Ore Mine |
1046 | +quarry=_Quarry |
1047 | +rangers_hut=_Ranger's Hut |
1048 | +smelting_works=_Smelting Works |
1049 | +tavern=_Tavern |
1050 | +trainingmine=_Training Mine |
1051 | +weaving-mill=_Weaving-Mill |
1052 | +well=_Well |
1053 | +scouts_hut=_"Scout's Hut" |
1054 | +cattlefarm=_Cattle Farm |
1055 | |
1056 | [military_data] |
1057 | retreat_interval=0-80 |
Looks good so far. Just two things: there are text conflicts against trunk, there will likely be some more when Lua is merged. Second: what does the worker program do? Is this to automatically evict workers? Can you provide a proof of concept enhancement to eg. one of the mines?