public void OnUpdate(int delta) { this.TimeDelta += delta; if (this.TimeDelta >= this.Total) { this.Finish(); return; } int num = IntMath.Lerp(this.StartPos.x, this.EndPos.x, this.TimeDelta, this.Total); int num2 = IntMath.Lerp(this.StartPos.z, this.EndPos.z, this.TimeDelta, this.Total); int num3; if (this.TimeDelta << 1 < this.Total) { num3 = IntMath.Lerp(this.StartPos.y, this.StartPos.y + this.Height, this.TimeDelta << 1, this.Total); } else { num3 = IntMath.Lerp(this.StartPos.y + this.Height, this.EndPos.y, (this.TimeDelta << 1) - this.Total, this.Total); } this.Current = new VInt3(num, num3, num2); if (this.Item != null) { this.Item.SetLocation(this.Current); } }