fix d2k production queues

ClassicProductionQueue gets support for new notification system
d2k now uses the ClassicProductionQueue system to avoid spamming
Starport has cheaper threshold prices
adds a new production queue but has long delivery times
also no starport price fluctuation to improve balancing
This commit is contained in:
Matthias Mailänder
2012-07-20 23:05:28 +02:00
parent e33d988301
commit 36fbddbb5c
16 changed files with 300 additions and 231 deletions

View File

@@ -20,7 +20,7 @@ namespace OpenRA.Mods.Cnc
{ {
public class ProductionAirdropInfo : ProductionInfo public class ProductionAirdropInfo : ProductionInfo
{ {
public readonly string ReadyAudio = "reinfor1.aud"; public readonly string ReadyAudio = "Reinforce";
[ActorReference] public readonly string ActorType = "c17"; [ActorReference] public readonly string ActorType = "c17";
public override object Create(ActorInitializer init) { return new ProductionAirdrop(this); } public override object Create(ActorInitializer init) { return new ProductionAirdrop(this); }
@@ -66,7 +66,7 @@ namespace OpenRA.Mods.Cnc
rb.PlayCustomAnimRepeating(self, "idle"); rb.PlayCustomAnimRepeating(self, "idle");
self.World.AddFrameEndTask(ww => DoProduction(self, producee, exit)); self.World.AddFrameEndTask(ww => DoProduction(self, producee, exit));
Sound.PlayToPlayer(self.Owner, (Info as ProductionAirdropInfo).ReadyAudio); Sound.PlayNotification(self.Owner, "Speech", (Info as ProductionAirdropInfo).ReadyAudio, self.Owner.Country.Race);
})); }));
a.QueueActivity(Fly.ToCell(endPos)); a.QueueActivity(Fly.ToCell(endPos));
a.QueueActivity(new RemoveSelf()); a.QueueActivity(new RemoveSelf());

View File

@@ -146,7 +146,7 @@ namespace OpenRA.Mods.Cnc.Widgets
else if (CurrentQueue.BuildableItems().Any(a => a.Name == clicked.Name)) else if (CurrentQueue.BuildableItems().Any(a => a.Name == clicked.Name))
{ {
Sound.Play(TabClick); Sound.Play(TabClick);
Sound.Play(CurrentQueue.Info.QueuedAudio); Sound.PlayNotification(world.LocalPlayer, "Speech", CurrentQueue.Info.QueuedAudio, world.LocalPlayer.Country.Race);
world.IssueOrder(Order.StartProduction(CurrentQueue.self, clicked.Name, world.IssueOrder(Order.StartProduction(CurrentQueue.self, clicked.Name,
Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1)); Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1));
} }
@@ -164,13 +164,13 @@ namespace OpenRA.Mods.Cnc.Widgets
// instant cancel of things we havent started yet and things that are finished // instant cancel of things we havent started yet and things that are finished
if (first.Paused || first.Done || first.TotalCost == first.RemainingCost) if (first.Paused || first.Done || first.TotalCost == first.RemainingCost)
{ {
Sound.Play(CurrentQueue.Info.CancelledAudio); Sound.PlayNotification(world.LocalPlayer, "Speech", CurrentQueue.Info.CancelledAudio, world.LocalPlayer.Country.Race);
world.IssueOrder(Order.CancelProduction(CurrentQueue.self, clicked.Name, world.IssueOrder(Order.CancelProduction(CurrentQueue.self, clicked.Name,
Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1)); Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1));
} }
else else
{ {
Sound.Play(CurrentQueue.Info.OnHoldAudio); Sound.PlayNotification(world.LocalPlayer, "Speech", CurrentQueue.Info.OnHoldAudio, world.LocalPlayer.Country.Race);
world.IssueOrder(Order.PauseProduction(CurrentQueue.self, clicked.Name, true)); world.IssueOrder(Order.PauseProduction(CurrentQueue.self, clicked.Name, true));
} }
} }

View File

@@ -24,11 +24,11 @@ namespace OpenRA.Mods.RA
public float BuildSpeed = 0.4f; public float BuildSpeed = 0.4f;
public readonly int LowPowerSlowdown = 3; public readonly int LowPowerSlowdown = 3;
public readonly string ReadyAudio = "unitrdy1.aud"; public readonly string ReadyAudio = "UnitReady";
public readonly string BlockedAudio = "nobuild1.aud"; public readonly string BlockedAudio = "NoBuild";
public readonly string QueuedAudio = "train1.aud"; public readonly string QueuedAudio = "Training";
public readonly string OnHoldAudio = "onhold1.aud"; public readonly string OnHoldAudio = "OnHold";
public readonly string CancelledAudio = "cancld1.aud"; public readonly string CancelledAudio = "Cancelled";
public virtual object Create(ActorInitializer init) { return new ProductionQueue(init.self, init.self.Owner.PlayerActor, this); } public virtual object Create(ActorInitializer init) { return new ProductionQueue(init.self, init.self.Owner.PlayerActor, this); }
} }
@@ -211,17 +211,15 @@ namespace OpenRA.Mods.RA
if (isBuilding && !hasPlayedSound) if (isBuilding && !hasPlayedSound)
{ {
Sound.PlayToPlayer(order.Player, Info.ReadyAudio); hasPlayedSound = Sound.PlayNotification(self.Owner, "Speech", Info.ReadyAudio, self.Owner.Country.Race);
hasPlayedSound = true;
} }
else if (!isBuilding) else if (!isBuilding)
{ {
if (BuildUnit(order.TargetString)) if (BuildUnit(order.TargetString))
Sound.PlayToPlayer(order.Player, Info.ReadyAudio); Sound.PlayNotification(self.Owner, "Speech", Info.ReadyAudio, self.Owner.Country.Race);
else if (!hasPlayedSound && time > 0) else if (!hasPlayedSound && time > 0)
{ {
Sound.PlayToPlayer(order.Player, Info.BlockedAudio); hasPlayedSound = Sound.PlayNotification(self.Owner, "Speech", Info.BlockedAudio, self.Owner.Country.Race);
hasPlayedSound = true;
} }
} }
}))); })));

