unity之血条

本文介绍了在Unity中遇到血条进度无法继续前进的问题及解决方案。通过在代码中添加if语句,当HP值超过100时,确保血条能够正确显示。详细代码包括对外部纹理的设置和在类内部的血条绘制逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

欢迎来到我们的狗刨网,今天我要和大家分享今天我主要做的东西,虽说不多,但是我是很认真的做的。虽说代码很简单。


问题:今天坐那项目遇到了一个问题,就是血条在设置好一定的进度以后,当你达到一定的进度的时候,血条就不会再往前走。但是我设置的血条在达到一定的进度以后接着往前走。


解决办法:在自己设置的血条里面加个if语句,比如说当设置的hp的值超过100时,设置好血条的进度。


代码如下:


先在类的外部设置:

public Texture2D red;//设置2D的红色的文本

public Texture2D black;//设置的是黑色的文本

public int  HP = 0;

bool flag = false;

在类的里面开始画文本:

HP = (int)Hero.lifetime;

if (HP <=100)

{

 int blood_width = red.width * HP / 100;           

 GUI.DrawTexture(new Rect(20, 20, 100, 20), black);//画文本

 GUI.DrawTexture(new Rect(20, 20, blood_width, 20), red);

 }

else if(HP >100)

{//如果hp大于100,那么血条的宽度等于红色血条的宽度

 int blood_width = red.width ;

 GUI.DrawTexture(new Rect(20, 20, blood_width, 20), red);

 }//这里设置的血条的宽度是红色血条的宽度


欢迎来到我们的狗刨网,每天我们都会更新新的内容,欢迎来我们的狗刨网浏览。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值