Skip to content
Snippets Groups Projects
setAppearance.cs 1.92 KiB
using UnityEngine;
using System.Collections;

// Made specifically for the player object
// This is used anywhere ingame aswell as in character creation
public class setAppearance : MonoBehaviour {

	private Sprite curFace;
	private Sprite curHead;
	private Sprite curLegs;
	private float curRed;
	private float curGreen;
	private float curBlue;

	private SpriteRenderer head;
	private SpriteRenderer face;
	private SpriteRenderer body;
	private SpriteRenderer legR; // looking AT the player right
	private SpriteRenderer legL; // looking AT the player left
	private SpriteRenderer arm;
	private SpriteRenderer forearm;


	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> ();
	}

	public void refresh(){
		face.sprite = curFace;
		head.sprite = curHead;
		legR.sprite = curLegs; // two legs, do twice
		legL.sprite = curLegs;
	}

	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;
	}
}