View File

@@ -374,15 +374,15 @@ namespace OpenRA.Mods.RA.Widgets
{ {
// instant cancel of things we havent really started yet, and things that are finished // instant cancel of things we havent really started yet, and things that are finished
if (producing.Paused || producing.Done || producing.TotalCost == producing.RemainingCost) if (producing.Paused || producing.Done || producing.TotalCost == producing.RemainingCost)
{ {
Sound.Play(CurrentQueue.Info.CancelledAudio); Sound.PlayNotification(world.LocalPlayer, "Speech", CurrentQueue.Info.CancelledAudio, world.LocalPlayer.Country.Race);
int numberToCancel = Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1; int numberToCancel = Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1;
world.IssueOrder(Order.CancelProduction(CurrentQueue.self, item, numberToCancel)); world.IssueOrder(Order.CancelProduction(CurrentQueue.self, item, numberToCancel));
} }
else else
{ {
Sound.Play(CurrentQueue.Info.OnHoldAudio); Sound.PlayNotification(world.LocalPlayer, "Speech", CurrentQueue.Info.OnHoldAudio, world.LocalPlayer.Country.Race);
world.IssueOrder(Order.PauseProduction(CurrentQueue.self, item, true)); world.IssueOrder(Order.PauseProduction(CurrentQueue.self, item, true));
} }
} }
@@ -391,7 +391,8 @@ namespace OpenRA.Mods.RA.Widgets
void StartProduction( World world, string item ) void StartProduction( World world, string item )
{ {
Sound.Play(CurrentQueue.Info.QueuedAudio);
Sound.PlayNotification(world.LocalPlayer, "Speech", CurrentQueue.Info.QueuedAudio, world.LocalPlayer.Country.Race);
world.IssueOrder(Order.StartProduction(CurrentQueue.self, item, world.IssueOrder(Order.StartProduction(CurrentQueue.self, item,
Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1)); Game.GetModifierKeys().HasModifier(Modifiers.Shift) ? 5 : 1));
} }

View File

@@ -12,6 +12,14 @@ Speech:
BaseAttack: baseatk1 BaseAttack: baseatk1
HarvesterAttack: HarvesterAttack:
Leave: batlcon1 Leave: batlcon1
UnitReady: unitredy
NoBuild: nobuild1
Training: bldging1
OnHold: onhold1
Cancelled: cancel1
Building: bldging1
ConstructionComplete: constru1
Reinforce: reinfor1
Sounds: Sounds:
Notifications: Notifications:

View File

@@ -29,19 +29,15 @@ FACT:
Group: Building Group: Building
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: bldging1.aud QueuedAudio: Building
ReadyAudio: constru1.aud ReadyAudio: ConstructionComplete
OnHoldAudio: onhold1.aud
CancelledAudio: cancel1.aud
ProductionQueue@Defense: ProductionQueue@Defense:
Type: Defense Type: Defense
Group: Defense Group: Defense
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: bldging1.aud QueuedAudio: Building
ReadyAudio: constru1.aud ReadyAudio: ConstructionComplete
OnHoldAudio: onhold1.aud
CancelledAudio: cancel1.aud
BaseBuilding: BaseBuilding:
ProductionBar: ProductionBar:
@@ -180,10 +176,6 @@ PYLE:
Group: Infantry Group: Infantry
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: bldging1.aud
ReadyAudio: unitredy.aud
OnHoldAudio: onhold1.aud
CancelledAudio: cancel1.aud
ProductionBar: ProductionBar:
HAND: HAND:
@@ -220,10 +212,6 @@ HAND:
Group: Infantry Group: Infantry
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: bldging1.aud
ReadyAudio: unitredy.aud
OnHoldAudio: onhold1.aud
CancelledAudio: cancel1.aud
ProductionBar: ProductionBar:
AFLD: AFLD:
@@ -262,10 +250,7 @@ AFLD:
Group: Vehicle Group: Vehicle
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: bldging1.aud
ReadyAudio: ReadyAudio:
OnHoldAudio: onhold1.aud
CancelledAudio: cancel1.aud
ProductionBar: ProductionBar:
WEAP: WEAP:
@@ -305,10 +290,6 @@ WEAP:
Group: Vehicle Group: Vehicle
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: bldging1.aud
ReadyAudio: unitredy.aud
OnHoldAudio: onhold1.aud
CancelledAudio: cancel1.aud
ProductionBar: ProductionBar:
HQ: HQ:
@@ -430,10 +411,6 @@ HPAD:
Group: Aircraft Group: Aircraft
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: bldging1.aud
ReadyAudio: unitredy.aud
OnHoldAudio: onhold1.aud
CancelledAudio: cancel1.aud
ProductionBar: ProductionBar:
EYE: EYE:

