Stack to Left
This commit is contained in:
parent
7cebb7bfca
commit
8c60729806
|
@ -870,16 +870,14 @@ MonoBehaviour:
|
||||||
size: 2
|
size: 2
|
||||||
holdLength: 7
|
holdLength: 7
|
||||||
limbFallHeight: 15
|
limbFallHeight: 15
|
||||||
fuelColor: {r: 1, g: 0.385, b: 0.385, a: 1}
|
flyDistance: 2.05
|
||||||
lampColorOff: {r: 0, g: 0, b: 0, a: 0}
|
stackDistanceRate: 0.34
|
||||||
lampColorOn: {r: 0, g: 0, b: 0, a: 0}
|
|
||||||
fullBody: {fileID: 7967358876063018519}
|
fullBody: {fileID: 7967358876063018519}
|
||||||
legs: {fileID: 7489285146181854031}
|
legs: {fileID: 7489285146181854031}
|
||||||
body: {fileID: 233663896046199226}
|
body: {fileID: 233663896046199226}
|
||||||
head: {fileID: 1555999227183591988}
|
head: {fileID: 1555999227183591988}
|
||||||
fuelFill: {fileID: 1253665520920512372}
|
fuelFill: {fileID: 1253665520920512372}
|
||||||
fillAnim: {fileID: 3960380650713155144}
|
fillAnim: {fileID: 3960380650713155144}
|
||||||
flyDistance: 2.05
|
|
||||||
--- !u!210 &755017336671867292
|
--- !u!210 &755017336671867292
|
||||||
SortingGroup:
|
SortingGroup:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
|
@ -870,16 +870,14 @@ MonoBehaviour:
|
||||||
size: 1
|
size: 1
|
||||||
holdLength: 3
|
holdLength: 3
|
||||||
limbFallHeight: 15
|
limbFallHeight: 15
|
||||||
fuelColor: {r: 0, g: 0, b: 0, a: 0}
|
flyDistance: 2.05
|
||||||
lampColorOff: {r: 0, g: 0, b: 0, a: 0}
|
stackDistanceRate: 0.34
|
||||||
lampColorOn: {r: 0, g: 0, b: 0, a: 0}
|
|
||||||
fullBody: {fileID: 7967358876063018519}
|
fullBody: {fileID: 7967358876063018519}
|
||||||
legs: {fileID: 7489285146181854031}
|
legs: {fileID: 7489285146181854031}
|
||||||
body: {fileID: 233663896046199226}
|
body: {fileID: 233663896046199226}
|
||||||
head: {fileID: 1555999227183591988}
|
head: {fileID: 1555999227183591988}
|
||||||
fuelFill: {fileID: 1253665520920512372}
|
fuelFill: {fileID: 1253665520920512372}
|
||||||
fillAnim: {fileID: 3960380650713155144}
|
fillAnim: {fileID: 3960380650713155144}
|
||||||
flyDistance: 2.05
|
|
||||||
--- !u!210 &755017336671867292
|
--- !u!210 &755017336671867292
|
||||||
SortingGroup:
|
SortingGroup:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
|
@ -870,16 +870,14 @@ MonoBehaviour:
|
||||||
size: 0
|
size: 0
|
||||||
holdLength: 1
|
holdLength: 1
|
||||||
limbFallHeight: 15
|
limbFallHeight: 15
|
||||||
fuelColor: {r: 0, g: 0, b: 0, a: 0}
|
flyDistance: 2.05
|
||||||
lampColorOff: {r: 0, g: 0, b: 0, a: 0}
|
stackDistanceRate: 0.34
|
||||||
lampColorOn: {r: 0, g: 0, b: 0, a: 0}
|
|
||||||
fullBody: {fileID: 7967358876063018519}
|
fullBody: {fileID: 7967358876063018519}
|
||||||
legs: {fileID: 7489285146181854031}
|
legs: {fileID: 7489285146181854031}
|
||||||
body: {fileID: 233663896046199226}
|
body: {fileID: 233663896046199226}
|
||||||
head: {fileID: 1555999227183591988}
|
head: {fileID: 1555999227183591988}
|
||||||
fuelFill: {fileID: 1253665520920512372}
|
fuelFill: {fileID: 1253665520920512372}
|
||||||
fillAnim: {fileID: 3960380650713155144}
|
fillAnim: {fileID: 3960380650713155144}
|
||||||
flyDistance: 2.05
|
|
||||||
--- !u!210 &755017336671867292
|
--- !u!210 &755017336671867292
|
||||||
SortingGroup:
|
SortingGroup:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace HeavenStudio.Games.Loaders
|
||||||
{
|
{
|
||||||
preFunction = delegate {
|
preFunction = delegate {
|
||||||
var e = eventCaller.currentEntity;
|
var e = eventCaller.currentEntity;
|
||||||
Fillbots.PreSpawnFillbot(e.beat, 3, Scripts_Fillbots.BotSize.Medium, e["colorFuel"], e["colorLampOff"], e["colorLampOn"], e["type"], e["alt"]);
|
Fillbots.PreSpawnFillbot(e.beat, 3, (int)Scripts_Fillbots.BotSize.Medium, e["colorFuel"], e["colorLampOff"], e["colorLampOn"], e["type"], e["alt"]);
|
||||||
},
|
},
|
||||||
defaultLength = 8f,
|
defaultLength = 8f,
|
||||||
parameters = new List<Param>()
|
parameters = new List<Param>()
|
||||||
|
@ -46,7 +46,7 @@ namespace HeavenStudio.Games.Loaders
|
||||||
{
|
{
|
||||||
preFunction = delegate {
|
preFunction = delegate {
|
||||||
var e = eventCaller.currentEntity;
|
var e = eventCaller.currentEntity;
|
||||||
Fillbots.PreSpawnFillbot(e.beat, 7, Scripts_Fillbots.BotSize.Large, e["colorFuel"], e["colorLampOff"], e["colorLampOn"], e["type"], e["alt"]);
|
Fillbots.PreSpawnFillbot(e.beat, 7, (int)Scripts_Fillbots.BotSize.Large, e["colorFuel"], e["colorLampOff"], e["colorLampOn"], e["type"], e["alt"]);
|
||||||
},
|
},
|
||||||
defaultLength = 12f,
|
defaultLength = 12f,
|
||||||
parameters = new List<Param>()
|
parameters = new List<Param>()
|
||||||
|
@ -62,7 +62,7 @@ namespace HeavenStudio.Games.Loaders
|
||||||
{
|
{
|
||||||
preFunction = delegate {
|
preFunction = delegate {
|
||||||
var e = eventCaller.currentEntity;
|
var e = eventCaller.currentEntity;
|
||||||
Fillbots.PreSpawnFillbot(e.beat, 1, Scripts_Fillbots.BotSize.Small, e["colorFuel"], e["colorLampOff"], e["colorLampOn"], e["type"], e["alt"]);
|
Fillbots.PreSpawnFillbot(e.beat, 1, (int)Scripts_Fillbots.BotSize.Small, e["colorFuel"], e["colorLampOff"], e["colorLampOn"], e["type"], e["alt"]);
|
||||||
},
|
},
|
||||||
defaultLength = 6f,
|
defaultLength = 6f,
|
||||||
parameters = new List<Param>()
|
parameters = new List<Param>()
|
||||||
|
@ -74,6 +74,24 @@ namespace HeavenStudio.Games.Loaders
|
||||||
new Param("colorLampOn", new Color(1f, 1f, 0.42f), "On Lamp Color", "Set the color of the on lamp."),
|
new Param("colorLampOn", new Color(1f, 1f, 0.42f), "On Lamp Color", "Set the color of the on lamp."),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
new GameAction("custom", "Custom Bot")
|
||||||
|
{
|
||||||
|
preFunction = delegate {
|
||||||
|
var e = eventCaller.currentEntity;
|
||||||
|
Fillbots.PreSpawnFillbot(e.beat, e.length-5, e["size"], e["colorFuel"], e["colorLampOff"], e["colorLampOn"], e["type"], e["alt"]);
|
||||||
|
},
|
||||||
|
defaultLength = 6f,
|
||||||
|
resizable = true,
|
||||||
|
parameters = new List<Param>()
|
||||||
|
{
|
||||||
|
new Param("size", Scripts_Fillbots.BotSize.Medium, "Size", "Set the size of the Robot."),
|
||||||
|
new Param("alt", false, "Alternate OK"),
|
||||||
|
new Param("type", Scripts_Fillbots.EndAnim.Both, "Success Reaction", "Set the reaction of the Robot."),
|
||||||
|
new Param("colorFuel", new Color(1f, 0.385f, 0.385f), "Fuel Color", "Set the color of the fuel."),
|
||||||
|
new Param("colorLampOff", new Color(0.635f, 0.635f, 0.185f), "Off Lamp Color", "Set the color of the off lamp."),
|
||||||
|
new Param("colorLampOn", new Color(1f, 1f, 0.42f), "On Lamp Color", "Set the color of the on lamp."),
|
||||||
|
},
|
||||||
|
},
|
||||||
new GameAction("blackout", "Blackout")
|
new GameAction("blackout", "Blackout")
|
||||||
{
|
{
|
||||||
function = delegate { Fillbots.instance.Blackout();},
|
function = delegate { Fillbots.instance.Blackout();},
|
||||||
|
@ -216,12 +234,11 @@ namespace HeavenStudio.Games
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void PreSpawnFillbot(double beat, double holdLength, BotSize size, Color fuelColor, Color lampColorOff, Color lampColorOn, int endAnim, bool altOK)
|
public static void PreSpawnFillbot(double beat, double holdLength, int size, Color fuelColor, Color lampColorOff, Color lampColorOn, int endAnim, bool altOK)
|
||||||
{
|
{
|
||||||
Debug.Log(altOK);
|
|
||||||
if (GameManager.instance.currentGame == "fillbots")
|
if (GameManager.instance.currentGame == "fillbots")
|
||||||
{
|
{
|
||||||
instance.SpawnFillbot(beat, holdLength, size, fuelColor, lampColorOff, lampColorOn, (EndAnim)endAnim, altOK);
|
instance.SpawnFillbot(beat, holdLength, (BotSize)size, fuelColor, lampColorOff, lampColorOn, (EndAnim)endAnim, altOK);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -229,7 +246,7 @@ namespace HeavenStudio.Games
|
||||||
{
|
{
|
||||||
beat = beat,
|
beat = beat,
|
||||||
holdLength = holdLength,
|
holdLength = holdLength,
|
||||||
size = size,
|
size = (BotSize)size,
|
||||||
fuelColor = fuelColor,
|
fuelColor = fuelColor,
|
||||||
lampColorOff = lampColorOff,
|
lampColorOff = lampColorOff,
|
||||||
lampColorOn = lampColorOn,
|
lampColorOn = lampColorOn,
|
||||||
|
@ -254,27 +271,46 @@ namespace HeavenStudio.Games
|
||||||
spawnedBot.holdLength = holdLength;
|
spawnedBot.holdLength = holdLength;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
spawnedBot.startBeat = beat;
|
||||||
spawnedBot.fuelColor = fuelColor;
|
spawnedBot.fuelColor = fuelColor;
|
||||||
spawnedBot.lampColorOff = lampColorOff;
|
spawnedBot.lampColorOff = lampColorOff;
|
||||||
spawnedBot.lampColorOn = lampColorOn;
|
spawnedBot.lampColorOn = lampColorOn;
|
||||||
spawnedBot.endAnim = endAnim;
|
spawnedBot.endAnim = endAnim;
|
||||||
spawnedBot.altOK = altOK;
|
spawnedBot.altOK = altOK;
|
||||||
|
|
||||||
spawnedBot.Init(beat);
|
spawnedBot.Init();
|
||||||
BeatAction.New(instance, new List<BeatAction.Action>()
|
|
||||||
{
|
var actions = new List<BeatAction.Action>();
|
||||||
new BeatAction.Action(beat - 0.5, delegate
|
var fallingBots = currentBots.FindAll(x => x.startBeat < beat && x.startBeat + 3 >= beat);
|
||||||
|
if (fallingBots is null) {
|
||||||
|
actions.Add(new BeatAction.Action(beat - 0.5, delegate
|
||||||
{
|
{
|
||||||
if (conveyerStartBeat != -1) conveyerNormalizedOffset = Conductor.instance.GetPositionFromBeat(conveyerStartBeat, 1);
|
if (conveyerStartBeat != -1) conveyerNormalizedOffset = Conductor.instance.GetPositionFromBeat(conveyerStartBeat, 1);
|
||||||
conveyerStartBeat = -2;
|
conveyerStartBeat = -2;
|
||||||
}),
|
}));
|
||||||
new BeatAction.Action(beat + 3, delegate
|
} else {
|
||||||
|
actions.Add(new BeatAction.Action(beat - 0.25, delegate
|
||||||
|
{
|
||||||
|
foreach (var bot in fallingBots)
|
||||||
|
{
|
||||||
|
bot.StackToLeft(beat, 0.25);
|
||||||
|
}
|
||||||
|
conveyerStartBeat = beat - 0.25;
|
||||||
|
}));
|
||||||
|
actions.Add(new BeatAction.Action(beat, delegate
|
||||||
|
{
|
||||||
|
if (conveyerStartBeat != -1) conveyerNormalizedOffset = Conductor.instance.GetPositionFromBeat(conveyerStartBeat, 1);
|
||||||
|
conveyerStartBeat = -2;
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
|
actions.Add(new BeatAction.Action(beat + 3, delegate
|
||||||
{
|
{
|
||||||
if (!PlayerInput.GetIsAction(InputAction_BasicPress)) filler.DoScaledAnimationAsync("FillerPrepare", 0.5f);
|
if (!PlayerInput.GetIsAction(InputAction_BasicPress)) filler.DoScaledAnimationAsync("FillerPrepare", 0.5f);
|
||||||
conveyerStartBeat = beat + 3;
|
conveyerStartBeat = beat + 3;
|
||||||
fillerPosition = size;
|
fillerPosition = size;
|
||||||
})
|
}));
|
||||||
});
|
BeatAction.New(instance, actions);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ToggleBop(double beat, float length, bool bopOrNah, bool autoBop)
|
public void ToggleBop(double beat, float length, bool bopOrNah, bool autoBop)
|
||||||
|
|
|
@ -39,11 +39,16 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
[System.NonSerialized] public Color lampColorOn;
|
[System.NonSerialized] public Color lampColorOn;
|
||||||
double conveyerRestartLength = 0.5;
|
double conveyerRestartLength = 0.5;
|
||||||
|
|
||||||
|
[System.NonSerialized] public double startBeat = -1;
|
||||||
|
private double conveyerStartBeat = -1;
|
||||||
|
private double conveyerLength = 1;
|
||||||
|
|
||||||
private Vector2 startPos;
|
private Vector2 startPos;
|
||||||
|
|
||||||
private float lerpDistance;
|
private float lerpDistance;
|
||||||
|
private float lerpIdleDistance;
|
||||||
[SerializeField] private float flyDistance;
|
[SerializeField] private float flyDistance;
|
||||||
private float stackDistanceRate = 0.2f;
|
[SerializeField] private float stackDistanceRate;
|
||||||
|
|
||||||
[Header("Body Parts")]
|
[Header("Body Parts")]
|
||||||
[SerializeField] private Animator fullBody;
|
[SerializeField] private Animator fullBody;
|
||||||
|
@ -62,9 +67,6 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
private float bodyPosY;
|
private float bodyPosY;
|
||||||
private float headPosY;
|
private float headPosY;
|
||||||
|
|
||||||
private double startBeat = -1;
|
|
||||||
private double conveyerStartBeat = -1;
|
|
||||||
|
|
||||||
private bool legsHaveFallen;
|
private bool legsHaveFallen;
|
||||||
private bool bodyHasFallen;
|
private bool bodyHasFallen;
|
||||||
private bool headHasFallen;
|
private bool headHasFallen;
|
||||||
|
@ -79,6 +81,8 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
|
|
||||||
private BotState botState = BotState.Idle;
|
private BotState botState = BotState.Idle;
|
||||||
private bool isExplode = false;
|
private bool isExplode = false;
|
||||||
|
[System.NonSerialized] public bool isStack;
|
||||||
|
private double stackBeat, stackLength;
|
||||||
|
|
||||||
[System.NonSerialized] public EndAnim endAnim;
|
[System.NonSerialized] public EndAnim endAnim;
|
||||||
[System.NonSerialized] public bool altOK;
|
[System.NonSerialized] public bool altOK;
|
||||||
|
@ -108,32 +112,20 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
startPos = transform.position;
|
startPos = transform.position;
|
||||||
|
|
||||||
lerpDistance = 0 - startPos.x;
|
lerpDistance = 0 - startPos.x;
|
||||||
|
lerpIdleDistance = lerpDistance;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void MoveConveyer(float normalized)
|
public void MoveConveyer(float normalized, float lerpDistance, float flyDistance = 0)
|
||||||
{
|
{
|
||||||
if (botState is BotState.Holding)
|
if (botState is BotState.Holding)
|
||||||
{
|
{
|
||||||
StopConveyer();
|
StopConveyer();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!headHasFallen || !bodyHasFallen || !legsHaveFallen) return;
|
|
||||||
transform.position = new Vector3(Mathf.LerpUnclamped(startPos.x, startPos.x + lerpDistance, normalized), startPos.y);
|
|
||||||
|
|
||||||
if (normalized >= 4)
|
|
||||||
{
|
|
||||||
game.currentBots.Remove(this);
|
|
||||||
Destroy(gameObject);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void FlyConveyer(float normalized)
|
|
||||||
{
|
|
||||||
if (botState is not BotState.Ace) return;
|
|
||||||
if (!headHasFallen || !bodyHasFallen || !legsHaveFallen) return;
|
|
||||||
transform.position = new Vector3(Mathf.LerpUnclamped(startPos.x, startPos.x + lerpDistance, normalized),
|
transform.position = new Vector3(Mathf.LerpUnclamped(startPos.x, startPos.x + lerpDistance, normalized),
|
||||||
Mathf.LerpUnclamped(startPos.y, startPos.y + flyDistance, normalized));
|
Mathf.LerpUnclamped(startPos.y, startPos.y + flyDistance, normalized));
|
||||||
if (normalized >= 4)
|
if (normalized >= 5)
|
||||||
{
|
{
|
||||||
game.currentBots.Remove(this);
|
game.currentBots.Remove(this);
|
||||||
Destroy(gameObject);
|
Destroy(gameObject);
|
||||||
|
@ -142,14 +134,23 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
|
|
||||||
public void StopConveyer()
|
public void StopConveyer()
|
||||||
{
|
{
|
||||||
if (!headHasFallen || !bodyHasFallen || !legsHaveFallen) return;
|
|
||||||
startPos = transform.position;
|
startPos = transform.position;
|
||||||
|
lerpIdleDistance = 0 - startPos.x;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Init(double beat)
|
public void StackToLeft(double beat, double length)
|
||||||
{
|
{
|
||||||
startBeat = beat;
|
if (conveyerLength <= stackDistanceRate) return;
|
||||||
conveyerStartBeat = beat + 3;
|
isStack = true;
|
||||||
|
stackBeat = beat - length;
|
||||||
|
stackLength = length;
|
||||||
|
conveyerStartBeat += stackDistanceRate;
|
||||||
|
conveyerLength -= stackDistanceRate;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Init()
|
||||||
|
{
|
||||||
|
conveyerStartBeat = startBeat + 3;
|
||||||
|
|
||||||
fullBodyMaterial = fullBody.GetComponent<SpriteRenderer>().material;
|
fullBodyMaterial = fullBody.GetComponent<SpriteRenderer>().material;
|
||||||
fullBodyMaterial.SetColor("_ColorBravo", fuelColor);
|
fullBodyMaterial.SetColor("_ColorBravo", fuelColor);
|
||||||
|
@ -168,10 +169,10 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
|
|
||||||
BeatAction.New(game, new List<BeatAction.Action>()
|
BeatAction.New(game, new List<BeatAction.Action>()
|
||||||
{
|
{
|
||||||
new BeatAction.Action(beat, delegate { legs.Play("Impact", 0, 0); legsHaveFallen = true; legsTrans.position = new Vector3(legsTrans.position.x, legsPosY); }),
|
new BeatAction.Action(startBeat, delegate { legs.Play("Impact", 0, 0); legsHaveFallen = true; legsTrans.position = new Vector3(legsTrans.position.x, legsPosY); }),
|
||||||
new BeatAction.Action(beat + 1, delegate { body.Play("Impact", 0, 0); bodyHasFallen = true; bodyTrans.position = new Vector3(bodyTrans.position.x, bodyPosY);}),
|
new BeatAction.Action(startBeat + 1, delegate { body.Play("Impact", 0, 0); bodyHasFallen = true; bodyTrans.position = new Vector3(bodyTrans.position.x, bodyPosY);}),
|
||||||
new BeatAction.Action(beat + 2, delegate { head.Play("Impact", 0, 0); headHasFallen = true; headTrans.position = new Vector3(headTrans.position.x, headPosY);}),
|
new BeatAction.Action(startBeat + 2, delegate { head.Play("Impact", 0, 0); headHasFallen = true; headTrans.position = new Vector3(headTrans.position.x, headPosY);}),
|
||||||
new BeatAction.Action(beat + 3, delegate
|
new BeatAction.Action(startBeat + 3, delegate
|
||||||
{
|
{
|
||||||
fullBody.gameObject.SetActive(true);
|
fullBody.gameObject.SetActive(true);
|
||||||
legs.gameObject.SetActive(false);
|
legs.gameObject.SetActive(false);
|
||||||
|
@ -190,9 +191,9 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
|
|
||||||
MultiSound.Play(new MultiSound.Sound[]
|
MultiSound.Play(new MultiSound.Sound[]
|
||||||
{
|
{
|
||||||
new MultiSound.Sound("fillbots/" + sizePrefix + "Fall", beat),
|
new MultiSound.Sound("fillbots/" + sizePrefix + "Fall", startBeat),
|
||||||
new MultiSound.Sound("fillbots/" + sizePrefix + "Fall", beat + 1),
|
new MultiSound.Sound("fillbots/" + sizePrefix + "Fall", startBeat + 1),
|
||||||
new MultiSound.Sound("fillbots/" + sizePrefix + "Fall", beat + 2),
|
new MultiSound.Sound("fillbots/" + sizePrefix + "Fall", startBeat + 2),
|
||||||
});
|
});
|
||||||
|
|
||||||
game.ScheduleInput(startBeat, 4, Fillbots.InputAction_BasicPress, JustHold, Empty, Empty);
|
game.ScheduleInput(startBeat, 4, Fillbots.InputAction_BasicPress, JustHold, Empty, Empty);
|
||||||
|
@ -226,16 +227,30 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
float lerpedY = Mathf.Lerp(headPosY + limbFallHeight, headPosY, normalizedBeat);
|
float lerpedY = Mathf.Lerp(headPosY + limbFallHeight, headPosY, normalizedBeat);
|
||||||
headTrans.position = new Vector3(headTrans.position.x, Mathf.Clamp(lerpedY, headPosY, headPosY + limbFallHeight));
|
headTrans.position = new Vector3(headTrans.position.x, Mathf.Clamp(lerpedY, headPosY, headPosY + limbFallHeight));
|
||||||
}
|
}
|
||||||
if (true)
|
if (isStack)
|
||||||
{
|
{
|
||||||
float normalizedBeat = cond.GetPositionFromBeat(this.conveyerStartBeat, 1);
|
float normalizedBeat = cond.GetPositionFromBeat(stackBeat, stackLength);
|
||||||
|
if (normalizedBeat >= 0 && normalizedBeat < 1)
|
||||||
|
{
|
||||||
|
MoveConveyer(normalizedBeat, lerpDistance*stackDistanceRate);
|
||||||
|
}
|
||||||
|
else if (normalizedBeat >= 1)
|
||||||
|
{
|
||||||
|
MoveConveyer(1, lerpDistance*stackDistanceRate);
|
||||||
|
StopConveyer();
|
||||||
|
isStack = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (headHasFallen && bodyHasFallen && legsHaveFallen)
|
||||||
|
{
|
||||||
|
float normalizedBeat = cond.GetPositionFromBeat(this.conveyerStartBeat, conveyerLength);
|
||||||
if (normalizedBeat >= 0)
|
if (normalizedBeat >= 0)
|
||||||
{
|
{
|
||||||
if (botState is BotState.Ace) FlyConveyer(normalizedBeat);
|
if (botState is BotState.Ace) MoveConveyer(normalizedBeat, lerpDistance, flyDistance);
|
||||||
else MoveConveyer(normalizedBeat);
|
else if (botState is BotState.Idle) MoveConveyer(normalizedBeat, lerpIdleDistance);
|
||||||
|
else MoveConveyer(normalizedBeat, lerpDistance);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (botState is BotState.Holding)
|
if (botState is BotState.Holding)
|
||||||
|
@ -295,14 +310,6 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
if (game.conveyerStartBeat == -1) game.conveyerStartBeat = this.conveyerStartBeat;
|
if (game.conveyerStartBeat == -1) game.conveyerStartBeat = this.conveyerStartBeat;
|
||||||
releaseEvent.Disable();
|
releaseEvent.Disable();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else if (botState is BotState.Ace)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
else if (botState is BotState.Just)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -330,6 +337,7 @@ namespace HeavenStudio.Games.Scripts_Fillbots
|
||||||
}
|
}
|
||||||
if (game.conveyerStartBeat != -1) game.conveyerNormalizedOffset = Conductor.instance.GetPositionFromBeat(game.conveyerStartBeat, 1);
|
if (game.conveyerStartBeat != -1) game.conveyerNormalizedOffset = Conductor.instance.GetPositionFromBeat(game.conveyerStartBeat, 1);
|
||||||
game.conveyerStartBeat = -1;
|
game.conveyerStartBeat = -1;
|
||||||
|
conveyerLength = 1;
|
||||||
transform.position = new Vector3(0, transform.position.y, 0);
|
transform.position = new Vector3(0, transform.position.y, 0);
|
||||||
botState = BotState.Holding;
|
botState = BotState.Holding;
|
||||||
fullBody.DoScaledAnimationAsync("Hold", 1f);
|
fullBody.DoScaledAnimationAsync("Hold", 1f);
|
||||||
|
|
Loading…
Reference in a new issue