using UnityEngine;
using System.Collections;
public class CoverFlow : MonoBehaviour {
public int numberOfPhotos = 4;
public ArrayList PhotoObjects = new ArrayList();
private Vector2 first = Vector2.zero;
private Vector2 second = Vector2.zero;
void Start(){
LoadImages();
}
void LoadImages()
{
for(int nLoop = 0; nLoop < numberOfPhotos; nLoop++)
{
GameObject PhotoObject = GameObject.CreatePrimitive(PrimitiveType.Plane);
PhotoObjects.Add(PhotoObject);
PhotoObject.transform.position = new Vector3(8 + (nLoop - numberOfPhotos / 2) * 8.2f, 0.5f, 0);
PhotoObject.transform.eulerAngles = new Vector3(-270, (nLoop - numberOfPhotos / 2) * -45, 0);
PhotoObject.renderer.material.mainTexture = Resources.Load("photo" + nLoop) as Texture2D;
}
}
void MoveObject(int dir)
{
for(int nLoop = 0; nLoop < numberOfPhotos; nLoop++)
{
GameObject PhotoObject = PhotoObjects[nLoop] as GameObject;
Vector3 movePoint = PhotoObject.transform.position;
Vector3 eulerPoint = PhotoObject.transform.eulerAngles;
movePoint.x += dir * 0.2f;
eulerPoint.y += dir * 2f;
PhotoObject.transform.position = movePoint;
PhotoObject.transform.eulerAngles = eulerPoint;
}
}
void OnGUI()
{
if(Event.current.type == EventType.MouseDown)
{
first = Event.current.mousePosition;
}
if(Event.current.type == EventType.MouseDrag)
{
second = Event.current.mousePosition;
}
if(second.x < first.x)
{
print ("Left");
MoveObject(-1);
}
else if(second.x > first.x)
{
print ("Right");
MoveObject(1);
}
first = second;
}
}