View File

@@ -13,16 +13,13 @@
# add game logic for concrete plates (use terrain overlay from bridges/ressources) # add game logic for concrete plates (use terrain overlay from bridges/ressources)
# allow placing turrets on walls # allow placing turrets on walls
# make sandworm behave like a moving anti-everything mine (currently not attacking anything) # make sandworm behave like a moving anti-everything mine (currently not attacking anything)
# allow upgrades
# add muzzles and explosions (currently falls back to RA) # add muzzles and explosions (currently falls back to RA)
# create a shellmap (currently just a blank placeholder) # create a shellmap (currently just a blank placeholder)
# add sonic tank weapon (currently uses tesla) # add sonic tank weapon (currently uses tesla)
# starport prices should vary
# some transparent tiles (see Atreides Hightech Factory) should be white # some transparent tiles (see Atreides Hightech Factory) should be white
# gamefile extraction (setup/setup.z) from CD fails # gamefile extraction (setup/setup.z) from CD fails
# support patch 1.06 gamefiles: DATA.R8 has more frames and currently fails to extract, also featuring new terrain with white houses and new units: grenade thrower, stealth raider icon # support patch 1.06 gamefiles: DATA.R8 has more frames and currently fails to extract, also featuring new terrain with white houses and new units: grenade thrower, stealth raider icon
# put TilesetBuilder.Export into OpenRA.Utility to call the functions directly when extracting game-files (instead of opening a GUI) # put TilesetBuilder.Export into OpenRA.Utility to call the functions directly when extracting game-files (instead of opening a GUI)
# group number metrics are off # group number metrics are off
# building offsets wrong (worst for towers) # building offsets wrong (worst for towers)
# spice blooms should explode and create new spice field instead of growing spice # spice blooms should explode and create new spice field instead of growing spice
# build light vehicles only at light factory, don't create a new production queue and tab for every new factory except starport

View File

@@ -1,4 +1,4 @@
# requires Dune 2000/DATA/GAMESFX copied to ~/.openra/Content/d2k # requires Dune 2000/DATA/GAMESFX copied to $PlatformSupportDir/Content/d2k
Speech: Speech:
DefaultVariant: .AUD DefaultVariant: .AUD
@@ -19,6 +19,15 @@ Speech:
BaseAttack: ATACK BaseAttack: ATACK
HarvesterAttack: HATTK HarvesterAttack: HATTK
Leave: ABORT Leave: ABORT
UnitReady: UNRDY
NoRoom: NROOM
Training: TRAIN
OnHold: HOLD
Cancelled: CANCL
Building: BUILD
BuildingReady: BDRDY
OrderPlaced: ORDER
Reinforce: REINF
Sounds: Sounds:
Notifications: Notifications:

View File

