角色击中产生变色的效果 (纯C#脚本)
来源:互联网 发布:当前时间与系统时间js 编辑:程序博客网 时间:2024/05/16 05:19
//主函数
if(true)
{
it.startShowColor(Util_string_color.getColors(Color_TYPE.RED));
}
//startShowColor
public void startShowColor(Color color)
{
isInshowRed = true;
changeColor(color);
//////(color + "color");
showStartTime = Time.time;
}
//changeColor
private void changeColor(Color color)
{
//Renderer[] rds = transform.GetComponentsInChildren<Renderer>();
SkinnedMeshRenderer[] rds = this.obj.transform.GetComponentsInChildren<SkinnedMeshRenderer>();
//逐一遍历他的子物体
foreach (SkinnedMeshRenderer r in rds)
{
//逐一遍历子物体的子材质
foreach (Material m in r.materials)
{
////(this.card.Name + " " + m.name + " " + r.name + " " + r.transform.gameObject.name);
//m.color = new Color( color.r,color.g,color.b,m.color.a);
m.SetColor("_Color", new Color(color.r, color.g, color.b, m.color.a));
//SetColor with "_Color"
}
}
}
//oldColor
public void oldColor()
{
if (isInshowRed)
{
if (Time.time > showStartTime + SHOW_TIME)
{
changeColor(color);
isInshowRed = false;
}
}
}
protected Color color;
//saveColoer
void saveColoer()
{
SkinnedMeshRenderer[] rds = this.obj.transform.GetComponentsInChildren<SkinnedMeshRenderer>();
//逐一遍历他的子物体
foreach (SkinnedMeshRenderer r in rds)
{
//逐一遍历子物体的子材质
foreach (Material m in r.materials)
{
////(this.card.Name + " " + m.name + " " + r.name + " " + r.transform.gameObject.name);
//m.color = new Color( color.r,color.g,color.b,m.color.a);
color = m.GetColor("_Color");
//SetColor with "_Color"
}
}
}
private bool isInshowRed;
private float showStartTime;
public static readonly float SHOW_TIME = 0.5f;
//获得颜色
public static Color getColors(Color_TYPE types)
{
Color tempColor = new Color();
if (types == Color_TYPE.WHITE)
{
tempColor.r = 255 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 255 / 255f;
tempColor.a = 255 / 255f;
}
if (types == Color_TYPE.WHITE_ZEON)
{
tempColor.r = 255 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 255 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.Black)
{
tempColor.r = 0 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 0 / 255f;
}
else if (types == Color_TYPE.BLUE)
{
tempColor.r = 0 / 255f;
tempColor.g = 144 / 255f;
tempColor.b = 255 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.TitleBlue)
{
tempColor.r = 0 / 255f;
tempColor.g = 183 / 255f;
tempColor.b = 238 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.YELLOW)
{
tempColor.r = 255 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.PURPLE)
{
//tempColor.r = 200 / 255f;
//tempColor.g = 0 / 255f;
//tempColor.b = 255 / 255f;
//tempColor.a = 255 / 255f;
tempColor.r = 248 / 255f;
tempColor.g = 43 / 255f;
tempColor.b = 253 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.ORANGE)
{
tempColor.r = 255 / 255f;
tempColor.g = 160 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.RED)
{
tempColor.r = 255 / 255f;
tempColor.g = 102 / 255f;
tempColor.b = 102 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.MilkYellow)
{
tempColor.r = 255 / 255f;
tempColor.g = 247 / 255f;
tempColor.b = 153 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.Green)
{
//tempColor.r = 0 / 255f;
//tempColor.g = 255 / 255f;
//tempColor.b = 0 / 255f;
//tempColor.a = 255 / 255f;
tempColor.r = 102 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 51 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.Gray)
{
tempColor.r = 125 / 255f;
tempColor.g = 125 / 255f;
tempColor.b = 125 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.BlackNoAlpha)
{
tempColor.r = 0 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 0 / 255f;
}
else if (types == Color_TYPE.HurtRedTop)
{
tempColor.r = 198 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtRedBottom)
{
tempColor.r = 255 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtGreenTop)
{
tempColor.r = 4 / 255f;
tempColor.g = 176 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtGreenBottom)
{
tempColor.r = 7 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtYellowTop)
{
tempColor.r = 222 / 255f;
tempColor.g = 137 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtYellowBottom)
{
tempColor.r = 255 / 255f;
tempColor.g = 220 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtRED)
{
tempColor.r = 255 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.GrayWhite)
{
tempColor.r = 160 / 255f;
tempColor.g = 160 / 255f;
tempColor.b = 160 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.WoodYellow)
{
tempColor.r = 254 / 255f;
tempColor.g = 204 / 255f;
tempColor.b = 176 / 255f;
tempColor.a = 255 / 255f;
}
return tempColor;
}
if(true)
{
it.startShowColor(Util_string_color.getColors(Color_TYPE.RED));
}
//startShowColor
public void startShowColor(Color color)
{
isInshowRed = true;
changeColor(color);
//////(color + "color");
showStartTime = Time.time;
}
//changeColor
private void changeColor(Color color)
{
//Renderer[] rds = transform.GetComponentsInChildren<Renderer>();
SkinnedMeshRenderer[] rds = this.obj.transform.GetComponentsInChildren<SkinnedMeshRenderer>();
//逐一遍历他的子物体
foreach (SkinnedMeshRenderer r in rds)
{
//逐一遍历子物体的子材质
foreach (Material m in r.materials)
{
////(this.card.Name + " " + m.name + " " + r.name + " " + r.transform.gameObject.name);
//m.color = new Color( color.r,color.g,color.b,m.color.a);
m.SetColor("_Color", new Color(color.r, color.g, color.b, m.color.a));
//SetColor with "_Color"
}
}
}
//oldColor
public void oldColor()
{
if (isInshowRed)
{
if (Time.time > showStartTime + SHOW_TIME)
{
changeColor(color);
isInshowRed = false;
}
}
}
protected Color color;
//saveColoer
void saveColoer()
{
SkinnedMeshRenderer[] rds = this.obj.transform.GetComponentsInChildren<SkinnedMeshRenderer>();
//逐一遍历他的子物体
foreach (SkinnedMeshRenderer r in rds)
{
//逐一遍历子物体的子材质
foreach (Material m in r.materials)
{
////(this.card.Name + " " + m.name + " " + r.name + " " + r.transform.gameObject.name);
//m.color = new Color( color.r,color.g,color.b,m.color.a);
color = m.GetColor("_Color");
//SetColor with "_Color"
}
}
}
private bool isInshowRed;
private float showStartTime;
public static readonly float SHOW_TIME = 0.5f;
//获得颜色
public static Color getColors(Color_TYPE types)
{
Color tempColor = new Color();
if (types == Color_TYPE.WHITE)
{
tempColor.r = 255 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 255 / 255f;
tempColor.a = 255 / 255f;
}
if (types == Color_TYPE.WHITE_ZEON)
{
tempColor.r = 255 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 255 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.Black)
{
tempColor.r = 0 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 0 / 255f;
}
else if (types == Color_TYPE.BLUE)
{
tempColor.r = 0 / 255f;
tempColor.g = 144 / 255f;
tempColor.b = 255 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.TitleBlue)
{
tempColor.r = 0 / 255f;
tempColor.g = 183 / 255f;
tempColor.b = 238 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.YELLOW)
{
tempColor.r = 255 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.PURPLE)
{
//tempColor.r = 200 / 255f;
//tempColor.g = 0 / 255f;
//tempColor.b = 255 / 255f;
//tempColor.a = 255 / 255f;
tempColor.r = 248 / 255f;
tempColor.g = 43 / 255f;
tempColor.b = 253 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.ORANGE)
{
tempColor.r = 255 / 255f;
tempColor.g = 160 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.RED)
{
tempColor.r = 255 / 255f;
tempColor.g = 102 / 255f;
tempColor.b = 102 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.MilkYellow)
{
tempColor.r = 255 / 255f;
tempColor.g = 247 / 255f;
tempColor.b = 153 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.Green)
{
//tempColor.r = 0 / 255f;
//tempColor.g = 255 / 255f;
//tempColor.b = 0 / 255f;
//tempColor.a = 255 / 255f;
tempColor.r = 102 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 51 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.Gray)
{
tempColor.r = 125 / 255f;
tempColor.g = 125 / 255f;
tempColor.b = 125 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.BlackNoAlpha)
{
tempColor.r = 0 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 0 / 255f;
}
else if (types == Color_TYPE.HurtRedTop)
{
tempColor.r = 198 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtRedBottom)
{
tempColor.r = 255 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtGreenTop)
{
tempColor.r = 4 / 255f;
tempColor.g = 176 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtGreenBottom)
{
tempColor.r = 7 / 255f;
tempColor.g = 255 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtYellowTop)
{
tempColor.r = 222 / 255f;
tempColor.g = 137 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtYellowBottom)
{
tempColor.r = 255 / 255f;
tempColor.g = 220 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.HurtRED)
{
tempColor.r = 255 / 255f;
tempColor.g = 0 / 255f;
tempColor.b = 0 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.GrayWhite)
{
tempColor.r = 160 / 255f;
tempColor.g = 160 / 255f;
tempColor.b = 160 / 255f;
tempColor.a = 255 / 255f;
}
else if (types == Color_TYPE.WoodYellow)
{
tempColor.r = 254 / 255f;
tempColor.g = 204 / 255f;
tempColor.b = 176 / 255f;
tempColor.a = 255 / 255f;
}
return tempColor;
}
阅读全文
0 0
- 角色击中产生变色的效果 (纯C#脚本)
- 纯脚本页面loading效果
- 纯c#编写的脚本引擎(非CodeDom)
- 纯C# 产生Code39 BarCode 图片
- ImageView点击效果(变色)
- 简单的css效果原理(一)之边框变色
- 容易击中的目标
- 表格效果(隔行变色,鼠标划上变色)
- Android Button点击效果(按钮背景变色、文字变色)
- Android Button点击效果(按钮背景变色、文字变色)
- 用js实现隔行变色的效果
- dom实现隔行变色的效果
- 实现文本的隔行变色效果
- 使用JQuery实现隔行变色的效果
- Unity3D中角色的动画脚本的编写(一)
- Unity3D中角色的动画脚本的编写(一)
- Unity3D中角色的动画脚本的编写(二)
- Unity3D中角色的动画脚本的编写(三)
- Python3学习(32)--序列和反序列化(一)
- KEIL-MDK 5 CMSIS的问题
- 分享8个超酷的HTML5相册动画应用
- configureAndRefreshWebApplicationContext
- NLP:language model(n-gram/Word2Vec/Glove)
- 角色击中产生变色的效果 (纯C#脚本)
- mtk新建工程
- Spring源码解析00:安装GitHub与Gradle
- html5/Css3 网页设计 带音乐与食品模块
- NB-IoT蜂窝窄带物联网概念
- ConfigurableWebApplicationContext wac的refresh方法
- StringBuffer类及相关内容
- 美图秀秀 v5.1.0.2 免费版
- 学习Activity启动流程