001 package net.minecraft.client.renderer; 002 003 import cpw.mods.fml.relauncher.Side; 004 import cpw.mods.fml.relauncher.SideOnly; 005 import java.nio.IntBuffer; 006 import org.lwjgl.opengl.GL11; 007 008 @SideOnly(Side.CLIENT) 009 public class RenderList 010 { 011 private int field_78429_a; 012 private int field_78427_b; 013 private int field_78428_c; 014 private double field_78425_d; 015 private double field_78426_e; 016 private double field_78423_f; 017 private IntBuffer field_78424_g = GLAllocation.createDirectIntBuffer(65536); 018 private boolean field_78430_h = false; 019 private boolean field_78431_i = false; 020 021 public void func_78422_a(int par1, int par2, int par3, double par4, double par6, double par8) 022 { 023 this.field_78430_h = true; 024 this.field_78424_g.clear(); 025 this.field_78429_a = par1; 026 this.field_78427_b = par2; 027 this.field_78428_c = par3; 028 this.field_78425_d = par4; 029 this.field_78426_e = par6; 030 this.field_78423_f = par8; 031 } 032 033 public boolean func_78418_a(int par1, int par2, int par3) 034 { 035 return !this.field_78430_h ? false : par1 == this.field_78429_a && par2 == this.field_78427_b && par3 == this.field_78428_c; 036 } 037 038 public void func_78420_a(int par1) 039 { 040 this.field_78424_g.put(par1); 041 042 if (this.field_78424_g.remaining() == 0) 043 { 044 this.func_78419_a(); 045 } 046 } 047 048 public void func_78419_a() 049 { 050 if (this.field_78430_h) 051 { 052 if (!this.field_78431_i) 053 { 054 this.field_78424_g.flip(); 055 this.field_78431_i = true; 056 } 057 058 if (this.field_78424_g.remaining() > 0) 059 { 060 GL11.glPushMatrix(); 061 GL11.glTranslatef((float)((double)this.field_78429_a - this.field_78425_d), (float)((double)this.field_78427_b - this.field_78426_e), (float)((double)this.field_78428_c - this.field_78423_f)); 062 GL11.glCallLists(this.field_78424_g); 063 GL11.glPopMatrix(); 064 } 065 } 066 } 067 068 public void func_78421_b() 069 { 070 this.field_78430_h = false; 071 this.field_78431_i = false; 072 } 073 }