@@ -6,18 +6,6 @@ CONYARDA:
IntoActor: mcva IntoActor: mcva
Offset:1,1 Offset:1,1
Facing: 270 Facing: 270
ProductionQueue@Building:
QueuedAudio: AI_BUILD.AUD
OnHoldAudio: AI_HOLD.AUD
ReadyAudio: AI_BDRDY.AUD
CancelledAudio: AI_CANCL.AUD
BlockedAudio: AI_NROOM.AUD
ProductionQueue@Defense:
QueuedAudio: AI_BUILD.AUD
OnHoldAudio: AI_HOLD.AUD
ReadyAudio: AI_BDRDY.AUD
CancelledAudio: AI_CANCL.AUD
BlockedAudio: AI_NROOM.AUD
PWRA: PWRA:
Inherits: ^POWER Inherits: ^POWER
@@ -61,41 +49,86 @@ HARVESTERA:
Buildable: Buildable:
Prerequisites: heavya,refa Prerequisites: heavya,refa
Owner: atreides Owner: atreides
BuiltAt: heavya
RenderUnit: RenderUnit:
Image: HARVESTER Image: HARVESTER
HARVESTERA.starport:
Inherits: HARVESTERA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 895
TRIKEA: TRIKEA:
Inherits: ^TRIKE Inherits: ^TRIKE
Buildable: Buildable:
Prerequisites: lighta Prerequisites: lighta
Owner: atreides Owner: atreides
BuiltAt: lighta
RenderUnit: RenderUnit:
Image: TRIKE Image: TRIKE
TRIKEA.starport:
Inherits: TRIKEA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 149
QUADA: QUADA:
Inherits: ^QUAD Inherits: ^QUAD
Buildable: Buildable:
Prerequisites: lighta Prerequisites: lighta
Owner: atreides Owner: atreides
BuiltAt: lighta
RenderUnit: RenderUnit:
Image: QUAD Image: QUAD
QUADA.starport:
Inherits: QUADA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 295
SIEGETANKA: SIEGETANKA:
Inherits: ^SIEGETANK Inherits: ^SIEGETANK
Buildable: Buildable:
Prerequisites: heavya, radara Prerequisites: heavya, radara
Owner: atreides Owner: atreides
BuiltAt: heavya
RenderUnitTurreted: RenderUnitTurreted:
Image: SIEGETANK Image: SIEGETANK
SIEGETANKA.starport:
Inherits: SIEGETANKA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 495
MISSILETANKA: MISSILETANKA:
Inherits: ^MISSILETANK Inherits: ^MISSILETANK
Buildable: Buildable:
Prerequisites: heavya Prerequisites: heavya
Owner: atreides Owner: atreides
BuiltAt: heavya
RenderUnit: RenderUnit:
Image: MISSILETANK Image: MISSILETANK
MISSILETANKA.starport:
Inherits: MISSILETANKA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 599
CARRYALLA: CARRYALLA:
Inherits: ^CARRYALL Inherits: ^CARRYALL
Buildable: Buildable:
@@ -105,29 +138,26 @@ CARRYALLA:
RenderUnit: RenderUnit:
Image: CARRYALL Image: CARRYALL
CARRYALLA.starport:
Inherits: CARRYALLA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 999
BARRA: BARRA:
Inherits: ^BARRACKS Inherits: ^BARRACKS
Buildable: Buildable:
Prerequisites: pwra Prerequisites: pwra
Owner: atreides Owner: atreides
ProductionQueue@Infantry:
ReadyAudio: AI_UNRDY.AUD
QueuedAudio:AI_TRAIN.AUD
OnHoldAudio: AI_HOLD.AUD
CancelledAudio: AI_CANCL.AUD
BlockedAudio: AI_NROOM.AUD
HIGHTECHA: HIGHTECHA:
Inherits: ^HIGHTECH Inherits: ^HIGHTECH
Buildable: Buildable:
Prerequisites: radara Prerequisites: radara
Owner: atreides Owner: atreides
ProductionQueue@Plane:
ReadyAudio: AI_UNRDY.AUD
QueuedAudio:AI_TRAIN.AUD
OnHoldAudio: AI_HOLD.AUD
CancelledAudio: AI_CANCL.AUD
BlockedAudio: AI_NROOM.AUD
RESEARCHA: RESEARCHA:
Inherits: ^RESEARCH Inherits: ^RESEARCH
@@ -165,12 +195,6 @@ LIGHTA:
Owner: atreides Owner: atreides
RenderBuildingWarFactory: RenderBuildingWarFactory:
Image: LIGHTA Image: LIGHTA
ProductionQueue@Vehicle:
ReadyAudio: AI_UNRDY.AUD
QueuedAudio:AI_TRAIN.AUD
OnHoldAudio: AI_HOLD.AUD
CancelledAudio: AI_CANCL.AUD
BlockedAudio: AI_NROOM.AUD
HEAVYA: HEAVYA:
Inherits: ^HEAVY Inherits: ^HEAVY
@@ -179,12 +203,6 @@ HEAVYA:
Owner: atreides Owner: atreides
RenderBuildingWarFactory: RenderBuildingWarFactory:
Image: HEAVYA Image: HEAVYA
ProductionQueue@Vehicle:
ReadyAudio: AI_UNRDY.AUD
QueuedAudio:AI_TRAIN.AUD
OnHoldAudio: AI_HOLD.AUD
CancelledAudio: AI_CANCL.AUD
BlockedAudio: AI_NROOM.AUD
RADARA: RADARA:
Inherits: ^RADAR Inherits: ^RADAR
@@ -197,14 +215,6 @@ STARPORTA:
Buildable: Buildable:
Prerequisites: radara Prerequisites: radara
Owner: atreides Owner: atreides
ProductionAirdrop:
ReadyAudio: AI_REINF.AUD
ProductionQueue@Vehicle:
QueuedAudio: AI_ORDER.AUD
ReadyAudio:
OnHoldAudio: AI_HOLD.AUD
CancelledAudio: AI_CANCL.AUD
BlockedAudio: AI_NROOM.AUD
REPAIRA: REPAIRA:
Inherits: ^REPAIR Inherits: ^REPAIR
@@ -217,6 +227,7 @@ MCVA:
Buildable: Buildable:
Prerequisites: heavya,repaira Prerequisites: heavya,repaira
Owner: atreides Owner: atreides
BuiltAt: heavya
Transforms: Transforms:
Facing: 10 Facing: 10
IntoActor: conyarda IntoActor: conyarda
@@ -225,11 +236,32 @@ MCVA:
RenderUnit: RenderUnit:
Image: DMCV Image: DMCV
MCVA.starport:
Inherits: MCVA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 1499
COMBATA: COMBATA:
Inherits: ^COMBAT Inherits: ^COMBAT
Tooltip:
Icon: combataicon
Buildable: Buildable:
Prerequisites: heavya Prerequisites: heavya
Owner: atreides Owner: atreides
BuiltAt: heavya
RenderUnitTurreted:
Image: COMBATA
COMBATA.starport:
Inherits: COMBATA
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 595
SONICTANK: SONICTANK:
Inherits: ^Vehicle Inherits: ^Vehicle
@@ -238,11 +270,13 @@ SONICTANK:
BuildPaletteOrder: 15 BuildPaletteOrder: 15
Prerequisites: heavya,researcha Prerequisites: heavya,researcha
Owner: atreides Owner: atreides
BuiltAt: heavya
Valued: Valued:
Cost: 1500 Cost: 1500
Tooltip: Tooltip:
Name: Sonic Tank Name: Sonic Tank
Description: Fires a sound wave\n Strong vs Infantry.\n Weak vs Tanks Description: Fires a sound wave\n Strong vs Infantry.\n Weak vs Tanks
Icon: sonictankicon
Selectable: Selectable:
Bounds: 30,30 Bounds: 30,30
Health: Health:
@@ -254,6 +288,7 @@ SONICTANK:
RevealsShroud: RevealsShroud:
Range: 7 Range: 7
RenderUnit: RenderUnit:
Image: SONICTANK
AttackFrontal: AttackFrontal:
PrimaryWeapon: TTankZap PrimaryWeapon: TTankZap
PrimaryOffset: 0,0,0,-5 PrimaryOffset: 0,0,0,-5

