Fix star port and repair depot lights.
This commit is contained in:
@@ -91,6 +91,7 @@
|
||||
<Compile Include="Render\WithProductionOverlay.cs" />
|
||||
<Compile Include="Render\WithDockingOverlay.cs" />
|
||||
<Compile Include="Render\WithDeliveryOverlay.cs" />
|
||||
<Compile Include="PaletteFromScaledPalette.cs" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
|
||||
72
OpenRA.Mods.D2k/PaletteFromScaledPalette.cs
Normal file
72
OpenRA.Mods.D2k/PaletteFromScaledPalette.cs
Normal file
@@ -0,0 +1,72 @@
|
||||
#region Copyright & License Information
|
||||
/*
|
||||
* Copyright 2007-2014 The OpenRA Developers (see AUTHORS)
|
||||
* 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
|
||||
* as published by the Free Software Foundation. For more information,
|
||||
* see COPYING.
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using OpenRA.FileSystem;
|
||||
using OpenRA.Graphics;
|
||||
using OpenRA.Primitives;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.D2k
|
||||
{
|
||||
[Desc("Create a palette by applying a scale and offset to the colors in another palette.")]
|
||||
class PaletteFromScaledPaletteInfo : ITraitInfo
|
||||
{
|
||||
[Desc("Internal palette name")]
|
||||
public readonly string Name = null;
|
||||
|
||||
[Desc("The name of the palette to base off.")]
|
||||
public readonly string BasePalette = null;
|
||||
|
||||
[Desc("Allow palette modifiers to change the palette.")]
|
||||
public readonly bool AllowModifiers = true;
|
||||
|
||||
[Desc("Amount to scale the base palette colors by.")]
|
||||
public readonly float Scale = 1.0f;
|
||||
|
||||
[Desc("Amount to offset the base palette colors by.")]
|
||||
public readonly int Offset = 0;
|
||||
|
||||
public object Create(ActorInitializer init) { return new PaletteFromScaledPalette(this); }
|
||||
}
|
||||
|
||||
class PaletteFromScaledPalette : IPalette
|
||||
{
|
||||
readonly PaletteFromScaledPaletteInfo info;
|
||||
public PaletteFromScaledPalette(PaletteFromScaledPaletteInfo info) { this.info = info; }
|
||||
|
||||
public void InitPalette(WorldRenderer wr)
|
||||
{
|
||||
var remap = new ScaledPaletteRemap(info.Scale, info.Offset);
|
||||
wr.AddPalette(info.Name, new Palette(wr.Palette(info.BasePalette).Palette, remap), info.AllowModifiers);
|
||||
}
|
||||
}
|
||||
|
||||
class ScaledPaletteRemap : IPaletteRemap
|
||||
{
|
||||
readonly float scale;
|
||||
readonly int offset;
|
||||
|
||||
public ScaledPaletteRemap(float scale, int offset)
|
||||
{
|
||||
this.scale = scale;
|
||||
this.offset = offset;
|
||||
}
|
||||
|
||||
public Color GetRemappedColor(Color original, int index)
|
||||
{
|
||||
return Color.FromArgb(original.A,
|
||||
(int)Exts.Clamp((int)(scale * original.R + offset), 0, 255),
|
||||
(int)Exts.Clamp((int)(scale * original.G + offset), 0, 255),
|
||||
(int)Exts.Clamp((int)(scale * original.B + offset), 0, 255));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -381,6 +381,7 @@ CONCRETEB:
|
||||
Produces: Starport
|
||||
ActorType: frigate
|
||||
WithDeliveryOverlay:
|
||||
Palette: starportlights
|
||||
ProductionBar:
|
||||
PrimaryBuilding:
|
||||
RequiresPower:
|
||||
@@ -580,6 +581,7 @@ WALL:
|
||||
ProvidesCustomPrerequisite:
|
||||
Prerequisite: Repair
|
||||
WithRepairOverlay:
|
||||
Palette: repairlights
|
||||
|
||||
^HIGHTECH:
|
||||
Inherits: ^Building
|
||||
|
||||
@@ -66,6 +66,16 @@ World:
|
||||
G: 0
|
||||
B: 0
|
||||
A: 180
|
||||
PaletteFromScaledPalette@starportlights:
|
||||
Name: starportlights
|
||||
BasePalette: d2k
|
||||
AllowModifiers: false
|
||||
Offset: -64
|
||||
PaletteFromScaledPalette@repairlights:
|
||||
Name: repairlights
|
||||
BasePalette: d2k
|
||||
AllowModifiers: false
|
||||
Offset: -128
|
||||
PaletteFromR8@shroud:
|
||||
Name: shroud
|
||||
Filename: DATA.R8
|
||||
|
||||
@@ -219,21 +219,23 @@ repaira:
|
||||
Start: 2571
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
damaged-idle: DATA
|
||||
Start: 2572
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
active: DATA
|
||||
Start: 4746
|
||||
Length: 14
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
BlendMode: Additive
|
||||
damaged-active: DATA
|
||||
Start: 4746
|
||||
Length: 14
|
||||
Tick: 60
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
damaged-idle: DATA
|
||||
Start: 2572
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
BlendMode: Additive
|
||||
icon: DATA
|
||||
Start: 4096
|
||||
Offset: -30,-24
|
||||
@@ -252,21 +254,23 @@ repairh:
|
||||
Start: 2731
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
damaged-idle: DATA
|
||||
Start: 2732
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
active: DATA
|
||||
Start: 4746
|
||||
Length: 14
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
BlendMode: Additive
|
||||
damaged-active: DATA
|
||||
Start: 4746
|
||||
Length: 14
|
||||
Tick: 60
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
damaged-idle: DATA
|
||||
Start: 2732
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
BlendMode: Additive
|
||||
icon: DATA
|
||||
Start: 4097
|
||||
Offset: -30,-24
|
||||
@@ -285,21 +289,23 @@ repairo:
|
||||
Start: 2891
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
damaged-idle: DATA
|
||||
Start: 2892
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
active: DATA
|
||||
Start: 4746
|
||||
Length: 14
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
BlendMode: Additive
|
||||
damaged-active: DATA
|
||||
Start: 4746
|
||||
Length: 14
|
||||
Tick: 60
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
damaged-idle: DATA
|
||||
Start: 2892
|
||||
Offset: -48,48
|
||||
ZOffset: -1c511
|
||||
BlendMode: Additive
|
||||
icon: DATA
|
||||
Start: 4098
|
||||
Offset: -30,-24
|
||||
@@ -318,14 +324,14 @@ starporta:
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
damaged-active: DATA
|
||||
Start: 4723
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
make: DATA
|
||||
Start: 4347
|
||||
@@ -820,14 +826,14 @@ starporth:
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
damaged-active: DATA
|
||||
Start: 4723
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
make: DATA
|
||||
Start: 4347
|
||||
@@ -1231,14 +1237,14 @@ starporto:
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
damaged-active: DATA
|
||||
Start: 4723
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
make: DATA
|
||||
Start: 4347
|
||||
@@ -1624,14 +1630,14 @@ starportc: # TODO: unused
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
damaged-active: DATA
|
||||
Start: 4723
|
||||
Length: 23
|
||||
ZOffset: -1c511
|
||||
Offset: -48,64
|
||||
BlendMode: Alpha
|
||||
BlendMode: Additive
|
||||
Tick: 200
|
||||
make: DATA
|
||||
Start: 4347
|
||||
|
||||
Reference in New Issue
Block a user