SurvivalShooter 是Unity的官方教程案例
受伤飙红
- 接着上一节的UI,在Hierarchy里选中Canvas右击UI->Image,新建一个image。将image拉伸到整个游戏界面一样大,将color的透明度A调成0%
- 接着我们在代码中更改透明度,让主角被攻击时这个image的透明度瞬间到100%。在PlayerHealth下加入代码:
public float flashTime = 5f;//flashTime是图片闪烁的时间值
public Color flashColor = new Color (1f, 0f, 0f, 0.1f);
//flashColor是闪烁的颜色,0.1f表示以10%的红色闪烁
bool isDamaged = false;
damageImage.color = Color.Lerp
(damageImage.color, Color.clear, flashTime*Time.deltaTime);
//这里再次用到插值的方法,让红色的image再次回归透明 - 把先前做好的image拖入到变量里
- 运行,可以看到主角被攻击时屏幕飙红。