View File

@@ -6,18 +6,6 @@ CONYARDH:
IntoActor: mcvh IntoActor: mcvh
Offset:1,1 Offset:1,1
Facing: 270 Facing: 270
ProductionQueue@Building:
QueuedAudio: HI_BUILD.AUD
OnHoldAudio: HI_HOLD.AUD
ReadyAudio: HI_BDRDY.AUD
CancelledAudio: HI_CANCL.AUD
BlockedAudio: HI_NROOM.AUD
ProductionQueue@Defense:
QueuedAudio: HI_BUILD.AUD
OnHoldAudio: HI_HOLD.AUD
ReadyAudio: HI_BDRDY.AUD
CancelledAudio: HI_CANCL.AUD
BlockedAudio: HI_NROOM.AUD
PWRH: PWRH:
Inherits: ^POWER Inherits: ^POWER
@@ -46,6 +34,14 @@ HARVESTERH:
RenderUnit: RenderUnit:
Image: HARVESTER Image: HARVESTER
HARVESTERH.starport:
Inherits: HARVESTERH
Buildable:
Queue: Ship
BuiltAt: starporth
Valued:
Cost: 895
TRIKEH: TRIKEH:
Inherits: ^TRIKE Inherits: ^TRIKE
Buildable: Buildable:
@@ -54,6 +50,14 @@ TRIKEH:
RenderUnit: RenderUnit:
Image: TRIKE Image: TRIKE
TRIKEH.starport:
Inherits: TRIKEH
Buildable:
Queue: Ship
BuiltAt: starporth
Valued:
Cost: 149
QUADH: QUADH:
Inherits: ^QUAD Inherits: ^QUAD
Buildable: Buildable:
@@ -62,6 +66,14 @@ QUADH:
RenderUnit: RenderUnit:
Image: QUAD Image: QUAD
QUADH.starport:
Inherits: QUADH
Buildable:
Queue: Ship
BuiltAt: starporth
Valued:
Cost: 295
SIEGETANKH: SIEGETANKH:
Inherits: ^SIEGETANK Inherits: ^SIEGETANK
Buildable: Buildable:
@@ -70,6 +82,14 @@ SIEGETANKH:
RenderUnitTurreted: RenderUnitTurreted:
Image: SIEGETANK Image: SIEGETANK
SIEGETANKH.starport:
Inherits: SIEGETANKH
Buildable:
Queue: Ship
BuiltAt: starporta
Valued:
Cost: 495
MISSILETANKH: MISSILETANKH:
Inherits: ^MISSILETANK Inherits: ^MISSILETANK
Buildable: Buildable:
@@ -78,6 +98,14 @@ MISSILETANKH:
RenderUnit: RenderUnit:
Image: MISSILETANK Image: MISSILETANK
MISSILETANKH.starport:
Inherits: MISSILETANKH
Buildable:
Queue: Ship
BuiltAt: starporth
Valued:
Cost: 599
CARRYALLH: CARRYALLH:
Inherits: ^CARRYALL Inherits: ^CARRYALL
Buildable: Buildable:
@@ -87,17 +115,19 @@ CARRYALLH:
RenderUnit: RenderUnit:
Image: CARRYALL Image: CARRYALL
CARRYALLH.starport:
Inherits: CARRYALLH
Buildable:
Queue: Ship
BuiltAt: starporth
Valued:
Cost: 999
BARRH: BARRH:
Inherits: ^BARRACKS Inherits: ^BARRACKS
Buildable: Buildable:
Prerequisites: pwrh Prerequisites: pwrh
Owner: harkonnen Owner: harkonnen
ProductionQueue@Infantry:
ReadyAudio: HI_UNRDY.AUD
QueuedAudio:HI_TRAIN.AUD
OnHoldAudio: HI_HOLD.AUD
CancelledAudio: HI_CANCL.AUD
BlockedAudio: HI_NROOM.AUD
GUNTOWERH: GUNTOWERH:
Inherits: ^GUNTOWER Inherits: ^GUNTOWER
@@ -122,12 +152,6 @@ HIGHTECHH:
Buildable: Buildable:
Prerequisites: radarh Prerequisites: radarh
Owner: harkonnen Owner: harkonnen
ProductionQueue@Plane:
ReadyAudio: HI_UNRDY.AUD
QueuedAudio:HI_TRAIN.AUD
OnHoldAudio: HI_HOLD.AUD
CancelledAudio: HI_CANCL.AUD
BlockedAudio: HI_NROOM.AUD
RESEARCHH: RESEARCHH:
Inherits: ^RESEARCH Inherits: ^RESEARCH
@@ -168,12 +192,6 @@ LIGHTH:
Owner: harkonnen Owner: harkonnen
RenderBuildingWarFactory: RenderBuildingWarFactory:
Image: LIGHTH Image: LIGHTH
ProductionQueue@Vehicle:
ReadyAudio: HI_UNRDY.AUD
QueuedAudio:HI_TRAIN.AUD
OnHoldAudio: HI_HOLD.AUD
CancelledAudio: HI_CANCL.AUD
BlockedAudio: HI_NROOM.AUD
HEAVYH: HEAVYH:
Inherits: ^HEAVY Inherits: ^HEAVY
@@ -182,12 +200,6 @@ HEAVYH:
Owner: harkonnen Owner: harkonnen
RenderBuildingWarFactory: RenderBuildingWarFactory:
Image: HEAVYH Image: HEAVYH
ProductionQueue@Vehicle:
ReadyAudio: HI_UNRDY.AUD
QueuedAudio:HI_TRAIN.AUD
OnHoldAudio: HI_HOLD.AUD
CancelledAudio: HI_CANCL.AUD
BlockedAudio: HI_NROOM.AUD
RADARH: RADARH:
Inherits: ^RADAR Inherits: ^RADAR
@@ -200,14 +212,6 @@ STARPORTH:
Buildable: Buildable:
Prerequisites: radarh Prerequisites: radarh
Owner: harkonnen Owner: harkonnen
ProductionAirdrop:
ReadyAudio: HI_REINF.AUD
ProductionQueue@Vehicle:
QueuedAudio: HI_ORDER.AUD
ReadyAudio:
OnHoldAudio: HI_HOLD.AUD
CancelledAudio: HI_CANCL.AUD
BlockedAudio: HI_NROOM.AUD
REPAIRH: REPAIRH:
Inherits: ^REPAIR Inherits: ^REPAIR
@@ -228,11 +232,31 @@ MCVH:
RenderUnit: RenderUnit:
Image: DMCV Image: DMCV
MCVH.starport:
Inherits: MCVH
Buildable:
Queue: Ship
BuiltAt: starporth
Valued:
Cost: 1499
COMBATH: COMBATH:
Inherits: ^COMBAT Inherits: ^COMBAT
Tooltip:
Icon: combathicon
Buildable: Buildable:
Prerequisites: heavyh Prerequisites: heavyh
Owner: harkonnen Owner: harkonnen
RenderUnitTurreted:
Image: COMBATH
COMBATH.starport:
Inherits: COMBATH
Buildable:
Queue: Ship
BuiltAt: starporth
Valued:
Cost: 595
DEVAST: DEVAST:
Inherits: ^Tank Inherits: ^Tank

View File

@@ -6,18 +6,6 @@ CONYARDO:
IntoActor: mcvo IntoActor: mcvo
Offset:1,1 Offset:1,1
Facing: 270 Facing: 270
ProductionQueue@Building:
QueuedAudio: OI_BUILD.AUD
OnHoldAudio: OI_HOLD.AUD
ReadyAudio: OI_BDRDY.AUD
CancelledAudio: OI_CANCL.AUD
BlockedAudio: OI_NROOM.AUD
ProductionQueue@Defense:
QueuedAudio: OI_BUILD.AUD
OnHoldAudio: OI_HOLD.AUD
ReadyAudio: OI_BDRDY.AUD
CancelledAudio: OI_CANCL.AUD
BlockedAudio: OI_NROOM.AUD
PWRO: PWRO:
Inherits: ^POWER Inherits: ^POWER
@@ -43,12 +31,6 @@ BARRO:
Buildable: Buildable:
Prerequisites: pwro Prerequisites: pwro
Owner: ordos Owner: ordos
ProductionQueue@Infantry:
ReadyAudio: OI_UNRDY.AUD
QueuedAudio:OI_TRAIN.AUD
OnHoldAudio: OI_HOLD.AUD
CancelledAudio: OI_CANCL.AUD
BlockedAudio: OI_NROOM.AUD
GUNTOWERO: GUNTOWERO:
Inherits: ^GUNTOWER Inherits: ^GUNTOWER
@@ -73,12 +55,6 @@ HIGHTECHO:
Buildable: Buildable:
Prerequisites: radaro Prerequisites: radaro
Owner: ordos Owner: ordos
ProductionQueue@Plane:
ReadyAudio: OI_UNRDY.AUD
QueuedAudio:OI_TRAIN.AUD
OnHoldAudio: OI_HOLD.AUD
CancelledAudio: OI_CANCL.AUD
BlockedAudio: OI_NROOM.AUD
RESEARCHO: RESEARCHO:
Inherits: ^RESEARCH Inherits: ^RESEARCH
@@ -119,12 +95,6 @@ LIGHTO:
Owner: ordos Owner: ordos
RenderBuildingWarFactory: RenderBuildingWarFactory:
Image: LIGHTO Image: LIGHTO
ProductionQueue@Vehicle:
ReadyAudio: OI_UNRDY.AUD
QueuedAudio:OI_TRAIN.AUD
OnHoldAudio: OI_HOLD.AUD
CancelledAudio: OI_CANCL.AUD
BlockedAudio: OI_NROOM.AUD
HEAVYO: HEAVYO:
Inherits: ^HEAVY Inherits: ^HEAVY
@@ -133,12 +103,6 @@ HEAVYO:
Owner: ordos Owner: ordos
RenderBuildingWarFactory: RenderBuildingWarFactory:
Image: HEAVYO Image: HEAVYO
ProductionQueue@Vehicle:
ReadyAudio: OI_UNRDY.AUD
QueuedAudio:OI_TRAIN.AUD
OnHoldAudio: OI_HOLD.AUD
CancelledAudio: OI_CANCL.AUD
BlockedAudio: OI_NROOM.AUD
RADARO: RADARO:
Inherits: ^RADAR Inherits: ^RADAR
@@ -151,14 +115,6 @@ STARPORTO:
Buildable: Buildable:
Prerequisites: radaro Prerequisites: radaro
Owner: ordos Owner: ordos
ProductionAirdrop:
ReadyAudio: OI_REINF.AUD
ProductionQueue@Vehicle:
QueuedAudio: OI_ORDER.AUD
ReadyAudio:
OnHoldAudio: OI_HOLD.AUD
CancelledAudio: OI_CANCL.AUD
BlockedAudio: OI_NROOM.AUD
REPAIRO: REPAIRO:
Inherits: ^REPAIR Inherits: ^REPAIR
@@ -179,6 +135,14 @@ MCVO:
RenderUnit: RenderUnit:
Image: DMCV Image: DMCV
MCVO.starport:
Inherits: MCVO
Buildable:
Queue: Ship
BuiltAt: starporto
Valued:
Cost: 1499
HARVESTERO: HARVESTERO:
Inherits: ^HARVESTER Inherits: ^HARVESTER
Buildable: Buildable:
@@ -187,11 +151,31 @@ HARVESTERO:
RenderUnit: RenderUnit:
Image: HARVESTER Image: HARVESTER
HARVESTERO.starport:
Inherits: HARVESTERO
Buildable:
Queue: Ship
BuiltAt: starporto
Valued:
Cost: 895
COMBATO: COMBATO:
Inherits: ^COMBAT Inherits: ^COMBAT
Tooltip:
Icon: combatoicon
Buildable: Buildable:
Prerequisites: heavyo Prerequisites: heavyo
Owner: ordos Owner: ordos
RenderUnitTurreted:
Image: COMBATO
COMBATO.starport:
Inherits: COMBATO
Buildable:
Queue: Ship
BuiltAt: starporto
Valued:
Cost: 595
RAIDER: RAIDER:
Inherits: ^Vehicle Inherits: ^Vehicle
@@ -237,6 +221,14 @@ QUADO:
RenderUnit: RenderUnit:
Image: QUAD Image: QUAD
QUADO.starport:
Inherits: QUADO
Buildable:
Queue: Ship
BuiltAt: starporto
Valued:
Cost: 295
SIEGETANKO: SIEGETANKO:
Inherits: ^SIEGETANK Inherits: ^SIEGETANK
Buildable: Buildable:
@@ -245,6 +237,14 @@ SIEGETANKO:
RenderUnitTurreted: RenderUnitTurreted:
Image: SIEGETANK Image: SIEGETANK
SIEGETANKO.starport:
Inherits: SIEGETANKO
Buildable:
Queue: Ship
BuiltAt: starporto
Valued:
Cost: 495
MISSILETANKO: MISSILETANKO:
Inherits: ^MISSILETANK Inherits: ^MISSILETANK
Buildable: Buildable:
@@ -253,6 +253,14 @@ MISSILETANKO:
RenderUnit: RenderUnit:
Image: MISSILETANK Image: MISSILETANK
MISSILETANKO.starport:
Inherits: MISSILETANKO
Buildable:
Queue: Ship
BuiltAt: starporto
Valued:
Cost: 599
CARRYALLO: CARRYALLO:
Inherits: ^CARRYALL Inherits: ^CARRYALL
Buildable: Buildable:
@@ -262,6 +270,14 @@ CARRYALLO:
RenderUnit: RenderUnit:
Image: CARRYALL Image: CARRYALL
CARRYALLO.starport:
Inherits: CARRYALLO
Buildable:
Queue: Ship
BuiltAt: starporto
Valued:
Cost: 999
DEVIATORTANK: DEVIATORTANK:
Inherits: ^Tank Inherits: ^Tank
Valued: Valued:

