mirror of
https://github.com/RHeavenStudio/HeavenStudio.git
synced 2025-06-12 15:07:39 +02:00
LumBEARjack (#734)
* Heh * prefab cat * minigame script + sounds imported * more catgrab * oops * functional objects non visual * More cat ghrab 2 * persist/stretchy logs + cue disable sound + sigh * finished cat grab * sdfsdfsdf * oops * Oops. * Freedom * More * more anime * anims almost dune * all anims * Oops. * Fixing bad animation * I have made a severe and continuous lapse in judgement * bear bop + cut + whiff visuals implemented * rest visuals implemented * added log visuals cut * accomadation for persist/stretch * Oops345 * CATS! * sorting layer oops * fix catgrab object being flipped * bug fix and huh choice * sorting layer fix * anim fixes * upscale almost * upscale done * Huge zoom in * left cat put * two main cats done * particles for main logs * Particles implemented * particle tweaks * bg cats placed * bg cats + zoom toggle * slide offset * more bg cat * new object sheet * bg cats final * more particle * particles fr * Oops * catdance update * I have created an Issue * fixed a lot of shit * Paricle fix * particle fix again im sorry * object upscale wip and more * Mistakes * freezer particle and tweaks * resorted * more particle nonsense im sorry everything hurts * freezer break implement * penguin fix * sorry * halves + upscales done + particles done * fixed particles * particle fixes 2000 * fixed cat dance and rest * snow * icon * oops232323 * Sigh * snow implementation * baby done * layering fix * actual layering fix * particle tweaks * windsnowshit * new rotation * rotation pivots set * all particles should be good now * bat fix * bg cats work better * miss implemented * layer arm fix * rotation changed * expose camera ease + spam prevention * it was just 1 beat long * custom objects * custom objects initial implementation * bomb + ball fix * new sounds * oops * More * big ball implementation 2 * Oops. * Update LBJCatMove.cs --------- Co-authored-by: ev <85412919+iloveoatmeal2022@users.noreply.github.com> Co-authored-by: ev <85412919+evdial@users.noreply.github.com>
This commit is contained in:
62
Assets/Scripts/Games/LumBEARjack/LBJBaby.cs
Normal file
62
Assets/Scripts/Games/LumBEARjack/LBJBaby.cs
Normal file
@ -0,0 +1,62 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using HeavenStudio.Util;
|
||||
using System;
|
||||
|
||||
namespace HeavenStudio.Games.Scripts_LumBEARjack
|
||||
{
|
||||
public class LBJBaby : SuperCurveObject
|
||||
{
|
||||
[Header("Sprites")]
|
||||
[SerializeField] private Sprite _flySprite;
|
||||
[SerializeField] private Sprite _standSprite;
|
||||
|
||||
[Header("Properties")]
|
||||
[SerializeField] private float _rot;
|
||||
[SerializeField] private float _addedHeight;
|
||||
[SerializeField] private float _addedY;
|
||||
|
||||
[Header("Path")]
|
||||
[SerializeField] private Path _path;
|
||||
|
||||
private SpriteRenderer _sr;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_sr = GetComponent<SpriteRenderer>();
|
||||
}
|
||||
|
||||
public void OnDrawGizmos()
|
||||
{
|
||||
DrawEditorGizmo(_path);
|
||||
}
|
||||
|
||||
public void Activate(double beat, float durationMult, int babyIndex)
|
||||
{
|
||||
gameObject.SetActive(true);
|
||||
_path.positions[0].duration *= durationMult;
|
||||
_path.positions[1].pos.y += _addedY * babyIndex;
|
||||
_path.positions[1].height += _addedHeight * babyIndex;
|
||||
_sr.sprite = _flySprite;
|
||||
_sr.sortingOrder += babyIndex;
|
||||
StartCoroutine(FlyCo(beat));
|
||||
}
|
||||
|
||||
private IEnumerator FlyCo(double beat)
|
||||
{
|
||||
float normalizedBeat = Conductor.instance.GetPositionFromBeat(beat, _path.positions[0].duration, false);
|
||||
while (normalizedBeat <= 1)
|
||||
{
|
||||
normalizedBeat = Conductor.instance.GetPositionFromBeat(beat, _path.positions[0].duration, false);
|
||||
transform.localPosition = GetPathPositionFromBeat(_path, Math.Clamp(Conductor.instance.songPositionInBeatsAsDouble, beat, beat + _path.positions[0].duration), beat);
|
||||
transform.localEulerAngles = new Vector3(0, 0, Mathf.Lerp(0, _rot, normalizedBeat));
|
||||
yield return null;
|
||||
}
|
||||
transform.localPosition = GetPathPositionFromBeat(_path, Math.Clamp(Conductor.instance.songPositionInBeatsAsDouble, beat, beat + _path.positions[0].duration), beat);
|
||||
transform.localEulerAngles = Vector3.zero;
|
||||
_sr.sprite = _standSprite;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user