diff --git a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.000.png.meta b/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.000.png.meta
deleted file mode 100644
index 94a527ae..00000000
--- a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.000.png.meta
+++ /dev/null
@@ -1,96 +0,0 @@
-fileFormatVersion: 2
-guid: 8b4b7f4eb9c50144d8080a8a0d9ee61c
-TextureImporter:
- internalIDToNameTable: []
- externalObjects: {}
- serializedVersion: 11
- mipmaps:
- mipMapMode: 0
- enableMipMap: 0
- sRGBTexture: 1
- linearTexture: 0
- fadeOut: 0
- borderMipMap: 0
- mipMapsPreserveCoverage: 0
- alphaTestReferenceValue: 0.5
- mipMapFadeDistanceStart: 1
- mipMapFadeDistanceEnd: 3
- bumpmap:
- convertToNormalMap: 0
- externalNormalMap: 0
- heightScale: 0.25
- normalMapFilter: 0
- isReadable: 0
- streamingMipmaps: 0
- streamingMipmapsPriority: 0
- vTOnly: 0
- grayScaleToAlpha: 0
- generateCubemap: 6
- cubemapConvolution: 0
- seamlessCubemap: 0
- textureFormat: 1
- maxTextureSize: 2048
- textureSettings:
- serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 1
- wrapV: 1
- wrapW: 1
- nPOTScale: 0
- lightmap: 0
- compressionQuality: 50
- spriteMode: 1
- spriteExtrude: 1
- spriteMeshType: 1
- alignment: 0
- spritePivot: {x: 0.5, y: 0.5}
- spritePixelsToUnits: 100
- spriteBorder: {x: 0, y: 0, z: 0, w: 0}
- spriteGenerateFallbackPhysicsShape: 1
- alphaUsage: 1
- alphaIsTransparency: 1
- spriteTessellationDetail: -1
- textureType: 8
- textureShape: 1
- singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
- maxTextureSizeSet: 0
- compressionQualitySet: 0
- textureFormatSet: 0
- ignorePngGamma: 0
- applyGammaDecoding: 0
- platformSettings:
- - serializedVersion: 3
- buildTarget: DefaultTexturePlatform
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- spriteSheet:
- serializedVersion: 2
- sprites: []
- outline: []
- physicsShape: []
- bones: []
- spriteID: 5e97eb03825dee720800000000000000
- internalID: 0
- vertices: []
- indices:
- edges: []
- weights: []
- secondaryTextures: []
- spritePackingTag:
- pSDRemoveMatte: 0
- pSDShowRemoveMatteOption: 0
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.001.png.meta b/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.001.png.meta
deleted file mode 100644
index 55f40bce..00000000
--- a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.001.png.meta
+++ /dev/null
@@ -1,96 +0,0 @@
-fileFormatVersion: 2
-guid: 3388ce26aaea78048a82921ba753fad4
-TextureImporter:
- internalIDToNameTable: []
- externalObjects: {}
- serializedVersion: 11
- mipmaps:
- mipMapMode: 0
- enableMipMap: 0
- sRGBTexture: 1
- linearTexture: 0
- fadeOut: 0
- borderMipMap: 0
- mipMapsPreserveCoverage: 0
- alphaTestReferenceValue: 0.5
- mipMapFadeDistanceStart: 1
- mipMapFadeDistanceEnd: 3
- bumpmap:
- convertToNormalMap: 0
- externalNormalMap: 0
- heightScale: 0.25
- normalMapFilter: 0
- isReadable: 0
- streamingMipmaps: 0
- streamingMipmapsPriority: 0
- vTOnly: 0
- grayScaleToAlpha: 0
- generateCubemap: 6
- cubemapConvolution: 0
- seamlessCubemap: 0
- textureFormat: 1
- maxTextureSize: 2048
- textureSettings:
- serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 1
- wrapV: 1
- wrapW: 1
- nPOTScale: 0
- lightmap: 0
- compressionQuality: 50
- spriteMode: 1
- spriteExtrude: 1
- spriteMeshType: 1
- alignment: 0
- spritePivot: {x: 0.5, y: 0.5}
- spritePixelsToUnits: 100
- spriteBorder: {x: 0, y: 0, z: 0, w: 0}
- spriteGenerateFallbackPhysicsShape: 1
- alphaUsage: 1
- alphaIsTransparency: 1
- spriteTessellationDetail: -1
- textureType: 8
- textureShape: 1
- singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
- maxTextureSizeSet: 0
- compressionQualitySet: 0
- textureFormatSet: 0
- ignorePngGamma: 0
- applyGammaDecoding: 0
- platformSettings:
- - serializedVersion: 3
- buildTarget: DefaultTexturePlatform
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- spriteSheet:
- serializedVersion: 2
- sprites: []
- outline: []
- physicsShape: []
- bones: []
- spriteID: 5e97eb03825dee720800000000000000
- internalID: 0
- vertices: []
- indices:
- edges: []
- weights: []
- secondaryTextures: []
- spritePackingTag:
- pSDRemoveMatte: 0
- pSDShowRemoveMatteOption: 0
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.002.png.meta b/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.002.png.meta
deleted file mode 100644
index 01d7e1c1..00000000
--- a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.002.png.meta
+++ /dev/null
@@ -1,96 +0,0 @@
-fileFormatVersion: 2
-guid: 81e765e8e4eab724aacc9eaefa823c93
-TextureImporter:
- internalIDToNameTable: []
- externalObjects: {}
- serializedVersion: 11
- mipmaps:
- mipMapMode: 0
- enableMipMap: 0
- sRGBTexture: 1
- linearTexture: 0
- fadeOut: 0
- borderMipMap: 0
- mipMapsPreserveCoverage: 0
- alphaTestReferenceValue: 0.5
- mipMapFadeDistanceStart: 1
- mipMapFadeDistanceEnd: 3
- bumpmap:
- convertToNormalMap: 0
- externalNormalMap: 0
- heightScale: 0.25
- normalMapFilter: 0
- isReadable: 0
- streamingMipmaps: 0
- streamingMipmapsPriority: 0
- vTOnly: 0
- grayScaleToAlpha: 0
- generateCubemap: 6
- cubemapConvolution: 0
- seamlessCubemap: 0
- textureFormat: 1
- maxTextureSize: 2048
- textureSettings:
- serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 1
- wrapV: 1
- wrapW: 1
- nPOTScale: 0
- lightmap: 0
- compressionQuality: 50
- spriteMode: 1
- spriteExtrude: 1
- spriteMeshType: 1
- alignment: 0
- spritePivot: {x: 0.5, y: 0.5}
- spritePixelsToUnits: 100
- spriteBorder: {x: 0, y: 0, z: 0, w: 0}
- spriteGenerateFallbackPhysicsShape: 1
- alphaUsage: 1
- alphaIsTransparency: 1
- spriteTessellationDetail: -1
- textureType: 8
- textureShape: 1
- singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
- maxTextureSizeSet: 0
- compressionQualitySet: 0
- textureFormatSet: 0
- ignorePngGamma: 0
- applyGammaDecoding: 0
- platformSettings:
- - serializedVersion: 3
- buildTarget: DefaultTexturePlatform
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- spriteSheet:
- serializedVersion: 2
- sprites: []
- outline: []
- physicsShape: []
- bones: []
- spriteID: 5e97eb03825dee720800000000000000
- internalID: 0
- vertices: []
- indices:
- edges: []
- weights: []
- secondaryTextures: []
- spritePackingTag:
- pSDRemoveMatte: 0
- pSDShowRemoveMatteOption: 0
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.003.png.meta b/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.003.png.meta
deleted file mode 100644
index 21ef33ec..00000000
--- a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.003.png.meta
+++ /dev/null
@@ -1,96 +0,0 @@
-fileFormatVersion: 2
-guid: b04141d1a3e27bf4da920931209a3627
-TextureImporter:
- internalIDToNameTable: []
- externalObjects: {}
- serializedVersion: 11
- mipmaps:
- mipMapMode: 0
- enableMipMap: 0
- sRGBTexture: 1
- linearTexture: 0
- fadeOut: 0
- borderMipMap: 0
- mipMapsPreserveCoverage: 0
- alphaTestReferenceValue: 0.5
- mipMapFadeDistanceStart: 1
- mipMapFadeDistanceEnd: 3
- bumpmap:
- convertToNormalMap: 0
- externalNormalMap: 0
- heightScale: 0.25
- normalMapFilter: 0
- isReadable: 0
- streamingMipmaps: 0
- streamingMipmapsPriority: 0
- vTOnly: 0
- grayScaleToAlpha: 0
- generateCubemap: 6
- cubemapConvolution: 0
- seamlessCubemap: 0
- textureFormat: 1
- maxTextureSize: 2048
- textureSettings:
- serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 1
- wrapV: 1
- wrapW: 1
- nPOTScale: 0
- lightmap: 0
- compressionQuality: 50
- spriteMode: 1
- spriteExtrude: 1
- spriteMeshType: 1
- alignment: 0
- spritePivot: {x: 0.5, y: 0.5}
- spritePixelsToUnits: 100
- spriteBorder: {x: 0, y: 0, z: 0, w: 0}
- spriteGenerateFallbackPhysicsShape: 1
- alphaUsage: 1
- alphaIsTransparency: 1
- spriteTessellationDetail: -1
- textureType: 8
- textureShape: 1
- singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
- maxTextureSizeSet: 0
- compressionQualitySet: 0
- textureFormatSet: 0
- ignorePngGamma: 0
- applyGammaDecoding: 0
- platformSettings:
- - serializedVersion: 3
- buildTarget: DefaultTexturePlatform
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- spriteSheet:
- serializedVersion: 2
- sprites: []
- outline: []
- physicsShape: []
- bones: []
- spriteID: 5e97eb03825dee720800000000000000
- internalID: 0
- vertices: []
- indices:
- edges: []
- weights: []
- secondaryTextures: []
- spritePackingTag:
- pSDRemoveMatte: 0
- pSDShowRemoveMatteOption: 0
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.004.png.meta b/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.004.png.meta
deleted file mode 100644
index 80f8b417..00000000
--- a/Assets/Resources/Sprites/Games/FanClub/Reference/IdolBigCall.004.png.meta
+++ /dev/null
@@ -1,96 +0,0 @@
-fileFormatVersion: 2
-guid: 6ff428bdce2817b409669c8d452a134e
-TextureImporter:
- internalIDToNameTable: []
- externalObjects: {}
- serializedVersion: 11
- mipmaps:
- mipMapMode: 0
- enableMipMap: 0
- sRGBTexture: 1
- linearTexture: 0
- fadeOut: 0
- borderMipMap: 0
- mipMapsPreserveCoverage: 0
- alphaTestReferenceValue: 0.5
- mipMapFadeDistanceStart: 1
- mipMapFadeDistanceEnd: 3
- bumpmap:
- convertToNormalMap: 0
- externalNormalMap: 0
- heightScale: 0.25
- normalMapFilter: 0
- isReadable: 0
- streamingMipmaps: 0
- streamingMipmapsPriority: 0
- vTOnly: 0
- grayScaleToAlpha: 0
- generateCubemap: 6
- cubemapConvolution: 0
- seamlessCubemap: 0
- textureFormat: 1
- maxTextureSize: 2048
- textureSettings:
- serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 1
- wrapV: 1
- wrapW: 1
- nPOTScale: 0
- lightmap: 0
- compressionQuality: 50
- spriteMode: 1
- spriteExtrude: 1
- spriteMeshType: 1
- alignment: 0
- spritePivot: {x: 0.5, y: 0.5}
- spritePixelsToUnits: 100
- spriteBorder: {x: 0, y: 0, z: 0, w: 0}
- spriteGenerateFallbackPhysicsShape: 1
- alphaUsage: 1
- alphaIsTransparency: 1
- spriteTessellationDetail: -1
- textureType: 8
- textureShape: 1
- singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
- maxTextureSizeSet: 0
- compressionQualitySet: 0
- textureFormatSet: 0
- ignorePngGamma: 0
- applyGammaDecoding: 0
- platformSettings:
- - serializedVersion: 3
- buildTarget: DefaultTexturePlatform
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- spriteSheet:
- serializedVersion: 2
- sprites: []
- outline: []
- physicsShape: []
- bones: []
- spriteID: 5e97eb03825dee720800000000000000
- internalID: 0
- vertices: []
- indices:
- edges: []
- weights: []
- secondaryTextures: []
- spritePackingTag:
- pSDRemoveMatte: 0
- pSDShowRemoveMatteOption: 0
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Scripts/Games/FanClub/FanClub.cs b/Assets/Scripts/Games/FanClub/FanClub.cs
index 598a6e8d..89c2e6f9 100644
--- a/Assets/Scripts/Games/FanClub/FanClub.cs
+++ b/Assets/Scripts/Games/FanClub/FanClub.cs
@@ -47,7 +47,7 @@ namespace HeavenStudio.Games.Loaders
new GameAction("play stage animation", delegate { var e = eventCaller.currentEntity; FanClub.instance.PlayAnimStage(e.beat, e.type); }, 1, true, parameters: new List()
{
- new Param("type", FanClub.StageAnimations.Reset, "Animation", "Animation to play")
+ new Param("type", FanClub.StageAnimations.Flash, "Animation", "Animation to play")
}),
});
}
@@ -73,7 +73,7 @@ namespace HeavenStudio.Games
Call,
Response,
Jump,
- //TODO: BigCall
+ BigCall,
Squat,
Wink,
Dab
@@ -295,8 +295,8 @@ namespace HeavenStudio.Games
public void PlayAnim(float beat, float length, int type)
{
idolJumpStartTime = Single.MinValue;
- DisableResponse(beat, length);
- DisableBop(beat, length);
+ DisableResponse(beat, length + 0.5f);
+ DisableBop(beat, length + 0.5f);
switch (type)
{
@@ -325,11 +325,18 @@ namespace HeavenStudio.Games
case (int) IdolAnimations.Jump:
DoIdolJump(beat, length);
break;
+ case (int) IdolAnimations.BigCall:
+ BeatAction.New(Arisa, new List()
+ {
+ new BeatAction.Action(beat, delegate { Arisa.GetComponent().Play("IdolBigCall0", -1, 0); }),
+ new BeatAction.Action(beat + length, delegate { Arisa.GetComponent().Play("IdolBigCall1", -1, 0); }),
+ });
+ break;
case (int) IdolAnimations.Squat:
BeatAction.New(Arisa, new List()
{
new BeatAction.Action(beat, delegate { Arisa.GetComponent().Play("IdolSquat0", -1, 0); }),
- new BeatAction.Action(beat + 1f, delegate { Arisa.GetComponent().Play("IdolSquat1", -1, 0); }),
+ new BeatAction.Action(beat + length, delegate { Arisa.GetComponent().Play("IdolSquat1", -1, 0); }),
});
break;
case (int) IdolAnimations.Wink:
@@ -403,10 +410,10 @@ namespace HeavenStudio.Games
new MultiSound.Sound("fanClub/arisa_hai_3_jp", beat + 2f),
});
- Prepare(beat + 3f);
responseToggle = false;
DisableBop(beat, 8f);
+ Prepare(beat + 3f);
Prepare(beat + 4f);
Prepare(beat + 5f);
Prepare(beat + 6f);
@@ -555,12 +562,13 @@ namespace HeavenStudio.Games
const float BIGCALL_LENGTH = 2.75f;
public void CallBigReady(float beat, bool noSound = false)
{
+ Prepare(beat + 1.5f);
+ Prepare(beat + 2f);
+
if (!noSound)
Jukebox.PlayOneShotGame("fanClub/crowd_big_ready");
DisableSpecBop(beat, 3.75f);
- Prepare(beat + 1.5f);
- Prepare(beat + 2f);
PlayAnimationAll("FanBigReady", onlyOverrideBop: true);
BeatAction.New(this.gameObject, new List()
diff --git a/Assets/Scripts/Games/FanClub/NtrIdolFan.cs b/Assets/Scripts/Games/FanClub/NtrIdolFan.cs
index 05d8d06f..e57a73b2 100644
--- a/Assets/Scripts/Games/FanClub/NtrIdolFan.cs
+++ b/Assets/Scripts/Games/FanClub/NtrIdolFan.cs
@@ -29,7 +29,7 @@ namespace HeavenStudio.Games.Scripts_FanClub
float clappingStartTime = 0f;
- public Queue> upcomingHits;
+ public SortedList upcomingHits;
public float startBeat;
public int type;
public bool doCharge = false;
@@ -39,7 +39,7 @@ namespace HeavenStudio.Games.Scripts_FanClub
public void Init()
{
if (player)
- upcomingHits = new Queue>(); // beat, type
+ upcomingHits = new SortedList(); // beat, type
inputHit = true;
hasHit = true;
@@ -53,7 +53,12 @@ namespace HeavenStudio.Games.Scripts_FanClub
public void AddHit(float beat, int type)
{
inputHit = false;
- upcomingHits.Enqueue(new KeyValuePair(beat, type));
+ try
+ {
+ upcomingHits.Add(beat, type);
+ }
+ catch (ArgumentException)
+ {}
}
public void Hit(bool _hit, int type = 0, bool fromAutoplay = false)
@@ -77,15 +82,18 @@ namespace HeavenStudio.Games.Scripts_FanClub
{
if (upcomingHits?.Count > 0)
{
- var next = upcomingHits.Dequeue();
+ var k = upcomingHits.Keys[0];
+ var v = upcomingHits[k];
- startBeat = next.Key;
- type = next.Value == 2 ? 0 : next.Value;
- doCharge = (next.Value == 2);
+ startBeat = k;
+ type = v == 2 ? 0 : v;
+ doCharge = (v == 2);
// reset our shit to prepare for next hit
hasHit = false;
ResetState();
+
+ upcomingHits.Remove(k);
}
else if (Conductor.instance.GetPositionFromBeat(startBeat, 1) >= Minigame.EndTime())
{