package mapped;

import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
import net.runelite.rs.api.RSClips;

@ObfuscatedName("kh")
public class Clips implements RSClips {
   @ObfuscatedName("at")
   boolean field3036;
   @ObfuscatedName("ah")
   public boolean rasterGouraudLowRes;
   @ObfuscatedName("ar")
   int field3051;
   @ObfuscatedName("au")
   public int field3041;
   @ObfuscatedName("aa")
   @ObfuscatedSignature(
      descriptor = "Llw;"
   )
   public TextureLoader Rasterizer3D_textureLoader;
   @ObfuscatedName("ax")
   int field3037;
   @ObfuscatedName("as")
   int field3049;
   @ObfuscatedName("ay")
   int field3050;
   @ObfuscatedName("ak")
   int field3039;
   @ObfuscatedName("aj")
   int clipNegativeMidX;
   @ObfuscatedName("am")
   int field3053;
   @ObfuscatedName("aq")
   int clipNegativeMidY;
   @ObfuscatedName("ai")
   int field3055;
   @ObfuscatedName("aw")
   int[] Rasterizer3D_rowOffsets;

   Clips() {
      this.field3036 = false;
      this.rasterGouraudLowRes = true;
      this.field3051 = 0;
      this.field3041 = 512;
      this.Rasterizer3D_rowOffsets = new int[1024];
   }

   @ObfuscatedName("at")
   void method5733_base() {
      this.field3037 = this.field3050 / 2;
      this.field3049 = this.field3039 / 2;
      this.clipNegativeMidX = -this.field3037;
      this.field3053 = this.field3050 - this.field3037;
      this.clipNegativeMidY = -this.field3049;
      this.field3055 = this.field3039 - this.field3049;
   }

   @ObfuscatedName("ah")
   void method5734_base(int var1, int var2, int var3, int var4) {
      this.field3037 = var1 - var2;
      this.field3049 = var3 - var4;
      this.clipNegativeMidX = -this.field3037;
      this.field3053 = this.field3050 - this.field3037;
      this.clipNegativeMidY = -this.field3049;
      this.field3055 = this.field3039 - this.field3049;
   }

   @ObfuscatedName("ar")
   void method5735_base(int var1, int var2, int var3) {
      this.field3036 = var1 < 0 || var1 > this.field3050 || var2 < 0 || var2 > this.field3050 || var3 < 0 || var3 > this.field3050;
   }

   public int getClipNegativeMidX() {
      return this.clipNegativeMidX;
   }

   public int getClipNegativeMidY() {
      return this.clipNegativeMidX;
   }

   public int getViewportZoom() {
      return Client.viewportZoom;
   }

   public void setViewportZoom(int var1) {
      Client.viewportZoom = var1;
   }
}
