mirror of
https://github.com/RHeavenStudioPlus/HeavenStudioPlus.git
synced 2024-11-10 03:35:10 +00:00
unloaded support for the setup entities
- not tested too much but it seems to work so far
This commit is contained in:
parent
7d4fbd4522
commit
afae2d0950
3 changed files with 123 additions and 72 deletions
|
@ -14,9 +14,11 @@ namespace HeavenStudio.Games.Loaders
|
||||||
return new Minigame("karateman", "Karate Man [INDEV REWORK]", "70A8D8", false, false, new List<GameAction>()
|
return new Minigame("karateman", "Karate Man [INDEV REWORK]", "70A8D8", false, false, new List<GameAction>()
|
||||||
{
|
{
|
||||||
new GameAction("bop", delegate { KarateMan.instance.ToggleBop(eventCaller.currentEntity.toggle); }, 0.5f, false, new List<Param>()
|
new GameAction("bop", delegate { KarateMan.instance.ToggleBop(eventCaller.currentEntity.toggle); }, 0.5f, false, new List<Param>()
|
||||||
{
|
{
|
||||||
new Param("toggle", true, "Bop", "Whether to bop to the beat or not")
|
new Param("toggle", true, "Bop", "Whether to bop to the beat or not")
|
||||||
}),
|
},
|
||||||
|
inactiveFunction: delegate { KarateMan.ToggleBopUnloaded(eventCaller.currentEntity.toggle); }
|
||||||
|
),
|
||||||
new GameAction("hit", delegate { var e = eventCaller.currentEntity; KarateMan.instance.CreateItem(e.beat, e.type); }, 2, false,
|
new GameAction("hit", delegate { var e = eventCaller.currentEntity; KarateMan.instance.CreateItem(e.beat, e.type); }, 2, false,
|
||||||
new List<Param>()
|
new List<Param>()
|
||||||
{
|
{
|
||||||
|
@ -34,11 +36,15 @@ namespace HeavenStudio.Games.Loaders
|
||||||
new List<Param>()
|
new List<Param>()
|
||||||
{
|
{
|
||||||
new Param("type", KarateMan.HitThree.HitThree, "Type", "The warning text to show")
|
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<Param>()
|
inactiveFunction: delegate { var e = eventCaller.currentEntity; KarateMan.DoWordSound(e.beat, e.type); }
|
||||||
{
|
),
|
||||||
new Param("toggle", true, "Return Camera", "Camera zooms back in?"),
|
new GameAction("special camera", delegate { var e = eventCaller.currentEntity; KarateMan.DoSpecialCamera(e.beat, e.length, e.toggle); }, 8f, true, new List<Param>()
|
||||||
}),
|
{
|
||||||
|
new Param("toggle", true, "Return Camera", "Camera zooms back in?"),
|
||||||
|
},
|
||||||
|
inactiveFunction: delegate { var e = eventCaller.currentEntity; KarateMan.DoSpecialCamera(e.beat, e.length, e.toggle); }
|
||||||
|
),
|
||||||
new GameAction("prepare", delegate { var e = eventCaller.currentEntity; KarateMan.instance.Prepare(e.beat, e.length);}, 1f, true),
|
new GameAction("prepare", delegate { var e = eventCaller.currentEntity; KarateMan.instance.Prepare(e.beat, e.length);}, 1f, true),
|
||||||
new GameAction("set gameplay modifiers", delegate { var e = eventCaller.currentEntity; KarateMan.instance.SetGameplayMods(e.beat, e.type, e.toggle); }, 0.5f, false, new List<Param>()
|
new GameAction("set gameplay modifiers", delegate { var e = eventCaller.currentEntity; KarateMan.instance.SetGameplayMods(e.beat, e.type, e.toggle); }, 0.5f, false, new List<Param>()
|
||||||
{
|
{
|
||||||
|
@ -46,24 +52,28 @@ namespace HeavenStudio.Games.Loaders
|
||||||
new Param("toggle", true, "Enable Combos", "Allow the player to combo? (Contextual combos will still be allowed even when off)"),
|
new Param("toggle", true, "Enable Combos", "Allow the player to combo? (Contextual combos will still be allowed even when off)"),
|
||||||
}),
|
}),
|
||||||
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); KarateMan.instance.SetBgTexture(e.type4, e.type5, e.colorC, e.colorD); }, 0.5f, true, new List<Param>()
|
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); KarateMan.instance.SetBgTexture(e.type4, e.type5, e.colorC, e.colorD); }, 0.5f, true, new List<Param>()
|
||||||
{
|
{
|
||||||
new Param("type", KarateMan.BackgroundType.Yellow, "Background Type", "The preset background type"),
|
new Param("type", KarateMan.BackgroundType.Yellow, "Background Type", "The preset background type"),
|
||||||
new Param("type2", KarateMan.ShadowType.Tinted, "Shadow Type", "The shadow type. If Tinted doesn't work with your background color try Custom"),
|
new Param("type2", KarateMan.ShadowType.Tinted, "Shadow Type", "The shadow type. If Tinted doesn't work with your background color try Custom"),
|
||||||
new Param("colorA", new Color(), "Custom Background Color", "The background color to use when background type is set to Custom"),
|
new Param("colorA", new Color(), "Custom Background Color", "The background color to use when background type is set to Custom"),
|
||||||
new Param("colorB", new Color(), "Custom Shadow Color", "The shadow color to use when shadow type is set to Custom. When fading the background colour shadows fade to this color"),
|
new Param("colorB", new Color(), "Custom Shadow Color", "The shadow color to use when shadow type is set to Custom. When fading the background colour shadows fade to this color"),
|
||||||
new Param("type3", KarateMan.BackgroundFXType.None, "FX Type", "The background effect to be displayed. Fade uses the entity length to determine colour fading speed"),
|
new Param("type3", KarateMan.BackgroundFXType.None, "FX Type", "The background effect to be displayed. Fade uses the entity length to determine colour fading speed"),
|
||||||
new Param("type4", KarateMan.BackgroundTextureType.Plain, "Texture", "The type of background texture to use"),
|
new Param("type4", KarateMan.BackgroundTextureType.Plain, "Texture", "The type of background texture to use"),
|
||||||
new Param("type5", KarateMan.ShadowType.Tinted, "Color Filter Type", "The method used to apply colour to the texture"),
|
new Param("type5", KarateMan.ShadowType.Tinted, "Color Filter Type", "The method used to apply colour to the texture"),
|
||||||
new Param("colorC", new Color(), "Custom Filter Color", "The filter color to use when color filter type is set to Custom"),
|
new Param("colorC", new Color(), "Custom Filter Color", "The filter color to use when color filter type is set to Custom"),
|
||||||
new Param("colorD", new Color(), "Fading Filter Color", "When using the Fade background effect, make filter colour fade to this colour"),
|
new Param("colorD", new Color(), "Fading Filter Color", "When using the Fade background effect, make filter colour fade to this colour"),
|
||||||
|
|
||||||
}),
|
},
|
||||||
|
inactiveFunction: delegate { var e = eventCaller.currentEntity; KarateMan.SetBgEffectsUnloaded(e.beat, e.length, e.type, e.type2, e.colorA, e.colorB, e.type3, e.type4, e.type5, e.colorC, e.colorD); }
|
||||||
|
),
|
||||||
new GameAction("set object colors", delegate { var e = eventCaller.currentEntity; KarateMan.instance.UpdateMaterialColour(e.colorA, e.colorB, e.colorC); }, 0.5f, false, new List<Param>()
|
new GameAction("set object colors", delegate { var e = eventCaller.currentEntity; KarateMan.instance.UpdateMaterialColour(e.colorA, e.colorB, e.colorC); }, 0.5f, false, new List<Param>()
|
||||||
{
|
{
|
||||||
new Param("colorA", new Color(), "Joe Body Color", "The color to use for Karate Joe's body"),
|
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("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 Param("colorC", new Color(), "Item Color", "The color to use for the thrown items"),
|
||||||
}),
|
},
|
||||||
|
inactiveFunction: delegate { var e = eventCaller.currentEntity; KarateMan.UpdateMaterialColourUnloaded(e.colorA, e.colorB, e.colorC); }
|
||||||
|
),
|
||||||
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<Param>()
|
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<Param>()
|
||||||
{
|
{
|
||||||
new Param("type", KarateMan.ParticleType.None, "Particle Type", "The type of particle effect to spawn. Using \"None\" will stop all effects"),
|
new Param("type", KarateMan.ParticleType.None, "Particle Type", "The type of particle effect to spawn. Using \"None\" will stop all effects"),
|
||||||
|
@ -89,7 +99,7 @@ namespace HeavenStudio.Games.Loaders
|
||||||
new Param("type", KarateMan.HitThree.HitThree, "Type", "The warning text to show")
|
new Param("type", KarateMan.HitThree.HitThree, "Type", "The warning text to show")
|
||||||
},
|
},
|
||||||
hidden: true),
|
hidden: true),
|
||||||
new GameAction("set background color", delegate { var e = eventCaller.currentEntity; KarateMan.instance.SetBgAndShadowCol(e.beat, e.length, e.type, e.type2, e.colorA, e.colorB, (int) KarateMan.instance.currentBgEffect); }, 0.5f, false,
|
new GameAction("set background color", delegate { var e = eventCaller.currentEntity; KarateMan.instance.SetBgAndShadowCol(e.beat, e.length, e.type, e.type2, e.colorA, e.colorB, (int) KarateMan.currentBgEffect); }, 0.5f, false,
|
||||||
new List<Param>()
|
new List<Param>()
|
||||||
{
|
{
|
||||||
new Param("type", KarateMan.BackgroundType.Yellow, "Background Type", "The preset background type"),
|
new Param("type", KarateMan.BackgroundType.Yellow, "Background Type", "The preset background type"),
|
||||||
|
@ -223,7 +233,7 @@ namespace HeavenStudio.Games
|
||||||
Tengoku,
|
Tengoku,
|
||||||
Mania,
|
Mania,
|
||||||
}
|
}
|
||||||
public bool IsComboEnable = true; //only stops Out combo inputs, this basically makes combo contextual
|
public static bool IsComboEnable = true; //only stops Out combo inputs, this basically makes combo contextual
|
||||||
public bool IsNoriActive { get { return Nori.MaxNori > 0; } }
|
public bool IsNoriActive { get { return Nori.MaxNori > 0; } }
|
||||||
public float NoriPerformance { get { if (IsNoriActive) return Nori.Nori / Nori.MaxNori; else return 1f; } }
|
public float NoriPerformance { get { if (IsNoriActive) return Nori.Nori / Nori.MaxNori; else return 1f; } }
|
||||||
|
|
||||||
|
@ -235,10 +245,10 @@ namespace HeavenStudio.Games
|
||||||
[Header("Camera Positions")]
|
[Header("Camera Positions")]
|
||||||
public Transform[] CameraPosition;
|
public Transform[] CameraPosition;
|
||||||
Vector3 cameraPosition;
|
Vector3 cameraPosition;
|
||||||
float startCamSpecial = Single.MinValue;
|
static float startCamSpecial = Single.MinValue;
|
||||||
float wantsReturn = Single.MinValue;
|
static float wantsReturn = Single.MinValue;
|
||||||
float cameraReturnLength = 2f;
|
static float cameraReturnLength = 2f;
|
||||||
CameraAngle cameraAngle = CameraAngle.Normal;
|
static CameraAngle cameraAngle = CameraAngle.Normal;
|
||||||
|
|
||||||
//pot trajectory stuff
|
//pot trajectory stuff
|
||||||
[Header("References")]
|
[Header("References")]
|
||||||
|
@ -250,31 +260,32 @@ namespace HeavenStudio.Games
|
||||||
|
|
||||||
[Header("Colour Map")]
|
[Header("Colour Map")]
|
||||||
public Material MappingMaterial;
|
public Material MappingMaterial;
|
||||||
public Color BodyColor;
|
public static Color BodyColor;
|
||||||
public Color HighlightColor;
|
public static Color HighlightColor;
|
||||||
public Color ItemColor;
|
public static Color ItemColor;
|
||||||
|
|
||||||
[Header("Word")]
|
[Header("Word")]
|
||||||
public Animator Word;
|
public Animator Word;
|
||||||
float wordClearTime = Single.MinValue;
|
static float wordClearTime = Single.MinValue;
|
||||||
const float hitVoiceOffset = 0.042f;
|
const float hitVoiceOffset = 0.042f;
|
||||||
|
|
||||||
[Header("Backgrounds")]
|
[Header("Backgrounds")]
|
||||||
|
static int bgType = (int) BackgroundType.Yellow;
|
||||||
|
public static int currentBgEffect = (int) BackgroundFXType.None;
|
||||||
|
static float bgFadeTime = Single.MinValue;
|
||||||
|
static float bgFadeDuration = 0f;
|
||||||
|
static Color bgColour = Color.white;
|
||||||
public SpriteRenderer BGPlane;
|
public SpriteRenderer BGPlane;
|
||||||
public GameObject BGEffect;
|
public GameObject BGEffect;
|
||||||
int bgType = (int) BackgroundType.Yellow;
|
|
||||||
Color bgColour;
|
|
||||||
Color bgColourLast;
|
Color bgColourLast;
|
||||||
public BackgroundFXType currentBgEffect = BackgroundFXType.None;
|
|
||||||
float bgFadeTime = Single.MinValue;
|
|
||||||
float bgFadeDuration = 0f;
|
|
||||||
|
|
||||||
Animator bgEffectAnimator;
|
Animator bgEffectAnimator;
|
||||||
SpriteRenderer bgEffectSpriteRenderer;
|
SpriteRenderer bgEffectSpriteRenderer;
|
||||||
|
|
||||||
int textureFiltertype = (int) ShadowType.Tinted;
|
static int textureType = (int) BackgroundTextureType.Plain;
|
||||||
Color filterColour;
|
static int textureFilterType = (int) ShadowType.Tinted;
|
||||||
Color filterColourNext;
|
static Color filterColour = Color.white;
|
||||||
|
static Color filterColourNext = Color.white;
|
||||||
public GameObject BGGradient;
|
public GameObject BGGradient;
|
||||||
SpriteRenderer bgGradientRenderer;
|
SpriteRenderer bgGradientRenderer;
|
||||||
public GameObject BGBlood;
|
public GameObject BGBlood;
|
||||||
|
@ -283,10 +294,9 @@ namespace HeavenStudio.Games
|
||||||
SpriteRenderer bgRadialRenderer;
|
SpriteRenderer bgRadialRenderer;
|
||||||
|
|
||||||
[Header("Shadows")]
|
[Header("Shadows")]
|
||||||
int currentShadowType = (int) ShadowType.Tinted;
|
static int currentShadowType = (int) ShadowType.Tinted;
|
||||||
Color customShadowColour = Color.white;
|
static Color customShadowColour = Color.white;
|
||||||
Color fadeShadowColour = Color.white;
|
static Color oldShadowColour;
|
||||||
Color oldShadowColour;
|
|
||||||
|
|
||||||
[Header("Particles")]
|
[Header("Particles")]
|
||||||
//wind
|
//wind
|
||||||
|
@ -301,6 +311,14 @@ namespace HeavenStudio.Games
|
||||||
public ParticleSystem RainEffect;
|
public ParticleSystem RainEffect;
|
||||||
public GameObject RainEffectGO;
|
public GameObject RainEffectGO;
|
||||||
|
|
||||||
|
[Header("Unloaded Game Calls")]
|
||||||
|
public static Queue<Beatmap.Entity> ItemQueue = new Queue<Beatmap.Entity>();
|
||||||
|
public static bool WantBop = true;
|
||||||
|
public static bool WantNori = true;
|
||||||
|
public static int WantNoriType = (int) NoriMode.None;
|
||||||
|
public static float WantBgChangeStart = 0f;
|
||||||
|
public static float WantBgChangeLength = 0f;
|
||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
instance = this;
|
instance = this;
|
||||||
|
@ -318,9 +336,10 @@ namespace HeavenStudio.Games
|
||||||
bgBloodRenderer = BGBlood.GetComponent<SpriteRenderer>();
|
bgBloodRenderer = BGBlood.GetComponent<SpriteRenderer>();
|
||||||
bgRadialRenderer = BGRadial.GetComponent<SpriteRenderer>();
|
bgRadialRenderer = BGRadial.GetComponent<SpriteRenderer>();
|
||||||
|
|
||||||
SetBgAndShadowCol(0f, 0f, bgType, (int) currentShadowType, BackgroundColors[bgType], customShadowColour, (int)currentBgEffect);
|
SetBgAndShadowCol(WantBgChangeStart, WantBgChangeLength, bgType, (int) currentShadowType, BackgroundColors[bgType], customShadowColour, (int)currentBgEffect);
|
||||||
|
SetBgTexture(textureType, textureFilterType, filterColour, filterColour);
|
||||||
UpdateMaterialColour(BodyColor, HighlightColor, ItemColor);
|
UpdateMaterialColour(BodyColor, HighlightColor, ItemColor);
|
||||||
ToggleBop(true);
|
ToggleBop(WantBop);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
|
@ -331,10 +350,10 @@ namespace HeavenStudio.Games
|
||||||
|
|
||||||
switch (currentBgEffect)
|
switch (currentBgEffect)
|
||||||
{
|
{
|
||||||
case BackgroundFXType.Sunburst:
|
case (int) BackgroundFXType.Sunburst:
|
||||||
bgEffectAnimator.DoNormalizedAnimation("Sunburst", (cond.songPositionInBeats*0.5f) % 1f);
|
bgEffectAnimator.DoNormalizedAnimation("Sunburst", (cond.songPositionInBeats*0.5f) % 1f);
|
||||||
break;
|
break;
|
||||||
case BackgroundFXType.Rings:
|
case (int) BackgroundFXType.Rings:
|
||||||
bgEffectAnimator.DoNormalizedAnimation("Rings", (cond.songPositionInBeats*0.5f) % 1f);
|
bgEffectAnimator.DoNormalizedAnimation("Rings", (cond.songPositionInBeats*0.5f) % 1f);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
@ -446,7 +465,7 @@ namespace HeavenStudio.Games
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void DoSpecialCamera(float beat, float length, bool returns)
|
public static void DoSpecialCamera(float beat, float length, bool returns)
|
||||||
{
|
{
|
||||||
if (cameraAngle == CameraAngle.Normal)
|
if (cameraAngle == CameraAngle.Normal)
|
||||||
{
|
{
|
||||||
|
@ -458,6 +477,11 @@ namespace HeavenStudio.Games
|
||||||
}
|
}
|
||||||
|
|
||||||
public void DoWord(float beat, int type, bool doSound = true)
|
public void DoWord(float beat, int type, bool doSound = true)
|
||||||
|
{
|
||||||
|
Word.Play(DoWordSound(beat, type, doSound));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string DoWordSound(float beat, int type, bool doSound = true)
|
||||||
{
|
{
|
||||||
String word = "NoPose";
|
String word = "NoPose";
|
||||||
float clear = 0f;
|
float clear = 0f;
|
||||||
|
@ -528,9 +552,9 @@ namespace HeavenStudio.Games
|
||||||
}
|
}
|
||||||
if (Conductor.instance.songPositionInBeats <= clear && Conductor.instance.songPositionInBeats >= beat)
|
if (Conductor.instance.songPositionInBeats <= clear && Conductor.instance.songPositionInBeats >= beat)
|
||||||
{
|
{
|
||||||
Word.Play(word);
|
|
||||||
wordClearTime = clear;
|
wordClearTime = clear;
|
||||||
}
|
}
|
||||||
|
return word;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void CreateItem(float beat, int type)
|
public void CreateItem(float beat, int type)
|
||||||
|
@ -680,23 +704,38 @@ namespace HeavenStudio.Games
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetBgAndShadowCol(float beat, float length, int bgType, int shadowType, Color a, Color b, int fx)
|
public static void SetBgEffectsUnloaded(float beat, float length, int newBgType, int newShadowType, Color bgCol, Color shadowCol, int bgFx, int texture, int textureFilter, Color filterCol, Color filterColNext)
|
||||||
|
{
|
||||||
|
WantBgChangeStart = beat;
|
||||||
|
WantBgChangeLength = length;
|
||||||
|
bgType = newBgType;
|
||||||
|
currentShadowType = newShadowType;
|
||||||
|
bgColour = bgCol;
|
||||||
|
customShadowColour = shadowCol;
|
||||||
|
currentBgEffect = bgFx;
|
||||||
|
textureType = texture;
|
||||||
|
textureFilterType = textureFilter;
|
||||||
|
filterColour = filterCol;
|
||||||
|
filterColourNext = filterColNext;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SetBgAndShadowCol(float beat, float length, int newBgType, int shadowType, Color a, Color b, int fx)
|
||||||
{
|
{
|
||||||
SetBgFx(fx, beat, length);
|
SetBgFx(fx, beat, length);
|
||||||
UpdateShadowColour(shadowType, b);
|
UpdateShadowColour(shadowType, b);
|
||||||
|
|
||||||
this.bgType = bgType;
|
bgType = newBgType;
|
||||||
if (this.bgType == (int) BackgroundType.Custom)
|
if (bgType == (int) BackgroundType.Custom)
|
||||||
bgColour = a;
|
bgColour = a;
|
||||||
else
|
else
|
||||||
bgColour = BackgroundColors[this.bgType];
|
bgColour = BackgroundColors[newBgType];
|
||||||
BGPlane.color = bgColour;
|
BGPlane.color = bgColour;
|
||||||
|
|
||||||
//😢
|
//😢
|
||||||
if (fx != (int) BackgroundFXType.Fade)
|
if (fx != (int) BackgroundFXType.Fade)
|
||||||
oldShadowColour = GetShadowColor(true);
|
oldShadowColour = GetShadowColor(true);
|
||||||
|
|
||||||
if (textureFiltertype == (int) ShadowType.Tinted)
|
if (textureFilterType == (int) ShadowType.Tinted)
|
||||||
filterColour = Color.LerpUnclamped(bgColour, ShadowBlendColor, 0.45f);
|
filterColour = Color.LerpUnclamped(bgColour, ShadowBlendColor, 0.45f);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -710,22 +749,23 @@ namespace HeavenStudio.Games
|
||||||
bgFadeDuration = length;
|
bgFadeDuration = length;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
currentBgEffect = (BackgroundFXType) fx;
|
currentBgEffect = fx;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetBgTexture(int type, int filterType, Color filterColor, Color nextColor)
|
public void SetBgTexture(int type, int filterType, Color filterColor, Color nextColor)
|
||||||
{
|
{
|
||||||
textureFiltertype = filterType;
|
textureType = type;
|
||||||
if (textureFiltertype == (int) ShadowType.Tinted)
|
textureFilterType = filterType;
|
||||||
|
if (textureFilterType == (int) ShadowType.Tinted)
|
||||||
filterColour = Color.LerpUnclamped(bgColour, filterColor, 0.45f);
|
filterColour = Color.LerpUnclamped(bgColour, filterColor, 0.45f);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
filterColour = filterColor;
|
filterColour = filterColor;
|
||||||
filterColourNext = nextColor;
|
filterColourNext = nextColor;
|
||||||
}
|
}
|
||||||
switch (type)
|
switch (textureType)
|
||||||
{
|
{
|
||||||
case (int) BackgroundTextureType.Blood:
|
case (int) BackgroundTextureType.Blood:
|
||||||
BGBlood.SetActive(true);
|
BGBlood.SetActive(true);
|
||||||
|
@ -761,7 +801,7 @@ namespace HeavenStudio.Games
|
||||||
void UpdateFilterColour(Color bgColor, Color filterColor)
|
void UpdateFilterColour(Color bgColor, Color filterColor)
|
||||||
{
|
{
|
||||||
Color col;
|
Color col;
|
||||||
if (textureFiltertype == (int) ShadowType.Tinted)
|
if (textureFilterType == (int) ShadowType.Tinted)
|
||||||
col = Color.LerpUnclamped(bgColor, ShadowBlendColor, 0.45f);
|
col = Color.LerpUnclamped(bgColor, ShadowBlendColor, 0.45f);
|
||||||
else
|
else
|
||||||
col = filterColor;
|
col = filterColor;
|
||||||
|
@ -812,7 +852,13 @@ namespace HeavenStudio.Games
|
||||||
MappingMaterial.SetColor("_ColorBravo", new Color(1, 0, 0, 1));
|
MappingMaterial.SetColor("_ColorBravo", new Color(1, 0, 0, 1));
|
||||||
MappingMaterial.SetColor("_ColorDelta", highlightCol);
|
MappingMaterial.SetColor("_ColorDelta", highlightCol);
|
||||||
ItemColor = objectCol;
|
ItemColor = objectCol;
|
||||||
//TODO: joe fist colour when punching Straight with low flow
|
}
|
||||||
|
|
||||||
|
public static void UpdateMaterialColourUnloaded(Color mainCol, Color highlightCol, Color objectCol)
|
||||||
|
{
|
||||||
|
BodyColor = mainCol;
|
||||||
|
HighlightColor = highlightCol;
|
||||||
|
ItemColor = objectCol;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetParticleEffect(float beat, int type, float windStrength, float particleStrength)
|
public void SetParticleEffect(float beat, int type, float windStrength, float particleStrength)
|
||||||
|
@ -855,6 +901,11 @@ namespace HeavenStudio.Games
|
||||||
Joe.bop.length = 0;
|
Joe.bop.length = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void ToggleBopUnloaded(bool toggle)
|
||||||
|
{
|
||||||
|
WantBop = toggle;
|
||||||
|
}
|
||||||
|
|
||||||
public void Prepare(float beat, float length)
|
public void Prepare(float beat, float length)
|
||||||
{
|
{
|
||||||
Joe.Prepare(beat, length);
|
Joe.Prepare(beat, length);
|
||||||
|
|
|
@ -126,7 +126,7 @@ namespace HeavenStudio.Games.Scripts_KarateMan
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PlayerInput.AltPressed() && KarateMan.instance.IsComboEnable && !inSpecial)
|
if (PlayerInput.AltPressed() && KarateMan.IsComboEnable && !inSpecial)
|
||||||
{
|
{
|
||||||
if (!KarateMan.instance.IsExpectingInputNow())
|
if (!KarateMan.instance.IsExpectingInputNow())
|
||||||
{
|
{
|
||||||
|
|
|
@ -123,12 +123,12 @@ namespace HeavenStudio.Games.Scripts_KarateMan
|
||||||
case ItemType.Alien:
|
case ItemType.Alien:
|
||||||
alpha = ItemAlienMap[0];
|
alpha = ItemAlienMap[0];
|
||||||
bravo = ItemAlienMap[1];
|
bravo = ItemAlienMap[1];
|
||||||
delta = KarateMan.instance.ItemColor;
|
delta = KarateMan.ItemColor;
|
||||||
break;
|
break;
|
||||||
case ItemType.KickBomb:
|
case ItemType.KickBomb:
|
||||||
alpha = ItemBombMap[0];
|
alpha = ItemBombMap[0];
|
||||||
bravo = ItemBombMap[1];
|
bravo = ItemBombMap[1];
|
||||||
delta = KarateMan.instance.ItemColor;
|
delta = KarateMan.ItemColor;
|
||||||
break;
|
break;
|
||||||
case ItemType.KickBarrel:
|
case ItemType.KickBarrel:
|
||||||
case ItemType.ComboBarrel:
|
case ItemType.ComboBarrel:
|
||||||
|
@ -140,12 +140,12 @@ namespace HeavenStudio.Games.Scripts_KarateMan
|
||||||
case ItemType.CookingLid:
|
case ItemType.CookingLid:
|
||||||
alpha = ItemCookingLidMap[0];
|
alpha = ItemCookingLidMap[0];
|
||||||
bravo = ItemCookingLidMap[1];
|
bravo = ItemCookingLidMap[1];
|
||||||
delta = KarateMan.instance.ItemColor;
|
delta = KarateMan.ItemColor;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
alpha = KarateMan.instance.ItemColor;
|
alpha = KarateMan.ItemColor;
|
||||||
bravo = KarateMan.instance.ItemColor;
|
bravo = KarateMan.ItemColor;
|
||||||
delta = KarateMan.instance.ItemColor;
|
delta = KarateMan.ItemColor;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
for (int i = 0; i < cellRenderers.Length; i++) {
|
for (int i = 0; i < cellRenderers.Length; i++) {
|
||||||
|
@ -625,7 +625,7 @@ namespace HeavenStudio.Games.Scripts_KarateMan
|
||||||
public void ItemWrongAction(PlayerActionEvent caller, float state)
|
public void ItemWrongAction(PlayerActionEvent caller, float state)
|
||||||
{
|
{
|
||||||
if (GameManager.instance.currentGame != "karateman") return;
|
if (GameManager.instance.currentGame != "karateman") return;
|
||||||
if (!KarateMan.instance.IsComboEnable) return;
|
if (!KarateMan.IsComboEnable) return;
|
||||||
//hitting a normal object with the alt input
|
//hitting a normal object with the alt input
|
||||||
//WHEN SCORING THIS IS A MISS
|
//WHEN SCORING THIS IS A MISS
|
||||||
var joe = KarateMan.instance.Joe;
|
var joe = KarateMan.instance.Joe;
|
||||||
|
@ -863,7 +863,7 @@ namespace HeavenStudio.Games.Scripts_KarateMan
|
||||||
public void ComboEndWrongActionAlt(PlayerActionEvent caller, float state)
|
public void ComboEndWrongActionAlt(PlayerActionEvent caller, float state)
|
||||||
{
|
{
|
||||||
if (GameManager.instance.currentGame != "karateman") return;
|
if (GameManager.instance.currentGame != "karateman") return;
|
||||||
if (KarateMan.instance.IsComboEnable && !(KarateMan.instance.Joe.inCombo || KarateMan.instance.Joe.inNuriLock))
|
if (KarateMan.IsComboEnable && !(KarateMan.instance.Joe.inCombo || KarateMan.instance.Joe.inNuriLock))
|
||||||
KarateMan.instance.Joe.ForceFailCombo(Conductor.instance.songPositionInBeats);
|
KarateMan.instance.Joe.ForceFailCombo(Conductor.instance.songPositionInBeats);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue