production stuff: fixes #54

This commit is contained in:
Chris Forbes
2009-10-31 22:40:26 +13:00
parent cb518ba25d
commit 6cd9d468d3
2 changed files with 19 additions and 12 deletions

View File

@@ -162,19 +162,24 @@ namespace OpenRa.Game
if( mi.Button == MouseButtons.Left && mi.Event == MouseInputEvent.Down )
{
string group = Rules.UnitCategory[ item.Tag ];
if (player.Producing(group) == null)
{
var ui = Rules.UnitInfo[item.Tag];
var time = ui.Cost
* .8f /* Game.BuildSpeed */ /* todo: country-specific build speed bonus */
* (25 * 60) /* frames per min */ /* todo: build acceleration, if we do that */
/ 1000;
string group = Rules.UnitCategory[ item.Tag ];
var producing = player.Producing(group);
if (producing == null)
{
var ui = Rules.UnitInfo[item.Tag];
var time = ui.Cost
* .8f /* Game.BuildSpeed */ /* todo: country-specific build speed bonus */
* (25 * 60) /* frames per min */ /* todo: build acceleration, if we do that */
/ 1000;
player.BeginProduction( group,
new ProductionItem( item.Tag, (int)time, ui.Cost ) );
Build(item);
}
player.BeginProduction(group,
new ProductionItem(item.Tag, (int)time, ui.Cost));
//Build(item);
}
else if (producing.Item == item.Tag)
{
Build(item);
}
}
else if( mi.Button == MouseButtons.Right && mi.Event == MouseInputEvent.Down )
player.CancelProduction( Rules.UnitCategory[ item.Tag ] );