base mod created

This commit is contained in:
Mohammad-Ali Minaie
2018-10-08 09:07:47 -04:00
parent 0a7700c356
commit b86dedad2f
7848 changed files with 584664 additions and 1 deletions

View File

@@ -0,0 +1,82 @@
package net.minecraft.util;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
@SideOnly(Side.CLIENT)
public class FrameTimer
{
/** An array with the last 240 frames */
private final long[] frames = new long[240];
/** The last index used when 240 frames have been set */
private int lastIndex;
/** A counter */
private int counter;
/** The next index to use in the array */
private int index;
/**
* Add a frame at the next index in the array frames
*/
public void addFrame(long runningTime)
{
this.frames[this.index] = runningTime;
++this.index;
if (this.index == 240)
{
this.index = 0;
}
if (this.counter < 240)
{
this.lastIndex = 0;
++this.counter;
}
else
{
this.lastIndex = this.parseIndex(this.index + 1);
}
}
/**
* Return a value from time and multiplier to display the lagometer
*/
public int getLagometerValue(long time, int multiplier)
{
double d0 = (double)time / 1.6666666E7D;
return (int)(d0 * (double)multiplier);
}
/**
* Return the last index used when 240 frames have been set
*/
public int getLastIndex()
{
return this.lastIndex;
}
/**
* Return the index of the next frame in the array
*/
public int getIndex()
{
return this.index;
}
/**
* Change 240 to 0
*/
public int parseIndex(int rawIndex)
{
return rawIndex % 240;
}
/**
* Return the array of frames
*/
public long[] getFrames()
{
return this.frames;
}
}