|
|
|
|
|
using System;
|
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x02000194 RID: 404
|
|
|
|
|
|
public class AnimationRange
|
|
|
|
|
|
{
|
|
|
|
|
|
// Token: 0x06000B90 RID: 2960 RVA: 0x0003107C File Offset: 0x0002F27C
|
|
|
|
|
|
public AnimationRange(int repeat_, float speed_, float delay_, MoveType moveType_)
|
|
|
|
|
|
{
|
|
|
|
|
|
this.repeat = repeat_;
|
|
|
|
|
|
this.speed = speed_;
|
|
|
|
|
|
this.delay = delay_;
|
|
|
|
|
|
this.moveType = moveType_;
|
|
|
|
|
|
this.active = true;
|
|
|
|
|
|
this.elapsedTime = 0f;
|
|
|
|
|
|
this.rate = 0f;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x17000189 RID: 393
|
|
|
|
|
|
// (get) Token: 0x06000B91 RID: 2961 RVA: 0x000310CC File Offset: 0x0002F2CC
|
|
|
|
|
|
public bool Active
|
|
|
|
|
|
{
|
|
|
|
|
|
get
|
|
|
|
|
|
{
|
|
|
|
|
|
return this.active;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x1700018A RID: 394
|
|
|
|
|
|
// (get) Token: 0x06000B92 RID: 2962 RVA: 0x000310D4 File Offset: 0x0002F2D4
|
|
|
|
|
|
public float Rate
|
|
|
|
|
|
{
|
|
|
|
|
|
get
|
|
|
|
|
|
{
|
|
|
|
|
|
return this.rate;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x1700018B RID: 395
|
|
|
|
|
|
// (get) Token: 0x06000B93 RID: 2963 RVA: 0x000310DC File Offset: 0x0002F2DC
|
|
|
|
|
|
// (set) Token: 0x06000B94 RID: 2964 RVA: 0x000310E4 File Offset: 0x0002F2E4
|
|
|
|
|
|
public float Speed
|
|
|
|
|
|
{
|
|
|
|
|
|
get
|
|
|
|
|
|
{
|
|
|
|
|
|
return this.speed;
|
|
|
|
|
|
}
|
|
|
|
|
|
set
|
|
|
|
|
|
{
|
|
|
|
|
|
this.speed = value;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x06000B95 RID: 2965 RVA: 0x000310F0 File Offset: 0x0002F2F0
|
|
|
|
|
|
public void Update()
|
|
|
|
|
|
{
|
|
|
|
|
|
if (!this.active)
|
|
|
|
|
|
{
|
|
|
|
|
|
return;
|
|
|
|
|
|
}
|
|
|
|
|
|
this.elapsedTime += Time.deltaTime;
|
|
|
|
|
|
if (this.repeat != 0 && this.elapsedTime > this.delay + (float)this.repeat * this.speed)
|
|
|
|
|
|
{
|
|
|
|
|
|
this.active = false;
|
|
|
|
|
|
this.rate = 1f;
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
float num = this.elapsedTime - this.delay;
|
|
|
|
|
|
if (num < 0f)
|
|
|
|
|
|
{
|
|
|
|
|
|
num = 0f;
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
while (num > this.speed)
|
|
|
|
|
|
{
|
|
|
|
|
|
num -= this.speed;
|
|
|
|
|
|
}
|
|
|
|
|
|
if (this.repeat == 0)
|
|
|
|
|
|
{
|
|
|
|
|
|
this.elapsedTime = num + this.delay;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
this.rate = this.calcRate(num);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x06000B96 RID: 2966 RVA: 0x000311C4 File Offset: 0x0002F3C4
|
|
|
|
|
|
public void Restart()
|
|
|
|
|
|
{
|
|
|
|
|
|
this.active = true;
|
|
|
|
|
|
this.elapsedTime = 0f;
|
|
|
|
|
|
this.rate = 0f;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x06000B97 RID: 2967 RVA: 0x000311E4 File Offset: 0x0002F3E4
|
|
|
|
|
|
private float calcRate(float nowTime)
|
|
|
|
|
|
{
|
|
|
|
|
|
switch (this.moveType)
|
|
|
|
|
|
{
|
|
|
|
|
|
case MoveType.OneshotLiner:
|
|
|
|
|
|
return nowTime / this.speed;
|
|
|
|
|
|
case MoveType.LoopSin000to180:
|
|
|
|
|
|
return Mathf.Sin(3.1415927f * nowTime / this.speed);
|
|
|
|
|
|
case MoveType.OneshotCos180to360:
|
|
|
|
|
|
return Mathf.Cos((nowTime / this.speed + 1f) * 3.1415927f) / 2f + 0.5f;
|
|
|
|
|
|
case MoveType.OneshotSin000to090:
|
|
|
|
|
|
return Mathf.Sin(3.1415927f * nowTime / this.speed / 2f);
|
|
|
|
|
|
default:
|
|
|
|
|
|
return nowTime / this.speed;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x04000912 RID: 2322
|
|
|
|
|
|
private int repeat;
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x04000913 RID: 2323
|
|
|
|
|
|
private float speed;
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x04000914 RID: 2324
|
|
|
|
|
|
private float delay;
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x04000915 RID: 2325
|
|
|
|
|
|
private MoveType moveType;
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x04000916 RID: 2326
|
|
|
|
|
|
private bool active;
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x04000917 RID: 2327
|
|
|
|
|
|
private float elapsedTime;
|
|
|
|
|
|
|
|
|
|
|
|
// Token: 0x04000918 RID: 2328
|
|
|
|
|
|
private float rate;
|
|
|
|
|
|
}
|