View File

@@ -21,14 +21,6 @@
Value: 2500 Value: 2500
BaseBuilding: BaseBuilding:
ProductionBar: ProductionBar:
ProductionQueue@Building:
Type: Building
BuildSpeed: .4
LowPowerSlowdown: 3
ProductionQueue@Defense:
Type: Defense
BuildSpeed: .4
LowPowerSlowdown: 3
^POWER: ^POWER:
Inherits: ^Building Inherits: ^Building
@@ -86,10 +78,6 @@
Produces: Infantry Produces: Infantry
PrimaryBuilding: PrimaryBuilding:
ProductionBar: ProductionBar:
ProductionQueue@Infantry:
Type: Infantry
BuildSpeed: .4
LowPowerSlowdown: 3
^HIGHTECH: ^HIGHTECH:
Inherits: ^Building Inherits: ^Building
@@ -120,10 +108,6 @@
Produces: Plane Produces: Plane
PrimaryBuilding: PrimaryBuilding:
ProductionBar: ProductionBar:
ProductionQueue@Plane:
Type: Plane
BuildSpeed: .4
LowPowerSlowdown: 3
^RESEARCH: ^RESEARCH:
Inherits: ^Building Inherits: ^Building
@@ -238,7 +222,7 @@
Cost: 1000 Cost: 1000
Tooltip: Tooltip:
Name: Light Factory Name: Light Factory
Description: produces light vehicles. Description: Produces light vehicles.
Building: Building:
Power: -30 Power: -30
Footprint: xxx xxx Footprint: xxx xxx
@@ -259,10 +243,6 @@
Produces: Vehicle Produces: Vehicle
PrimaryBuilding: PrimaryBuilding:
ProductionBar: ProductionBar:
ProductionQueue@Vehicle:
Type: Vehicle
BuildSpeed: .4
LowPowerSlowdown: 3
^HEAVY: ^HEAVY:
Inherits: ^Building Inherits: ^Building
@@ -273,7 +253,7 @@
Cost: 2000 Cost: 2000
Tooltip: Tooltip:
Name: Heavy Factory Name: Heavy Factory
Description: produces tanks Description: Produces heavy vehicles.
Building: Building:
Power: -30 Power: -30
Footprint: _x_ xxx xxx Footprint: _x_ xxx xxx
@@ -295,10 +275,6 @@
Produces: Vehicle Produces: Vehicle
PrimaryBuilding: PrimaryBuilding:
ProductionBar: ProductionBar:
ProductionQueue@Vehicle:
Type: Vehicle
BuildSpeed: .4
LowPowerSlowdown: 3
^RADAR: ^RADAR:
RequiresPower: RequiresPower:
@@ -331,7 +307,7 @@
Cost: 2000 Cost: 2000
Tooltip: Tooltip:
Name: Starport Name: Starport
Description: Provides a dropzone for vehicle reinforcements Description: Dropzone for cheap reinforcements
Buildable: Buildable:
Queue: Building Queue: Building
BuildPaletteOrder: 60 BuildPaletteOrder: 60
@@ -351,13 +327,10 @@
SpawnOffset: -24,0 SpawnOffset: -24,0
ExitCell: 3,1 ExitCell: 3,1
ProductionAirdrop: ProductionAirdrop:
Produces: Vehicle Produces: Ship
ActorType: frigate ActorType: frigate
ProductionQueue@Vehicle:
Type: Vehicle
BuildSpeed: .4
LowPowerSlowdown: 3
ProductionBar: ProductionBar:
PrimaryBuilding:
^WALL: ^WALL:
Buildable: Buildable:
@@ -520,12 +493,6 @@ STARPORTC:
Inherits: ^STARPORT Inherits: ^STARPORT
ProductionAirdrop: ProductionAirdrop:
ReadyAudio: ReadyAudio:
ProductionQueue@Vehicle:
QueuedAudio:
ReadyAudio:
OnHoldAudio:
CancelledAudio:
BlockedAudio:
-Buildable: -Buildable:
PALACEC: PALACEC:
@@ -537,12 +504,6 @@ HEAVYC:
-Buildable: -Buildable:
RenderBuildingWarFactory: RenderBuildingWarFactory:
Image: HEAVYC Image: HEAVYC
ProductionQueue@Vehicle:
ReadyAudio:
QueuedAudio:
OnHoldAudio:
CancelledAudio:
BlockedAudio:
#4PLATES: #4PLATES:
# Inherits: ^WALL # Inherits: ^WALL

