我正在尝试创建一个健康栏,该酒吧会随着时间的推移从healthValueX过渡到healthValueY。目前,我正在像这样降低价值:
void Update ()
{
myVar-= 100 * Time.deltaTime;
slider.value = myVar;
}
此外,我还呼吁通过2种方法来管理滑块。
void addHealth()
{
myVar+=250; //Harcoded for the short question
}
void forceRemoveHealth()
{
myVar-=250; //Hardcoded for the short question
}
我喜欢Update
中的过渡效果很好。但是,当我在addHealth()
或forceRemoveHealth()
中管理巨大的变化时,我会给差距加色,然后过渡,而不是例如从300生命值直接变为50生命值。
棘手的部分是我同时做-减少每一帧,并希望根据输入来支持更大的减少。实现此目标的最佳方法是什么。
答案 0 :(得分:-1)
您可以使用Mathf.Lerp()在300和50之间进行插值,例如以下示例:
SparkSession spark = new SparkSession.Builder()
.master("local")
.appName("test")
.enableHiveSupport()
.getOrCreate();
当然,这只是为了在游戏开始时输入一个数字,您需要将其转换为函数/协程。