added harvester, trike/quad now working, fixed mod inheritances

RenderCargo: works, moved R8Reader to Utility namespace
This commit is contained in:
Matthias Mailänder
2012-05-22 21:02:25 +02:00
parent 5426a5fd3c
commit 66f82c6c2a
15 changed files with 270 additions and 95 deletions

View File

@@ -12,6 +12,7 @@ The OpenRA developers are:
Also thanks to: Also thanks to:
* Akseli Virtanen (RAGEQUIT) * Akseli Virtanen (RAGEQUIT)
* Andrew Riedi * Andrew Riedi
* Barnaby Smith (mvi)
* Bellator * Bellator
* Christer Ulfsparre (Holloweye) * Christer Ulfsparre (Holloweye)
* Erasmus Schroder (rasco) * Erasmus Schroder (rasco)
@@ -22,6 +23,7 @@ Also thanks to:
* Lawrence Wang * Lawrence Wang
* Mark Olson (markolson) * Mark Olson (markolson)
* Matthew Gatland (mgatland) * Matthew Gatland (mgatland)
* Matthias Mailänder (Mailaender)
* Max Ugrumov (katzsmile) * Max Ugrumov (katzsmile)
* Max621 * Max621
* Nukem * Nukem

View File

@@ -81,7 +81,6 @@
<Compile Include="Graphics\IGraphicsDevice.cs" /> <Compile Include="Graphics\IGraphicsDevice.cs" />
<Compile Include="Graphics\IInputHandler.cs" /> <Compile Include="Graphics\IInputHandler.cs" />
<Compile Include="Graphics\PngLoader.cs" /> <Compile Include="Graphics\PngLoader.cs" />
<Compile Include="Graphics\R8Reader.cs" />
<Compile Include="Graphics\ShpReader.cs" /> <Compile Include="Graphics\ShpReader.cs" />
<Compile Include="Graphics\ShpWriter.cs" /> <Compile Include="Graphics\ShpWriter.cs" />
<Compile Include="Graphics\Vertex.cs" /> <Compile Include="Graphics\Vertex.cs" />

View File

@@ -82,7 +82,9 @@
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup> <PropertyGroup>
<Folder Include="Properties\" /> <PostBuildEvent>mkdir "$(SolutionDir)mods/d2k/"
</ItemGroup> copy "$(TargetPath)" "$(SolutionDir)mods/d2k/"
cd "$(SolutionDir)"</PostBuildEvent>
</PropertyGroup>
</Project> </Project>

View File

