using UnityEngine; using System.Collections; // Made specifically for the player object // This is used anywhere ingame aswell as in character creation // It sets the players appearance based on chosen options // If nothing chosen, goes to default public class setAppearance : MonoBehaviour { private static Sprite curFace; private static Sprite curHead; private static Sprite curLegs; private static Sprite curPot; private static float curRed = 1f; private static float curGreen = 1f; private static float curBlue = 1f; public static SpriteRenderer head; public static SpriteRenderer face; public static SpriteRenderer body; public static SpriteRenderer legR; // looking AT the player right public static SpriteRenderer legL; // looking AT the player left public static SpriteRenderer arm; public static SpriteRenderer forearm; public static SpriteRenderer pot; private static bool created; void Awake() { face = transform.FindChild("face").gameObject.GetComponent<SpriteRenderer> (); body = transform.FindChild("body").gameObject.GetComponent<SpriteRenderer> (); head = transform.FindChild("head").gameObject.GetComponent<SpriteRenderer> (); arm = transform.FindChild("arm").gameObject.GetComponent<SpriteRenderer> (); forearm = transform.FindChild("forearm").gameObject.GetComponent<SpriteRenderer> (); legR = transform.FindChild("legR").gameObject.GetComponent<SpriteRenderer> (); legL = transform.FindChild("legL").gameObject.GetComponent<SpriteRenderer> (); refresh (); addColor (curRed, curGreen, curBlue); } public void refresh(){ if (created) { // If character creation NOT skipped face.sprite = curFace; head.sprite = curHead; legR.sprite = curLegs; // two legs, do twice legL.sprite = curLegs; head.color = new Color(1, 1, 1, 1); body.color = new Color(1, 1, 1, 1); legR.color = new Color(1, 1, 1, 1); legL.color = new Color(1, 1, 1, 1); arm.color = new Color(1, 1, 1, 1); forearm.color = new Color(1, 1, 1, 1); } } public void addColor(float red, float green, float blue){ // Don't change face color curRed = red; curGreen = green; curBlue = blue; head.color = new Color(red,green,blue,1); body.color = new Color(red,green,blue,1); legR.color = new Color(red,green,blue,1); legL.color = new Color(red,green,blue,1); arm.color = new Color(red,green,blue,1); forearm.color = new Color(red,green,blue,1); } public void setFace(Sprite newFace){ curFace = newFace; } public void setHead(Sprite newHead){ curHead = newHead; } public void setLegs(Sprite newLegs){ curLegs = newLegs; } public void setPot(Sprite newPot) { curPot = newPot; } public void creationDone(){ created = true; } // methods necessary for player portrait public Sprite getHead() { return curHead; } public Sprite getFace() { return curFace; } public Color getColor() { return new Color(curRed, curGreen, curBlue, 1); // potential change } }