public void applyPlaceObject(PlaceObject obj){
_instanceName = obj.instanceName;
if (obj.hasMatrix) {
view.position = new Vector2(obj.position.x, -obj.position.y);
view.rotation = obj.rotation;
view.scaleX = obj.scaleX;
view.scaleY = obj.scaleY;
} else if (obj.hasCharacter) {
view.position = Vector2.zero;
view.rotation = 0;
view.scaleX = 1;
view.scaleY = 1;
}
view.zOrder = obj.depth;
if (obj.hasColorTransform) {
if (obj.colorTransform.add == new Color32 (0, 0, 0, 0)) {
Color viewColor = view.color;
viewColor.a = obj.colorTransform.multiply.a;
if (viewColor != obj.colorTransform.multiply){
view.color = obj.colorTransform.multiply;
}
byte alpha = (byte)(Mathf.RoundToInt(viewColor.a * 255));
if (view.opacity != alpha){
view.opacity = alpha;
}
}else{
Color viewColor = view.color;
viewColor.a = obj.colorTransform.multiply.a;
byte alpha = (byte)(Mathf.RoundToInt(viewColor.a * 255));
if (view.opacity != alpha){
view.opacity = alpha;
}
//TODO shader support for add color
}
}
else if (obj.hasCharacter){
view.color = Color.white;
view.opacity = 255;
}
}