/// <summary> /// 设置眼睛 /// </summary> /// <param name="mouth"></param> /// <param name="mouthColor"></param> public void SetEye(string eye, Color eyeColor, bool isSave) { if (srBody == null) { return; } Texture texEye = CharacterBodyHandler.Instance.manager.GetEyeTexByName(eye); if (eye != null) { srBody.sharedMaterial.SetTexture("_Eye", texEye); } srBody.material.SetColor("_ColorEye", eyeColor); if (!isSave) { return; } //数据保存 if (characterBodyData == null) { characterBodyData = new CharacterBodyBean(); } if (eye != null) { characterBodyData.eye = eye; } characterBodyData.eyeColor = TypeConversionUtil.ColorToColorBean(eyeColor); }
/// <summary> /// 获取身体属性 /// </summary> /// <returns></returns> public CharacterBodyBean GetCharacterBodyData() { if (characterBodyData == null) { characterBodyData = new CharacterBodyBean(); } return(characterBodyData); }
/// <summary> /// 设置性别 /// </summary> /// <param name="sex">0未知 1男 2女 3中性</param> public void SetSex(int sex, string otherSkin) { Texture texTrunk = null; if (CheckUtil.StringIsNull(otherSkin) || otherSkin.Equals("Def")) { switch (sex) { case 0: texTrunk = CharacterBodyHandler.Instance.manager.GetTrunkTexByName("character_body_man"); break; case 1: texTrunk = CharacterBodyHandler.Instance.manager.GetTrunkTexByName("character_body_man"); break; case 2: texTrunk = CharacterBodyHandler.Instance.manager.GetTrunkTexByName("character_body_woman"); break; case 3: texTrunk = CharacterBodyHandler.Instance.manager.GetTrunkTexByName("character_body_man"); break; } if (srBody == null) { return; } if (texTrunk != null) { srBody.material.SetTexture("_Trunk", texTrunk); } srBody.material.SetTexture("_Head", CharacterBodyHandler.Instance.manager.GetTrunkTexByName("character_head")); srBody.material.SetTexture("_FootLeft", CharacterBodyHandler.Instance.manager.GetTrunkTexByName("character_body_left_foot")); srBody.material.SetTexture("_FootRight", CharacterBodyHandler.Instance.manager.GetTrunkTexByName("character_body_right_foot")); } else { if (srBody == null) { return; } srBody.material.SetTexture("_Head", CharacterBodyHandler.Instance.manager.GetTrunkTexByName(otherSkin + "_0")); srBody.material.SetTexture("_Trunk", CharacterBodyHandler.Instance.manager.GetTrunkTexByName(otherSkin + "_1")); srBody.material.SetTexture("_FootLeft", CharacterBodyHandler.Instance.manager.GetTrunkTexByName(otherSkin + "_2")); srBody.material.SetTexture("_FootRight", CharacterBodyHandler.Instance.manager.GetTrunkTexByName(otherSkin + "_3")); } //数据保存 if (characterBodyData == null) { characterBodyData = new CharacterBodyBean(); } characterBodyData.sex = sex; characterBodyData.skin = otherSkin; }
/// <summary> /// 设置角色身体属性 /// </summary> /// <param name="characterAttributesBean"></param> public void SetCharacterBody(CharacterBodyBean characterBodyData) { if (characterBodyData == null) { return; } this.characterBodyData = characterBodyData; SetSex(this.characterBodyData.sex, this.characterBodyData.skin); SetSkin(this.characterBodyData.skinColor.GetColor()); SetHair(this.characterBodyData.hair, this.characterBodyData.hairColor.GetColor()); SetEye(this.characterBodyData.eye, this.characterBodyData.eyeColor.GetColor()); SetMouth(this.characterBodyData.mouth, this.characterBodyData.mouthColor.GetColor()); SetFace(this.characterBodyData.face); }
/// <summary> /// 设置皮肤 /// </summary> /// <param name="skinColor">皮肤颜色</param> public void SetSkin(Color skinColor) { if (srBody == null) { return; } srBody.material.SetColor("_ColorHead", skinColor); srBody.material.SetColor("_ColorTrunk", skinColor); srBody.material.SetColor("_ColorFootLeft", skinColor); srBody.material.SetColor("_ColorFootRight", skinColor); //数据保存 if (characterBodyData == null) { characterBodyData = new CharacterBodyBean(); } characterBodyData.skinColor = TypeConversionUtil.ColorToColorBean(skinColor); }
/// <summary> /// 设置头发 /// </summary> /// <param name="hair"></param> /// <param name="hairColor"></param> public void SetHair(string hair, Color hairColor) { if (srBody == null) { return; } Texture texHair = CharacterBodyHandler.Instance.manager.GetHairTexByName(hair); if (hair != null) { srBody.material.SetTexture("_Hair", texHair); } srBody.material.SetColor("_ColorHair", hairColor); //数据保存 if (characterBodyData == null) { characterBodyData = new CharacterBodyBean(); } if (hair != null) { characterBodyData.hair = hair; } characterBodyData.hairColor = TypeConversionUtil.ColorToColorBean(hairColor); }
/// <summary> /// 设置嘴巴 /// </summary> /// <param name="mouth"></param> /// <param name="mouthColor"></param> public void SetMouth(string mouth, Color mouthColor) { if (srBody == null) { return; } Texture texMouth = CharacterBodyHandler.Instance.manager.GetMouthTexByName(mouth); if (mouth != null) { srBody.material.SetTexture("_Mouth", texMouth); } srBody.material.SetColor("_ColorMouth", mouthColor); //数据保存 if (characterBodyData == null) { characterBodyData = new CharacterBodyBean(); } if (mouth != null) { characterBodyData.mouth = mouth; } characterBodyData.mouthColor = TypeConversionUtil.ColorToColorBean(mouthColor); }
public void SetCharacterData(CharacterBodyBean characterBodyData, CharacterEquipBean characterEquipData) { if (characterBodyData != null) { this.characterBodyData = characterBodyData; } if (characterEquipData != null) { this.characterEquipData = characterEquipData; } SetHair(characterBodyData.hair, characterBodyData.hairColor.GetColor()); SetEye(characterBodyData.eye, characterBodyData.eyeColor.GetColor()); SetMouth(characterBodyData.mouth, characterBodyData.mouthColor.GetColor()); SetSkin(characterBodyData.skinColor.GetColor()); SetSex(characterBodyData.sex, characterBodyData.skin); if (characterEquipData.maskTFId != 0) { //幻化处理 SetMask(characterEquipData.maskTFId); } else { SetMask(characterEquipData.maskId); } if (characterEquipData.handTFId != 0) { //幻化处理 SetHand(characterEquipData.handTFId); } else { SetHand(characterEquipData.handId); } if (characterEquipData.clothesTFId != 0) { //幻化处理 SetClothes(characterEquipData.clothesTFId); } else { SetClothes(characterEquipData.clothesId); } if (characterEquipData.shoesTFId != 0) { //幻化处理 SetShoes(characterEquipData.shoesTFId); } else { SetShoes(characterEquipData.shoesId); } if (characterEquipData.hatTFId != 0) { //幻化处理 SetHat(characterEquipData.hatTFId, characterBodyData.hairColor.GetColor()); } else { SetHat(characterEquipData.hatId, characterBodyData.hairColor.GetColor()); } }
public CharacterBean(NpcInfoBean npcInfo) { baseInfo.characterType = npcInfo.npc_type; baseInfo.characterId = npcInfo.id + ""; baseInfo.titleName = npcInfo.title_name; baseInfo.name = npcInfo.name; baseInfo.priceL = npcInfo.wage_l; baseInfo.priceM = npcInfo.wage_m; baseInfo.priceS = npcInfo.wage_s; //设置最喜欢的东西 if (!CheckUtil.StringIsNull(npcInfo.love_items)) { baseInfo.listLoveItems = StringUtil.SplitBySubstringForArrayLong(npcInfo.love_items, ',').ToList(); } body = new CharacterBodyBean(); body.hair = npcInfo.hair_id; //设置头发颜色 ColorBean hairColor = new ColorBean(npcInfo.hair_color); if (hairColor != null) { body.hairColor = hairColor; } body.eye = npcInfo.eye_id; //设置眼睛颜色 ColorBean eyeColor = new ColorBean(npcInfo.eye_color); if (eyeColor != null) { body.eyeColor = eyeColor; } body.mouth = npcInfo.mouth_id; //设置嘴巴颜色 ColorBean mouthColor = new ColorBean(npcInfo.mouth_color); if (mouthColor != null) { body.mouthColor = mouthColor; } body.sex = npcInfo.sex; body.face = npcInfo.face; //设置皮肤颜色 ColorBean skinColor = new ColorBean(npcInfo.skin_color); if (skinColor != null) { body.skinColor = skinColor; } //设置装备 equips = new CharacterEquipBean(); equips.maskId = npcInfo.mask_id; equips.handId = npcInfo.hand_id; equips.hatId = npcInfo.hat_id; equips.clothesId = npcInfo.clothes_id; equips.shoesId = npcInfo.shoes_id; equips.maskId = npcInfo.mask_id; //设置属性 attributes = new CharacterAttributesBean(); attributes.loyal = npcInfo.attributes_loyal; attributes.life = npcInfo.attributes_life; attributes.cook = npcInfo.attributes_cook; attributes.speed = npcInfo.attributes_speed; attributes.account = npcInfo.attributes_account; attributes.charm = npcInfo.attributes_charm; attributes.force = npcInfo.attributes_force; attributes.lucky = npcInfo.attributes_lucky; //设置技能 attributes.listSkills = npcInfo.GetSkillIds(); npcInfoData = npcInfo; }