Trying to to get it to just to cycle once … like a cannon fire and can call on demand. If anyone out there can help me i would be thankful.
//vars for the whole sheet
var colCount : int = 4;
var rowCount : int = 4;
//vars for animation
var rowNumber : int = 0; //Zero Indexed
var colNumber : int = 0; //Zero Indexed
var totalCells : int = 4;
static var fps : int = 24;
static var timer : int = 3;
static var fpsSwitch : int = 0;
var offset : Vector2; //Maybe this should be a private var
//Update
function Update () {
if(fpsSwitch==1){
//timer=3;
timer = timer - Time.deltaTime;
print (timer);
SetSpriteAnimation(colCount,rowCount,rowNumber,colNumber,totalCells,testuremoveingUV.fps);
if(timer <= 0.0){
fpsSwitch=0;
timer=3;
}
}
}
//SetSpriteAnimation
function SetSpriteAnimation(colCount : int,rowCount : int,rowNumber : int,colNumber : int,totalCells : int,fps : int){
// Calculate index
var index : int = Time.time * fps;
// Repeat when exhausting all cells
// index = index % totalCells;
// Size of every cell
var size = Vector2 (1.0 / colCount, 1.0 / rowCount);
// split into horizontal and vertical index
var uIndex = index % colCount;
var vIndex = index / colCount;
// build offset
// v coordinate is the bottom of the image in opengl so we need to invert.
offset = Vector2 ((uIndex+colNumber) * size.x, (1.0 - size.y) - (vIndex+rowNumber) * size.y);
renderer.material.SetTextureOffset ("_MainTex", offset);
renderer.material.SetTextureScale ("_MainTex", size);
}