diff --git a/Assets/Resources/Games/karateman.prefab b/Assets/Resources/Games/karateman.prefab
index b70dd967f..80f491376 100644
--- a/Assets/Resources/Games/karateman.prefab
+++ b/Assets/Resources/Games/karateman.prefab
@@ -61591,7 +61591,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 1
+ m_IsActive: 0
--- !u!4 &4468064543835661468
Transform:
m_ObjectHideFlags: 0
@@ -96547,6 +96547,10 @@ MonoBehaviour:
ItemHolder: {fileID: 8380209919518305174}
Item: {fileID: 4158625219071088136}
Joe: {fileID: 5897754239051819249}
+ MappingMaterial: {fileID: 2100000, guid: 01a12550d4a6d8141bbbdf4ce2700eea, type: 2}
+ BodyColor: {r: 1, g: 1, b: 1, a: 0}
+ HighlightColor: {r: 0.54901963, g: 0.54901963, b: 0.54901963, a: 1}
+ ItemColor: {r: 1, g: 1, b: 1, a: 1}
Word: {fileID: 8471847813194768760}
BGPlane: {fileID: 5423016352081307686}
BGEffect: {fileID: 185016033042157469}
@@ -102304,7 +102308,7 @@ SpriteRenderer:
m_Size: {x: 3.8888888, y: 3}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
- m_WasSpriteAssigned: 1
+ m_WasSpriteAssigned: 0
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &7583125520394986553
diff --git a/Assets/Resources/Sprites/Games/KarateMan/karateman_cellshader.mat b/Assets/Resources/Sprites/Games/KarateMan/karateman_cellshader.mat
index 1b8c80247..4c6a337f5 100644
--- a/Assets/Resources/Sprites/Games/KarateMan/karateman_cellshader.mat
+++ b/Assets/Resources/Sprites/Games/KarateMan/karateman_cellshader.mat
@@ -8,7 +8,7 @@ Material:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: karateman_cellshader
- m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
+ m_Shader: {fileID: 4800000, guid: ff54fed5718ccc543808dec1f266d1c8, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
@@ -57,6 +57,7 @@ Material:
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
+ - _ColorMask: 15
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
@@ -70,9 +71,19 @@ Material:
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
+ - _Stencil: 0
+ - _StencilComp: 8
+ - _StencilOp: 0
+ - _StencilReadMask: 255
+ - _StencilWriteMask: 255
- _UVSec: 0
+ - _UseUIAlphaClip: 0
- _ZWrite: 1
m_Colors:
+ - _AddColor: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
+ - _ColorAlpha: {r: 1, g: 1, b: 1, a: 0}
+ - _ColorBravo: {r: 1, g: 0, b: 0, a: 1}
+ - _ColorDelta: {r: 0.54901963, g: 0.54901963, b: 0.54901963, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []
diff --git a/Assets/Resources/Sprites/Games/KarateMan/karateman_main.png.meta b/Assets/Resources/Sprites/Games/KarateMan/karateman_main.png.meta
index 48528cc2e..7879b0bf7 100644
--- a/Assets/Resources/Sprites/Games/KarateMan/karateman_main.png.meta
+++ b/Assets/Resources/Sprites/Games/KarateMan/karateman_main.png.meta
@@ -269,6 +269,12 @@ TextureImporter:
- first:
213: -2636709571086610862
second: karateman_torso_2
+ - first:
+ 213: 3008790161821312096
+ second: karateman_arm_1_part00
+ - first:
+ 213: 7464444140288453835
+ second: karateman_arm_1_part01
externalObjects: {}
serializedVersion: 11
mipmaps:
@@ -1734,153 +1740,6 @@ TextureImporter:
indices:
edges: []
weights: []
- - serializedVersion: 2
- name: karateman_num_1
- rect:
- serializedVersion: 2
- x: 2503.44
- y: 1644.56
- width: 263.52002
- height: 341.6
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: 17cf765748bbea3a0800000000000000
- internalID: -6652173421999817615
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_num_2
- rect:
- serializedVersion: 2
- x: 2782.82
- y: 1649.4401
- width: 331.84
- height: 331.84
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: d55dd3018ec76f710800000000000000
- internalID: 1726704843289908573
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_num_3
- rect:
- serializedVersion: 2
- x: 2893.84
- y: 1995.92
- width: 302.56
- height: 380.64
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: f9cb8bbef97ceda70800000000000000
- internalID: 8853733407125453983
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_num_4
- rect:
- serializedVersion: 2
- x: 3206.1602
- y: 1997.14
- width: 341.6
- height: 379.42
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: 835ae40a9411116f0800000000000000
- internalID: -715771857855404744
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_num_mark
- rect:
- serializedVersion: 2
- x: 3557.52
- y: 1995.92
- width: 224.48001
- height: 380.64
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: 60b58943bbaec0790800000000000000
- internalID: -7562411584499721466
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_hit
- rect:
- serializedVersion: 2
- x: 2659.6
- y: 1217.56
- width: 370.88
- height: 334.28
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: d5f973741d07be330800000000000000
- internalID: 3741207959606632285
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_num_grr
- rect:
- serializedVersion: 2
- x: 3047.56
- y: 1371.28
- width: 534.36
- height: 263.52002
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: 7af9b1976ca2fb260800000000000000
- internalID: 7115452968192417703
- vertices: []
- indices:
- edges: []
- weights: []
- serializedVersion: 2
name: karateman_tacobell
rect:
@@ -1986,69 +1845,6 @@ TextureImporter:
indices:
edges: []
weights: []
- - serializedVersion: 2
- name: karateman_main_77
- rect:
- serializedVersion: 2
- x: 4762.88
- y: 4919.04
- width: 39.04
- height: 39.04
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: b86f0adb8da4d4300800000000000000
- internalID: 237928650075338379
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_num_combo_jp
- rect:
- serializedVersion: 2
- x: 3130.52
- y: 1650.66
- width: 455.06
- height: 329.4
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: 7794aaa5edae6ecc0800000000000000
- internalID: -3681997404604053129
- vertices: []
- indices:
- edges: []
- weights: []
- - serializedVersion: 2
- name: karateman_main_79
- rect:
- serializedVersion: 2
- x: 2219.18
- y: 1556.7201
- width: 244
- height: 274.5
- alignment: 0
- pivot: {x: 0.5, y: 0.5}
- border: {x: 0, y: 0, z: 0, w: 0}
- outline: []
- physicsShape: []
- tessellationDetail: -1
- bones: []
- spriteID: 69c8a47bf2de53c10800000000000000
- internalID: 2032791596022008982
- vertices: []
- indices:
- edges: []
- weights: []
- serializedVersion: 2
name: karateman_kick_prepare_1
rect:
@@ -2238,6 +2034,48 @@ TextureImporter:
indices:
edges: []
weights: []
+ - serializedVersion: 2
+ name: karateman_arm_1_part00
+ rect:
+ serializedVersion: 2
+ x: 3068
+ y: 2080
+ width: 410
+ height: 288
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: 0
+ bones: []
+ spriteID: 064ac0ff5be51c920800000000000000
+ internalID: 3008790161821312096
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ - serializedVersion: 2
+ name: karateman_arm_1_part01
+ rect:
+ serializedVersion: 2
+ x: 3536
+ y: 2183
+ width: 202
+ height: 165
+ alignment: 0
+ pivot: {x: 0.5, y: 0.5}
+ border: {x: 0, y: 0, z: 0, w: 0}
+ outline: []
+ physicsShape: []
+ tessellationDetail: 0
+ bones: []
+ spriteID: bcca3a3b568079760800000000000000
+ internalID: 7464444140288453835
+ vertices: []
+ indices:
+ edges: []
+ weights: []
outline: []
physicsShape: []
bones: []
diff --git a/Assets/Scripts/Games/KarateMan/KarateMan.cs b/Assets/Scripts/Games/KarateMan/KarateMan.cs
index 13930f688..87c166445 100644
--- a/Assets/Scripts/Games/KarateMan/KarateMan.cs
+++ b/Assets/Scripts/Games/KarateMan/KarateMan.cs
@@ -35,6 +35,10 @@ namespace HeavenStudio.Games.Loaders
{
new Param("type", KarateMan.HitThree.HitThree, "Type", "The warning text to show")
}),
+ new GameAction("special camera", delegate { var e = eventCaller.currentEntity; KarateMan.instance.DoSpecialCamera(e.beat, e.length, e.toggle); }, 8f, true, new List()
+ {
+ new Param("toggle", true, "Return Camera", "Camera zooms back in?"),
+ }),
new GameAction("prepare", delegate { var e = eventCaller.currentEntity; KarateMan.instance.Prepare(e.beat, e.length);}, 1f, true),
new GameAction("set background effects", delegate { var e = eventCaller.currentEntity; KarateMan.instance.SetBgAndShadowCol(e.beat, e.length, e.type, e.type2, e.colorA, e.colorB, e.type3); }, 0.5f, true, new List()
{
@@ -52,9 +56,11 @@ namespace HeavenStudio.Games.Loaders
new Param("colorA", new Color(), "Custom Filter Color", "The filter color to use when color filter type is set to Custom"),
new Param("colorB", new Color(), "Fading Filter Color", "When using the Fade background effect, make filter colour fade to this colour"),
}),
- new GameAction("special camera", delegate { var e = eventCaller.currentEntity; KarateMan.instance.DoSpecialCamera(e.beat, e.length, e.toggle); }, 8f, true, new List()
+ new GameAction("set object colors", delegate { var e = eventCaller.currentEntity; KarateMan.instance.UpdateMaterialColour(e.colorA, e.colorB, e.colorC); }, 0.5f, true, new List()
{
- new Param("toggle", true, "Return Camera", "Camera zooms back in?"),
+ new Param("colorA", new Color(), "Joe Body Color", "The color to use for Karate Joe's body"),
+ new Param("colorB", new Color(), "Joe Highlight Color", "The color to use for Karate Joe's highlights"),
+ new Param("colorC", new Color(), "Item Color", "The color to use for the thrown items"),
}),
new GameAction("particle effects", delegate { var e = eventCaller.currentEntity; KarateMan.instance.SetParticleEffect(e.beat, e.type, e.valA, e.valB); }, 0.5f, false, new List()
{
@@ -219,6 +225,12 @@ namespace HeavenStudio.Games
public GameObject Item;
public KarateManJoe Joe;
+ [Header("Colour Map")]
+ public Material MappingMaterial;
+ public Color BodyColor;
+ public Color HighlightColor;
+ public Color ItemColor;
+
[Header("Word")]
public Animator Word;
float wordClearTime = Single.MinValue;
@@ -278,6 +290,7 @@ namespace HeavenStudio.Games
bgGradientRenderer = BGGradient.GetComponent();
SetBgAndShadowCol(0f, 0f, bgType, (int) currentShadowType, BackgroundColors[bgType], customShadowColour, (int)currentBgEffect);
+ UpdateMaterialColour(BodyColor, HighlightColor, ItemColor);
}
private void Update()
@@ -697,6 +710,15 @@ namespace HeavenStudio.Games
customShadowColour = colour;
}
+ public void UpdateMaterialColour(Color mainCol, Color highlightCol, Color objectCol)
+ {
+ MappingMaterial.SetColor("_ColorAlpha", mainCol);
+ MappingMaterial.SetColor("_ColorBravo", new Color(1, 0, 0, 1));
+ MappingMaterial.SetColor("_ColorDelta", highlightCol);
+ ItemColor = objectCol;
+ //TODO: joe fist colour when punching Straight with low flow
+ }
+
public void SetParticleEffect(float beat, int type, float windStrength, float particleStrength)
{
ParticleSystem.EmissionModule emm;
@@ -747,4 +769,4 @@ namespace HeavenStudio.Games
Joe.SetFaceExpression(face);
}
}
-}
\ No newline at end of file
+}
diff --git a/Assets/Scripts/Games/KarateMan/KarateManPot.cs b/Assets/Scripts/Games/KarateMan/KarateManPot.cs
index c81d47aa5..545d6811d 100644
--- a/Assets/Scripts/Games/KarateMan/KarateManPot.cs
+++ b/Assets/Scripts/Games/KarateMan/KarateManPot.cs
@@ -26,6 +26,8 @@ namespace HeavenStudio.Games.Scripts_KarateMan
FlyStatus status = FlyStatus.Fly;
Color effectTint = Color.white;
+ Material[] renderMaterials;
+
public int comboId = -1;
static int _lastCombo = -1;
public static int LastCombo { get { return _lastCombo; } }