@@ -54,6 +54,7 @@
<ItemGroup> <ItemGroup>
<Compile Include="Command.cs" /> <Compile Include="Command.cs" />
<Compile Include="Program.cs" /> <Compile Include="Program.cs" />
<Compile Include="R8Reader.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@@ -1,10 +1,12 @@
#region Copyright & License Information #region Copyright & License Information
/* /*
* Copyright 2007-2010 The OpenRA Developers (see AUTHORS) * Copyright 2007-2012 The OpenRA Developers (see AUTHORS)
* This file is part of OpenRA, which is free software. It is made * This file is part of OpenRA, which is free software. It is made
* available to you under the terms of the GNU General Public License * available to you under the terms of the GNU General Public License
* as published by the Free Software Foundation. For more information, * as published by the Free Software Foundation. For more information,
* see LICENSE. * see COPYING.
* It also incorporates parts of http://code.google.com/p/dune2000plusone
* which is licensed under the BSD 2-Clause License.
*/ */
#endregion #endregion
@@ -14,7 +16,7 @@ using System.Drawing;
using System.IO; using System.IO;
using System; using System;
namespace OpenRA.FileFormats namespace OpenRA.Utility
{ {
public class R8Image public class R8Image
{ {

BIN
mods/d2k/bits/d2k.pal Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -3,6 +3,7 @@ Metadata:
Description: Converting the OpenRA Red Alert Mod one by one to Dune 2000 Description: Converting the OpenRA Red Alert Mod one by one to Dune 2000
Version: {DEV_VERSION} Version: {DEV_VERSION}
Author: The OpenD2k Developers Author: The OpenD2k Developers
Requires: ra
Folders: Folders:
. .
@@ -10,84 +11,38 @@ Folders:
./mods/d2k/bits ./mods/d2k/bits
./mods/d2k/uibits ./mods/d2k/uibits
~^/Content/d2k ~^/Content/d2k
./mods/ra
./mods/ra/bits
./mods/ra/uibits
~^/Content/ra
Packages: Packages:
~main.mix arrakis.mix
redalert.mix
conquer.mix
hires.mix
local.mix
sounds.mix
speech.mix
allies.mix
russian.mix
temperat.mix
snow.mix
interior.mix
~scores.mix
~movies1.mix
~movies2.mix
mods/d2k/bits/arrakis.mix
Rules: Rules:
mods/d2k/rules/system.yaml mods/d2k/rules/system.yaml
mods/d2k/rules/vehicles.yaml mods/d2k/rules/vehicles.yaml
mods/d2k/rules/structures.yaml mods/d2k/rules/structures.yaml
mods/d2k/rules/aircraft.yaml mods/d2k/rules/aircraft.yaml
mods/ra/rules/defaults.yaml
mods/ra/rules/system.yaml
mods/ra/rules/vehicles.yaml
mods/ra/rules/structures.yaml
mods/ra/rules/infantry.yaml
mods/ra/rules/civilian.yaml
mods/ra/rules/trees.yaml
mods/ra/rules/aircraft.yaml
mods/ra/rules/ships.yaml
Sequences: Sequences:
mods/d2k/sequences.yaml mods/d2k/sequences.yaml
mods/ra/sequences.yaml
Cursors: Cursors:
mods/ra/cursors.yaml
Chrome: Chrome:
mods/d2k/chrome.yaml mods/d2k/chrome.yaml
mods/ra/chrome.yaml
Assemblies: Assemblies:
mods/d2k/OpenRA.Mods.D2k.dll mods/d2k/OpenRA.Mods.D2k.dll
mods/ra/OpenRA.Mods.RA.dll mods/ra/OpenRA.Mods.RA.dll
mods/cnc/OpenRA.Mods.Cnc.dll
ChromeLayout: ChromeLayout:
mods/ra/chrome/gameinit.yaml
mods/ra/chrome/ingame.yaml
mods/ra/chrome/mainmenu.yaml
mods/ra/chrome/settings.yaml
mods/ra/chrome/lobby.yaml
mods/ra/chrome/map-chooser.yaml
mods/ra/chrome/create-server.yaml
mods/ra/chrome/serverbrowser.yaml
mods/ra/chrome/replaybrowser.yaml
mods/ra/chrome/dropdowns.yaml
mods/ra/chrome/modchooser.yaml
Weapons: Weapons:
mods/ra/weapons.yaml
Voices: Voices:
mods/d2k/voices.yaml mods/d2k/voices.yaml
mods/ra/voices.yaml
TileSets: TileSets:
mods/d2k/tilesets/arrakis.yaml mods/d2k/tilesets/arrakis.yaml
mods/ra/tilesets/snow.yaml
mods/ra/tilesets/interior.yaml
mods/ra/tilesets/temperat.yaml
Music: Music:
@@ -100,7 +55,6 @@ ServerTraits:
MasterServerPinger MasterServerPinger
ChromeMetrics: ChromeMetrics:
mods/ra/metrics.yaml
Fonts: Fonts:
Regular: Regular:

View File

@@ -21,11 +21,11 @@ CARRYALL:
RearmBuildings: hightecha RearmBuildings: hightecha
InitialFacing: 0 InitialFacing: 0
ROT: 5 ROT: 5
Speed: 12 Speed: 15
LandableTerrainTypes: Clear,Rough,Road,Ore,Beach LandableTerrainTypes: Clear,Rough,Road,Ore,Beach
RenderUnit: RenderUnit:
PlayerPalette: d2kplayer PlayerPalette: d2kplayer
# RenderCargo: RenderCargo:
WithShadow: WithShadow:
Cargo: Cargo:
Types: Vehicle Types: Vehicle

View File

@@ -163,7 +163,7 @@ REFA:
CustomSellValue: CustomSellValue:
Value: 600 Value: 600
FreeActor: FreeActor:
Actor: HARV Actor: HARVESTER
InitialActivity: FindResources InitialActivity: FindResources
SpawnOffset: 1,2 SpawnOffset: 1,2
Facing: 64 Facing: 64

View File

@@ -1,9 +1,111 @@
Player: Player:
TechTree:
ClassicProductionQueue@Building:
Type: Building
BuildSpeed: .4
LowPowerSlowdown: 3
QueuedAudio: abldgin1.aud
ReadyAudio: conscmp1.aud
ClassicProductionQueue@Defense:
Type: Defense
BuildSpeed: .4
LowPowerSlowdown: 3
QueuedAudio: abldgin1.aud
ReadyAudio: conscmp1.aud
ClassicProductionQueue@Vehicle:
Type: Vehicle
BuildSpeed: .4
LowPowerSlowdown: 3
ClassicProductionQueue@Infantry:
Type: Infantry
BuildSpeed: .4
LowPowerSlowdown: 3
ClassicProductionQueue@Plane:
Type: Plane
BuildSpeed: .4
LowPowerSlowdown: 3
PlaceBuilding:
SupportPowerManager:
ConquestVictoryConditions:
WinNotification:misnwon1.aud
LoseNotification:misnlst1.aud
PowerManager:
AllyRepair:
PlayerResources:
InitialCash: 5000
ActorGroupProxy:
DeveloperMode:
PlayerColorPalette@d2kplayer: PlayerColorPalette@d2kplayer:
BasePalette: d2k BasePalette: d2k
BaseName: d2kplayer BaseName: d2kplayer
PaletteFormat: d2k PaletteFormat: d2k
DebugResourceCash:
DebugResourceOre:
DebugResourceOreCapacity:
GpsWatcher:
BaseAttackNotifier:
World: World:
OpenWidgetAtGameStart:
Widget: INGAME_ROOT
ObserverWidget: OBSERVER_ROOT
ScreenShaker:
WaterPaletteRotation:
NukePaletteEffect:
LightPaletteRotator:
BuildingInfluence:
ChooseBuildTabOnSelect:
CrateDrop:
Minimum: 1
Maximum: 3
SpawnInterval: 120
WaterChance: .2
PaletteFromCurrentTileset:
Name: terrain
PaletteFromFile@d2k:
Name: d2k
Filename: d2k.pal
PaletteFromFile@chrome:
Name: chrome
Filename: d2k.pal
PaletteFromFile@effect:
Name: effect
Filename: temperat.pal
PaletteFromRGBA@shadow:
Name: shadow
R: 0
G: 0
B: 0
A: 140
PaletteFromRGBA@cloak:
Name: cloak
R: 0
G: 0
B: 0
A: 140
PaletteFromRGBA@highlight:
Name: highlight
R: 255
G: 255
B: 255
A: 128
PaletteFromRGBA@invuln:
Name: invuln
R: 128
G: 0
B: 0
A: 128
PaletteFromRGBA@disabled:
Name: disabled
R: 0
G: 0
B: 0
A: 180
ColorPickerPaletteModifier:
ShroudPalette@shroud:
ShroudPalette@fog:
IsFog: yes
Name: fog
Country@2: Country@2:
Name: Atreides Name: Atreides
Race: atreides Race: atreides
@@ -13,12 +115,8 @@ World:
# Country@4: # Country@4:
# Name: Ordos # Name: Ordos
# Race: ordos # Race: ordos
PaletteFromFile@d2k: BibLayer:
Name: d2k ResourceLayer:
Filename: d2k.pal
PaletteFromFile@chrome:
Name: chrome
Filename: d2k.pal
# ResourceType@spice: # ResourceType@spice:
# ResourceType: 1 # ResourceType: 1
# Palette: d2k # Palette: d2k
@@ -28,3 +126,75 @@ World:
# PipColor: Yellow # PipColor: Yellow
# AllowedTerrainTypes: Sand # AllowedTerrainTypes: Sand
# AllowUnderActors: false # AllowUnderActors: false
SmudgeLayer@SCORCH:
Type:Scorch
SmokePercentage:50
Types:sc1,sc2,sc3,sc4,sc5,sc6
Depths:1,1,1,1,1,1
SmudgeLayer@CRATER:
Type:Crater
Types:cr1,cr2,cr3,cr4,cr5,cr6
Depths:5,5,5,5,5,5
SpawnMapActors:
CreateMPPlayers:
MPStartLocations:
SpawnMPUnits:
EvaAlerts:
SpatialBins:
BinSize: 4
Shroud:
PathFinder:
ValidateOrder:
CRATE:
Tooltip:
Name: Crate
Crate:
Lifetime: 120
TerrainTypes: Clear, Rough, Road, Water, Ore, Beach
GiveCashCrateAction:
Amount: 1000
SelectionShares: 50
UseCashTick: yes
LevelUpCrateAction:
SelectionShares: 40
ExplodeCrateAction@fire:
Weapon: CrateNapalm
SelectionShares: 5
ExplodeCrateAction@boom:
Weapon: CrateExplosion
SelectionShares: 5
ExplodeCrateAction@nuke:
Weapon: CrateNuke
SelectionShares: 5
HideMapCrateAction:
SelectionShares: 5
Effect: hide-map
RevealMapCrateAction:
SelectionShares: 1
Effect: reveal-map
SupportPowerCrateAction@parabombs:
SelectionShares: 5
Proxy: powerproxy.parabombs
GiveMcvCrateAction:
SelectionShares: 2
NoBaseSelectionShares: 9001
Unit: mcv
GiveUnitCrateAction@trike:
SelectionShares: 7
Unit: trike
GiveUnitCrateAction@quad:
SelectionShares: 6
Unit: quad
RenderSimple:
BelowUnits:
ProximityCaptor:
Types:Crate
Passenger:
mpspawn:
Waypoint:
RenderEditorOnly:
waypoint:
Waypoint:
RenderEditorOnly:

View File

@@ -5,65 +5,95 @@ MCV:
Image: MCV Image: MCV
PlayerPalette: d2kplayer PlayerPalette: d2kplayer
HARVESTER:
Inherits: ^Vehicle
Buildable:
Queue: Vehicle
BuildPaletteOrder: 10
Prerequisites: refa
Owner: atreides
Valued:
Cost: 1100
Tooltip:
Name: Spice Harvester
Description: Collects Spice for processing.\n Unarmed
Selectable:
Priority: 7
Bounds: 42,42
Harvester:
Capacity: 20
Resources: Ore,Gems
UnloadTicksPerBale: 1
Health:
HP: 600
Armor:
Type: Heavy
Mobile:
Speed: 6
Crushes: wall, atmine, crate, infantry
RevealsShroud:
Range: 4
RenderUnit::
PlayerPalette: d2kplayer
-AttackMove:
GpsDot:
String:Harvester
TRIKE: TRIKE:
Inherits: ^Vehicle Inherits: ^Vehicle
Buildable:
Queue: Vehicle
BuildPaletteOrder: 15
Prerequisites: lighta
Owner: atreides
Valued: Valued:
Cost: 200 Cost: 200
Tooltip: Tooltip:
Name: Scout Trike Name: Scout Trike
Icon: trikeicon
Description: Weak Scout.\n Decent vs. Infantry Description: Weak Scout.\n Decent vs. Infantry
Buildable:
BuildPaletteOrder: 15
Prerequisites: lighta
Owner: atreides
Selectable: Selectable:
Bounds: 24,24 Bounds: 24,24
Mobile:
ROT: 15
Speed: 20
Health: Health:
HP: 75 HP: 75
Armor: Armor:
Type: Light Type: Light
Mobile:
ROT: 15
Speed: 20
RevealsShroud: RevealsShroud:
Range: 8 Range: 8
RenderUnit:
PlayerPalette: d2kplayer
AttackFrontal: AttackFrontal:
PrimaryWeapon: M60mg PrimaryWeapon: M60mg
PrimaryOffset: 0,0,0,-4 PrimaryOffset: 0,0,0,-4
RenderUnit:
PlayerPalette: d2kplayer
WithMuzzleFlash:
PrimaryOffset: 0,3,0,0
AutoTarget: AutoTarget:
QUAD: QUAD:
Inherits: ^Vehicle Inherits: ^Vehicle
Buildable:
Queue: Vehicle
BuildPaletteOrder: 30
Prerequisites: lighta
Owner: atreides
Valued: Valued:
Cost: 400 Cost: 400
Tooltip: Tooltip:
Name: Quad Name: Quad
Description: Fast scout vehicle, armed with \nrockets.\n Strong vs Vehicles, Aircraft\n Weak vs Infantry Description: Fast scout vehicle, armed with \nrockets.\n Strong vs Vehicles\n Weak vs Infantry
Buildable:
BuildPaletteOrder: 30
Prerequisites: lighta
Owner: atreides
Mobile:
ROT: 10
Speed: 13
Health: Health:
HP: 120 HP: 120
Armor: Armor:
Type: Light Type: Light
Mobile:
ROT: 10
Speed: 13
RevealsShroud: RevealsShroud:
Range: 7 Range: 7
AttackFrontal:
PrimaryWeapon: RedEye
SecondaryWeapon: Dragon
PrimaryOffset: 0,0,0,-2
PrimaryLocalOffset: -4,0,0,0,25, 4,0,0,0,-25
SecondaryOffset: 0,0,0,-2
SecondaryLocalOffset: -4,0,0,0,25, 4,0,0,0,-25
RenderUnit: RenderUnit:
PlayerPalette: d2kplayer PlayerPalette: d2kplayer
AttackFrontal:
PrimaryWeapon: RedEye
PrimaryOffset: 0,0,0,-2
PrimaryLocalOffset: -4,0,0,0,25, 4,0,0,0,-25
AutoTarget: AutoTarget:

View File

@@ -3,6 +3,21 @@ mcv:
Start: 0 Start: 0
Facings: 32 Facings: 32
harvester:
idle:
Start: 0
Facings: 32
harvest:
Start: 0
Length: 0
Facings: 8
dock:
Start: 0
Length: 1
dock-loop:
Start: 0
Length: 1
conyarda: conyarda:
idle: idle:
Start: 0 Start: 0

View File

@@ -118,8 +118,8 @@ mono OpenRA.Utility.exe --r8 $R8 $PAL 4017 4017 "raidericon"
mono OpenRA.Utility.exe --shp raidericon.png 60 mono OpenRA.Utility.exe --shp raidericon.png 60
mono OpenRA.Utility.exe --r8 $R8 $PAL 4018 4018 "quadicon" mono OpenRA.Utility.exe --r8 $R8 $PAL 4018 4018 "quadicon"
mono OpenRA.Utility.exe --shp quadicon.png 60 mono OpenRA.Utility.exe --shp quadicon.png 60
mono OpenRA.Utility.exe --r8 $R8 $PAL 4019 4019 "harvicon" # = 4044 mono OpenRA.Utility.exe --r8 $R8 $PAL 4019 4019 "harestervicon" # = 4044
mono OpenRA.Utility.exe --shp harvicon.png 60 mono OpenRA.Utility.exe --shp harestervicon.png 60
mono OpenRA.Utility.exe --r8 $R8 $PAL 4020 4020 "combataicon" mono OpenRA.Utility.exe --r8 $R8 $PAL 4020 4020 "combataicon"
mono OpenRA.Utility.exe --shp combataicon.png 60 mono OpenRA.Utility.exe --shp combataicon.png 60
mono OpenRA.Utility.exe --r8 $R8 $PAL 4021 4021 "combathicon" mono OpenRA.Utility.exe --r8 $R8 $PAL 4021 4021 "combathicon"