View File

@@ -1,5 +1,41 @@
Player: Player:
TechTree: TechTree:
ClassicProductionQueue@Building:
Type: Building
BuildSpeed: .4
LowPowerSlowdown: 3
QueuedAudio: Building
ReadyAudio: BuildingReady
BlockedAudio: NoRoom
ClassicProductionQueue@Defense:
Type: Defense
BuildSpeed: .4
LowPowerSlowdown: 3
QueuedAudio: Building
ReadyAudio: BuildingReady
BlockedAudio: NoRoom
ClassicProductionQueue@Vehicle:
Type: Vehicle
BuildSpeed: .4
LowPowerSlowdown: 3
BlockedAudio: NoRoom
ClassicProductionQueue@Infantry:
Type: Infantry
BuildSpeed: .4
LowPowerSlowdown: 3
BlockedAudio: NoRoom
ClassicProductionQueue@Ship:
Type: Ship
BuildSpeed: .4
LowPowerSlowdown: 3
BlockedAudio: NoRoom
QueuedAudio: OrderPlaced
ReadyAudio:
ClassicProductionQueue@Plane:
Type: Plane
BuildSpeed: .4
LowPowerSlowdown: 3
BlockedAudio: NoRoom
PlaceBuilding: PlaceBuilding:
SupportPowerManager: SupportPowerManager:
ConquestVictoryConditions: ConquestVictoryConditions:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View File

@@ -12,6 +12,13 @@ Speech:
BaseAttack: baseatk1 BaseAttack: baseatk1
HarvesterAttack: HarvesterAttack:
Leave: bct1 Leave: bct1
UnitReady: unitrdy1
NoBuild: nobuild1
Training: train1
OnHold: onhold1
Cancelled: cancld1
Building: abldgin1
ConstructionComplete: conscmp1
Sounds: Sounds:
Notifications: Notifications:

View File

@@ -4,14 +4,14 @@ Player:
Type: Building Type: Building
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: abldgin1.aud QueuedAudio: Building
ReadyAudio: conscmp1.aud ReadyAudio: ConstructionComplete
ClassicProductionQueue@Defense: ClassicProductionQueue@Defense:
Type: Defense Type: Defense
BuildSpeed: .4 BuildSpeed: .4
LowPowerSlowdown: 3 LowPowerSlowdown: 3
QueuedAudio: abldgin1.aud QueuedAudio: Building
ReadyAudio: conscmp1.aud ReadyAudio: ConstructionComplete
ClassicProductionQueue@Vehicle: ClassicProductionQueue@Vehicle:
Type: Vehicle Type: Vehicle
BuildSpeed: .4 BuildSpeed: .4