diff --git a/.AGENTS/MIGRATION_ROADMAP.md b/.AGENTS/MIGRATION_ROADMAP.md index fd0c517cf..92e65270c 100644 --- a/.AGENTS/MIGRATION_ROADMAP.md +++ b/.AGENTS/MIGRATION_ROADMAP.md @@ -21,23 +21,23 @@ Phase 3 ░░░░░░░░░░░░░░░░████ Feature pa **Goal:** Get the build system working for multi-version and merge the scripting API into platform-api. #### 0A. Composite Build Setup -- [x] Create `mc1710/` directory, move current `src/main/java/` and `src/main/resources/` into it -- [x] Create `mc1710/settings.gradle` and `mc1710/build.gradle` with RFG -- [x] Update root `settings.gradle` to use `includeBuild 'mc1710'` instead of direct source -- [x] Verify `mc1710/` builds and runs identically to current root build -- [x] Verify `platform-api` and `core` are consumed correctly via composite build dependency +- [ ] Create `mc1710/` directory, move current `src/main/java/` and `src/main/resources/` into it +- [ ] Create `mc1710/settings.gradle` and `mc1710/build.gradle` with RFG +- [ ] Update root `settings.gradle` to use `includeBuild 'mc1710'` instead of direct source +- [ ] Verify `mc1710/` builds and runs identically to current root build +- [ ] Verify `platform-api` and `core` are consumed correctly via composite build dependency **Scope:** ~5-10 files (build configs only). No Java changes. **Risk:** Medium — build system restructure can surface classpath/dependency issues. **Verification:** `./gradlew build` succeeds, `runClient` launches, existing tests pass. #### 0B. Scripting API → platform-api Merge (Phase 1 of API merge: MC-free interfaces) -- [x] Identify the ~131 MC-free interfaces in `src/api/java/` (no `net.minecraft.*` or `cpw.mods.fml.*` imports) -- [x] Move them into `platform-api/` retaining exact package structure (`noppes.npcs.api.*`) -- [x] Reconcile the 30 existing split-package shadows (platform-api already has MC-free versions of these) -- [x] Strip generic type parameters from 5 entity interfaces (`IEntity`, `IEntityLivingBase`, `IEntityLiving`, `ICustomNpc`, `IPlayer`) -- [x] Update `core/` imports if any were pointing at the old location -- [x] Update `mc1710/` to shadow the moved interfaces where MC-specific extensions are needed +- [ ] Identify the ~131 MC-free interfaces in `src/api/java/` (no `net.minecraft.*` or `cpw.mods.fml.*` imports) +- [ ] Move them into `platform-api/` retaining exact package structure (`noppes.npcs.api.*`) +- [ ] Reconcile the 30 existing split-package shadows (platform-api already has MC-free versions of these) +- [ ] Strip generic type parameters from 5 entity interfaces (`IEntity`, `IEntityLivingBase`, `IEntityLiving`, `ICustomNpc`, `IPlayer`) +- [ ] Update `core/` imports if any were pointing at the old location +- [ ] Update `mc1710/` to shadow the moved interfaces where MC-specific extensions are needed **Scope:** ~131 file moves + 30 reconciliations + 5 generics strips. **Risk:** Low-Medium — package structure preserved, no behavioral changes. @@ -45,13 +45,13 @@ Phase 3 ░░░░░░░░░░░░░░░░████ Feature pa **Dependency:** Phase 0A must be complete (mc1710 is a separate build). #### 0C. Scripting API → platform-api Merge (Phase 2: MC-contaminated interfaces) -- [x] Identify 71 MC-contaminated interfaces in `src/api/java/` -- [x] For each, replace MC type references with platform-api equivalents or Object returns -- [x] Handle event interfaces: create platform `@Cancelable` annotation (or use the planned custom annotation parser) -- [x] Refactor `AbstractNpcAPI` — split into MC-free interface in platform-api + mc1710 implementation class -- [x] Move cleaned interfaces to `platform-api/` -- [x] Drop the 5 vendored MC class stubs (`net/minecraft/` in api/) -- [x] Update all `mc1710/` code importing these interfaces +- [ ] Identify 71 MC-contaminated interfaces in `src/api/java/` +- [ ] For each, replace MC type references with platform-api equivalents or Object returns +- [ ] Handle event interfaces: create platform `@Cancelable` annotation (or use the planned custom annotation parser) +- [ ] Refactor `AbstractNpcAPI` — split into MC-free interface in platform-api + mc1710 implementation class +- [ ] Move cleaned interfaces to `platform-api/` +- [ ] Drop the 5 vendored MC class stubs (`net/minecraft/` in api/) +- [ ] Update all `mc1710/` code importing these interfaces **Scope:** 71 files, each needs individual review and MC-stripping. **Risk:** Medium-High — method signature changes ripple through 276 files in mc1710 that import the API (743 import sites). diff --git a/.AGENTS/POWERSHELL_SUPERWEAPONS.md b/.AGENTS/POWERSHELL_SUPERWEAPONS.md new file mode 100644 index 000000000..57621fa32 --- /dev/null +++ b/.AGENTS/POWERSHELL_SUPERWEAPONS.md @@ -0,0 +1,1106 @@ +# PowerShell Superweapons — Migration Toolkit + +**Created:** 2026-03-15 +**Purpose:** A library of parameterized PowerShell functions that turn multi-hundred-file migrations into single-command operations. These replace the slow read/edit/write agent tools with raw filesystem power. + +--- + +## The Problem + +Agents currently: +1. Copy files one-by-one using slow tools ❌ +2. Read each file, then edit each file individually ❌ +3. When build fails (EXPECTED — missing PA interfaces), **panic and delete everything** ❌ +4. Each tool call has ~1-2 second overhead × 500 calls = 15+ minutes of pure overhead ❌ + +**Target:** Execute an entire Wave (25+ files, 10+ symbol swaps, import surgery, new interfaces) in **ONE PowerShell command** taking **< 5 seconds**. + +--- + +## Architecture: Function Library + Params + +### Core Principle: Tools are STABLE FUNCTIONS. Agent provides PARAMS. + +The agent NEVER edits the tool source files. They are loaded once and called with parameters. + +``` +tools/migration/ + lib.ps1 — All functions in one file. Dot-source to load. +``` + +### Agent Workflow + +```powershell +# Step 1: Load the library (once per session) +. X:\projects\CustomNPC-Plus\tools\migration\lib.ps1 + +# Step 2: Call functions with params — that's it. No editing. No JSON. Just calls. +MassCopy -Pairs @( + @('mc1710/src/main/java/.../DialogController.java', 'core/src/main/java/.../DialogController.java'), + @('mc1710/src/main/java/.../Dialog.java', 'core/src/main/java/.../data/Dialog.java') +) + +NukeImports -Directory 'core/src/main/java' + +SymbolSwap -Directory 'core/src/main/java' -Swaps @( + @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), + @('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer') +) + +CreateAndPropagate ` + -FilePath 'platform-api/src/main/java/common/minecraft/IMessageService.java' ` + -Content 'package common.minecraft; ...' ` + -OldClass 'ChatComponentText' -NewClass 'IMessageService' ` + -OldImport 'net.minecraft.util.ChatComponentText' ` + -NewImport 'common.minecraft.IMessageService' ` + -TargetDir 'core/src/main/java' + +GenerateStubs -Stubs @( + @{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; + body='public static void updateDialog(Object d) {} public static void removeDialog(int id) {}' } +) + +BuildReport +``` + +**The agent's ONLY job:** decide what params to pass. The functions handle everything else. + +### Why Functions, Not Scripts + JSON + +| Approach | Problem | +|----------|---------| +| Inline PowerShell | Escaping nightmare through cmd.exe | +| Separate scripts + JSON configs | Agent has to write JSON files, manage configs, more moving parts | +| **Function library + direct params** | **Agent dot-sources once, calls functions inline. Zero overhead. Zero file management.** | + +### Key Rule + +``` +Tools are METHODS. You FEED them PARAMS. You NEVER edit their source. +``` + +--- + +## TIER 1 — Core Arsenal (Solve the fatal problems) + +### Tool 1: `Mass-Copy` — Bulk File Copier + +**Problem:** Copying 25 files one-by-one with agent tools takes 25 tool calls (50+ seconds). + +**Solution:** One PowerShell command copies ALL files for a wave, creating directories as needed. + +```powershell +# INPUT: Array of [source, dest] pairs +$copies = @( + @('mc1710/src/main/java/noppes/npcs/controllers/DialogController.java', + 'core/src/main/java/noppes/npcs/controllers/DialogController.java'), + @('mc1710/src/main/java/noppes/npcs/controllers/data/Dialog.java', + 'core/src/main/java/noppes/npcs/controllers/data/Dialog.java'), + # ... 25 more +) + +foreach ($pair in $copies) { + $src = Join-Path 'X:\projects\CustomNPC-Plus' $pair[0] + $dst = Join-Path 'X:\projects\CustomNPC-Plus' $pair[1] + $dir = Split-Path $dst -Parent + if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null } + Copy-Item $src $dst -Force + Write-Host "Copied: $($pair[0]) -> $($pair[1])" +} +``` + +**Speed:** 25 files in < 1 second. + +--- + +### Tool 2: `Symbol-Swap` — Bulk Type Replacement with Import Surgery + +**Problem:** Replacing `NBTTagCompound` → `INbt` across 25 files requires reading+editing each file = 50+ tool calls. + +**Solution:** One loop that for each file: +1. Replaces ALL symbol occurrences (class names in code) +2. Removes the old MC import line +3. Adds the new PA import line (if not already present) + +```powershell +# INPUT: Files to process + replacement map +$files = Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java' + +# Replacement map: [oldSymbol, newSymbol, oldImport, newImport] +$swaps = @( + @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), + @('NBTTagList', 'INbtList', 'net.minecraft.nbt.NBTTagList', 'noppes.npcs.api.nbt.INbtList'), + @('NBTTagString', 'INbt', 'net.minecraft.nbt.NBTTagString', ''), + @('CompressedStreamTools', 'PlatformServiceHolder.get()', 'net.minecraft.nbt.CompressedStreamTools', 'noppes.npcs.platform.PlatformServiceHolder'), + @('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer'), + @('EntityPlayerMP', 'IPlayer', 'net.minecraft.entity.player.EntityPlayerMP', 'noppes.npcs.api.entity.IPlayer'), + @('ItemStack', 'IItemStack', 'net.minecraft.item.ItemStack', 'noppes.npcs.api.item.IItemStack'), + @('EntityLivingBase', 'IEntityLivingBase', 'net.minecraft.entity.EntityLivingBase', 'noppes.npcs.api.entity.IEntityLivingBase'), + @('Entity ', 'IEntity ', 'net.minecraft.entity.Entity', 'noppes.npcs.api.entity.IEntity'), + @('EntityNPCInterface', 'ICustomNpc', 'noppes.npcs.entity.EntityNPCInterface', 'noppes.npcs.api.entity.ICustomNpc'), +) + +foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $modified = $false + + foreach ($swap in $swaps) { + $oldSym = $swap[0]; $newSym = $swap[1] + $oldImp = $swap[2]; $newImp = $swap[3] + + # Replace symbol in code body + if ($content -match [regex]::Escape($oldSym)) { + $content = $content -replace [regex]::Escape($oldSym), $newSym + $modified = $true + } + + # Remove old import + if ($oldImp -and ($content -match "import\s+$([regex]::Escape($oldImp))\s*;")) { + $content = $content -replace "import\s+$([regex]::Escape($oldImp))\s*;\r?\n", '' + $modified = $true + } + + # Add new import (if not already present and not empty) + if ($newImp -and $modified -and !($content -match "import\s+$([regex]::Escape($newImp))\s*;")) { + # Insert after package declaration + $content = $content -replace '(package\s+[^;]+;\s*\n)', "`$1`nimport $newImp;`n" + } + } + + if ($modified) { + [IO.File]::WriteAllText($f.FullName, $content) + Write-Host "Swapped: $($f.Name)" + } +} +``` + +**Speed:** 25 files × 10 replacements in < 2 seconds. + +**Key insight:** The `$swaps` array is the ENTIRE migration knowledge. An agent just needs to define the right swaps for a wave and execute. + +--- + +### Tool 3: `Git-Checkpoint` — Indestructible Progress Protection + +**Problem:** Agents panic on build failure and `git reset --hard`, destroying ALL progress. + +**Solution:** Before each wave, create a named git tag. After the wave, NEVER allow `git reset`. If something goes wrong, the checkpoint is preserved. + +```powershell +# BEFORE wave: +git tag -f "pre-wave-1" HEAD +git add core/ platform-api/ +git stash push -m "wave-1-checkpoint" -- core/ platform-api/ +git stash pop # immediately restore, but the stash entry remains as backup + +# Or simpler — just commit to a temp branch: +git checkout -b migration-wave1-wip +git add -A core/ platform-api/ +git commit -m "WIP: wave 1 migration checkpoint" +git checkout - # back to original branch, changes preserved in the wip branch +``` + +**Key rule for agents:** `NEVER run git reset, git checkout -- ., or git clean`. Period. If build fails, the wave's changes stay. Build failures are EXPECTED and NORMAL. + +--- + +### Tool 4: `Build-Reporter` — Parse Build Errors Without Panic + +**Problem:** Agent runs `./gradlew :core:compileJava`, sees 100 errors, panics, deletes everything. + +**Solution:** A tool that runs the build, captures errors, categorizes them, and outputs a structured report. The agent READS the report and fixes errors one category at a time. No panic. + +```powershell +# Run build and capture output +$output = & cmd /c "gradlew.bat :core:compileJava 2>&1" | Out-String + +# Parse errors into categories +$errors = @{} +$output -split "`n" | Where-Object { $_ -match 'error:' } | ForEach-Object { + if ($_ -match '(?[^:]+\.java):(?\d+): error: (?.+)') { + $msg = $Matches.msg.Trim() + $category = switch -Regex ($msg) { + 'cannot find symbol.*class (\w+)' { "MISSING_CLASS:$($Matches[1])" } + 'package (\S+) does not exist' { "MISSING_PACKAGE:$($Matches[1])" } + 'cannot find symbol.*method (\w+)' { "MISSING_METHOD:$($Matches[1])" } + 'incompatible types' { "TYPE_MISMATCH" } + default { "OTHER" } + } + if (!$errors[$category]) { $errors[$category] = @() } + $errors[$category] += "$($Matches.file):$($Matches.line) — $msg" + } +} + +# Report +Write-Host "`n===== BUILD ERROR REPORT =====" +Write-Host "Total errors: $(($errors.Values | ForEach-Object { $_.Count } | Measure-Object -Sum).Sum)" +foreach ($cat in $errors.Keys | Sort-Object) { + Write-Host "`n--- $cat ($($errors[$cat].Count) occurrences) ---" + $errors[$cat] | Select-Object -First 3 | ForEach-Object { Write-Host " $_" } + if ($errors[$cat].Count -gt 3) { Write-Host " ... and $($errors[$cat].Count - 3) more" } +} +``` + +**Output example:** +``` +===== BUILD ERROR REPORT ===== +Total errors: 47 + +--- MISSING_CLASS:SyncController (12 occurrences) --- + DialogController.java:45 — cannot find symbol class SyncController + QuestController.java:82 — cannot find symbol class SyncController + BankController.java:33 — cannot find symbol class SyncController + ... and 9 more + +--- MISSING_CLASS:ChatComponentText (5 occurrences) --- + FactionOptions.java:12 — cannot find symbol class ChatComponentText + ... and 4 more + +--- MISSING_PACKAGE:net.minecraft.nbt (3 occurrences) --- + ... +``` + +**Key insight:** Categorized errors tell the agent EXACTLY what to do next: +- `MISSING_CLASS:SyncController` → These references need to be removed/stubbed (SyncController stays in mc1710) +- `MISSING_PACKAGE:net.minecraft.nbt` → Missed import replacement, run Symbol-Swap again +- `MISSING_CLASS:ChatComponentText` → Need IMessageService abstraction or remove these calls + +--- + +### Tool 5: `MC-Import-Nuker` — Remove ALL MC Imports from a Directory + +**Problem:** After copying files from mc1710 → core, they still have `import net.minecraft.*` everywhere. + +**Solution:** One command removes ALL forbidden imports from all files in core/. + +```powershell +$files = Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java' + +$forbidden = @( + 'net\.minecraft\.', + 'cpw\.mods\.', + 'net\.minecraftforge\.', + 'noppes\.npcs\.entity\.', # MC entity classes + 'noppes\.npcs\.client\.', # Client-side MC code + 'noppes\.npcs\.mixin\.', # MC mixins + 'kamkeel\.npcs\.network\.', # MC networking + 'noppes\.npcs\.containers\.' # MC containers +) + +$pattern = ($forbidden | ForEach-Object { "import\s+$_" }) -join '|' + +foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $original = $content + + # Remove matching import lines + $content = [regex]::Replace($content, "(?m)^(?:$pattern)[^;]*;\s*\r?\n", '') + + if ($content -ne $original) { + [IO.File]::WriteAllText($f.FullName, $content) + Write-Host "Nuked MC imports: $($f.Name)" + } +} +``` + +**Speed:** Entire core/ directory in < 1 second. + +**Use case:** Run FIRST after mass-copy, BEFORE Symbol-Swap. This removes the worst offenders immediately. + +--- + +## TIER 2 — Force Multipliers (10x productivity) + +### Tool 6: `PA-Creator-Propagator` — Create Interface + Replace Everywhere in One Shot + +**Problem:** Creating a new PA interface (e.g., `IMessageService`) requires: +1. Write the interface file +2. Find all files in core/ that use the MC equivalent +3. Replace the MC type with the new PA type +4. Add the import everywhere +5. Remove the old import everywhere + +That's 5 operations across 20+ files = 100+ tool calls. + +**Solution:** One command that does ALL of this: + +```powershell +# INPUT: New interface content, where to write it, what MC type it replaces +$interfacePath = 'platform-api/src/main/java/common/minecraft/IMessageService.java' +$interfaceContent = @' +package common.minecraft; + +import noppes.npcs.api.entity.IPlayer; + +public interface IMessageService { + void sendMessage(IPlayer player, String message); + void sendTranslatedMessage(IPlayer player, String key, Object... args); + void broadcastMessage(String message); +} +'@ + +# Replacement targets (MC types this replaces) +$targets = @( + @('ChatComponentText', 'IMessageService', 'net.minecraft.util.ChatComponentText', 'common.minecraft.IMessageService'), + @('ChatComponentTranslation', 'IMessageService', 'net.minecraft.util.ChatComponentTranslation', 'common.minecraft.IMessageService'), + @('EnumChatFormatting', '', 'net.minecraft.util.EnumChatFormatting', ''), +) + +# Step 1: Write the interface +$fullPath = Join-Path 'X:\projects\CustomNPC-Plus' $interfacePath +$dir = Split-Path $fullPath -Parent +if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null } +[IO.File]::WriteAllText($fullPath, $interfaceContent) +Write-Host "Created: $interfacePath" + +# Step 2: Replace everywhere in core/ +$files = Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java' +foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $modified = $false + foreach ($t in $targets) { + # ... same Symbol-Swap logic as Tool 2 ... + } + if ($modified) { + [IO.File]::WriteAllText($f.FullName, $content) + Write-Host " Propagated to: $($f.Name)" + } +} +``` + +**Key insight:** The PA interface and ALL its usages across the entire codebase materialize in the SAME MILLISECOND. No "I created the interface but forgot to update 3 files" bugs. + +--- + +### Tool 7: `Shadow-Generator` — Auto-Generate mc1710 Shadow Stubs + +**Problem:** Every file moved to core/ needs an mc1710 shadow that: +- Lives in the same package but in mc1710/src/main/java/ +- Extends the core class +- Adds `implements IWhatever` if applicable +- Contains TODO stubs for MC-specific methods + +**Solution:** Auto-generate skeleton shadows: + +```powershell +# INPUT: List of core files that need shadows +$coreFiles = @( + @{ + core = 'core/src/main/java/noppes/npcs/controllers/DialogController.java' + shadow = 'mc1710/src/main/java/noppes/npcs/controllers/DialogController.java' + implements = @('IDialogHandler') + extraMethods = @( + 'public void syncUpdate(Dialog dialog) { SyncController.updateDialog(dialog); }', + 'public void syncRemove(int id) { SyncController.removeDialog(id); }' + ) + }, + # ... more +) + +foreach ($spec in $coreFiles) { + # Parse core file for class name and package + $coreContent = [IO.File]::ReadAllText((Join-Path 'X:\projects\CustomNPC-Plus' $spec.core)) + $pkg = if ($coreContent -match 'package\s+([^;]+);') { $Matches[1] } else { '' } + $cls = if ($coreContent -match 'public\s+class\s+(\w+)') { $Matches[1] } else { 'Unknown' } + + $implClause = if ($spec.implements) { " implements $($spec.implements -join ', ')" } else { '' } + $methods = ($spec.extraMethods | ForEach-Object { " $_`n" }) -join "`n" + + $shadow = @" +package $pkg; + +// MC1710 shadow — adds MC-specific behavior to core $cls +public class $cls extends $pkg.$cls$implClause { + +$methods + // TODO: Add remaining MC-specific methods +} +"@ + + $fullPath = Join-Path 'X:\projects\CustomNPC-Plus' $spec.shadow + $dir = Split-Path $fullPath -Parent + if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null } + [IO.File]::WriteAllText($fullPath, $shadow) + Write-Host "Shadow: $($spec.shadow)" +} +``` + +**Speed:** 25 shadow stubs in < 1 second. + +--- + +### Tool 8: `Stub-Generator` — Create Temporary Stubs for Missing Types + +**Problem:** Core compilation fails because `QuestController` references `PlayerQuestController` which hasn't been migrated yet. Agent panics. + +**Solution:** Generate minimal stubs for types that will be migrated LATER but are referenced NOW. These stubs live in core/ temporarily and get replaced when the real class arrives. + +```powershell +# INPUT: Missing types from Build-Reporter output +$stubs = @( + @{ pkg = 'noppes.npcs.controllers'; name = 'SyncController'; type = 'class'; + body = ' // STUB — will be replaced by real migration or stay as interface reference + public static void updateDialog(Object dialog) {} + public static void removeDialog(int id) {} + public static void updateQuest(Object quest) {} + public static void removeQuest(int id) {}' }, + + @{ pkg = 'noppes.npcs.controllers'; name = 'ScriptController'; type = 'class'; + body = ' public static boolean HasStart = false;' }, +) + +foreach ($s in $stubs) { + $pkgPath = $s.pkg -replace '\.', '/' + $dir = "X:\projects\CustomNPC-Plus\core\src\main\java\$pkgPath" + if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null } + + $content = @" +package $($s.pkg); + +/** + * TEMPORARY STUB — auto-generated for compilation. + * Will be replaced when this class is properly migrated to core. + * DO NOT add logic here. + */ +public $($s.type) $($s.name) { +$($s.body) +} +"@ + [IO.File]::WriteAllText("$dir\$($s.name).java", $content) + Write-Host "Stub: $($s.pkg).$($s.name)" +} +``` + +**Key insight:** This is the ANTI-PANIC tool. Build fails because `SyncController` doesn't exist in core? Create a stub with the methods core needs. Build passes. Agent continues. When Wave 7 properly migrates SyncController, the stub gets replaced. + +**Critical rule:** Stubs are marked with `TEMPORARY STUB` comment and contain NO logic — just enough signatures to compile. + +--- + +### Tool 9: `Static-Call-Transformer` — Rewrite Static Method Calls + +**Problem:** `CompressedStreamTools.readCompressed(file)` needs to become `PlatformServiceHolder.get().readCompressedNBT(file)`. This isn't a simple symbol swap — it's a method call transformation. + +**Solution:** Regex-based call site rewriting: + +```powershell +$files = Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java' + +# Static call transformations: [regex_pattern, replacement] +$transforms = @( + # CompressedStreamTools + @('CompressedStreamTools\.readCompressed\s*\(([^)]+)\)', + 'PlatformServiceHolder.get().readCompressedNBT($1)'), + @('CompressedStreamTools\.writeCompressed\s*\(([^,]+),\s*([^)]+)\)', + 'PlatformServiceHolder.get().writeCompressedNBT($1, $2)'), + + # CustomNpcs static accessors + @('CustomNpcs\.getWorldSaveDirectory\s*\(\)', + 'PlatformServiceHolder.get().getWorldSaveDirectory()'), + + # NBT constructors + @('new\s+NBTTagCompound\s*\(\)', 'NBT.compound()'), + @('new\s+NBTTagList\s*\(\)', 'NBT.list()'), + + # MathHelper → ValueUtil + @('MathHelper\.clamp_int\s*\(', 'ValueUtil.clampInt('), + @('MathHelper\.clamp_float\s*\(', 'ValueUtil.clampFloat('), + @('MathHelper\.clamp_double\s*\(', 'ValueUtil.clampDouble('), + + # Logging + @('LogWriter\.(info|warn|error)\s*\(', 'PlatformServiceHolder.get().log$1('), + + # SideOnly annotations + @('@SideOnly\s*\(\s*Side\.CLIENT\s*\)', '@ClientOnly'), + @('@SideOnly\s*\(\s*Side\.SERVER\s*\)', '@ServerOnly'), +) + +foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $original = $content + + foreach ($t in $transforms) { + $content = [regex]::Replace($content, $t[0], $t[1]) + } + + if ($content -ne $original) { + [IO.File]::WriteAllText($f.FullName, $content) + Write-Host "Transformed: $($f.Name)" + } +} +``` + +**Speed:** ALL static call transformations across ALL files in < 2 seconds. + +--- + +### Tool 10: `MC-Method-Quarantine` — Isolate MC-Dependent Code Blocks + +**Problem:** A class is 90% MC-free, but has 2 methods that use `EntityPlayerMP`, `MinecraftServer`, etc. Agent tries to migrate, fails on those methods, panics. + +**Solution:** Instead of failing, QUARANTINE the MC-dependent methods — comment them out with a marker so they can be moved to shadow files later. + +```powershell +# For a given file, comment out methods that contain any forbidden MC type +$file = 'X:\projects\CustomNPC-Plus\core\src\main\java\noppes\npcs\controllers\SomeController.java' +$content = [IO.File]::ReadAllText($file) + +$forbiddenTypes = @( + 'MinecraftServer', 'EntityPlayerMP', 'ICommandSender', 'ChatComponentText', + 'AxisAlignedBB', 'Vec3', 'DamageSource', 'Container', 'IInventory', + 'ForgeChunkManager', 'Minecraft', 'GuiScreen', 'Tessellator', + 'SharedMonsterAttributes', 'EntityCreature', 'EntityList' +) + +$pattern = ($forbiddenTypes | ForEach-Object { [regex]::Escape($_) }) -join '|' + +# Find method bodies containing forbidden types and wrap them +# This is a simplified approach — real implementation would use brace-counting +$lines = $content -split "`n" +$inQuarantine = $false +$braceCount = 0 +$result = @() + +# For each line, track if we're inside a method with MC types +# (Full implementation would need Java-aware parsing, but regex works for 90% of cases) +foreach ($line in $lines) { + if ($line -match "^\s*(public|private|protected)\s+.*($pattern)") { + $result += " // MC_QUARANTINE_START — move to mc1710 shadow" + $result += " // $line" + $inQuarantine = $true + $braceCount = 0 + } elseif ($inQuarantine) { + $result += " // $line" + $braceCount += ($line.ToCharArray() | Where-Object { $_ -eq '{' }).Count + $braceCount -= ($line.ToCharArray() | Where-Object { $_ -eq '}' }).Count + if ($braceCount -le 0 -and $line -match '}') { + $result += " // MC_QUARANTINE_END" + $inQuarantine = $false + } + } else { + $result += $line + } +} + +[IO.File]::WriteAllText($file, $result -join "`n") +``` + +**Key insight:** This preserves the MC code as comments. When creating the shadow file later, you just uncomment the quarantined methods and move them there. Nothing is lost. + +--- + +## TIER 3 — Wave Orchestration (The Ultimate Weapon) + +### Tool 11: `Wave-Executor` — Run an ENTIRE Wave in ONE Command + +**Problem:** Each wave requires: copy → nuke imports → swap symbols → transform calls → build check. An agent doing this manually takes 50+ responses. + +**Solution:** One mega-command that orchestrates ALL tools for a wave: + +```powershell +# ===== WAVE DEFINITION ===== +$waveName = "Wave-1" + +# Files to copy (source → dest) +$copies = @( + @('mc1710/.../DialogController.java', 'core/.../DialogController.java'), + @('mc1710/.../Dialog.java', 'core/.../data/Dialog.java'), + # ... all 25 files +) + +# Symbol swaps (old, new, oldImport, newImport) +$swaps = @( + @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), + # ... all replacements +) + +# Static call transforms +$transforms = @( + @('CompressedStreamTools\.readCompressed\(([^)]+)\)', 'PlatformServiceHolder.get().readCompressedNBT($1)'), + # ... +) + +# New PA interfaces to create (optional) +$newInterfaces = @( + @{ path = 'platform-api/.../IMessageService.java'; content = '...' }, +) + +# Stubs for missing types (optional) +$stubs = @( + @{ pkg = 'noppes.npcs.controllers'; name = 'SyncController'; body = '...' }, +) + +# ===== EXECUTION ===== + +# Phase 1: Git checkpoint +git tag -f "pre-$waveName" +Write-Host "=== Checkpoint: pre-$waveName ===" + +# Phase 2: Create new PA interfaces +foreach ($iface in $newInterfaces) { <# ... write file ... #> } +Write-Host "=== PA interfaces created ===" + +# Phase 3: Create stubs +foreach ($s in $stubs) { <# ... write stub ... #> } +Write-Host "=== Stubs created ===" + +# Phase 4: Mass copy +foreach ($pair in $copies) { <# ... copy ... #> } +Write-Host "=== Files copied ===" + +# Phase 5: Nuke MC imports +<# ... MC-Import-Nuker on core/ ... #> +Write-Host "=== MC imports nuked ===" + +# Phase 6: Symbol swap + import surgery +<# ... Symbol-Swap on core/ ... #> +Write-Host "=== Symbols swapped ===" + +# Phase 7: Static call transforms +<# ... Static-Call-Transformer on core/ ... #> +Write-Host "=== Static calls transformed ===" + +# Phase 8: Build check (report only, DON'T PANIC) +$output = & cmd /c "gradlew.bat :core:compileJava 2>&1" | Out-String +<# ... Build-Reporter ... #> +Write-Host "=== Build report generated ===" +# NEVER delete files based on build result. ONLY report. +``` + +**Speed:** ENTIRE WAVE in < 10 seconds (excluding the build check which takes ~30s). + +--- + +### Tool 12: `Dependency-Scanner` — Know What You Need Before You Start + +**Problem:** Agent starts migrating a wave, discovers halfway through that `Dialog.java` references `Availability.java` which hasn't been migrated yet. Panic. + +**Solution:** BEFORE starting a wave, scan all files to find ALL dependencies and categorize them: + +```powershell +# INPUT: Files being migrated in this wave +$waveFiles = @( + 'mc1710/src/main/java/noppes/npcs/controllers/DialogController.java', + 'mc1710/src/main/java/noppes/npcs/controllers/data/Dialog.java', + # ... +) + +# For each file, extract all import statements +$allImports = @{} +foreach ($f in $waveFiles) { + $content = [IO.File]::ReadAllText((Join-Path 'X:\projects\CustomNPC-Plus' $f)) + $imports = [regex]::Matches($content, 'import\s+([^;]+);') | ForEach-Object { $_.Groups[1].Value } + $allImports[$f] = $imports +} + +# Categorize imports +$categories = @{ + 'ALREADY_IN_CORE' = @() # Already migrated, no action needed + 'IN_THIS_WAVE' = @() # Being migrated right now + 'IN_PLATFORM_API' = @() # Already abstracted + 'MC_REPLACE_KNOWN' = @() # Has known PA replacement (from swap table) + 'MC_NEEDS_STUB' = @() # MC type, no replacement yet — needs stub or quarantine + 'MC_REMOVE' = @() # MC type that should just be removed (client-only, etc.) + 'JAVA_STDLIB' = @() # java.*, no action +} + +# Check each import against known locations +foreach ($entry in $allImports.GetEnumerator()) { + foreach ($imp in $entry.Value) { + # Categorize... (check file existence, swap table, etc.) + } +} + +# Report +Write-Host "=== DEPENDENCY SCAN for wave ===" +foreach ($cat in $categories.Keys) { + Write-Host "`n--- $cat ---" + $categories[$cat] | Select-Object -Unique | ForEach-Object { Write-Host " $_" } +} +``` + +**Key insight:** Run this BEFORE the wave. The output tells you exactly: +- Which PA interfaces to create (MC_NEEDS_STUB) +- Which stubs to generate (MC_NEEDS_STUB) +- Which imports just need swapping (MC_REPLACE_KNOWN) +- Which code to quarantine (MC_REMOVE) + +--- + +### Tool 13: `Method-Extractor` — Extract MC Methods to Shadow + +**Problem:** `PlayerData.java` is 500 lines. 400 lines are MC-free (NBT, game logic). 100 lines reference `EntityPlayer`, `IExtendedEntityProperties`, etc. Agent needs to split this. + +**Solution:** Extract methods by MC-dependency: + +```powershell +# Scan a Java file and split it into: +# 1. MC-free portion (stays in core) +# 2. MC-dependent portion (becomes shadow content) + +$file = 'X:\projects\CustomNPC-Plus\core\src\main\java\noppes\npcs\controllers\data\PlayerData.java' +$content = [IO.File]::ReadAllText($file) + +$mcTypes = @('EntityPlayer', 'EntityPlayerMP', 'MinecraftServer', 'IExtendedEntityProperties', + 'AxisAlignedBB', 'DamageSource', 'Container', 'World ', 'WorldServer') + +$lines = $content -split "`n" +$coreMethods = @() +$shadowMethods = @() +$currentMethod = @() +$inMethod = $false +$methodHasMC = $false +$braceDepth = 0 + +foreach ($line in $lines) { + if (!$inMethod -and $line -match '^\s*(public|private|protected|static)\s+') { + $inMethod = $true + $currentMethod = @($line) + $braceDepth = ($line.ToCharArray() | Where-Object { $_ -eq '{' }).Count + $braceDepth -= ($line.ToCharArray() | Where-Object { $_ -eq '}' }).Count + $methodHasMC = ($mcTypes | Where-Object { $line -match $_ }).Count -gt 0 + } elseif ($inMethod) { + $currentMethod += $line + $braceDepth += ($line.ToCharArray() | Where-Object { $_ -eq '{' }).Count + $braceDepth -= ($line.ToCharArray() | Where-Object { $_ -eq '}' }).Count + if (!$methodHasMC) { + $methodHasMC = ($mcTypes | Where-Object { $line -match $_ }).Count -gt 0 + } + if ($braceDepth -le 0) { + if ($methodHasMC) { $shadowMethods += $currentMethod } + else { $coreMethods += $currentMethod } + $inMethod = $false + $currentMethod = @() + } + } else { + $coreMethods += $line # Field/import/class declaration + } +} + +Write-Host "=== SPLIT ANALYSIS ===" +Write-Host "Core methods: $($coreMethods.Count) lines" +Write-Host "Shadow methods: $($shadowMethods.Count) lines" +Write-Host "`nShadow methods contain:" +$shadowMethods | Where-Object { $_ -match '(public|private|protected)' -and $_ -match '\(' } | + ForEach-Object { Write-Host " $_" } +``` + +--- + +### Tool 14: `Import-Deduplicator` — Clean Up Duplicate Imports + +**Problem:** After Symbol-Swap runs, a file might have duplicate imports (e.g., `import noppes.npcs.api.nbt.INbt;` appears twice because two different MC types both mapped to INbt). + +**Solution:** + +```powershell +$files = Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java' + +foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + + # Extract all import lines, deduplicate, sort + $importLines = [regex]::Matches($content, '(?m)^import\s+[^;]+;\s*$') | + ForEach-Object { $_.Value.Trim() } | Sort-Object -Unique + + # Remove all existing import lines + $noImports = [regex]::Replace($content, '(?m)^import\s+[^;]+;\s*\r?\n', '') + + # Re-insert deduplicated imports after package line + $importBlock = ($importLines -join "`n") + "`n" + $result = $noImports -replace '(package\s+[^;]+;\s*\n)\s*', "`$1`n$importBlock`n" + + if ($result -ne $content) { + [IO.File]::WriteAllText($f.FullName, $result) + Write-Host "Deduped: $($f.Name)" + } +} +``` + +--- + +### Tool 15: `Recursive-Dir-Processor` — Apply Transformations to EVERYTHING in a Directory + +**Problem:** You don't always know the exact list of files. Sometimes you just want to say "fix every .java file in core/". + +**Solution:** Every tool above already supports this, but explicitly — a wrapper that takes a directory + a set of transformations and applies them recursively: + +```powershell +# Define transformations as composable functions +function Invoke-MigrationPipeline { + param( + [string]$Directory, + [hashtable[]]$SymbolSwaps, # Tool 2 + [string[][]]$StaticTransforms, # Tool 9 + [switch]$NukeImports, # Tool 5 + [switch]$DedupeImports # Tool 14 + ) + + $files = Get-ChildItem -Recurse -Filter '*.java' -Path $Directory + + foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $original = $content + + if ($NukeImports) { <# remove MC imports #> } + foreach ($swap in $SymbolSwaps) { <# apply symbol swaps #> } + foreach ($transform in $StaticTransforms) { <# apply static call transforms #> } + if ($DedupeImports) { <# deduplicate imports #> } + + if ($content -ne $original) { + [IO.File]::WriteAllText($f.FullName, $content) + Write-Host "Pipeline: $($f.Name)" + } + } +} +``` + +--- + +## TIER 4 — Strategic Weapons (Project-level) + +### Tool 16: `Migration-Status-Dashboard` — Know Where You Are + +**Problem:** After 5 waves, nobody knows which files have been migrated, which have stubs, which are quarantined. + +**Solution:** Scan core/ and generate a status report: + +```powershell +$coreFiles = Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java' + +$status = @{ + 'CLEAN' = @() # No MC imports, no stubs, no quarantine markers + 'HAS_STUBS' = @() # Contains TEMPORARY STUB marker + 'QUARANTINED' = @() # Contains MC_QUARANTINE markers + 'MC_CONTAMINATED' = @() # Still has MC imports (shouldn't happen!) +} + +foreach ($f in $coreFiles) { + $content = [IO.File]::ReadAllText($f.FullName) + if ($content -match 'TEMPORARY STUB') { $status['HAS_STUBS'] += $f.FullName } + elseif ($content -match 'MC_QUARANTINE') { $status['QUARANTINED'] += $f.FullName } + elseif ($content -match 'import\s+net\.minecraft') { $status['MC_CONTAMINATED'] += $f.FullName } + else { $status['CLEAN'] += $f.FullName } +} + +Write-Host "=== MIGRATION STATUS ===" +foreach ($s in $status.Keys) { + Write-Host "$s : $($status[$s].Count) files" +} +``` + +--- + +### Tool 17: `Wave-Definition-Generator` — Auto-Generate Wave Definitions from the Plan + +**Problem:** Manually writing out all 25 file paths and 10 symbol swaps for each wave is tedious and error-prone. + +**Solution:** Parse the CORE_MIGRATION_PLAN.md and auto-generate the PowerShell wave definitions: + +```powershell +# Read the plan, extract file lists per wave +# (This would parse markdown tables and generate $copies, $swaps arrays) +# Could output a ready-to-execute .ps1 file per wave +``` + +**Key insight:** The migration plan already has ALL the information — file names, MC types, PA replacements. A parser can turn each Part into an executable script automatically. + +--- + +### Tool 18: `Reverse-Diff-Guard` — Prevent Agents from Destroying Progress + +**Problem:** Agent runs `git reset --hard` or deletes files from core/. Everything lost. + +**Solution:** A pre-wave snapshot + a post-wave guard that BLOCKS destructive operations: + +```powershell +# At the START of a session, count files +$baseline = (Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java').Count + +# VALIDATION (run periodically or after agent operations) +$current = (Get-ChildItem -Recurse -Filter '*.java' -Path 'X:\projects\CustomNPC-Plus\core\src\main\java').Count + +if ($current -lt $baseline) { + Write-Host "!!! ALERT: core/ lost $($baseline - $current) files! Was $baseline, now $current !!!" + Write-Host "!!! DO NOT PROCEED. Check git status. !!!" + exit 1 +} +``` + +**Integration:** Run this check BEFORE and AFTER every wave execution. If file count drops, something went catastrophically wrong. + +--- + +## COMBO ATTACKS — Composing Tools for Maximum Devastation + +### Combo 1: "The Full Wave" (Tools 3 + 1 + 5 + 2 + 9 + 8 + 4) +``` +Git Checkpoint → Mass Copy → MC Import Nuke → Symbol Swap → Static Transform → Stub Generator → Build Report +``` +One command. Entire wave. < 15 seconds + build time. + +### Combo 2: "The PA Blitz" (Tools 6 + 2) +``` +Create 3 new PA interfaces + Propagate ALL of them across core/ simultaneously +``` +One command. All interfaces created and wired. < 3 seconds. + +### Combo 3: "The Split" (Tools 13 + 7 + 1) +``` +Analyze a file for MC methods → Generate shadow with those methods → Copy MC-free portion to core +``` +One command. File perfectly split. < 1 second. + +### Combo 4: "The Recovery" (Tools 4 + 8 + 12) +``` +Build Report → Analyze missing types → Auto-generate stubs for all of them +``` +Build fails? Run this. Auto-fix. Rebuild. < 5 seconds. + +### Combo 5: "The Status Check" (Tools 16 + 18 + 4) +``` +Migration Dashboard → File Count Guard → Build Report +``` +Quick health check. < 10 seconds. + +--- + +## Implementation Priority + +| Priority | Tool | Impact | Effort | +|----------|------|--------|--------| +| 🔴 P0 | **Tool 11: Wave-Executor** | Combines everything, one command per wave | Medium (composes others) | +| 🔴 P0 | **Tool 2: Symbol-Swap** | Core of ALL transformations | Low | +| 🔴 P0 | **Tool 1: Mass-Copy** | Foundation | Trivial | +| 🔴 P0 | **Tool 4: Build-Reporter** | Prevents panic | Low | +| 🔴 P0 | **Tool 3: Git-Checkpoint** | Prevents destruction | Trivial | +| 🟡 P1 | **Tool 8: Stub-Generator** | Fixes "missing class" failures | Low | +| 🟡 P1 | **Tool 5: MC-Import-Nuker** | Quick cleanup | Trivial | +| 🟡 P1 | **Tool 9: Static-Call-Transformer** | Handles complex rewrites | Low | +| 🟡 P1 | **Tool 6: PA-Creator-Propagator** | Creates + wires interfaces atomically | Medium | +| 🟢 P2 | **Tool 12: Dependency-Scanner** | Pre-wave planning | Medium | +| 🟢 P2 | **Tool 7: Shadow-Generator** | Auto-generate mc1710 shadows | Medium | +| 🟢 P2 | **Tool 10: MC-Method-Quarantine** | Isolate MC code without deleting | Medium | +| 🟢 P2 | **Tool 14: Import-Deduplicator** | Cleanup after swaps | Trivial | +| 🔵 P3 | **Tool 16: Migration-Status-Dashboard** | Progress tracking | Low | +| 🔵 P3 | **Tool 18: Reverse-Diff-Guard** | Safety net | Trivial | +| 🔵 P3 | **Tool 13: Method-Extractor** | Help with SPLITTABLE files | High | +| 🔵 P3 | **Tool 17: Wave-Definition-Generator** | Auto-generate from plan | High | + +--- + +## The Golden Rule + +**Every tool follows one principle: NEVER DELETE. ONLY ADD AND TRANSFORM.** + +- Build fails? Report the errors. Don't delete. +- Symbol missing? Create a stub. Don't delete. +- Method has MC code? Quarantine it. Don't delete. +- Wave went wrong? Git checkpoint protects you. Don't delete. + +The agent's ONLY job is to define the inputs (file lists, swap tables, interface content) and execute. The tools handle everything else. + +--- + +## APPRAISAL — What Actually Matters + +After designing all 18 tools and thinking through how they compose, here's my honest assessment of what's truly essential vs. what's nice-to-have. + +### The 4 Functions That Change Everything + +**1. `SymbolSwap` (Tool 2) — THE weapon. Non-negotiable.** + +This is the single most important function in the entire arsenal. 95% of what this migration does is mechanical type replacement. `NBTTagCompound` → `INbt`. `EntityPlayer` → `IPlayer`. Over and over, across hundreds of files. The fact that we were doing this one file at a time with read/edit cycles was insane. SymbolSwap does it across ALL files in ALL of core/ in under 2 seconds. But the KILLER feature isn't the replacement itself — it's the **import surgery** baked in. Adding the new import, removing the old one, in the same pass. That's what makes it complete. Without this, every swap leaves behind broken imports that require a second manual pass. + +Every other function in this document is either a wrapper around SymbolSwap, a preparation step for SymbolSwap, or a cleanup step after SymbolSwap. It is the nucleus. + +**2. `CreateAndPropagate` (Tool 6) — The atomic PA-creation bomb. Equally non-negotiable.** + +I initially deprioritized this because "we only create ~4 new PA interfaces." That was WRONG. Here's what I missed: + +This isn't just for NEW interfaces. It's the universal pattern for **any time you introduce a type that replaces an MC type.** That happens CONSTANTLY: +- Create `IMessageService.java` → replace ALL `ChatComponentText` / `ChatComponentTranslation` everywhere → fix all imports. ONE CALL. +- Create `IServerService.java` → replace ALL `MinecraftServer` references → fix all imports. ONE CALL. +- Create a new method on an existing PA interface → now propagate its usage. ONE CALL. +- Even for STUBS: create `SyncController.java` stub in core → replace all references to the mc1710 version → fix imports. ONE CALL. + +The power is that **creation and propagation are ATOMIC.** The interface and ALL its usages across the entire codebase materialize in the SAME MILLISECOND. No "I created the interface but forgot to update 3 files" bugs. No "the import was added but the old import wasn't removed." It's all-or-nothing. + +This is the function that makes Waves 2-8 possible without agent meltdown. When Wave 2 needs `IMessageService`, `IServerService`, and `ITranslationService`, you fire three `CreateAndPropagate` calls and the ENTIRE core/ is updated. Done. + +**3. `GenerateStubs` (Tool 8) — The anti-panic drug. Saves every wave.** + +This is the function that would have prevented EVERY catastrophic failure we've had so far. The pattern is always the same: agent copies files, runs SymbolSwap, builds, sees `cannot find symbol: SyncController`, and panics. SyncController hasn't been migrated to core yet. It's in Wave 7. We're in Wave 1. Of COURSE it's not there. + +GenerateStubs creates a 5-line placeholder: `public class SyncController { public static void updateDialog(Object d) {} }`. Build passes. Agent moves on. When Wave 7 properly migrates SyncController, the stub gets REPLACED by the real implementation. Zero lost work. Zero panic. Zero git resets. + +This is the philosophical shift: **build failures from missing future-wave classes are not errors, they're expected.** Stubs acknowledge this reality. + +**4. `BuildReport` (Tool 4) — The translator between build output and agent action.** + +Raw Gradle output is 500 lines of noise with 47 errors buried in it. Agents can't parse this effectively. They see a wall of red and assume "everything is broken, nuke it." BuildReport categorizes those 47 errors into maybe 4 buckets: "12 files reference SyncController (create stub)", "5 files still import net.minecraft.nbt (run SymbolSwap again)", "3 files use ChatComponentText (need IMessageService PA)". + +With categorized errors, the agent knows EXACTLY what to do next. It's not 47 independent problems — it's 4 patterns, each with a known fix. The agent runs the fix, rebuilds, and the error count drops from 47 to 0. + +### The Supporting Cast (Important, Not Revolutionary) + +**`MassCopy` (Tool 1):** Obviously needed but trivial. Just `Copy-Item` in a loop. Matters because agent tools have ~1 second overhead per file, so 25 files = 25 seconds vs < 1 second. But there's nothing clever here. It's plumbing. + +**`StaticCallTransform` (Tool 9):** SymbolSwap's big brother. Handles `CompressedStreamTools.readCompressed(file)` → `PlatformServiceHolder.get().readCompressedNBT(file)` where you restructure a method call, not just rename a type. In practice, merge this INTO SymbolSwap as a second pass (regex transforms after simple replacements). + +**`NukeImports` (Tool 5):** Safety net after mass-copy. Removes all `net.minecraft.*`, `cpw.mods.*`, `net.minecraftforge.*` imports from core/. Run BEFORE SymbolSwap to clean the slate. Trivial but prevents leftover import errors. + +**`DedupeImports` (Tool 14):** Cleanup after SymbolSwap. Two MC types might map to the same PA type (e.g., `NBTTagCompound` and `NBTTagString` both → `INbt`), leaving duplicate imports. This deduplicates and sorts them. + +### What I'd Deprioritize + +**`ShadowGenerator` (Tool 7):** Shadows are too varied to template well. DialogController's shadow adds SyncController calls. BankData's shadow adds Container management. PlayerData's shadow adds IExtendedEntityProperties. There's no common pattern worth automating. Write shadows manually. + +**`MCMethodQuarantine` (Tool 10):** Clever idea, but brace-counting in regex is fragile and Java methods can be complex (lambdas, inner classes, try-catch). For the SPLITTABLE files (Waves 7-8), manual analysis is safer. + +**`WaveDefinitionGenerator` (Tool 17):** Parsing markdown tables to generate PowerShell arrays sounds cool but is brittle. Faster to just write the params by hand. + +### The Minimum Viable Toolkit (What We Must Build) + +If I had to ship with the FEWEST functions that still solve the problem: + +``` +MUST HAVE (the migration cannot succeed without these): + 1. SymbolSwap — Replace types + imports across all files + 2. CreateAndPropagate — Create PA interface + replace target everywhere atomically + 3. GenerateStubs — Create placeholder classes for future-wave dependencies + 4. BuildReport — Categorize build errors into actionable patterns + +SHOULD HAVE (saves significant time): + 5. MassCopy — Bulk file copy with directory creation + 6. NukeImports — Remove all MC imports from a directory + 7. StaticCallTransform — Regex-based method call rewriting + 8. DedupeImports — Clean up duplicate imports after swaps + +NICE TO HAVE (add later if needed): + 9. DependencyScanner — Pre-wave analysis of what's missing + 10. WaveStatus — Migration progress dashboard + 11. DiffGuard — Prevent file count regression +``` + +### Why This Changes the Game + +The old workflow: +``` +Agent copies 1 file → reads it → edits imports → edits types → reads next file → ... +→ 50 tool calls later → builds → 100 errors → PANIC → git reset → all work lost +``` + +The new workflow: +``` +. lib.ps1 +MassCopy -Pairs @(...) # 25 files in < 1 second +NukeImports -Directory 'core/...' # Clean slate in < 1 second +SymbolSwap -Directory 'core/...' -Swaps @(...) # All types fixed in < 2 seconds +CreateAndPropagate -FilePath '...' -Content '...' -OldClass '...' ... # PA created + wired +GenerateStubs -Stubs @(...) # Missing classes stubbed +BuildReport # "4 fixable patterns" not "100 scary errors" +→ Total: < 60 seconds including build. ZERO panic. ZERO deletion. +``` + +That's not a 10x improvement. That's a 100x improvement. diff --git a/tools/migration/ABSTRACTION_SUPERPOWERS.md b/tools/migration/ABSTRACTION_SUPERPOWERS.md new file mode 100644 index 000000000..84c9dc769 --- /dev/null +++ b/tools/migration/ABSTRACTION_SUPERPOWERS.md @@ -0,0 +1,737 @@ +# Abstraction Superpowers — Brainstorm + +> Design document for the next generation of migration tools. +> Goal: Intelligent, modular abstraction generation that agents feed parameters to and get production-ready Java files out. + +--- + +## The Problem + +When migrating a class to `core/`, every MC type it touches needs a platform-api abstraction. Today this means: + +1. Agent manually writes an `IFoo` interface in platform-api +2. Agent manually writes a `FooWrapper` in mc1710 that delegates to the MC class +3. Agent runs `Create-And-Propagate` to swap types across core/ + +Step 1-2 is the bottleneck. For a trivial 3-method interface it's fine. For something like `IPlayer` (100+ methods) or `IWorld` (50+ methods), it's hours of manual typing — and agents get it wrong (forgetting methods, wrong signatures, MC types leaking through). + +**What we need:** Tools that take a description of what to abstract and **generate both the interface AND the wrapper** — correct, complete, matching existing patterns, in seconds. + +--- + +## The Key Insight: You Already Have The Spec + +The project has **three existing sources** for what methods an abstraction should include: + +### Source 1: Existing Scripting API Interfaces +`src/api/java/noppes/npcs/api/` has 48+ interfaces (`IPlayer`, `IEntity`, `IWorld`, `ICustomNpc`, etc.) that are **already curated, already clean, already tested**. These are being merged into platform-api. They define exactly which methods matter and use clean types (no MC leakage except `getMCEntity() → Object`). + +**This is the 90% case.** Most abstractions already have an API interface. The tool just needs to read it and generate the wrapper. + +### Source 2: Usage in core/ +When a class in `core/` calls `player.getDisplayName()`, that tells us `getDisplayName()` must exist on `IPlayer`. Scanning core/ for method calls on MC types gives the **minimal required surface** — only what's actually needed. + +### Source 3: Agent Judgment +Sometimes you need methods that aren't in the API yet and aren't used in core/ yet, but will be needed for future waves. The agent provides these as additions. + +**Design principle:** Tools should be able to pull from ALL THREE sources, merge them, and generate from the result. + +--- + +## Approach Comparison + +### Approach A: "Interface-First" (No Blueprint File) + +The interface **IS** the spec. Agent writes (or copies) the interface, then a tool reads it and generates the wrapper. + +``` +Agent writes IFoo.java → Generate-Wrapper reads it → FooWrapper.java +``` + +**Pros:** +- No intermediate format. The interface is the single source of truth. +- Agent can use normal Java IDE features to author the interface. +- The interface is production code, not a throwaway artifact. + +**Cons:** +- No way to express MC-side metadata (which MC method to delegate to, type conversions). +- Works great when method names match 1:1. Falls apart for `getName()` → `getCommandSenderName()`. +- Can't express wrapper constructor patterns or field types. + +**Verdict:** Great for simple cases. Needs an escape hatch for complex mappings. + +--- + +### Approach B: "Blueprint JSON" (Intermediate Spec File) + +A JSON file describes both sides: the interface and the wrapper, including method mappings and type conversions. + +``` +Blueprint.json → Generate-Interface → IFoo.java +Blueprint.json → Generate-Wrapper → FooWrapper.java +``` + +**Pros:** +- Full control over everything: method names, mappings, type transforms, custom delegation bodies. +- Can be auto-generated from existing API interfaces or usage scans. +- Agent can review/edit the JSON before generation. +- Composable: merge multiple blueprints. + +**Cons:** +- Another file format to maintain. +- JSON is verbose for Java method signatures. +- Risk of the blueprint drifting from the actual generated code. + +**Verdict:** Most powerful, but most complex. Best for large abstractions (IPlayer, IWorld). + +--- + +### Approach C: "Hybrid" (Interface + Mapping File) + +Agent writes the interface. A small mapping file handles the exceptions. Tool reads both. + +``` +IFoo.java + foo-mappings.json → Generate-Wrapper → FooWrapper.java +``` + +The mapping file only contains **overrides** — methods where the MC delegation isn't obvious: + +```json +{ + "mcClass": "net.minecraft.entity.player.EntityPlayerMP", + "fieldName": "player", + "extends": "ScriptLivingBase", + "mappings": { + "getName": { "delegate": "getCommandSenderName" }, + "getHeldItem": { "transform": "return NpcAPI.getIItemStack({{mc}}.getCurrentEquippedItem())" }, + "getPosition": { "transform": "return new ScriptBlockPos({{mc}}.posX, {{mc}}.posY, {{mc}}.posZ)" } + } +} +``` + +Methods NOT in the mapping file get default delegation: `return this.player.methodName(args)`. + +**Pros:** +- Interface is real production code (not generated artifact). +- Mapping file is tiny — only the exceptions. +- 80% of methods need no mapping (same name, same types). +- Easy for agents to reason about. + +**Cons:** +- Two files to coordinate (but the mapping file is optional — only needed for non-trivial cases). +- Still need to decide where mapping files live (probably `tools/migration/mappings/`). + +**Verdict:** Best balance of power and simplicity. Recommended. + +--- + +### Approach D: "Usage-Driven Auto-Generation" + +Fully automated: scan core/ for what methods are called on `EntityPlayer`, auto-generate `IPlayer` with exactly those methods, auto-generate `PlayerWrapper`. + +``` +Scan-Usage "EntityPlayer" → auto-generate IPlayer + PlayerWrapper +``` + +**Pros:** +- Zero manual work. Truly a "superpower." +- Minimal surface area — only abstracts what's needed. + +**Cons:** +- Method signatures can't always be inferred from call sites (especially return types). +- Generates a minimal interface that may be too narrow for future use. +- Can't handle type conversions without a mapping. +- Fragile: regex-based Java parsing will miss edge cases. + +**Verdict:** Great as a DISCOVERY tool (tells you what to abstract), poor as a GENERATION tool on its own. Best combined with Approach B or C. + +--- + +## Recommended Architecture: Hybrid Pipeline + +``` +┌─────────────────────────────────────────────────────┐ +│ DISCOVERY PHASE │ +│ │ +│ Scan-Usage.ps1 ──→ usage-report.json │ +│ Extract-API.ps1 ──→ methods from existing API │ +│ Agent knowledge ──→ additional methods │ +│ │ +│ ↓ ↓ ↓ (all feed into) ↓ ↓ ↓ │ +├─────────────────────────────────────────────────────┤ +│ GENERATION PHASE │ +│ │ +│ Generate-Interface.ps1 │ +│ Input: name, package, extends, method list │ +│ Output: IFoo.java in platform-api/ │ +│ │ +│ Generate-Wrapper.ps1 │ +│ Input: interface file + optional mappings │ +│ Output: FooWrapper.java in mc1710/ │ +│ │ +├─────────────────────────────────────────────────────┤ +│ PROPAGATION PHASE │ +│ │ +│ Symbol-Swap.ps1 (existing) │ +│ Create-And-Propagate.ps1 (existing) │ +│ Dedupe-Imports.ps1 (existing) │ +│ Build-Report.ps1 (existing) │ +└─────────────────────────────────────────────────────┘ +``` + +--- + +## Proposed Tool Suite + +### Tool 1: `Scan-Usage.ps1` — Usage Discovery + +Scans a directory for all method calls on a given type. Answers: "What do we actually need to abstract?" + +```powershell +Scan-Usage -Type "EntityPlayer" -SearchDir "core/src/main/java" +``` + +**Output:** JSON report + +```json +{ + "type": "EntityPlayer", + "searchDir": "core/src/main/java", + "methodCalls": [ + { + "method": "getCommandSenderName", + "files": ["controllers/DialogController.java", "controllers/QuestController.java"], + "count": 4 + }, + { + "method": "getUniqueID", + "files": ["controllers/PlayerDataController.java"], + "count": 2 + }, + { + "method": "inventory", + "files": ["controllers/data/QuestData.java"], + "count": 1, + "note": "field access" + } + ], + "fieldAccesses": [ + { "field": "posX", "files": ["..."], "count": 3 }, + { "field": "worldObj", "files": ["..."], "count": 7 } + ], + "totalFiles": 12, + "totalReferences": 34 +} +``` + +**How it works:** +- Regex scan for `variableName.methodName(` where variable type matches the target +- Also catches field access patterns +- Groups by method name, counts occurrences, lists files +- Agent uses this to decide the whitelist for Generate-Interface + +--- + +### Tool 2: `Extract-API.ps1` — Blueprint from Existing Interface + +Reads an existing Java interface file and extracts a structured method list. + +```powershell +Extract-API -Source "src/api/java/noppes/npcs/api/entity/IPlayer.java" +# OR +Extract-API -Source "platform-api/src/main/java/noppes/npcs/api/entity/IEntity.java" +``` + +**Output:** JSON method list + +```json +{ + "source": "platform-api/.../IEntity.java", + "name": "IEntity", + "package": "noppes.npcs.api.entity", + "extends": [], + "imports": ["noppes.npcs.api.INbt", "noppes.npcs.api.IPos", "..."], + "methods": [ + { + "name": "getX", + "returns": "double", + "params": [], + "javadoc": "The entity's x position." + }, + { + "name": "setPosition", + "returns": "void", + "params": [ + { "type": "double", "name": "x" }, + { "type": "double", "name": "y" }, + { "type": "double", "name": "z" } + ], + "javadoc": "Sets the entity's position to the specified coordinates." + }, + { + "name": "dropItem", + "returns": "void", + "params": [{ "type": "IItemStack", "name": "item" }], + "javadoc": "Causes the entity to drop the given item." + } + ], + "methodCount": 64 +} +``` + +**Use cases:** +- Feed into Generate-Wrapper to create the mc1710 delegation class +- Compare with Scan-Usage output to find gaps +- Subset: `Extract-API -Source "..." -Whitelist "getX,getY,getZ,setPosition,getPosition"` + +--- + +### Tool 3: `Generate-Interface.ps1` — Interface Generator + +Takes a method specification and generates a production-ready Java interface file. + +```powershell +Generate-Interface ` + -Name "IPlayer" ` + -Package "noppes.npcs.api.entity" ` + -Extends @("IEntityLivingBase") ` + -Methods $methodList ` + -OutputDir "platform-api/src/main/java/noppes/npcs/api/entity" +``` + +**The `$methodList` format** (PowerShell array of hashtables): + +```powershell +$methodList = @( + @{ name='getName'; returns='String'; params=@() }, + @{ name='getHealth'; returns='float'; params=@() }, + @{ name='setHealth'; returns='void'; params=@( + @{ type='float'; name='health' } + )}, + @{ name='getHeldItem'; returns='IItemStack'; params=@() }, + @{ name='setPosition'; returns='void'; params=@( + @{ type='double'; name='x' }, + @{ type='double'; name='y' }, + @{ type='double'; name='z' } + )}, + @{ name='dropItem'; returns='void'; params=@( + @{ type='IItemStack'; name='item' } + )} +) +``` + +**Generated output:** Clean Java interface with: +- Correct package declaration +- Auto-detected imports (scans return types and param types for known PA types) +- Javadoc on each method (if provided in the hashtable) +- Proper formatting matching existing platform-api style + +**Why this matters:** Agent provides a LIST OF METHODS and gets a file. No hand-writing boilerplate. The tool handles package, imports, formatting. + +--- + +### Tool 4: `Generate-Wrapper.ps1` — Wrapper Skeleton Generator + +Takes an interface file (or method list) and generates a wrapper class that delegates to an MC object. + +```powershell +Generate-Wrapper ` + -Interface "platform-api/src/main/java/noppes/npcs/api/entity/IPlayer.java" ` + -MCClass "net.minecraft.entity.player.EntityPlayerMP" ` + -WrapperName "PlayerWrapper" ` + -WrapperPackage "noppes.npcs.scripted.entity" ` + -FieldName "player" ` + -ExtendsWrapper "ScriptLivingBase" ` + -Mappings $mappings ` + -OutputDir "mc1710/src/main/java/noppes/npcs/scripted/entity" +``` + +**The `$mappings` parameter** (optional — only for non-trivial delegations): + +```powershell +$mappings = @{ + # Method name maps to different MC method + 'getName' = @{ delegate = 'getCommandSenderName' } + + # Method needs type conversion + 'getHeldItem' = @{ transform = 'return NpcAPI.getIItemStack(this.player.getCurrentEquippedItem())' } + + # Method needs complex body + 'getPosition' = @{ body = @' + return new ScriptBlockPos(this.player.posX, this.player.posY, this.player.posZ); +'@ } + + # Method should be a TODO (too complex for auto-gen) + 'getSurroundingEntities' = @{ todo = 'Needs entity list wrapping with NpcAPI.getIEntity()' } +} +``` + +**Generated output:** + +```java +package noppes.npcs.scripted.entity; + +import net.minecraft.entity.player.EntityPlayerMP; +import noppes.npcs.api.entity.IPlayer; +// ... auto-detected imports ... + +public class PlayerWrapper extends ScriptLivingBase implements IPlayer { + + public PlayerWrapper(EntityPlayerMP player) { + super(player); + } + + @Override + public String getName() { + return this.entity.getCommandSenderName(); // from mappings + } + + @Override + public float getHealth() { + return this.entity.getHealth(); // auto-delegated (same name) + } + + @Override + public void setHealth(float health) { + this.entity.setHealth(health); // auto-delegated + } + + @Override + public IItemStack getHeldItem() { + return NpcAPI.getIItemStack(this.player.getCurrentEquippedItem()); // from mappings + } + + @Override + public void setPosition(double x, double y, double z) { + this.entity.setPosition(x, y, z); // auto-delegated + } + + @Override + public IEntity[] getSurroundingEntities(int range, int type) { + // TODO: Needs entity list wrapping with NpcAPI.getIEntity() + throw new UnsupportedOperationException("Not yet implemented"); + } +} +``` + +**Delegation rules (applied automatically):** +1. If method name is in `$mappings` with `delegate` → use that MC method name +2. If method name is in `$mappings` with `transform` → use verbatim, substituting `{{mc}}` for field name +3. If method name is in `$mappings` with `body` → paste the body verbatim +4. If method name is in `$mappings` with `todo` → generate TODO + throw +5. **Default:** `return this.{field}.{methodName}({args})` (same name, pass args through) + +--- + +### Tool 5: `Dependency-Map.ps1` — Migration Readiness Scanner + +Answers: "What MC types does this class depend on, and which ones already have PA abstractions?" + +```powershell +Dependency-Map -File "mc1710/src/main/java/noppes/npcs/controllers/QuestController.java" +``` + +**Output:** + +``` +╔══════════════════════════════════════════════════════════════════╗ +║ Dependency Map: QuestController.java ║ +╠══════════════════════════════════════════════════════════════════╣ +║ ║ +║ ✅ ABSTRACTED (ready to swap) ║ +║ ├── NBTTagCompound → INbt (platform-api) ║ +║ ├── EntityPlayer → IPlayer (platform-api) ║ +║ ├── EntityPlayerMP → IPlayer (platform-api) ║ +║ └── ItemStack → IItemStack (platform-api) ║ +║ ║ +║ ⚠️ NEEDS ABSTRACTION (create before migrating) ║ +║ ├── MinecraftServer (3 usages: getPlayerList, getWorld) ║ +║ └── ChatComponentText (1 usage: new ChatComponentText(msg)) ║ +║ ║ +║ 🔴 MC-COUPLED (cannot abstract — stays in mc1710 shadow) ║ +║ ├── EntityNPCInterface (extends Entity) ║ +║ └── WorldServer (needs IWorld extension) ║ +║ ║ +║ 📊 Migration readiness: 4/8 types abstracted (50%) ║ +║ 📋 Blocking: 2 types need new PA interfaces ║ +╚══════════════════════════════════════════════════════════════════╝ +``` + +**How it works:** +- Parse imports from the file +- Check each import against known PA type mappings (hardcoded table + scan of platform-api/) +- Categorize: abstracted / needs abstraction / mc-coupled +- For "needs abstraction" — scan the file for what methods are called on that type + +**Use case:** Before starting a migration wave, run this on every file you plan to migrate. It tells you what PA interfaces to create first. + +--- + +### Tool 6: `Batch-Plan.ps1` — Migration Wave Planner + +Given a list of files to migrate, computes the optimal order and required abstractions. + +```powershell +Batch-Plan -Files @( + 'noppes/npcs/controllers/QuestController.java', + 'noppes/npcs/controllers/PlayerQuestController.java', + 'noppes/npcs/quests/QuestItem.java', + 'noppes/npcs/quests/QuestKill.java' +) +``` + +**Output:** + +``` +═══ Migration Wave Plan ═══ + +Step 1: Create PA Interfaces + └── IServerService (needed by: QuestController) + └── IMessageService (needed by: QuestController, PlayerQuestController) + +Step 2: Copy Files (ordered by dependency depth) + 1. QuestItem.java (0 internal deps) + 2. QuestKill.java (0 internal deps) + 3. PlayerQuestController (depends on: QuestItem, QuestKill) + 4. QuestController.java (depends on: PlayerQuestController, QuestItem, QuestKill) + +Step 3: Stubs Needed + └── SyncController.updateQuest() + └── ScriptController.HasStart + └── EventHooks (empty) + +Step 4: Swaps + └── NBTTagCompound → INbt (12 occurrences across 4 files) + └── EntityPlayer → IPlayer (8 occurrences across 3 files) + └── MinecraftServer → IServerService (3 occurrences in 1 file) +``` + +--- + +## Type Mapping Registry + +Instead of hardcoding type mappings in every script, maintain a single registry file: `tools/migration/type-registry.json` + +```json +{ + "mappings": [ + { + "mcType": "NBTTagCompound", + "mcImport": "net.minecraft.nbt.NBTTagCompound", + "paType": "INbt", + "paImport": "noppes.npcs.api.INbt", + "status": "done" + }, + { + "mcType": "EntityPlayer", + "mcImport": "net.minecraft.entity.player.EntityPlayer", + "paType": "IPlayer", + "paImport": "noppes.npcs.api.entity.IPlayer", + "wrapMethod": "PlatformServiceHolder.get().wrapPlayer({{mc}})", + "status": "done" + }, + { + "mcType": "World", + "mcImport": "net.minecraft.world.World", + "paType": "IWorld", + "paImport": "noppes.npcs.api.IWorld", + "wrapMethod": "PlatformServiceHolder.get().wrapWorld({{mc}})", + "status": "done" + }, + { + "mcType": "MinecraftServer", + "mcImport": "net.minecraft.server.MinecraftServer", + "paType": null, + "paImport": null, + "status": "not-abstracted" + } + ] +} +``` + +**All tools read from this registry:** +- `Dependency-Map` uses it to categorize deps as abstracted/not-abstracted +- `Generate-Wrapper` uses `wrapMethod` to auto-generate type conversions in delegation +- `Symbol-Swap` can auto-generate `-Swaps` from the registry +- `Batch-Plan` knows which abstractions already exist + +**When you create a new PA interface, you add ONE entry to the registry.** Every tool instantly knows about it. + +--- + +## Workflow Examples + +### Workflow A: Migrate a controller that needs a new abstraction + +```powershell +# 1. Check what QuestController depends on +Dependency-Map -File "mc1710/.../QuestController.java" +# Output: MinecraftServer needs abstraction, 3 usages + +# 2. Scan what methods are called on MinecraftServer in core/ +Scan-Usage -Type "MinecraftServer" -SearchDir "core/src/main/java" +# Output: getPlayerList() x2, getEntityWorld() x1 + +# 3. Generate the interface (agent provides method list based on scan) +Generate-Interface -Name "IServerService" -Package "noppes.npcs.api.handler" ` + -Methods @( + @{ name='getPlayerList'; returns='Object'; params=@() }, + @{ name='getEntityWorld'; returns='IWorld'; params=@( + @{ type='int'; name='dimensionId' } + )} + ) ` + -OutputDir "platform-api/.../noppes/npcs/api/handler" + +# 4. Generate the wrapper +Generate-Wrapper -Interface "platform-api/.../IServerService.java" ` + -MCClass "net.minecraft.server.MinecraftServer" ` + -WrapperName "ServerServiceWrapper" ` + -OutputDir "mc1710/.../noppes/npcs/scripted" + +# 5. Propagate (existing tools) +Symbol-Swap -Directory "core/src/main/java" -Swaps @( + ,@('MinecraftServer', 'IServerService', 'net.minecraft.server.MinecraftServer', 'noppes.npcs.api.handler.IServerService') +) +``` + +### Workflow B: Port an existing API interface to platform-api + +```powershell +# 1. Extract method list from existing scripting API interface +$api = Extract-API -Source "src/api/java/noppes/npcs/api/entity/IEntityLiving.java" +# Output: JSON with 15 methods, all clean types + +# 2. The interface already exists in platform-api (merged) — just generate the wrapper +Generate-Wrapper ` + -Interface "platform-api/.../IEntityLiving.java" ` + -MCClass "net.minecraft.entity.EntityLiving" ` + -WrapperName "ScriptLiving" ` + -FieldName "entity" ` + -ExtendsWrapper "ScriptLivingBase" ` + -Mappings @{ + 'getNavigator' = @{ todo = 'Need INavigator abstraction first' } + } ` + -OutputDir "mc1710/.../noppes/npcs/scripted/entity" +``` + +### Workflow C: Full automated wave + +```powershell +# 1. Plan the wave +$plan = Batch-Plan -Files @('controllers/QuestController.java', '...') + +# 2. Create missing abstractions (from plan output) +foreach ($needed in $plan.NewAbstractions) { + # Agent provides method lists + Generate-Interface -Name $needed.Name -Package $needed.Package -Methods $needed.Methods + Generate-Wrapper -Interface $needed.InterfacePath -MCClass $needed.MCClass ... +} + +# 3. Copy, nuke, swap, stub, build (existing pipeline) +Copy-Recursive -Sources $plan.Files -AllowPaths $plan.AllowPaths +Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes $standardPrefixes +Symbol-Swap -Directory 'core/src/main/java' -Swaps $plan.Swaps +Generate-Stubs -Stubs $plan.Stubs +Dedupe-Imports -Directory 'core/src/main/java' +Build-Report -GradleTask ':core:compileJava' +``` + +--- + +## Open Questions + +### Q1: Where do wrappers live? + +Current pattern: `mc1710/src/main/java/noppes/npcs/scripted/entity/ScriptEntity.java` +AGENTS.md says new wrappers should be `[Thing]Wrapper` (e.g., `PlayerWrapper`). + +**Options:** +- A) Keep `scripted/entity/` path, use `ScriptXxx` naming (consistent with existing) +- B) New `mc1710/.../noppes/npcs/wrapper/` package, use `XxxWrapper` naming (cleaner) +- C) Agent decides per-case + +### Q2: How deep should auto-delegation go? + +For `IItemStack getHeldItem()`, the wrapper needs: +```java +return NpcAPI.getIItemStack(this.player.getCurrentEquippedItem()); +``` + +Should Generate-Wrapper auto-detect that `IItemStack` return type needs wrapping (from the type registry), or should the agent always provide a mapping for type-converting methods? + +**Options:** +- A) Auto-detect from type registry (smart but fragile) +- B) Agent always provides mappings for non-primitive returns (explicit but verbose) +- C) Auto-detect with agent override (best of both, most complex to implement) + +### Q3: Should we generate Javadoc? + +Existing platform-api interfaces have full Javadoc on every method (see IEntity.java — 604 lines for 64 methods). Should the generator: +- A) Copy Javadoc from source API interface if available +- B) Generate placeholder `/** TODO */` +- C) Skip Javadoc (agent adds later) + +### Q4: Composable method "trait packs"? + +Instead of listing methods individually, define reusable groups: + +```powershell +$POSITION_METHODS = @( + @{ name='getX'; returns='double'; params=@() }, + @{ name='getY'; returns='double'; params=@() }, + @{ name='getZ'; returns='double'; params=@() }, + @{ name='setPosition'; returns='void'; params=@( + @{ type='double'; name='x' }, + @{ type='double'; name='y' }, + @{ type='double'; name='z' } + )} +) + +$HEALTH_METHODS = @( + @{ name='getHealth'; returns='float'; params=@() }, + @{ name='setHealth'; returns='void'; params=@(@{ type='float'; name='health' }) }, + @{ name='isAlive'; returns='boolean'; params=@() } +) + +# Compose: +Generate-Interface -Name "IEntityLiving" -Methods ($POSITION_METHODS + $HEALTH_METHODS + $AI_METHODS) +``` + +Worth the complexity? Or is copy-paste fine since agents handle the composition? + +### Q5: Registry format — JSON or PowerShell? + +**JSON:** Universal, agents can read/edit it, but needs `ConvertFrom-Json` parsing. +**PowerShell .psd1:** Native hashtable, zero parsing, but agents are less familiar with the format. +**PowerShell .ps1 with variables:** Dot-source it, variables are live. Most ergonomic for tool consumption. + +Leaning toward **JSON** — it's the lingua franca that agents handle best, and `ConvertFrom-Json` is one line. + +--- + +## Priority Order for Implementation + +| Priority | Tool | Effort | Impact | +|----------|------|--------|--------| +| **P0** | `Generate-Wrapper.ps1` | High | Eliminates the #1 bottleneck (hand-writing wrapper delegation) | +| **P0** | `Generate-Interface.ps1` | Medium | Fast interface scaffolding from method lists | +| **P1** | `Extract-API.ps1` | Medium | Reads existing API interfaces into method lists for Generate-Wrapper | +| **P1** | Type Registry (`type-registry.json`) | Low | Central truth for all MC→PA mappings | +| **P2** | `Dependency-Map.ps1` | Medium | Pre-migration readiness check | +| **P2** | `Scan-Usage.ps1` | Medium | Discovery of minimal abstraction surface | +| **P3** | `Batch-Plan.ps1` | High | Full wave planning (can be done manually for now) | + +**P0 tools unlock 10x speed.** An agent that can say "generate wrapper for IPlayer against EntityPlayerMP" and get 80%+ correct code in one command — that's the superpower. + +--- + +## Summary + +The breakthrough idea: **the interface IS the spec, the type registry knows the conversions, and Generate-Wrapper reads both to produce 80-95% correct delegation code.** The remaining 5-20% (complex type conversions, multi-step logic) is handled by explicit mappings the agent provides. + +No JSON blueprint files needed for most cases. The pipeline: +1. Interface exists (copied from API or generated) → **source of truth** +2. Type registry maps MC types to PA types → **auto-conversion** +3. Generate-Wrapper reads interface + registry + optional mappings → **wrapper skeleton** +4. Agent reviews, fills TODOs, fixes edge cases → **production code** +5. Existing tools propagate → **done** diff --git a/tools/migration/AGENTS.md b/tools/migration/AGENTS.md new file mode 100644 index 000000000..f8b93ee90 --- /dev/null +++ b/tools/migration/AGENTS.md @@ -0,0 +1,2386 @@ +# AGENTS.md -- Migration Toolkit + +> **READ THIS BEFORE TOUCHING ANY MIGRATION WORK.** +> These tools exist because agents kept panicking on build failures and deleting progress. The toolkit eliminates the need for slow read/edit/write cycles on individual files. One command = hundreds of file modifications in seconds. + +--- + +## Golden Rules + +1. **Tools are METHODS. You FEED them PARAMS. You NEVER edit their source. Unless they are broken or the core logic needs modification.** +2. **Every tool follows one principle: NEVER DELETE. ONLY ADD AND TRANSFORM.** +3. **Build failures after migration are EXPECTED. Do NOT panic. Do NOT delete files. Run `Build-Report` and fix categorically.** +4. **Always load tools from `.ps1` files using dot-sourcing (`. path/to/Script.ps1`). NEVER paste inline PowerShell through bash -- `$` escaping will destroy regex capture groups.** + +--- + +## Quick Reference Card + +| Tool | Type | Purpose | Key Params | +|------|------|---------|------------| +| **`pa_batch.py`** | **Python** | **BATCH create 5+ Java files from JSON manifest (auto-derives paths)** | **`manifest.json`, `--force`, `--dry-run`** | +| **`pa_editor.py`** | **Python** | **BATCH edit existing files from JSON manifest (atomic insert/delete/replace)** | **`manifest.json`, `--force`, `--dry-run`, `--backup`** | +| `Copy-Recursive` | PS | Copy files from mc1710 to core, recursively following imports | `-Sources`, `-AllowPaths` | +| `Symbol-Swap` | PS | Replace type names + import surgery across all files | `-Directory`, `-Swaps` | +| `Nuke-Imports` | PS | Remove all forbidden imports from a directory | `-Directory`, `-ForbiddenPrefixes` | +| `Create-And-Propagate` | PS | Create a PA interface AND replace its MC equivalent everywhere atomically | `-FilePath`, `-Content`, `-TargetDirectory`, `-Swaps` | +| `Generate-Stubs` | PS | Create temporary placeholder classes so the build passes | `-Stubs`, `-TargetRoot` | +| `Build-Report` | PS | Run Gradle build and categorize errors into actionable buckets | `-GradleTask`, `-MaxSamples` | +| `Static-Transform` | PS | Regex-based method call rewriting (structural changes) | `-Directory`, `-Transforms` | +| `Dedupe-Imports` | PS | Remove duplicate imports and sort | `-Directory` | + +**PS tools auto-detect `$ProjectRoot` from script location. Override with `-ProjectRoot`.** +**`pa_batch.py` auto-detects `ProjectRoot` by walking up for `settings.gradle`. Override with `--project-root`.** + +--- + +## How to Load Tools + +Always write a `.ps1` script file, then execute it with `-File`. This avoids bash `$` escaping issues that destroy regex capture groups like `$1`, `$2`. + +```powershell +# In your .ps1 script file, load tools at the top: +. (Join-Path $PSScriptRoot 'Copy-Recursive.ps1') +. (Join-Path $PSScriptRoot 'Symbol-Swap.ps1') +. (Join-Path $PSScriptRoot 'Nuke-Imports.ps1') +. (Join-Path $PSScriptRoot 'Create-And-Propagate.ps1') +. (Join-Path $PSScriptRoot 'Generate-Stubs.ps1') +. (Join-Path $PSScriptRoot 'Build-Report.ps1') +. (Join-Path $PSScriptRoot 'Static-Transform.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +``` + +Then execute: +```bash +powershell -ExecutionPolicy Bypass -File "tools/migration/my_wave.ps1" +``` + +**WARNING: Single-swap calls require `,@()` syntax to prevent PowerShell array flattening:** +```powershell +# WRONG -- PowerShell flattens @(@('A','B','C','D')) into @('A','B','C','D') +Symbol-Swap -Directory '...' -Swaps @( @('Old', 'New', 'old.imp', 'new.imp') ) + +# CORRECT -- comma prefix forces array-of-arrays +Symbol-Swap -Directory '...' -Swaps @( ,@('Old', 'New', 'old.imp', 'new.imp') ) + +# Also correct -- 2+ entries don't need the comma trick +Symbol-Swap -Directory '...' -Swaps @( + @('OldA', 'NewA', 'old.a', 'new.a'), + @('OldB', 'NewB', 'old.b', 'new.b') +) +``` + +The tools have built-in guards for this, but it is still good practice. + +--- + +## Tool Reference + +### 0. PA Batch Writer (Python) + +**File:** `pa_batch.py` +**Purpose:** Batch-create 5+ Java source files from a single JSON manifest. Auto-derives file paths from package + class name. **THE PRIMARY FILE CREATION TOOL — use this instead of individual `write` calls.** + +#### Usage + +```bash +# Dry run (preview, no write) +python tools/migration/pa_batch.py manifest.json --dry-run + +# Actually create files +python tools/migration/pa_batch.py manifest.json --force + +# Machine-readable JSON output +python tools/migration/pa_batch.py manifest.json --dry-run --json + +# Override project root +python tools/migration/pa_batch.py manifest.json --force --project-root /path/to/project +``` + +#### Manifest Format (JSON) + +```json +{ + "root": "platform-api/src/main/java", + "files": [ + { + "content": "package noppes.npcs.api.entity;\n\npublic interface IFoo extends IBar {\n String getName();\n}\n" + }, + { + "root": "core/src/main/java", + "content": "package noppes.npcs.util;\n\npublic class Util {\n public static int clamp(int v, int min, int max) { ... }\n}\n" + }, + { + "path": "src/main/java/noppes/npcs/wrappers/FooWrapper.java", + "content": "package noppes.npcs.wrappers;\n\npublic class FooWrapper implements IFoo { ... }\n" + } + ] +} +``` + +#### Key Behaviors + +**Auto-path derivation (KILLER FEATURE):** +- Parses `package noppes.npcs.api.entity;` from content +- Parses `public interface IFoo` from content +- Derives path: `platform-api/src/main/java/noppes/npcs/api/entity/IFoo.java` +- **No need to specify path for 90% of files** — just write raw Java, tool figures out where it goes + +**Per-file root override:** +- Global `root` applies to all files unless overridden +- Each file entry can specify its own `root` (for mixed batches: PA interfaces + core + mc1710) + +**Explicit path override:** +- If `path` is provided in entry, it takes precedence over auto-derivation +- Useful for non-standard locations or when auto-derivation would fail + +**Safety defaults:** +- **No overwrite by default** — existing files are skipped, listed in SKIPPED summary +- Use `--force` to overwrite existing files +- Directories auto-created (`mkdir -p`) + +**Validation:** +- Warns if explicit `path` doesn't match the package declaration (detects typos) +- Errors if `content` field missing +- Errors if no `package` declaration found (and no explicit `path`) +- Errors if no `public class/interface/enum/@interface` found (and no explicit `path`) + +#### CLI Options + +| Option | Default | Description | +|--------|---------|-------------| +| `manifest` | (required) | Path to JSON manifest file | +| `--force` | false | Overwrite existing files (default: skip) | +| `--dry-run` | false | Preview what would be created without writing | +| `--json` | false | Machine-readable JSON output (instead of human-readable) | +| `--project-root` | auto-detect | Project root (auto-walks up for `settings.gradle`) | + +#### Output + +**Human-readable (default):** +``` +PA Batch Writer — 20 files processed + CREATED: 12 files + SKIPPED: 8 files (already exist) + ERRORS: 0 + +Created: + platform-api/src/main/java/noppes/npcs/api/entity/IFoo.java + platform-api/src/main/java/noppes/npcs/api/entity/IBar.java + ... +``` + +**Machine-readable (`--json`):** +```json +{ + "status": "success", + "created_count": 12, + "skipped_count": 8, + "error_count": 0, + "created": ["platform-api/src/main/java/noppes/npcs/api/entity/IFoo.java", ...], + "skipped": ["platform-api/src/main/java/noppes/npcs/api/nbt/INbt.java", ...], + "errors": [], + "warnings": [] +} +``` + +#### Performance Impact + +**Batch creation eliminates tool call overhead:** +- Creating 30 files individually = 30+ tool calls = 60-90s overhead +- Creating 30 files via pa_batch.py = 2 tool calls (write manifest + execute) = 4-6s overhead +- **Result: 15x fewer round trips for large batches** + +**Token usage:** +- Both approaches output the same Java source code +- Difference: batching reduces tool-call ceremony overhead, not token generation + +#### Example Workflow + +```bash +# Step 1: Compose manifest with PA interfaces + wrappers +cat > tools/migration/_my_wave_manifest.json << 'EOF' +{ + "root": "platform-api/src/main/java", + "files": [ + { "content": "package noppes.npcs.api.entity; public interface IFoo { ... }" }, + { "content": "package noppes.npcs.api.entity; public interface IBar { ... }" }, + { "root": "src/main/java", "content": "package noppes.npcs.wrappers; public class FooWrapper { ... }" } + ] +} +EOF + +# Step 2: Dry-run to verify paths +python tools/migration/pa_batch.py tools/migration/_my_wave_manifest.json --dry-run + +# Step 3: Create files +python tools/migration/pa_batch.py tools/migration/_my_wave_manifest.json --force + +# Step 4: Propagate (existing tools) +Symbol-Swap -Directory 'core/src/main/java' -Swaps @( + @('Foo', 'IFoo', 'net.minecraft.foo.Foo', 'noppes.npcs.api.entity.IFoo') +) +``` + +#### When to Use pa_batch.py vs Create-And-Propagate + +| Scenario | Tool | +|----------|------| +| Creating 1 PA interface + propagating references everywhere | `Create-And-Propagate` | +| Creating 5+ PA interfaces / classes in one batch | **`pa_batch.py`** | +| Need to compose files programmatically (from code generation) | **`pa_batch.py`** (write manifest, run tool) | +| Creating mixed batch (PA interfaces + core + mc1710 wrappers) | **`pa_batch.py`** (per-file root override) | +| One-off single file | Direct `write` tool (slower but acceptable) | + +--- + +### 0b. PA Batch Editor (Python) + +**File:** `pa_editor.py` +**Purpose:** Batch-edit existing files from a single JSON manifest with atomic transaction semantics. **THE PRIMARY FILE EDITING TOOL — use this for surgical multi-file edits instead of individual `edit` calls.** + +Companion to `pa_batch.py` (which creates files). This tool EDITS existing files. + +#### Usage + +```bash +# Dry run — preview diffs without writing (default if --force not given) +python tools/migration/pa_editor.py manifest.json --dry-run + +# Actually apply edits +python tools/migration/pa_editor.py manifest.json --force + +# Apply with backups (.bak files) +python tools/migration/pa_editor.py manifest.json --force --backup + +# Machine-readable JSON output +python tools/migration/pa_editor.py manifest.json --dry-run --json + +# Override project root +python tools/migration/pa_editor.py manifest.json --force --project-root /path/to/project +``` + +#### Manifest Format (JSON) + +```json +{ + "edits": [ + { + "path": "core/src/main/java/noppes/npcs/controllers/FactionController.java", + "ops": [ + { + "op": "replace", + "target": {"pattern": "^import net\\.minecraft\\.nbt\\.NBTTagCompound;"}, + "content": "import noppes.npcs.api.nbt.INbt;" + }, + { + "op": "insert", + "target": {"pattern": "^public class"}, + "position": "before", + "content": "/** Migrated to PA types. */" + }, + { + "op": "delete", + "target": {"line": 5}, + "count": 2 + } + ] + } + ] +} +``` + +#### Operations + +| Op | Required Fields | Description | +|----|----------------|-------------| +| `replace` | `target`, `content` | Replace `count` lines (default 1) starting at target with `content` | +| `insert` | `target`, `content`, `position` | Insert `content` before/after target line. `position`: `"before"` or `"after"` (default: `"after"`) | +| `delete` | `target` | Delete `count` lines (default 1) starting at target | + +#### Targeting + +Each op has a `target` that resolves to a line. Two modes: + +| Mode | Format | Description | +|------|--------|-------------| +| Line number | `{"line": 10}` | 1-based line number | +| Regex pattern | `{"pattern": "^import.*NBT"}` | First line matching regex | +| Pattern + occurrence | `{"pattern": "^import", "occurrence": 3}` | 3rd match of pattern | + +#### Content Format + +`content` accepts either a string or a list of strings: + +```json +{"content": "single line replacement"} +{"content": "line 1\nline 2\nline 3"} +{"content": ["line 1", "line 2", "line 3"]} +``` + +#### Atomicity + +**All-or-nothing transaction model:** +1. PHASE 1: Validate all edit specs structurally (no I/O) +2. PHASE 2: Read all files, resolve all targets, compute all results in memory +3. PHASE 3: Write all files (or rollback on any failure) + +If ANY edit in ANY file fails validation or application, NO files are written. This prevents partial state where some files are edited and others aren't. + +#### CLI Options + +| Option | Default | Description | +|--------|---------|-------------| +| `manifest` | (required) | Path to JSON edit manifest file | +| `--force` | false | Actually write edits (default: dry-run) | +| `--dry-run` | true | Show diffs without writing | +| `--backup` | false | Save `.bak` copies before editing | +| `--json` | false | Machine-readable JSON output | +| `--project-root` | auto-detect | Project root override | + +#### Output + +**Human-readable (default):** +``` +PA Batch Editor — 4 files, 14 edits + MODIFIED: 4 files + ERRORS: 0 + +Modified: + core/.../FactionController.java (3 edits) + core/.../Faction.java (4 edits) +``` + +**Dry-run shows unified diffs:** +``` +--- a/core/.../FactionController.java ++++ b/core/.../FactionController.java +@@ -3,4 +3,4 @@ +-import net.minecraft.nbt.NBTTagCompound; ++import noppes.npcs.api.nbt.INbt; +``` + +#### When to Use pa_editor.py vs Other Tools + +| Scenario | Tool | +|----------|------| +| Bulk import replacement across all files in a directory | `Symbol-Swap` (PS) | +| Surgical edits to specific lines in specific files | **`pa_editor.py`** | +| Adding `implements` clauses, inserting methods, deleting blocks | **`pa_editor.py`** | +| Post-migration fixups (add imports, change signatures) | **`pa_editor.py`** | +| Creating new files from scratch | `pa_batch.py` | +| Regex-based method call rewriting | `Static-Transform` (PS) | + +#### Example: Post-Migration Import + Signature Fixup + +```json +{ + "edits": [ + { + "path": "core/src/main/java/noppes/npcs/controllers/QuestController.java", + "ops": [ + {"op": "replace", "target": {"pattern": "^import net\\.minecraft\\.nbt\\.NBTTagCompound;"}, "content": "import noppes.npcs.api.nbt.INbt;"}, + {"op": "replace", "target": {"pattern": "^import net\\.minecraft\\.nbt\\.NBTTagList;"}, "content": "import noppes.npcs.api.nbt.INbtList;"}, + {"op": "insert", "target": {"pattern": "^import noppes.npcs.api.nbt.INbt;"}, "position": "after", "content": "import noppes.npcs.api.nbt.NBT;"}, + {"op": "replace", "target": {"pattern": "public void loadData\\(NBTTagCompound"}, "content": " public void loadData(INbt nbt) {"} + ] + }, + { + "path": "core/src/main/java/noppes/npcs/controllers/DialogController.java", + "ops": [ + {"op": "replace", "target": {"pattern": "^import net\\.minecraft\\.nbt\\.NBTTagCompound;"}, "content": "import noppes.npcs.api.nbt.INbt;"}, + {"op": "insert", "target": {"pattern": "public class DialogController"}, "position": "before", "content": "/** Migrated to core — platform-api types only. */"} + ] + } + ] +} +``` + +#### Testing + +```bash +python tools/migration/test_pa_editor.py +``` + +17 tests covering: replace, insert before/after, delete, multi-line insert, multi-line replace, dry-run, JSON output, backup, file-not-found, line-out-of-bounds, pattern-not-found, invalid-regex, atomicity (partial failure rollback), multi-file, occurrence targeting, list content, structural validation. + +--- + +### 1. Copy-Recursive + +**File:** `Copy-Recursive.ps1` +**Purpose:** Recursively copy Java files from mc1710 to core, chasing import dependencies. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-Sources` | Yes | -- | Array of relative paths within McRoot (e.g., `'noppes/npcs/controllers/DialogController.java'`) | +| `-AllowPaths` | No | `@()` (all allowed) | WHITELIST of path prefixes. Only files under these paths get recursively copied. Initial `-Sources` always bypass this. | +| `-McRoot` | No | `'mc1710/src/main/java'` | Source root | +| `-CoreRoot` | No | `'core/src/main/java'` | Destination root | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | +| `-ForbiddenPrefixes` | No | java/MC/Forge/etc | Import prefixes never followed | + +**Behavior:** +- Initial `-Sources` files are ALWAYS copied regardless of whitelist. +- Files already in core are NOT re-copied but ARE scanned for transitive deps. +- Handles wildcard imports (`import foo.bar.*`), static imports, inner class imports. +- Returns array of copied file paths. + +**Output summary shows:** COPIED, EXISTS, skipped(not whitelisted), not found. + +--- + +### 2. Symbol-Swap + +**File:** `Symbol-Swap.ps1` +**Purpose:** Bulk replace type names and perform import surgery across all .java files in a directory. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-Directory` | Yes | -- | Relative path to scan recursively | +| `-Swaps` | Yes | -- | Array of `@(oldSymbol, newSymbol, oldImport, newImport)` | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | + +**Swap tuple format:** `@('OldTypeName', 'NewTypeName', 'old.full.qualified.Import', 'new.full.qualified.Import')` +- Use `''` (empty string) for newImport if no import should be added. + +**Operation order (critical for correctness):** +1. Remove ALL old imports first +2. Replace symbols in code body +3. Add new imports + +This prevents the bug where replacing `NBTTagCompound` with `INbt` inside an import line makes the import unremovable. + +--- + +### 3. Nuke-Imports + +**File:** `Nuke-Imports.ps1` +**Purpose:** Remove ALL imports matching forbidden prefixes from every .java file in a directory. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-Directory` | Yes | -- | Relative path to scan recursively | +| `-ForbiddenPrefixes` | Yes | -- | Array of dotted package prefixes (e.g., `'net.minecraft.'`) | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | + +**When to use:** Run AFTER Copy-Recursive, BEFORE Symbol-Swap. Removes the worst offenders so Symbol-Swap only handles the semantic replacements. + +--- + +### 4. Create-And-Propagate + +**File:** `Create-And-Propagate.ps1` +**Purpose:** Atomically create a new file (usually a PA interface) AND replace its MC equivalent everywhere. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-FilePath` | Yes | -- | Relative path for the new file (e.g., `'platform-api/src/main/java/.../IFoo.java'`) | +| `-Content` | Yes | -- | Full Java source content of the new file | +| `-TargetDirectory` | Yes | -- | Relative path to scan for propagation | +| `-Swaps` | Yes | -- | Same format as Symbol-Swap | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | + +**Why this exists:** Creation and propagation are ATOMIC. The interface and ALL its usages appear in the same millisecond. No "I created the interface but forgot to update 3 files" bugs. + +--- + +### 5. Generate-Stubs + +**File:** `Generate-Stubs.ps1` +**Purpose:** Create temporary placeholder classes so the build passes despite missing future-wave dependencies. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-Stubs` | Yes | -- | Array of hashtables with `pkg`, `name`, `type`, `body` | +| `-TargetRoot` | No | `'core/src/main/java'` | Where stubs are created | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | + +**Stub hashtable format:** +```powershell +@{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; + body=' public static void updateDialog(Object d) {} + public static void removeDialog(int id) {}' } +``` + +**Safety:** Will NOT overwrite real classes (only replaces files containing the `TEMPORARY STUB` marker). + +--- + +### 6. Build-Report + +**File:** `Build-Report.ps1` +**Purpose:** Run a Gradle build and categorize errors into actionable buckets instead of dumping raw output. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-GradleTask` | Yes | -- | Gradle task to run (e.g., `':core:compileJava'`) | +| `-MaxSamples` | No | `3` | Max errors shown per category | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | + +**Error categories:** +- `MISSING_CLASS:ClassName` -- needs stub or PA interface +- `MISSING_PACKAGE:pkg.name` -- leftover MC import, run Nuke-Imports or Symbol-Swap +- `MISSING_METHOD:methodName` -- method signature changed or missing +- `MISSING_VARIABLE:varName` -- field not migrated +- `MISSING_SYMBOL` -- general "cannot find symbol" (multi-line Gradle output) +- `TYPE_MISMATCH` -- incompatible types, usually needs a cast or wrapper +- `BAD_ARGS` -- wrong argument types to a method +- `ABSTRACT_VIOLATION` -- class doesn't implement required abstract methods +- `UNCHECKED_EXCEPTION` -- missing throws/try-catch +- `OTHER` -- anything uncategorized + +**Returns:** `@{ Success = $bool; Errors = $hashtable; Total = $int }` + +--- + +### 7. Static-Transform + +**File:** `Static-Transform.ps1` +**Purpose:** Regex-based method call rewriting. For structural changes that Symbol-Swap can't handle. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-Directory` | Yes | -- | Relative path to scan recursively | +| `-Transforms` | Yes | -- | Array of `@(regexPattern, replacement)` | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | + +**Transform tuple format:** `@('regex\.pattern\(([^)]+)\)', 'replacement($1)')` +- Uses .NET regex syntax. `$1`, `$2` etc. are capture group references in the replacement. + +--- + +### 8. Dedupe-Imports + +**File:** `Dedupe-Imports.ps1` +**Purpose:** Remove duplicate import lines and sort. Run LAST, after all other tools. + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `-Directory` | Yes | -- | Relative path to scan recursively | +| `-ProjectRoot` | No | Auto-detected | Absolute project root | + +--- + +## Complex Workflow Examples + +These examples show end-to-end migration workflows. + +**For PowerShell workflows:** Write a `.ps1` script file and execute with `-File`. **NEVER paste inline through bash.** + +**For Python + batch creation:** Compose the JSON manifest in a file, then invoke `pa_batch.py`. Recommended for waves that need multiple PA interfaces. + +--- + +## PA Batch Writer Integration Pattern + +**When you need to create 5+ Java files in a migration wave, use this pattern:** + +```bash +# Step 1: Agent composes manifest JSON with all PA interfaces + wrappers + utility classes +write("tools/migration/_wave_manifest.json", {all files' raw Java content}) + +# Step 2: Verify paths with dry-run +python tools/migration/pa_batch.py tools/migration/_wave_manifest.json --dry-run + +# Step 3: Create files +python tools/migration/pa_batch.py tools/migration/_wave_manifest.json --force + +# Step 4: Propagate (existing PowerShell tools) +powershell -ExecutionPolicy Bypass -File tools/migration/wave_propagate.ps1 +``` + +**Benefit:** 5+ files created in 2 tool calls (write manifest + execute) instead of 5+ individual `write` calls. + +For single PA interface creation, use `Create-And-Propagate` (simpler, all-in-one). For batches, use `pa_batch.py` (higher throughput, lower overhead). + +--- + +### WORKFLOW 1: Full Wave Migration (Copy + Nuke + Swap + Stub + Build) + +This is the standard workflow for migrating a batch of files from mc1710 to core. Used for any migration wave. + +**Scenario:** Migrate Dialog system controllers and data classes. + +```powershell +# File: tools/migration/wave_dialog.ps1 +# Execute: powershell -ExecutionPolicy Bypass -File tools/migration/wave_dialog.ps1 + +. (Join-Path $PSScriptRoot 'Copy-Recursive.ps1') +. (Join-Path $PSScriptRoot 'Nuke-Imports.ps1') +. (Join-Path $PSScriptRoot 'Symbol-Swap.ps1') +. (Join-Path $PSScriptRoot 'Static-Transform.ps1') +. (Join-Path $PSScriptRoot 'Generate-Stubs.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +. (Join-Path $PSScriptRoot 'Build-Report.ps1') + +# ============================================================ +# STEP 1: Copy files from mc1710 to core, recursively pulling deps +# ============================================================ +# The whitelist constrains which TRANSITIVE deps get copied. +# Initial sources always get copied regardless of whitelist. +Copy-Recursive ` + -Sources @( + 'noppes/npcs/controllers/DialogController.java', + 'noppes/npcs/controllers/data/Dialog.java', + 'noppes/npcs/controllers/data/DialogOption.java', + 'noppes/npcs/controllers/data/DialogCategory.java' + ) ` + -AllowPaths @( + 'noppes/npcs/controllers/', + 'noppes/npcs/controllers/data/', + 'noppes/npcs/config/', + 'noppes/npcs/util/' + ) + +# ============================================================ +# STEP 2: Nuke ALL MC/Forge imports from core +# ============================================================ +Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes @( + 'net.minecraft.', + 'cpw.mods.', + 'net.minecraftforge.', + 'noppes.npcs.entity.', + 'noppes.npcs.client.', + 'noppes.npcs.mixin.', + 'kamkeel.npcs.network.', + 'noppes.npcs.containers.' +) + +# ============================================================ +# STEP 3: Symbol-Swap - replace MC types with PA interfaces +# ============================================================ +Symbol-Swap -Directory 'core/src/main/java' -Swaps @( + @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), + @('NBTTagList', 'INbtList', 'net.minecraft.nbt.NBTTagList', 'noppes.npcs.api.nbt.INbtList'), + @('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer'), + @('EntityPlayerMP', 'IPlayer', 'net.minecraft.entity.player.EntityPlayerMP', 'noppes.npcs.api.entity.IPlayer'), + @('ItemStack', 'IItemStack','net.minecraft.item.ItemStack', 'noppes.npcs.api.item.IItemStack') +) + +# ============================================================ +# STEP 4: Static transforms - structural code rewrites +# ============================================================ +Static-Transform -Directory 'core/src/main/java' -Transforms @( + @('new\s+NBTTagCompound\s*\(\)', 'NBT.compound()'), + @('new\s+NBTTagList\s*\(\)', 'NBT.list()'), + @('CompressedStreamTools\.readCompressed\s*\(([^)]+)\)', 'PlatformServiceHolder.get().readCompressedNBT($1)'), + @('CompressedStreamTools\.writeCompressed\s*\(([^,]+),\s*([^)]+)\)', 'PlatformServiceHolder.get().writeCompressedNBT($1, $2)') +) + +# ============================================================ +# STEP 5: Generate stubs for classes not yet migrated +# ============================================================ +Generate-Stubs -Stubs @( + @{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; + body=' public static void updateDialog(Object d) {} + public static void removeDialog(int id) {} + public static void updateQuest(Object q) {} + public static void removeQuest(int id) {}' }, + @{ pkg='noppes.npcs.controllers'; name='ScriptController'; type='class'; + body=' public static boolean HasStart = false;' } +) + +# ============================================================ +# STEP 6: Deduplicate imports +# ============================================================ +Dedupe-Imports -Directory 'core/src/main/java' + +# ============================================================ +# STEP 7: Build and report (DO NOT PANIC on errors) +# ============================================================ +Build-Report -GradleTask ':core:compileJava' +``` + +**What happens:** +1. Files copied from mc1710 to core with all allowed transitive deps +2. MC imports stripped +3. Types replaced with PA equivalents +4. Constructor/static method patterns rewritten +5. Missing deps stubbed +6. Import duplicates cleaned +7. Build errors categorized for targeted fixing + +--- + +### WORKFLOW 2: Create New PA Abstraction + Propagate Everywhere + +This workflow is for when you need to introduce a NEW platform-api interface to replace an MC type. The interface is created AND all references across core/ are updated in a single atomic operation. + +**Scenario:** Create `IMessageService` to replace `ChatComponentText` and `ChatComponentTranslation`. + +```powershell +# File: tools/migration/create_message_service.ps1 + +. (Join-Path $PSScriptRoot 'Create-And-Propagate.ps1') +. (Join-Path $PSScriptRoot 'Nuke-Imports.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +. (Join-Path $PSScriptRoot 'Build-Report.ps1') + +# ============================================================ +# STEP 1: Define the new interface content +# ============================================================ +$interfaceContent = @' +package noppes.npcs.api.handler; + +import noppes.npcs.api.entity.IPlayer; + +/** + * Platform abstraction for Minecraft chat/message sending. + * mc1710 implementation wraps ChatComponentText/Translation. + */ +public interface IMessageService { + void sendMessage(IPlayer player, String message); + void sendTranslatedMessage(IPlayer player, String key, Object... args); + void broadcastMessage(String message); +} +'@ + +# ============================================================ +# STEP 2: Create the interface AND propagate replacements +# ============================================================ +Create-And-Propagate ` + -FilePath 'platform-api/src/main/java/noppes/npcs/api/handler/IMessageService.java' ` + -Content $interfaceContent ` + -TargetDirectory 'core/src/main/java' ` + -Swaps @( + @('ChatComponentText', 'IMessageService', 'net.minecraft.util.ChatComponentText', 'noppes.npcs.api.handler.IMessageService'), + @('ChatComponentTranslation', 'IMessageService', 'net.minecraft.util.ChatComponentTranslation', 'noppes.npcs.api.handler.IMessageService') + ) + +# ============================================================ +# STEP 3: Also nuke leftover chat formatting imports +# ============================================================ +Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes @( + 'net.minecraft.util.EnumChatFormatting' +) + +# ============================================================ +# STEP 4: Clean up duplicates and verify +# ============================================================ +Dedupe-Imports -Directory 'core/src/main/java' +Build-Report -GradleTask ':core:compileJava' +``` + +**What happens:** +1. `IMessageService.java` is created in `platform-api/` +2. Every `ChatComponentText` and `ChatComponentTranslation` reference in core/ is replaced with `IMessageService` +3. Old MC imports removed, new PA import added -- in every file that had the reference +4. All in one atomic operation -- no partial state + +--- + +### WORKFLOW 3: Build-Report-Driven Fix Cycle + +This workflow is for when you have build errors after a migration and need to fix them systematically. The pattern is: report -> categorize -> fix per category -> re-report -> repeat. + +**Scenario:** After a migration wave, core has 47 build errors. Fix them categorically. + +```powershell +# File: tools/migration/fix_cycle.ps1 + +. (Join-Path $PSScriptRoot 'Symbol-Swap.ps1') +. (Join-Path $PSScriptRoot 'Nuke-Imports.ps1') +. (Join-Path $PSScriptRoot 'Generate-Stubs.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +. (Join-Path $PSScriptRoot 'Build-Report.ps1') + +# ============================================================ +# STEP 1: Get the initial error report +# ============================================================ +Write-Host "===== INITIAL BUILD =====" -ForegroundColor Cyan +$report = Build-Report -GradleTask ':core:compileJava' -MaxSamples 5 + +if ($report.Success) { + Write-Host "Build already passes!" -ForegroundColor Green + exit 0 +} + +# ============================================================ +# STEP 2: Fix MISSING_PACKAGE errors (leftover MC imports) +# ============================================================ +# These mean Nuke-Imports missed some prefixes. Fix: +Write-Host "`n===== FIXING: Leftover MC imports =====" -ForegroundColor Yellow + +Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes @( + 'net.minecraft.', + 'cpw.mods.', + 'net.minecraftforge.', + 'noppes.npcs.entity.', + 'noppes.npcs.client.', + 'noppes.npcs.mixin.', + 'kamkeel.npcs.network.', + 'kamkeel.npcs.entity.', + 'noppes.npcs.containers.', + 'noppes.npcs.wrapper.', + 'noppes.npcs.scripted.', + 'noppes.npcs.janino.' +) + +# ============================================================ +# STEP 3: Fix MISSING_CLASS errors (need stubs) +# ============================================================ +# These are classes from future waves. Create stubs so build passes. +Write-Host "`n===== FIXING: Missing class stubs =====" -ForegroundColor Yellow + +Generate-Stubs -Stubs @( + @{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; + body=' public static void syncUpdate(Object obj, Object... args) {} + public static void syncRemove(String type, int id) {}' }, + @{ pkg='noppes.npcs.controllers'; name='ScriptController'; type='class'; + body=' public static boolean HasStart = false; + public static boolean HasScriptEngine = false;' }, + @{ pkg='noppes.npcs'; name='CustomNpcs'; type='class'; + body=' public static java.io.File Dir = new java.io.File("."); + public static int DefaultInteractLine = 0;' }, + @{ pkg='noppes.npcs'; name='EventHooks'; type='class'; + body=' // STUB' }, + @{ pkg='noppes.npcs'; name='LogWriter'; type='class'; + body=' public static void info(String msg) {} + public static void warn(String msg) {} + public static void error(String msg) {} + public static void error(String msg, Throwable e) {}' } +) + +# ============================================================ +# STEP 4: Clean up and re-test +# ============================================================ +Dedupe-Imports -Directory 'core/src/main/java' + +Write-Host "`n===== SECOND BUILD =====" -ForegroundColor Cyan +$report2 = Build-Report -GradleTask ':core:compileJava' -MaxSamples 5 + +if ($report2.Success) { + Write-Host "`nAll errors fixed!" -ForegroundColor Green +} else { + Write-Host "`nRemaining errors: $($report2.Total) (was $($report.Total))" -ForegroundColor Yellow + Write-Host "Review the report above and create additional stubs or swaps as needed." +} +``` + +**What happens:** +1. First build report shows categorized errors +2. `MISSING_PACKAGE` errors fixed by nuking leftover MC imports +3. `MISSING_CLASS` errors fixed by generating stubs +4. Second build report shows remaining errors (should be much fewer) +5. Agent reviews remaining errors and adds more fixes if needed + +--- + +### WORKFLOW 4: Targeted Controller Migration (Copy -> Swap -> Stub -> Verify) + +This is the most common real-world pattern: migrate a specific controller and its data classes. + +**Scenario:** Migrate `QuestController` and all quest data classes. + +```powershell +# File: tools/migration/wave_quests.ps1 + +. (Join-Path $PSScriptRoot 'Copy-Recursive.ps1') +. (Join-Path $PSScriptRoot 'Nuke-Imports.ps1') +. (Join-Path $PSScriptRoot 'Symbol-Swap.ps1') +. (Join-Path $PSScriptRoot 'Static-Transform.ps1') +. (Join-Path $PSScriptRoot 'Generate-Stubs.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +. (Join-Path $PSScriptRoot 'Build-Report.ps1') + +# ============================================================ +# STEP 1: Copy the quest subsystem and its dependencies +# ============================================================ +# AllowPaths controls what transitive deps get pulled in. +# Quest files import controllers/data, config, and utils -- allow those. +# Do NOT allow entity/, client/, network/ -- those stay in mc1710. +Copy-Recursive ` + -Sources @( + 'noppes/npcs/controllers/QuestController.java', + 'noppes/npcs/controllers/PlayerQuestController.java', + 'noppes/npcs/quests/QuestItem.java', + 'noppes/npcs/quests/QuestKill.java', + 'noppes/npcs/quests/QuestLocation.java', + 'noppes/npcs/quests/QuestDialog.java', + 'noppes/npcs/quests/QuestManual.java' + ) ` + -AllowPaths @( + 'noppes/npcs/controllers/', + 'noppes/npcs/controllers/data/', + 'noppes/npcs/quests/', + 'noppes/npcs/config/', + 'noppes/npcs/util/', + 'kamkeel/npcs/controllers/', + 'kamkeel/npcs/config/' + ) + +# ============================================================ +# STEP 2: Nuke MC imports from core +# ============================================================ +Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes @( + 'net.minecraft.', 'cpw.mods.', 'net.minecraftforge.', + 'noppes.npcs.entity.', 'noppes.npcs.client.', + 'noppes.npcs.mixin.', 'kamkeel.npcs.network.', + 'kamkeel.npcs.entity.', 'noppes.npcs.containers.', + 'noppes.npcs.scripted.', 'noppes.npcs.janino.', + 'noppes.npcs.wrapper.' +) + +# ============================================================ +# STEP 3: Symbol-Swap MC types for PA types +# ============================================================ +Symbol-Swap -Directory 'core/src/main/java' -Swaps @( + @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), + @('NBTTagList', 'INbtList', 'net.minecraft.nbt.NBTTagList', 'noppes.npcs.api.nbt.INbtList'), + @('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer'), + @('EntityPlayerMP', 'IPlayer', 'net.minecraft.entity.player.EntityPlayerMP', 'noppes.npcs.api.entity.IPlayer'), + @('ItemStack', 'IItemStack', 'net.minecraft.item.ItemStack', 'noppes.npcs.api.item.IItemStack'), + @('EntityLivingBase', 'IEntityLivingBase', 'net.minecraft.entity.EntityLivingBase', 'noppes.npcs.api.entity.IEntityLivingBase'), + @('EntityNPCInterface', 'ICustomNpc', 'noppes.npcs.entity.EntityNPCInterface', 'noppes.npcs.api.entity.ICustomNpc') +) + +# ============================================================ +# STEP 4: Static transforms +# ============================================================ +Static-Transform -Directory 'core/src/main/java' -Transforms @( + @('new\s+NBTTagCompound\s*\(\)', 'NBT.compound()'), + @('new\s+NBTTagList\s*\(\)', 'NBT.list()') +) + +# ============================================================ +# STEP 5: Stubs for deps not yet migrated +# ============================================================ +Generate-Stubs -Stubs @( + @{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; + body=' public static void updateQuest(Object q) {} + public static void removeQuest(int id) {} + public static void updateDialog(Object d) {} + public static void removeDialog(int id) {}' }, + @{ pkg='noppes.npcs.controllers'; name='ScriptController'; type='class'; + body=' public static boolean HasStart = false;' }, + @{ pkg='noppes.npcs'; name='CustomNpcs'; type='class'; + body=' public static java.io.File Dir = new java.io.File(".");' }, + @{ pkg='noppes.npcs'; name='LogWriter'; type='class'; + body=' public static void info(String msg) {} + public static void warn(String msg) {} + public static void error(String msg) {} + public static void error(String msg, Throwable e) {}' } +) + +# ============================================================ +# STEP 6: Clean up and build +# ============================================================ +Dedupe-Imports -Directory 'core/src/main/java' +Build-Report -GradleTask ':core:compileJava' +``` + +--- + +### WORKFLOW 5: Multiple PA Interfaces in One Shot + +When a migration wave needs several new PA abstractions created simultaneously. + +```powershell +# File: tools/migration/create_multiple_pa.ps1 + +. (Join-Path $PSScriptRoot 'Create-And-Propagate.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +. (Join-Path $PSScriptRoot 'Build-Report.ps1') + +# ============================================================ +# Interface 1: IServerService +# ============================================================ +Create-And-Propagate ` + -FilePath 'platform-api/src/main/java/noppes/npcs/api/handler/IServerService.java' ` + -Content @' +package noppes.npcs.api.handler; + +public interface IServerService { + boolean isDedicatedServer(); + java.io.File getWorldDirectory(); +} +'@ ` + -TargetDirectory 'core/src/main/java' ` + -Swaps @( + @('MinecraftServer', 'IServerService', 'net.minecraft.server.MinecraftServer', 'noppes.npcs.api.handler.IServerService'), + @('DedicatedServer', 'IServerService', 'net.minecraft.server.dedicated.DedicatedServer', 'noppes.npcs.api.handler.IServerService') + ) + +# ============================================================ +# Interface 2: IDamageService +# ============================================================ +Create-And-Propagate ` + -FilePath 'platform-api/src/main/java/noppes/npcs/api/handler/IDamageService.java' ` + -Content @' +package noppes.npcs.api.handler; + +public interface IDamageService { + // Platform damage abstraction +} +'@ ` + -TargetDirectory 'core/src/main/java' ` + -Swaps @( + ,@('DamageSource', 'IDamageService', 'net.minecraft.util.DamageSource', 'noppes.npcs.api.handler.IDamageService') + ) + +# ============================================================ +# Clean up and verify +# ============================================================ +Dedupe-Imports -Directory 'core/src/main/java' +Build-Report -GradleTask ':core:compileJava' +``` + +--- + +### WORKFLOW 6: Batch PA Interface Creation (pa_batch.py + Propagate) + +**NEW: Use this when you need to create 5+ PA interfaces in one wave.** + +This workflow demonstrates the power of `pa_batch.py` for high-throughput file creation. + +**Scenario:** Create multiple PA interfaces (IServerService, IMessageService, IIOService, etc.) and propagate them everywhere. + +```bash +# File: tools/migration/_quest_wave_manifest.json +# (Agent composes this JSON with all PA interfaces + wrappers) +cat > tools/migration/_quest_wave_manifest.json << 'EOF' +{ + "root": "platform-api/src/main/java", + "files": [ + { + "content": "package noppes.npcs.api.handler;\n\npublic interface IServerService {\n boolean isDedicatedServer();\n Object getPlayerList();\n}\n" + }, + { + "content": "package noppes.npcs.api.handler;\n\nimport noppes.npcs.api.entity.IPlayer;\n\npublic interface IMessageService {\n void sendMessage(IPlayer player, String message);\n void broadcastMessage(String message);\n}\n" + }, + { + "content": "package noppes.npcs.api.handler;\n\nimport noppes.npcs.api.nbt.INbt;\n\npublic interface IIOService {\n INbt readCompressed(java.io.DataInputStream stream);\n void writeCompressed(INbt nbt, java.io.DataOutputStream stream);\n}\n" + }, + { + "root": "src/main/java", + "content": "package noppes.npcs.wrappers.handler;\n\nimport net.minecraft.server.MinecraftServer;\nimport noppes.npcs.api.handler.IServerService;\n\npublic class ServerServiceWrapper implements IServerService {\n private MinecraftServer server;\n public ServerServiceWrapper(MinecraftServer server) { this.server = server; }\n @Override\n public boolean isDedicatedServer() { return server instanceof net.minecraft.server.dedicated.DedicatedServer; }\n @Override\n public Object getPlayerList() { return server.getPlayerList(); }\n}\n" + } + ] +} +EOF + +# Step 1: Dry-run to verify all paths are correct +python tools/migration/pa_batch.py tools/migration/_quest_wave_manifest.json --dry-run +# Output shows exactly where each file will be created + +# Step 2: Create all files at once +python tools/migration/pa_batch.py tools/migration/_quest_wave_manifest.json --force +# 3 PA interfaces + 1 wrapper = 4 files created in one command + +# Step 3: Propagate (PowerShell script with Symbol-Swap calls) +# File: tools/migration/quest_wave_propagate.ps1 +powershell -ExecutionPolicy Bypass -File tools/migration/quest_wave_propagate.ps1 +``` + +**quest_wave_propagate.ps1:** +```powershell +. (Join-Path $PSScriptRoot 'Symbol-Swap.ps1') +. (Join-Path $PSScriptRoot 'Nuke-Imports.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +. (Join-Path $PSScriptRoot 'Build-Report.ps1') + +# Nuke leftover MC imports from core +Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes @( + 'net.minecraft.server.', + 'net.minecraft.util.text' +) + +# Propagate the new PA interfaces +Symbol-Swap -Directory 'core/src/main/java' -Swaps @( + @('MinecraftServer', 'IServerService', 'net.minecraft.server.MinecraftServer', 'noppes.npcs.api.handler.IServerService'), + @('ChatComponentText', 'IMessageService', 'net.minecraft.util.ChatComponentText', 'noppes.npcs.api.handler.IMessageService'), + @('CompressedStreamTools', 'IIOService', 'net.minecraft.nbt.CompressedStreamTools', 'noppes.npcs.api.handler.IIOService') +) + +Dedupe-Imports -Directory 'core/src/main/java' +Build-Report -GradleTask ':core:compileJava' +``` + +**Performance comparison:** + +| Approach | Tool Calls | Wall Clock | Best For | +|----------|-----------|-----------|----------| +| Individual `write()` calls (4 files) | 8-12 | 8-15s | 1-2 files | +| `Create-And-Propagate` × 4 | 4+ | 5-10s | 1 PA interface | +| **`pa_batch.py` (NEW)** | **2** | **~4s** | **5+ files in one batch** | + +For the quest wave: `pa_batch.py` creates all 4 files in 2 tool calls. Individual approach would take 8-12 calls. **Result: 75-85% fewer round trips.** + +--- + +## Common MC Type -> PA Replacement Table + +Use these in your `-Swaps` parameter: + +```powershell +# Standard NBT swaps (use in almost every wave) +@('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt') +@('NBTTagList', 'INbtList', 'net.minecraft.nbt.NBTTagList', 'noppes.npcs.api.nbt.INbtList') + +# Entity swaps +@('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer') +@('EntityPlayerMP', 'IPlayer', 'net.minecraft.entity.player.EntityPlayerMP', 'noppes.npcs.api.entity.IPlayer') +@('EntityLivingBase','IEntityLivingBase', 'net.minecraft.entity.EntityLivingBase', 'noppes.npcs.api.entity.IEntityLivingBase') +@('EntityNPCInterface','ICustomNpc', 'noppes.npcs.entity.EntityNPCInterface', 'noppes.npcs.api.entity.ICustomNpc') + +# Item swaps +@('ItemStack', 'IItemStack', 'net.minecraft.item.ItemStack', 'noppes.npcs.api.item.IItemStack') +``` + +## Common Static Transforms + +```powershell +# NBT constructors +@('new\s+NBTTagCompound\s*\(\)', 'NBT.compound()') +@('new\s+NBTTagList\s*\(\)', 'NBT.list()') + +# Compressed stream tools +@('CompressedStreamTools\.readCompressed\s*\(([^)]+)\)', 'PlatformServiceHolder.get().readCompressedNBT($1)') +@('CompressedStreamTools\.writeCompressed\s*\(([^,]+),\s*([^)]+)\)', 'PlatformServiceHolder.get().writeCompressedNBT($1, $2)') + +# MathHelper +@('MathHelper\.clamp_int\s*\(', 'ValueUtil.clampInt(') +@('MathHelper\.clamp_float\s*\(', 'ValueUtil.clampFloat(') +@('MathHelper\.clamp_double\s*\(', 'ValueUtil.clampDouble(') + +# Annotations +@('@SideOnly\s*\(\s*Side\.CLIENT\s*\)', '@ClientOnly') +@('@SideOnly\s*\(\s*Side\.SERVER\s*\)', '@ServerOnly') +``` + +## Common Nuke Prefixes + +```powershell +# The standard set for any wave: +@( + 'net.minecraft.', + 'cpw.mods.', + 'net.minecraftforge.', + 'noppes.npcs.entity.', + 'noppes.npcs.client.', + 'noppes.npcs.mixin.', + 'kamkeel.npcs.network.', + 'kamkeel.npcs.entity.', + 'noppes.npcs.containers.', + 'noppes.npcs.scripted.', + 'noppes.npcs.janino.', + 'noppes.npcs.wrapper.' +) +``` + +--- + +## Decision Tree: Which Tool When + +``` +I need to migrate files from mc1710 to core/ + --> Copy-Recursive (with AllowPaths whitelist) + +I have MC imports in core/ files + --> Nuke-Imports (remove them all) + +I need to replace MC type names with PA types + --> Symbol-Swap (bulk replace + import surgery) + +I need to replace method calls, not just names + --> Static-Transform (regex with capture groups) + +I need to create a NEW PA interface + --> Create-And-Propagate (atomic create + replace everywhere) + +Build fails with "cannot find symbol: class X" + --> Generate-Stubs (create placeholder X) + +Build fails and I don't know where to start + --> Build-Report (categorize errors, fix per category) + +I see duplicate imports after swaps + --> Dedupe-Imports (clean up) +``` + +--- + +## Anti-Patterns (DO NOT DO THESE) + +1. **DO NOT paste PowerShell inline through bash with `$1`/`$2` in strings.** Bash eats them. Write a `.ps1` file and use `-File`. + +2. **DO NOT run Copy-Recursive without AllowPaths.** It will copy the entire codebase via transitive imports (tested: 1,360 files from one seed file). + +3. **DO NOT panic on build failures after migration.** Build failures are EXPECTED. Run Build-Report. Fix categorically. + +4. **DO NOT delete files from core/ when the build fails.** EVER. Add stubs. Fix imports. Transform code. NEVER delete. + +5. **DO NOT edit the tool source files.** They are stable functions. You provide params. + +6. **DO NOT run Symbol-Swap before Nuke-Imports.** Nuke first to remove the worst offenders, then Swap for the semantic replacements. + +7. **DO NOT forget Dedupe-Imports at the end.** Two MC types mapping to the same PA type (e.g., `NBTTagCompound` and `NBTTagString` both to `INbt`) produces duplicate imports. + +--- + +## Testing + +All tools have a test suite at `tools/migration/test_runner.ps1`: + +```bash +powershell -ExecutionPolicy Bypass -File "tools/migration/test_runner.ps1" +``` + +7 tests covering: Symbol-Swap, Nuke-Imports, Static-Transform, Dedupe-Imports, Generate-Stubs, Create-And-Propagate, and a full pipeline integration test. + +--- +--- + +# Diagnostic Toolchain — `analyze.py` + +> **Diagnostic tools answer questions. Migration tools change code. ALWAYS diagnose first.** +> +> `analyze.py` is a unified Python CLI with 8 subcommands that query the mc1710 codebase index, extract signatures via tree-sitter, compare migrations, and compute migration readiness. These tools are READ-ONLY — they never modify files. + +## Prerequisites + +```bash +# Generate the index (required before any index-dependent command) +python tools/migration/scan_codebase.py + +# Dependencies (tree-sitter needed for extract-signatures, diff-signatures, surface-miner --compare-existing) +pip install tree-sitter tree-sitter-java +``` + +**The index file** (`tools/migration/mc_usage_index.json`, ~2.6 MB) maps ALL 400 unique MC/Forge types across 1,722 files. It records: +- Every import, method call, static call, field access, constructor, cast, instanceof +- Which files use which types and how +- Class hierarchy (extends/implements MC types) + +**Regenerate the index** whenever you add/remove files from mc1710/. Scan takes ~4 seconds. + +--- + +## Diagnostic Quick Reference Card + +| Subcommand | Purpose | Depends On | +|------------|---------|------------| +| `query-type` | "How is this MC type used across the codebase?" | Index | +| `query-file` | "How MC-coupled is this specific file?" | Index | +| `extract-signatures` | "What methods does this Java file declare?" | tree-sitter | +| `surface-miner` | "What's the minimal PA interface surface for this MC type?" | Index + optional tree-sitter | +| `type-usage` | "Show ALL members of this type used within a directory, with per-file detail" | Index | +| `diff-signatures` | "What changed between two versions of this file?" | tree-sitter | +| `migration-diff` | "Is this migrated file complete? Any unmigrated types, missing methods, body drift?" PASS/WARN/FAIL | tree-sitter + classifications JSON | +| `coverage-report` | "How far along is the overall migration?" | Index | + +**All subcommands support `--json` for machine-readable output. All auto-detect project root.** + +--- + +## Subcommand Reference + +### 1. `query-type` — MC Type Intelligence + +**What it answers:** "How bad is this type? How many files use it? What methods/fields are called on it? Does it have a PA abstraction?" + +```bash +python tools/migration/analyze.py query-type [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `type` | Yes | — | Simple class name (e.g. `EntityPlayer`, `NBTTagCompound`) | +| `--fqn` | No | — | Exact FQN override (e.g. `net.minecraft.entity.player.EntityPlayer`) | +| `--top N` | No | `0` (all) | Limit output to top N methods/fields by usage count | +| `--methods-only` | No | — | Suppress field access output | +| `--field-accesses-only` | No | — | Suppress method call output | +| `--show-files` | No | — | List files where each method is called (shows top 3 + count) | +| `--json` | No | — | Machine-readable JSON output | +| `--index` | No | `tools/migration/mc_usage_index.json` | Custom index path | +| `--project-root` | No | Auto-detected | Project root override | + +**Output includes:** +- PA abstraction status (mapped or NONE) +- Import count (how many files import this type) +- Method calls: each method name, call count, file count +- Static calls: same format +- Field accesses: each field name, access count, file count +- Hierarchy: which classes extend/implement this MC type +- Usage summary: constructor count, cast count, instanceof count + +**Real example — EntityPlayer:** +``` +TYPE: EntityPlayer (net.minecraft.entity.player.EntityPlayer) + PA Abstraction: IPlayer + Imported by: 551 files + + METHOD CALLS (46 unique methods): + getCommandSenderName 100 39 + getUniqueID 70 25 + addChatMessage 29 21 + getHeldItem 21 11 + ... + + FIELD ACCESSES (47 unique fields): + inventory 64 28 + worldObj 63 32 + capabilities 30 16 + ... + + USAGE SUMMARY: + Constructors: 0 + Casts: 180 + instanceof: 122 +``` + +**When to use:** +- Before creating a PA interface → know what methods to include +- Before migrating a wave → understand how deep the coupling goes +- Evaluating migration difficulty → high cast/instanceof count = hard to abstract +- Checking if a PA mapping already exists → `PA Abstraction: IPlayer` vs `NONE` + +--- + +### 2. `query-file` — File Migration Readiness + +**What it answers:** "How MC-coupled is this file? What % of its dependencies already have PA abstractions? What's blocking migration?" + +```bash +python tools/migration/analyze.py query-file [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `file` | Yes | — | File path (relative to mc1710/src/main/java, or full path). Smart matching — partial paths work. | +| `--readiness` | No | — | Show migration readiness score (%) and blocking types | +| `--json` | No | — | Machine-readable JSON output | +| `--index` | No | `tools/migration/mc_usage_index.json` | Custom index path | +| `--project-root` | No | Auto-detected | Project root override | + +**Readiness score formula:** `(MC types with PA abstraction) / (total MC types used) * 100` + +**Real example — QuestController.java:** +``` +FILE: noppes/npcs/controllers/QuestController.java + MC Import Count: 3 + MC Types: CompressedStreamTools, NBTTagCompound, NBTTagList + + MIGRATION READINESS: 66.7% + Abstracted: 2/3 + Blocking: CompressedStreamTools + + MC TYPES USED: + CompressedStreamTools (NOT ABSTRACTED) + NBTTagCompound -> INbt + NBTTagList -> INbtList +``` + +**Real example — EntityNPCInterface.java (heaviest file):** +``` +FILE: noppes/npcs/entity/EntityNPCInterface.java + MC Import Count: 59 + + MIGRATION READINESS: 15.3% + Abstracted: 9/59 + Blocking: FMLCommonHandler, IEntityAdditionalSpawnData, Side, SideOnly, Block + ... and 45 more +``` + +**When to use:** +- **Before starting a migration wave** → check readiness for each candidate file +- **Picking migration targets** → files with high readiness scores (60%+) are low-hanging fruit +- **Identifying blockers** → the blocking list tells you exactly which PA interfaces to create first +- **JSON mode for batch queries** → script over multiple files to find the easiest migration targets + +--- + +### 3. `extract-signatures` — Method Signature Extraction + +**What it answers:** "What methods does this Java file declare? With exact types, params, annotations, and line numbers." + +```bash +python tools/migration/analyze.py extract-signatures [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `file` | Yes | — | Path to any Java file (interface, class, etc.) | +| `--public-only` | No | — | Filter to public methods only (interface methods count as public) | +| `--json` | No | — | Machine-readable JSON with full signature objects | +| `--project-root` | No | Auto-detected | Project root override | + +**Requires:** `tree-sitter` + `tree-sitter-java` Python packages. + +**JSON signature object format:** +```json +{ + "name": "setString", + "return_type": "void", + "params": [{"type": "String", "name": "key"}, {"type": "String", "name": "value"}], + "modifiers": [], + "annotations": [], + "line": 21, + "kind": "method", + "javadoc": null +} +``` + +**Real example — INbt.java (46 methods):** +``` +SIGNATURES: INbt.java + Total methods: 46 + + L21 void setString(String key, String value) + L23 void setInteger(String key, int value) + L25 void setBoolean(String key, boolean value) + ... + L143 INbt copy() + L149 Object getMCNBT() + L155 boolean isEqual(INbt nbt) + L157 void clear() +``` + +**Real example — IPlayer.java (104 methods):** +``` +SIGNATURES: IPlayer.java + Total methods: 104 + + L20 String getDisplayName() + L25 String getName() + L32 void kick(String reason) + ... + L738 boolean isUsingVaultCurrency() + L746 String getFormattedCurrencyBalance() + L753 IEnergyProjectile[] getActiveEnergyProjectiles() +``` + +**When to use:** +- **Feed into surface-miner** → `--compare-existing` uses this internally +- **Pre-migration inventory** → know exactly what a PA interface already provides +- **Wrapper generation** → extract method list for Generate-Wrapper input +- **JSON mode** → pipe into scripts for automated interface design + +--- + +### 4. `surface-miner` — Minimal Interface Surface Discovery + +**What it answers:** "Based on actual codebase usage, what's the minimal set of methods needed in the PA interface for this MC type? How does it compare to what we already have?" + +This is the most powerful diagnostic tool. It answers the question: **"What methods MUST the PA interface have?"** + +```bash +python tools/migration/analyze.py surface-miner [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `type` | Yes | — | MC type simple name (e.g. `NBTTagCompound`) | +| `--fqn` | No | — | Exact FQN override | +| `--scope` | No | all files | Path prefix filter (e.g. `core/src/main/java` to only see core usage) | +| `--compare-existing` | No | — | Path to existing PA interface file — enables gap analysis | +| `--json` | No | — | Machine-readable JSON output | +| `--index` | No | `tools/migration/mc_usage_index.json` | Custom index path | +| `--project-root` | No | Auto-detected | Project root override | + +**The killer feature: `--compare-existing`** + +This compares actual codebase usage against an existing PA interface and shows: +- **`[PA]`** — method exists in PA interface AND is used in codebase (covered) +- **`[MISSING]`** — method is used in codebase but NOT in PA interface (needs adding) +- **Unused in PA** — method exists in PA interface but nobody calls it (future-proofing or dead code) + +**Real example — NBTTagCompound vs INbt.java:** +``` +MINIMAL SURFACE: NBTTagCompound (net.minecraft.nbt.NBTTagCompound) + PA Abstraction: INbt + + METHODS (32 unique): + setInteger instance 164 [PA] + getInteger instance 160 [PA] + setTag instance 159 [PA] + hasKey instance 155 [PA] + ... + getCompoundTag instance 89 [MISSING] + func_150296_c instance 16 [MISSING] + getTag instance 15 [MISSING] + hasNoTags instance 10 [MISSING] + ... + + COMPARISON WITH EXISTING PA INTERFACE: + Covered by PA: 25/32 methods + Missing from PA: 7 + + getCompoundTag + + func_150296_c + + getTag + + hasNoTags + + equals + + func_150299_b + + hashCode + Unused in PA: 20 + - clear + - getCompound + - getKeySet + - getMCNBT + - isEmpty + - merge + - toJsonString + ... +``` + +**Scope filtering:** +```bash +# Only show usage within core/ (already-migrated code) +python tools/migration/analyze.py surface-miner EntityPlayer --scope core/src/main/java + +# Only show usage within the quest subsystem +python tools/migration/analyze.py surface-miner NBTTagCompound --scope noppes/npcs/quests +``` + +**When to use:** +- **Designing a new PA interface** → run without `--compare-existing` to see what methods are actually needed +- **Auditing an existing PA interface** → run with `--compare-existing` to find gaps and dead methods +- **Scoped analysis** → `--scope core/src/main/java` shows only what core needs (post-migration surface) +- **Prioritizing method additions** → methods with higher usage counts should be added first + +--- + +### 5. `type-usage` — Scoped Type Member Census + +**What it answers:** "For this MC type, within this directory, show me EVERY method call, field access, constructor, cast, and instanceof — with the exact files where they occur." + +This is the deep-dive tool. While `query-type` shows global usage and `surface-miner` shows minimal interface surface, `type-usage` gives you the complete per-file breakdown scoped to a specific directory. It's what you use when you're about to migrate a subsystem and need to know exactly how it touches an MC type. + +```bash +python tools/migration/analyze.py type-usage --scope [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `type` | Yes | — | MC type simple name (e.g. `EntityPlayer`) | +| `--fqn` | No | — | Exact FQN override | +| `--scope` | No | all files | Directory path prefix filter (e.g. `noppes/npcs/controllers/`) | +| `--top N` | No | `0` (all) | Limit methods/fields to top N by count | +| `--json` | No | — | Machine-readable JSON output | +| `--index` | No | `tools/migration/mc_usage_index.json` | Custom index path | +| `--project-root` | No | Auto-detected | Project root override | + +**What it shows (all scoped to directory):** +1. **Method calls** — each method, call count, file list with per-file counts +2. **Static calls** — same format +3. **Field accesses** — each field, access count, file list +4. **Constructors** — count + file list with per-file breakdown +5. **Casts** — count + file list with per-file breakdown +6. **instanceof** — count + file list with per-file breakdown + +**Real example — EntityPlayer in controllers/:** +``` +TYPE USAGE: EntityPlayer in noppes/npcs/controllers/ + PA Abstraction: IPlayer + Files in scope: 20 (of 551 total) + + METHOD CALLS (11 unique, 20 total calls): + getCommandSenderName 5 5 + - noppes/npcs/controllers/AuctionController.java + - noppes/npcs/controllers/PartyController.java + - noppes/npcs/controllers/data/Party.java + ... + addChatMessage 4 4 + - noppes/npcs/controllers/AuctionController.java + - noppes/npcs/controllers/PlayerQuestController.java + ... + + FIELD ACCESSES (20 unique, 29 total accesses): + posX 2 2 + posY 2 2 + posZ 2 2 + worldObj 2 2 + ... + + CONSTRUCTORS: 0 occurrences + CASTS: 42 occurrences in 12 files + - noppes/npcs/controllers/CustomEffectController.java (11) + - noppes/npcs/controllers/CustomGuiController.java (9) + ... + INSTANCEOF: 5 occurrences in 3 files + - noppes/npcs/controllers/PlayerDataController.java (2) + ... +``` + +**Real example — NBTTagCompound in quests/:** +``` +TYPE USAGE: NBTTagCompound in noppes/npcs/quests/ + PA Abstraction: INbt + Files in scope: 5 (of 593 total) + + METHOD CALLS (10 unique, 17 total calls): + setTag 4 4 + getTagList 3 3 + setString 2 2 + ... + + CONSTRUCTORS: 0 occurrences + CASTS: 0 occurrences + INSTANCEOF: 0 occurrences +``` + +**JSON output includes all fields:** +```json +{ + "type": "net.minecraft.entity.player.EntityPlayer", + "shortName": "EntityPlayer", + "paAbstraction": "IPlayer", + "scope": "noppes/npcs/controllers/", + "totalFilesInScope": 20, + "totalFilesGlobal": 551, + "methodCalls": { "getCommandSenderName": { "count": 5, "files": [...] }, ... }, + "staticCalls": {}, + "fieldAccesses": { "posX": { "count": 2, "files": [...] }, ... }, + "constructors": { "count": 0, "files": [] }, + "casts": { "count": 42, "files": [{"file": "...", "count": 11}, ...] }, + "instanceof": { "count": 5, "files": [{"file": "...", "count": 2}, ...] } +} +``` + +**When to use:** +- **Pre-migration deep dive** → "Before I migrate controllers/, show me exactly how EntityPlayer is used there" +- **Scope-specific PA interface design** → "I only need to abstract what quests/ uses from NBTTagCompound" +- **Cast/instanceof hotspot detection** → high cast counts mean the migration needs wrapper conversion utilities +- **Subsystem dependency audit** → understand exactly which MC methods a module depends on before cutting the cord + +**Key difference from other tools:** +- `query-type` → global aggregate, no scope filtering, no per-file detail on casts/instanceof +- `surface-miner` → interface-design focused (method names only), no casts/instanceof/constructors +- `type-usage` → complete census with per-file attribution, scoped to any directory + +--- + +### 6. `diff-signatures` — Signature Change Detection + +**What it answers:** "What methods were added, removed, or changed between two versions of a file?" + +```bash +python tools/migration/analyze.py diff-signatures --old --new [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `--old` | Yes | — | Path to original file | +| `--new` | Yes | — | Path to updated file | +| `--json` | No | — | Machine-readable JSON output | +| `--project-root` | No | Auto-detected | Project root override | + +**Comparison key:** Method name + parameter types (ignores param names, ignoring annotations/modifiers for matching). + +**Change types detected:** +- **ADDED** — method exists in new but not old (name+params don't match anything) +- **REMOVED** — method exists in old but not new +- **CHANGED** — same name+params, but return type or modifiers differ + +**Real example — FactionController mc1710 vs core:** +``` +SIGNATURE DIFF + Old: FactionController.java (20 methods) + New: FactionController.java (20 methods) + + ADDED (1): + + public void loadFactions(INbt nbttagcompound1) + + REMOVED (1): + - public void loadFactions(DataInputStream stream) + + CHANGED (3): + OLD: public List list() + NEW: public List list() + + OLD: public NBTTagCompound getNBT() + NEW: public INbt getNBT() + + OLD: public IFaction delete(int id) + NEW: public Faction delete(int id) + + Summary: +1 added, -1 removed, ~3 changed, =16 unchanged +``` + +**When to use:** +- **Post-migration validation** → compare mc1710 original with core migrated version to see exactly what changed +- **Shadow file audit** → verify that mc1710 shadow files add the expected extensions +- **API evolution tracking** → compare old API interface with new platform-api version +- **Regression detection** → catch unintended method signature changes after a migration wave + +--- + +### 7. `coverage-report` — Global Migration Progress + +**What it answers:** "How far along is the overall migration? What types are blocking the most files? Which packages need the most work?" + +```bash +python tools/migration/analyze.py coverage-report [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `--detailed` | No | — | Show package breakdown and top files by MC dependency | +| `--json` | No | — | Machine-readable JSON output | +| `--index` | No | `tools/migration/mc_usage_index.json` | Custom index path | +| `--project-root` | No | Auto-detected | Project root override | + +**Two coverage metrics:** +- **Type coverage:** % of unique MC types that have PA abstractions (currently 2.8% — 11/400) +- **Import coverage:** % of all MC imports that reference abstracted types (currently 37.1% — 2,494/6,723) + +Import coverage is much higher because the 11 abstracted types (NBTTagCompound, EntityPlayer, etc.) are the most heavily imported. **This means the 80/20 rule applies hard** — abstracting a few more high-impact types will rapidly increase import coverage. + +**Real output:** +``` +MIGRATION COVERAGE REPORT + + OVERALL STATISTICS: + Total files scanned: 1,722 + Files with MC deps: 1,453 + Total MC imports: 6,723 + Unique MC types: 400 + + ABSTRACTION COVERAGE: + Type coverage: 11/400 (2.8%) + Import coverage: 2494/6723 (37.1%) + + TOP BLOCKING TYPES (no PA abstraction): + 1. Side 405 + 2. SideOnly 395 + 3. GuiButton 218 + 4. Minecraft 180 + 5. ResourceLocation 145 + ... + + PACKAGE BREAKDOWN: + net.minecraft.entity.player 3 2 858 + net.minecraft.nbt 15 2 812 + cpw.mods.fml.relauncher 4 0 802 + ... + + TOP FILES BY MC DEPENDENCY: + noppes/npcs/entity/EntityNPCInterface.java 59 + noppes/npcs/scripted/NpcAPI.java 39 + ... +``` + +**When to use:** +- **Progress tracking** → run after each migration wave to see coverage improvement +- **Strategic planning** → top blocking types tell you which PA interfaces to create next for maximum impact +- **Package prioritization** → package breakdown shows which MC packages have the most unabstracted types +- **Risk assessment** → top files by MC dependency are the hardest to migrate — plan these for later waves + +--- + +### 8. `migration-diff` — Migration Completeness Verifier + +**What it answers:** "Is my migrated core/ file complete? Did I miss any type replacements? Are all methods present? Did any method bodies change in non-migration ways?" + +This is the **final validation gate** after migrating a file. It compares the original mc1710 file against the migrated core/ file and gives a definitive PASS/WARN/FAIL verdict. + +```bash +python tools/migration/analyze.py migration-diff --old --new [options] +``` + +| Param | Required | Default | Description | +|-------|----------|---------|-------------| +| `--old` | Yes | — | Path to original mc1710 Java file | +| `--new` | Yes | — | Path to migrated core/ Java file | +| `--classifications` | No | `tools/migration/mc_type_classifications.json` | Path to type classifications JSON (relative to project root) | +| `--json` | No | — | Machine-readable JSON output | +| `--project-root` | No | Auto-detected | Project root override | + +**Three detection categories:** + +1. **UNMIGRATED** — MC type names from the classifications (EXISTING, INTERFACE, SERVICE categories) that still appear verbatim in the new file. These should have been replaced by Symbol-Swap. Reports line numbers and the expected PA replacement. + +2. **MISSING_METHOD** — Methods present in the old file but absent in the new file after normalizing parameter types. Uses the classifications to normalize `NBTTagCompound` → `INbt`, `EntityPlayer` → `IPlayer`, etc. in param types before matching, so `loadData(NBTTagCompound nbt)` in old correctly matches `loadData(INbt nbt)` in new. + +3. **SEMANTIC_BODY_DIFF** — Methods present in both files (by normalized signature match) whose bodies differ beyond pure type substitutions. Both bodies are normalized (MC types → PA equivalents, TRANSFORM patterns applied), then compared with `difflib`. If similarity < 85% or any diff lines remain, the method is flagged. Shows up to 10 diff lines per method. + +**Verdict system:** + +| Verdict | Condition | Meaning | +|---------|-----------|---------| +| **FAIL** | Any MISSING_METHOD | Methods were lost during migration — investigate and restore | +| **WARN** | Any UNMIGRATED types or SEMANTIC_BODY_DIFF (but no missing methods) | Migration incomplete or has logic changes — manual review needed | +| **PASS** | None of the above | Migration looks clean — all methods present, types replaced, bodies match | + +**The 15% gap — what migration-diff CANNOT detect:** + +Migration-diff catches ~85% of migration issues automatically. The remaining ~15% requires human judgment: + +- **Algorithmic changes** — If a method's logic was intentionally rewritten (e.g., switching from `for` loop to `stream()`), migration-diff flags it as SEMANTIC_BODY_DIFF but can't tell if the new logic is equivalent +- **Logic reordering** — If statements were reordered within a method body, the diff flags it even though it may be semantically equivalent +- **Renamed local variables** — Normalization only handles MC type names, not arbitrary variable renames +- **Semantic equivalence** — `player.posX` → `player.getX()` changes the text even after normalization if `posX` isn't in the classifications as a field transform +- **Intentional omissions** — Some methods are deliberately not migrated (e.g., MC-specific registration hooks). Migration-diff flags these as MISSING_METHOD + +**Always manually review WARN and FAIL results.** The verdict is a triage signal, not a final judgment. + +**Real workflow example:** + +```bash +# After migrating FactionController to core/ +python tools/migration/analyze.py migration-diff \ + --old src/main/java/noppes/npcs/controllers/FactionController.java \ + --new core/src/main/java/noppes/npcs/controllers/FactionController.java + +# Expected output for a well-migrated file: +# VERDICT: WARN [0 unmigrated, 0 missing, 2 body diffs] +# The body diffs are expected: loadFactions() changed from DataInputStream to INbt, +# and saveFactions() changed from CompressedStreamTools to PlatformServiceHolder. +# Manual review confirms these are correct migration changes → file is good. + +# For a file with issues: +# VERDICT: FAIL [1 unmigrated, 2 missing, 0 body diffs] +# ! EntityPlayer still in new file → forgot to run Symbol-Swap +# - loadData(DataInputStream) missing → method used MC I/O, needs rewrite +# - getWorldInstance() missing → removed accidentally during migration +``` + +**When to use:** +- **After every file migration** → run as the final validation step before marking a file as "migrated" +- **After a migration wave** → batch-validate all files in the wave +- **Before committing** → catch accidental method deletions or leftover MC types +- **Regression detection** → re-run on previously migrated files after Symbol-Swap updates + +--- + +## Diagnostic Playbook — How to Solve Real Migration Problems + +> **The diagnostic tools exist so you NEVER guess.** Every migration decision — which files, which types, which methods, which strategy — should be backed by data from these tools. +> +> **Read the entire playbook.** These aren't isolated patterns; real migrations chain multiple plays together. Understanding all of them lets you pick the right sequence for your specific situation. + +--- + +### PLAY 1: "Which files should I migrate next?" + +**The problem:** You have 1,453 files with MC dependencies. You need to pick the next batch that gives maximum progress with minimum new PA interfaces. + +**The tool sequence:** + +```bash +# 1. Start with candidate files you're considering +python tools/migration/analyze.py query-file noppes/npcs/controllers/QuestController.java --readiness +python tools/migration/analyze.py query-file noppes/npcs/controllers/DialogController.java --readiness +python tools/migration/analyze.py query-file noppes/npcs/controllers/PlayerQuestController.java --readiness + +# Real results: +# QuestController: 66.7% ready — blocked by CompressedStreamTools only +# DialogController: 66.7% ready — blocked by CompressedStreamTools only +# PlayerQuestController: 66.7% ready — blocked by CompressedStreamTools only +``` + +**How to interpret:** All three share the same blocker (CompressedStreamTools). That means fixing ONE type unblocks the ENTIRE batch. This is a high-leverage wave. + +**Next step — evaluate the blocker:** +```bash +python tools/migration/analyze.py query-type CompressedStreamTools --top 5 +# → 2 methods: readCompressed, writeCompressed +# → Used in 39 files total + +# Decision: Only 2 methods → Static-Transform, not a PA interface +``` + +**The decision rule:** +- Readiness ≥ 60% → good candidate, few blockers +- Readiness 30-60% → viable but will need new PA interfaces or stubs +- Readiness < 30% → too many blockers, defer unless you're specifically targeting that subsystem +- **Same blocker across multiple files** → high leverage, fix the blocker and migrate them all + +**Contrast with the wrong approach (EntityNPCInterface.java):** +```bash +python tools/migration/analyze.py query-file noppes/npcs/entity/EntityNPCInterface.java --readiness +# → 15.3% ready, 50 blocking types +# → This file NEVER migrates to core. It extends Entity. It stays in mc1710. Don't waste time. +``` + +--- + +### PLAY 2: "I need to create a PA interface — what methods go in it?" + +**The problem:** You've identified `DamageSource` as a blocker. You need to design `IDamageSource`. But should it have 3 methods or 30? How do you know what's enough? + +**Step 1 — Global surface scan (what does the whole codebase need?):** +```bash +python tools/migration/analyze.py surface-miner DamageSource +# METHODS (8 unique): +# getEntity instance 7 ← most used, definitely include +# isMagicDamage instance 2 +# isFireDamage instance 2 +# isExplosion instance 2 +# isProjectile instance 2 +# getSourceOfDamage instance 2 +# isUnblockable instance 2 +# getDamageType instance 2 +# +# STATIC CALLS (3 unique): +# causePlayerDamage static 6 ← factory method, needs design decision +# causeMobDamage static 5 +# causeThrownDamage static 1 +# +# FIELDS (1 unique): +# damageType 4 ← direct field access, must become a getter +``` + +**Step 2 — Scoped scan (what does ONLY the target migration area need?):** +```bash +python tools/migration/analyze.py type-usage DamageSource --scope noppes/npcs/controllers/ +# → Maybe controllers/ only uses getEntity() and getDamageType() +# → You might create a minimal interface for now, expand later +``` + +**Step 3 — Context check (how hard is this type to abstract?):** +```bash +python tools/migration/analyze.py query-type DamageSource +# Key things to look for: +# Constructors: 0 → nobody creates new DamageSource instances in our code (good!) +# Casts: 1 → almost no casting (good!) +# instanceof: 0 → no runtime type checks (good!) +# Hierarchy: nobody extends DamageSource in our codebase (good!) +# +# Verdict: Simple wrappable type. 8 instance methods + 3 static factories. +``` + +**Step 4 — If PA interface already exists, audit it:** +```bash +python tools/migration/analyze.py surface-miner DamageSource \ + --compare-existing platform-api/src/main/java/noppes/npcs/api/IDamageSource.java +# Shows [PA] vs [MISSING] per method +# → Any [MISSING] method with usage > 5 should be added +# → [MISSING] methods with usage 1-2 can wait +``` + +**Design rules derived from diagnostics:** +- **Instance methods** with usage ≥ 2 → add to interface +- **Static methods** → become static factory methods on the interface or on a companion factory class +- **Field accesses** → become getter methods (e.g., `damageType` field → `getDamageType()`) +- **High cast count** → you need an `unwrap()` or `getMCEntity()` escape hatch method +- **High instanceof count** → you may need subtype interfaces, not just one flat interface +- **Classes extend this MC type** → you CANNOT wrap it simply. It might need to stay in mc1710 or use a more complex delegation pattern + +--- + +### PLAY 3: "PA interface vs Static-Transform — which strategy?" + +**The problem:** Not every MC type deserves a full PA interface. Some are better handled by regex replacement. How do you decide? + +**The diagnostic sequence:** +```bash +python tools/migration/analyze.py query-type --top 5 +``` + +**Decision matrix:** + +| Diagnostic Signal | Strategy | Why | +|---|---|---| +| 1-3 static methods, no instance calls, no fields | **Static-Transform** | Just rewrite the call sites with regex | +| Few method calls (<5 unique) across <10 files | **Static-Transform** | Not worth a whole interface | +| Many methods (5+) across many files (10+) | **PA Interface** | Too many call patterns for regex | +| Direct field access (`.posX`, `.inventory`) | **PA Interface** | Fields become getters; regex can't handle all contexts | +| High constructor count (`new MCType(...)`) | **PA Interface** with factory | Need `PlatformService.create...()` factory | +| High cast count (`(MCType) expr`) | **PA Interface** with `unwrap()` | Casts become wrapper conversions | +| Type appears in method signatures | **PA Interface** | Methods need to accept/return the interface type | +| Annotation type (`@SideOnly`, `@Override`) | **Static-Transform** | Just swap annotation text | + +**Real examples from our codebase:** + +```bash +# CompressedStreamTools → Static-Transform (2 static methods, no state) +python tools/migration/analyze.py query-type CompressedStreamTools +# → 2 methods: readCompressed, writeCompressed. Used as utility calls only. +# → Strategy: Static-Transform to PlatformServiceHolder.get().readCompressedNBT(...) + +# MathHelper → Static-Transform (pure static utility) +python tools/migration/analyze.py query-type MathHelper --methods-only --top 5 +# → clamp_int, clamp_float, clamp_double, sqrt_double, floor_double +# → Strategy: Static-Transform to ValueUtil.clampInt(...) etc. + +# Side/SideOnly → Static-Transform (annotations) +# → 800 imports but literally just annotation text replacement +# → Strategy: @SideOnly(Side.CLIENT) → @ClientOnly + +# EntityPlayer → PA Interface (46 methods, 47 fields, 551 files, 180 casts) +python tools/migration/analyze.py query-type EntityPlayer +# → Massively used, has IPlayer already. Cannot be handled by regex. + +# ResourceLocation → PA Interface (145 imports, 30 methods, used in constructors + as params) +python tools/migration/analyze.py query-type ResourceLocation --top 5 +# → Appears in method signatures, passed to other MC methods. Needs interface. +``` + +--- + +### PLAY 4: "I'm about to migrate a subsystem — give me the full intelligence briefing" + +**The problem:** You're assigned to migrate the quest subsystem. You need to know EVERYTHING about its MC dependencies before writing a single line. + +**The full intelligence sequence:** + +```bash +# 1. File-by-file readiness scan +python tools/migration/analyze.py query-file noppes/npcs/quests/QuestItem.java --readiness +python tools/migration/analyze.py query-file noppes/npcs/quests/QuestKill.java --readiness +python tools/migration/analyze.py query-file noppes/npcs/quests/QuestDialog.java --readiness +python tools/migration/analyze.py query-file noppes/npcs/quests/QuestLocation.java --readiness +python tools/migration/analyze.py query-file noppes/npcs/quests/QuestManual.java --readiness +python tools/migration/analyze.py query-file noppes/npcs/controllers/QuestController.java --readiness + +# 2. For EACH blocking type, get the usage picture scoped to your subsystem +python tools/migration/analyze.py type-usage NBTTagCompound --scope noppes/npcs/quests/ +python tools/migration/analyze.py type-usage EntityPlayer --scope noppes/npcs/quests/ +python tools/migration/analyze.py type-usage CompressedStreamTools --scope noppes/npcs/quests/ + +# 3. For types that need PA interfaces, get the minimal surface +python tools/migration/analyze.py surface-miner NBTTagCompound --compare-existing platform-api/src/main/java/noppes/npcs/api/INbt.java +# → Know exactly which INbt methods are needed vs already covered + +# 4. Coverage baseline (before migration) +python tools/migration/analyze.py coverage-report +``` + +**How to read the briefing and write your migration script:** + +The `type-usage` output for your scope tells you exactly what goes into your `-Swaps` parameter: +- Every method call on `NBTTagCompound` → these must exist on `INbt` after migration +- Every field access → these become getter/setter methods on the PA interface +- Constructor count → tells you how many `new NBTTagCompound()` → `NBT.compound()` transforms +- Cast count → tells you if you need wrapper conversion utilities +- instanceof count → tells you if runtime type checks need refactoring + +**Then you write the wave script with confidence** — no guessing about what swaps to include, what stubs are needed, or what static transforms to apply. + +--- + +### PLAY 5: "Build failed after migration — how do I fix it systematically?" + +**The problem:** You ran your migration wave script. Build-Report shows 47 errors. Where do you start? + +**Step 1 — Categorize errors (you already have Build-Report output):** +``` +MISSING_PACKAGE:net.minecraft.nbt → leftover MC import, run Nuke-Imports +MISSING_CLASS:CompressedStreamTools → need a stub or static transform +MISSING_METHOD:getCompoundTag → INbt doesn't have this method yet +TYPE_MISMATCH → incompatible types, wrong swap or missing conversion +``` + +**Step 2 — Use diagnostics to understand each error category:** + +For `MISSING_METHOD:getCompoundTag`: +```bash +# Is this method supposed to be on INbt? +python tools/migration/analyze.py surface-miner NBTTagCompound --compare-existing platform-api/src/main/java/noppes/npcs/api/INbt.java +# → getCompoundTag shows as [MISSING] with 89 usages +# → It maps to getCompound() in INbt (different name!) +# → Fix: Add a Static-Transform: getCompoundTag → getCompound +``` + +For `TYPE_MISMATCH`: +```bash +# Find which files are trying to use the wrong type +python tools/migration/analyze.py type-usage EntityPlayer --scope core/src/main/java +# → If there are still EntityPlayer references in core/, Symbol-Swap missed some +# → If it's a cast issue, type-usage shows the exact cast count per file +``` + +**The fix cycle uses both toolchains:** +```powershell +# ROUND 1: Fix what diagnostics revealed +Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes @('net.minecraft.nbt.') +Static-Transform -Directory 'core/src/main/java' -Transforms @( + @('\.getCompoundTag\(', '.getCompound(') +) +Generate-Stubs -Stubs @( + @{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; body='...' } +) + +# ROUND 2: Build again +Build-Report -GradleTask ':core:compileJava' +# → Errors should drop from 47 to <10 +``` + +**Key insight:** Don't fix errors one at a time. Use `query-type` and `surface-miner` to understand the PATTERN, then fix the entire category with one tool invocation. + +--- + +### PLAY 6: "After migration, did I break anything?" + +**The problem:** Migration wave is done, build passes. But did you accidentally drop methods, change signatures, or leave MC types leaking through? + +**Validation checklist (run ALL of these):** + +```bash +# 1. Signature diff — catch unintended changes +python tools/migration/analyze.py diff-signatures \ + --old mc1710/src/main/java/noppes/npcs/controllers/QuestController.java \ + --new core/src/main/java/noppes/npcs/controllers/QuestController.java + +# What you EXPECT to see: +# CHANGED: methods where NBTTagCompound → INbt, EntityPlayer → IPlayer (type migration) +# ADDED: possibly new overloads with PA types +# REMOVED: old MC-typed overloads replaced by PA-typed ones +# +# What you DON'T want to see: +# REMOVED methods that weren't replaced (accidental deletion) +# CHANGED return types that shouldn't have changed (over-zealous Symbol-Swap) +# Methods with wrong parameter types (mangled by regex) + +# 2. Readiness check — core file should be 100% clean +python tools/migration/analyze.py query-file core/src/main/java/noppes/npcs/controllers/QuestController.java --readiness +# → Must be 100%. If not, MC types leaked through. + +# 3. Coverage improvement — did the wave actually help? +python tools/migration/analyze.py coverage-report +# → Compare import coverage before vs after +``` + +**Common post-migration problems and how diagnostics catch them:** + +| Problem | Diagnostic | Fix | +|---------|-----------|-----| +| MC type leaking in core file | `query-file --readiness` shows < 100% | Run Symbol-Swap or Nuke-Imports on the missed type | +| Method accidentally deleted | `diff-signatures` shows unexpected REMOVED | Restore from mc1710 original, re-apply migration | +| Return type mangled by regex | `diff-signatures` shows unexpected CHANGED | Static-Transform was too greedy — refine regex | +| PA interface missing methods | `surface-miner --compare-existing` shows [MISSING] | Add methods to PA interface | + +--- + +### PLAY 7: "What should I abstract next for maximum ROI?" + +**The problem:** You have finite time. Which PA interfaces give you the most migration unlock per hour of work? + +```bash +# 1. Get the top blockers +python tools/migration/analyze.py coverage-report --detailed + +# Current top blockers: +# Side (405) / SideOnly (395) — handle with Static-Transform (10 min) +# GuiButton (218) — client-only, SKIP (never goes to core) +# Minecraft (180) — client-only, SKIP +# ResourceLocation (145) — needs PA interface +# MathHelper (98) — handle with Static-Transform (10 min) +# Block (84) — mixed, some uses might be abstractable +# TileEntity (78) — complex, defer + +# 2. Eliminate the easy wins first +# Side/SideOnly: 800 imports eliminated by annotation swap (cost: 10 min, value: +12% coverage) +# MathHelper: 98 imports eliminated by static method swap (cost: 10 min, value: +1.5%) +# Total: 20 min work → coverage jumps from 37.1% to ~50.6% + +# 3. For real PA interface candidates, check complexity +python tools/migration/analyze.py query-type ResourceLocation +# 145 imports, 30 methods called, 1 field, 3 constructors +# → Medium complexity PA interface. Worth doing. + +python tools/migration/analyze.py query-type TileEntity +# 78 imports, 63 methods, 51 fields, 10 subclasses extend it +# → HIGH complexity. Many subclasses. Defer. + +python tools/migration/analyze.py query-type AxisAlignedBB +# 59 imports, 68 methods, 28 fields +# → But query-type reveals: mostly used in entity code that stays in mc1710 +# → SKIP for now — most users won't migrate to core anyway +``` + +**ROI scoring formula:** +``` +ROI = (import_count × files_unblocked) / (unique_methods + field_count + constructor_complexity + cast_count) +``` + +- High import count + low method count = **HIGH ROI** (e.g., Side/SideOnly, MathHelper) +- High import count + high method count but simple delegation = **MEDIUM ROI** (e.g., ResourceLocation) +- High import count + subclasses + casts + field access = **LOW ROI** (e.g., TileEntity, AxisAlignedBB) + +--- + +### PLAY 8: "I need to understand how deeply a type is woven into a subsystem" + +**The problem:** Before migrating `controllers/`, you need to know if `EntityPlayer` is used lightly (easy swap) or deeply (casts everywhere, field access, instanceof — hard migration). + +```bash +python tools/migration/analyze.py type-usage EntityPlayer --scope noppes/npcs/controllers/ + +# The output tells you EVERYTHING: +# METHOD CALLS (11 unique, 20 total) — these become IPlayer method calls (easy) +# FIELD ACCESSES (20 unique, 29 total) — these need IPlayer getters (medium) +# CONSTRUCTORS: 0 — nobody creates EntityPlayer instances (good!) +# CASTS: 42 in 12 files — DANGER: this means lots of (EntityPlayer) casts +# INSTANCEOF: 5 in 3 files — some runtime type checking to handle +``` + +**How to interpret each signal:** + +**Casts: 42 occurrences** — This is the hardest part. Each `(EntityPlayer) someEntity` becomes a wrapper conversion. You need: +- A `PlatformServiceHolder.get().asPlayer(entity)` utility +- Or `if (entity instanceof IPlayer)` checks +- The per-file breakdown tells you WHERE to focus: `CustomEffectController.java` has 11 casts — start there + +**Field accesses: 20 unique fields** — Each `player.inventory`, `player.posX`, `player.worldObj` must become a method call on `IPlayer`. If `IPlayer` already has `getInventory()`, `getX()`, `getWorld()` — great. If not, you need to add them. Use `extract-signatures` on IPlayer to check: +```bash +python tools/migration/analyze.py extract-signatures platform-api/src/main/java/noppes/npcs/api/entity/IPlayer.java --public-only --json +# → Check if getInventory, getX, getWorld exist +``` + +**instanceof: 5 occurrences** — Each `if (entity instanceof EntityPlayer)` becomes `if (entity instanceof IPlayer)`. Usually straightforward, but verify the cast pattern that typically follows. + +--- + +### PLAY 9: "The full diagnostic-to-migration pipeline" + +**This is the complete workflow for a real migration wave from start to finish.** + +``` +PHASE 1: INTELLIGENCE GATHERING (5-10 min) +├── coverage-report --detailed → current baseline, top blockers +├── query-file --readiness × N → pick candidates (≥60% readiness) +├── type-usage --scope → understand blockers in target area +├── surface-miner → design PA interfaces needed +└── query-type → decide PA interface vs Static-Transform + +PHASE 2: WAVE SCRIPT WRITING (10-20 min) +├── Copy-Recursive → copy files to core +├── Nuke-Imports → strip MC imports +├── Symbol-Swap → replace types with PA types +├── Static-Transform → rewrite method calls +├── Generate-Stubs → placeholder missing deps +├── Dedupe-Imports → clean up +└── Build-Report → categorize errors + +PHASE 3: FIX CYCLE (5-30 min depending on wave size) +├── For MISSING_METHOD errors: +│ └── surface-miner --compare-existing → find method name mappings +│ └── Static-Transform → rename method calls +├── For MISSING_CLASS errors: +│ └── query-type → understand what it is +│ └── Generate-Stubs OR pa interface → fix appropriately +├── For TYPE_MISMATCH errors: +│ └── type-usage --scope core/ → find the exact locations +│ └── Manual fix or Static-Transform → correct the types +└── Build-Report again → verify error count dropped + +PHASE 4: VALIDATION (5 min) +├── diff-signatures --old mc1710/... --new core/... → verify only expected changes +├── query-file core/.../ --readiness → must be 100% +└── coverage-report → confirm coverage improved +``` + +**The key principle:** NEVER skip Phase 1. Agents that jump straight to Phase 2 waste hours fixing avoidable errors. 10 minutes of diagnostics saves 2 hours of debugging. + +--- + +### PLAY 10: "After migrating a file — verify it's complete" + +**The problem:** You've migrated `QuestController.java` from mc1710 to core. The build passes. But did you lose any methods? Are there MC types that slipped through Symbol-Swap? Did any method bodies change in unexpected ways? + +**The tool:** `migration-diff` — the final validation step in any migration wave. + +```bash +# Run migration-diff as the LAST step after build passes +python tools/migration/analyze.py migration-diff \ + --old src/main/java/noppes/npcs/controllers/QuestController.java \ + --new core/src/main/java/noppes/npcs/controllers/QuestController.java +``` + +**How to interpret results:** + +**PASS** → File is clean. All methods present, no leftover MC types, bodies match after normalization. You can confidently mark this file as migrated. + +**WARN with UNMIGRATED types** → Symbol-Swap missed some type replacements. Fix: +```powershell +Symbol-Swap -Directory 'core/src/main/java' -Swaps @( + @('MissedType', 'IPAType', 'old.import', 'new.import') +) +``` +Then re-run `migration-diff` to verify. + +**WARN with SEMANTIC_BODY_DIFF** → Method bodies differ after normalization. Check each flagged method: +- If the diff is `new NBTTagCompound()` → `NBT.compound()` style → expected, safe +- If the diff shows logic changes (new conditions, different algorithm) → manual review required +- If the diff is just whitespace/formatting → safe, ignore + +**FAIL with MISSING_METHOD** → Methods from the original file are gone. Check: +- Was the method intentionally excluded (MC-specific registration, client hooks)? +- Was it accidentally deleted during migration? +- Was the signature changed in a way that normalization didn't catch (e.g., different param count)? + +**Batch validation after a wave:** +```bash +# Validate all files in a migration wave +for old_file in QuestController DialogController PlayerQuestController; do + echo "=== $old_file ===" + python tools/migration/analyze.py migration-diff \ + --old "src/main/java/noppes/npcs/controllers/${old_file}.java" \ + --new "core/src/main/java/noppes/npcs/controllers/${old_file}.java" +done +``` + +**The complete Phase 4 with migration-diff:** +``` +PHASE 4: VALIDATION (5 min) +├── migration-diff --old mc1710/... --new core/... → comprehensive PASS/WARN/FAIL +├── diff-signatures --old mc1710/... --new core/... → detailed signature changes +├── query-file core/.../ --readiness → must be 100% +└── coverage-report → confirm coverage improved +``` + +`migration-diff` is the broadest check (types + methods + bodies). `diff-signatures` gives more detail on signature changes. `query-file --readiness` catches any remaining MC imports. Use all three for maximum confidence. + +--- + +## Diagnostic Output Formats + +All subcommands support `--json` for piping into scripts or feeding into other tools. + +**JSON outputs are ideal for:** +- Batch analysis scripts (`for file in ...; do python analyze.py query-file "$file" --readiness --json; done`) +- Feeding `surface-miner --json` results into Generate-Interface method list +- Automated migration wave planning scripts +- CI/CD coverage tracking + +**Human-readable output is ideal for:** +- Quick checks during migration work +- Copy-pasting into agent conversations for context +- Decision-making (the tabular format makes comparisons easy) + +--- + +## Current Codebase Statistics (from latest scan) + +These numbers represent the **full mc1710 codebase** as of the last `scan_codebase.py` run: + +| Metric | Value | +|--------|-------| +| Total Java files | 1,722 | +| Files with MC dependencies | 1,453 (84%) | +| Total MC imports | 6,723 | +| Unique MC types | 400 | +| PA abstraction coverage (types) | 11/400 (2.8%) | +| PA abstraction coverage (imports) | 2,494/6,723 (37.1%) | +| Classes extending MC types | 291 | +| Classes implementing MC interfaces | 61 | +| Most-imported type | NBTTagCompound (593 imports) | +| Most method-heavy type | NBTTagCompound (4,447 method calls) | +| Most field-heavy type | EntityLivingBase (1,113 field accesses) | +| Highest MC dependency file | EntityNPCInterface.java (59 imports) | + +**Currently abstracted types (11):** +`NBTTagCompound→INbt`, `NBTTagList→INbtList`, `Entity→IEntity`, `EntityLivingBase→IEntityLivingBase`, `EntityLiving→IEntityLiving`, `EntityPlayer→IPlayer`, `EntityPlayerMP→IPlayer`, `ItemStack→IItemStack`, `World→IWorld`, `WorldServer→IWorld`, `DamageSource→IDamageSource` + +--- + +## Limitations & Known Gaps + +1. **No batch readiness query** — Can't ask "show me the 20 easiest files to migrate" in one command. Workaround: script with `--json`: + ```bash + # Find most-migratable files (use jq or python to sort by readiness) + for f in $(python -c "import json; idx=json.load(open('tools/migration/mc_usage_index.json')); [print(f) for f in sorted(idx['files'])]"); do + python tools/migration/analyze.py query-file "$f" --readiness --json 2>/dev/null + done | python -c "import sys,json; ..." + ``` + +2. **No cross-reference query** — Can't ask "which files use BOTH EntityPlayer AND NBTTagCompound?" Workaround: use the `--json` output and intersect file lists manually. + +3. **Scoped surface-miner returns empty for fully-migrated modules** — If core/ already replaced `EntityPlayer` with `IPlayer`, then `--scope core/` finds 0 EntityPlayer calls. This is correct behavior — scope to `mc1710/` or omit `--scope` for full picture. + +4. **Obfuscated method names** — The scanner captures MCP names as-is (`func_150296_c`). Cross-reference with MCP mappings to find the real name. + +5. **No inheritance-aware method resolution** — If `EntityPlayerMP` inherits `getHealth()` from `EntityLivingBase`, the scanner attributes the call to whichever variable type was used at the call site. Both types' method lists are independent. diff --git a/tools/migration/Build-Report.ps1 b/tools/migration/Build-Report.ps1 new file mode 100644 index 000000000..1b918229f --- /dev/null +++ b/tools/migration/Build-Report.ps1 @@ -0,0 +1,136 @@ +# Build-Report.ps1 +# ================= +# SUPERWEAPON: Run a Gradle build and categorize errors into actionable patterns. +# +# Instead of dumping 500 lines of raw Gradle output, this function: +# 1. Runs the specified Gradle task +# 2. Captures all error lines +# 3. Categorizes them into patterns: MISSING_CLASS, MISSING_PACKAGE, MISSING_METHOD, +# TYPE_MISMATCH, OTHER +# 4. Outputs a structured report with counts and sample errors +# +# The agent reads the report and fixes errors one category at a time. No panic. +# +# USAGE: +# . tools/migration/Build-Report.ps1 +# +# Build-Report -GradleTask ':core:compileJava' +# Build-Report -GradleTask ':core:compileJava' -MaxSamples 5 +# +# PARAMS: +# -GradleTask The Gradle task to run (e.g., ':core:compileJava', 'build'). +# -MaxSamples Max number of sample errors to show per category. Default: 3. +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# +# OUTPUT: +# Returns hashtable of categorized errors. +# Prints structured report to stdout. + +function Build-Report { + param( + [Parameter(Mandatory=$true)] + [string]$GradleTask, + + [int]$MaxSamples = 3, + + [string]$ProjectRoot + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + Write-Host "" + Write-Host "============================================" + Write-Host " BUILD-REPORT -- Error Categorizer" + Write-Host "============================================" + Write-Host "Task: $GradleTask" + Write-Host "Root: $ProjectRoot" + Write-Host "============================================" + Write-Host "" + Write-Host "Running build..." + + # Run Gradle and capture output + $gradlew = Join-Path $ProjectRoot 'gradlew.bat' + if (!(Test-Path $gradlew)) { + $gradlew = Join-Path $ProjectRoot 'gradlew' + } + + $output = & cmd /c "`"$gradlew`" $GradleTask 2>&1" | Out-String + + # Parse error lines + $errors = @{} + $output -split "`n" | Where-Object { $_ -match 'error:' } | ForEach-Object { + $line = $_.Trim() + + if ($line -match '(?[^\s:]+\.java):(?\d+):\s*error:\s*(?.+)') { + $msg = $Matches.msg.Trim() + $file = $Matches.file + $linenum = $Matches.linenum + + $category = if ($msg -match 'cannot find symbol.*symbol:\s*class\s+(\w+)') { + "MISSING_CLASS:$($Matches[1])" + } elseif ($msg -match 'package\s+(\S+)\s+does not exist') { + "MISSING_PACKAGE:$($Matches[1])" + } elseif ($msg -match 'cannot find symbol.*symbol:\s*method\s+(\w+)') { + "MISSING_METHOD:$($Matches[1])" + } elseif ($msg -match 'cannot find symbol.*symbol:\s*variable\s+(\w+)') { + "MISSING_VARIABLE:$($Matches[1])" + } elseif ($msg -match 'cannot find symbol') { + "MISSING_SYMBOL" + } elseif ($msg -match 'incompatible types') { + "TYPE_MISMATCH" + } elseif ($msg -match 'cannot be applied') { + "BAD_ARGS" + } elseif ($msg -match 'is not abstract') { + "ABSTRACT_VIOLATION" + } elseif ($msg -match 'unreported exception') { + "UNCHECKED_EXCEPTION" + } else { + "OTHER" + } + + if (!$errors[$category]) { $errors[$category] = [System.Collections.ArrayList]::new() } + [void]$errors[$category].Add("$file`:$linenum -- $msg") + } + } + + # Count total + $totalErrors = 0 + foreach ($cat in $errors.Keys) { $totalErrors += $errors[$cat].Count } + + # Check if build succeeded + $buildPassed = $output -match 'BUILD SUCCESSFUL' + + # Report + Write-Host "" + Write-Host "============================================" + Write-Host " BUILD REPORT" + Write-Host "============================================" + + if ($buildPassed) { + Write-Host "BUILD SUCCESSFUL -- no errors!" + Write-Host "============================================" + return @{ Success = $true; Errors = @{}; Total = 0 } + } + + Write-Host "Total errors: $totalErrors" + Write-Host "" + + foreach ($cat in $errors.Keys | Sort-Object) { + $count = $errors[$cat].Count + Write-Host "--- $cat ($count occurrences) ---" + $errors[$cat] | Select-Object -First $MaxSamples | ForEach-Object { + Write-Host " $_" + } + if ($count -gt $MaxSamples) { + Write-Host " ... and $($count - $MaxSamples) more" + } + Write-Host "" + } + + Write-Host "============================================" + + return @{ Success = $false; Errors = $errors; Total = $totalErrors } +} diff --git a/tools/migration/Copy-Recursive.ps1 b/tools/migration/Copy-Recursive.ps1 new file mode 100644 index 000000000..85112d204 --- /dev/null +++ b/tools/migration/Copy-Recursive.ps1 @@ -0,0 +1,244 @@ +# Copy-Recursive.ps1 +# ==================== +# SUPERWEAPON: Recursive dependency-aware file copier. +# +# Given one or more Java source files from mc1710, this function: +# 1. Copies each file to the corresponding location in core/ +# 2. Parses all import statements in the copied file +# 3. For each import that maps to another project file: +# - Checks if the file's path starts with an ALLOWED prefix (whitelist) +# - Checks if it already exists in core/ +# - If allowed AND not in core, copies it +# - Then recursively processes THAT file's imports +# 4. Skips all Minecraft/Forge/Java stdlib imports +# 5. Logs every file it copies and every file it skips (with reason) +# +# USAGE: +# . tools/migration/Copy-Recursive.ps1 +# +# # Copy AnimationController and ALL its allowed deps: +# Copy-Recursive -Sources @('noppes/npcs/controllers/AnimationController.java') ` +# -AllowPaths @('noppes/npcs/controllers/', 'noppes/npcs/roles/', 'noppes/npcs/quests/', 'noppes/npcs/config/') +# +# PARAMS: +# -Sources Array of relative paths within McRoot (e.g., 'noppes/npcs/controllers/Foo.java') +# -AllowPaths WHITELIST: only recursively copy files whose path starts with one of these prefixes. +# The initial -Sources files are ALWAYS copied regardless of whitelist. +# If empty/not provided, ALL project files are allowed (no filter). +# -McRoot Source root directory (default: 'mc1710/src/main/java') +# -CoreRoot Destination root directory (default: 'core/src/main/java') +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# -ForbiddenPrefixes Import prefixes that are NEVER followed (external deps). +# Defaults to java.*, net.minecraft.*, cpw.mods.*, net.minecraftforge.*, etc. +# +# OUTPUT: +# Returns array of all files that were copied (relative paths). +# Prints detailed log to stdout. + +function Copy-Recursive { + param( + [Parameter(Mandatory=$true)] + [string[]]$Sources, + + [string[]]$AllowPaths = @(), + + [string]$McRoot = 'mc1710/src/main/java', + [string]$CoreRoot = 'core/src/main/java', + [string]$ProjectRoot, + + # Import prefixes that are NEVER followed/copied (external deps) + [string[]]$ForbiddenPrefixes = @( + 'java.', 'javax.', 'sun.', + 'net.minecraft.', 'cpw.mods.', 'net.minecraftforge.', + 'org.lwjgl.', 'org.apache.', 'com.google.', + 'org.mozilla.', 'io.netty.', 'org.objectweb.', + 'scala.', 'org.spongepowered.' + ) + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + # State + $script:visited = @{} + $script:copied = [System.Collections.ArrayList]::new() + $script:skippedExisting = [System.Collections.ArrayList]::new() + $script:skippedNotAllowed = [System.Collections.ArrayList]::new() + $script:notFound = [System.Collections.ArrayList]::new() + $script:depth = 0 + + $hasWhitelist = $AllowPaths.Count -gt 0 + + function Is-Forbidden { + param([string]$Import) + foreach ($prefix in $ForbiddenPrefixes) { + if ($Import.StartsWith($prefix)) { return $true } + } + return $false + } + + function Is-Allowed { + param([string]$RelativePath) + if (-not $hasWhitelist) { return $true } + foreach ($allow in $AllowPaths) { + if ($RelativePath.StartsWith($allow)) { return $true } + } + return $false + } + + function Process-File { + param( + [string]$RelativePath, + [bool]$IsInitialSource = $false + ) + + # Normalize separators + $RelativePath = $RelativePath -replace '\\', '/' + + # Avoid cycles + if ($script:visited.ContainsKey($RelativePath)) { return } + $script:visited[$RelativePath] = $true + + # Whitelist check (initial sources bypass) + if (-not $IsInitialSource -and -not (Is-Allowed -RelativePath $RelativePath)) { + [void]$script:skippedNotAllowed.Add($RelativePath) + return + } + + $srcFull = Join-Path $ProjectRoot (Join-Path $McRoot $RelativePath) + $dstFull = Join-Path $ProjectRoot (Join-Path $CoreRoot $RelativePath) + + # Skip if already exists in core + if (Test-Path $dstFull) { + [void]$script:skippedExisting.Add($RelativePath) + # STILL parse imports to find transitive deps that may not exist in core yet + $content = [IO.File]::ReadAllText($dstFull) + $indent = ' ' * $script:depth + Write-Host "${indent}EXISTS: $RelativePath" + Parse-And-Follow -Content $content + return + } + + # Skip if source doesn't exist in mc1710 + if (!(Test-Path $srcFull)) { + [void]$script:notFound.Add($RelativePath) + return + } + + # Copy the file + $dir = Split-Path $dstFull -Parent + if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null } + Copy-Item $srcFull $dstFull -Force + + [void]$script:copied.Add($RelativePath) + $indent = ' ' * $script:depth + Write-Host "${indent}COPIED: $RelativePath" + + # Parse imports and recurse + $content = [IO.File]::ReadAllText($srcFull) + Parse-And-Follow -Content $content + } + + function Parse-And-Follow { + param([string]$Content) + + $imports = [regex]::Matches($Content, 'import\s+(?:static\s+)?([^;]+);') + + $script:depth++ + + foreach ($match in $imports) { + $imp = $match.Groups[1].Value.Trim() + + # Skip forbidden (MC, Forge, Java stdlib, etc.) + if (Is-Forbidden -Import $imp) { + continue + } + + # Handle wildcard imports: import noppes.npcs.controllers.data.*; + if ($imp -match '\.\*$') { + $pkgPath = ($imp -replace '\.\*$', '') -replace '\.', '/' + $pkgDir = Join-Path $ProjectRoot (Join-Path $McRoot $pkgPath) + if (Test-Path $pkgDir) { + Get-ChildItem -Path $pkgDir -Filter '*.java' -File | ForEach-Object { + $relPath = ($pkgPath + '/' + $_.Name) -replace '\\', '/' + Process-File -RelativePath $relPath + } + } + continue + } + + # Convert import to file path and try to find it + $filePath = ($imp -replace '\.', '/') + '.java' + $fullCheck = Join-Path $ProjectRoot (Join-Path $McRoot $filePath) + + if (Test-Path $fullCheck) { + Process-File -RelativePath $filePath + } else { + # Might be inner class or static member -- try removing last segment(s) + $parts = $imp -split '\.' + for ($i = $parts.Length - 1; $i -ge 1; $i--) { + $tryImport = ($parts[0..($i-1)] -join '/') + '.java' + $tryFull = Join-Path $ProjectRoot (Join-Path $McRoot $tryImport) + if (Test-Path $tryFull) { + Process-File -RelativePath $tryImport + break + } + } + } + } + + $script:depth-- + } + + # ===== MAIN EXECUTION ===== + Write-Host "" + Write-Host "============================================" + Write-Host " COPY-RECURSIVE -- Dependency-Aware Copier" + Write-Host "============================================" + Write-Host "Source root: $McRoot" + Write-Host "Dest root: $CoreRoot" + Write-Host "Targets: $($Sources.Count) file(s)" + if ($hasWhitelist) { + Write-Host "Whitelist: $($AllowPaths.Count) path prefix(es)" + foreach ($a in $AllowPaths) { Write-Host " >> $a" } + } else { + Write-Host "Whitelist: NONE (all project files allowed)" + } + Write-Host "============================================" + Write-Host "" + + foreach ($src in $Sources) { + $src = $src -replace '\\', '/' + Process-File -RelativePath $src -IsInitialSource $true + } + + # ===== SUMMARY ===== + Write-Host "" + Write-Host "============================================" + Write-Host " RECURSIVE COPY SUMMARY" + Write-Host "============================================" + Write-Host "Files COPIED: $($script:copied.Count)" + foreach ($f in $script:copied) { + Write-Host " + $f" + } + Write-Host "" + Write-Host "Already in core: $($script:skippedExisting.Count)" + foreach ($f in $script:skippedExisting) { + Write-Host " = $f" + } + Write-Host "" + Write-Host "Skipped (not whitelisted): $($script:skippedNotAllowed.Count)" + foreach ($f in $script:skippedNotAllowed) { + Write-Host " x $f" + } + Write-Host "" + Write-Host "Not found in mc1710: $($script:notFound.Count)" + foreach ($f in $script:notFound) { + Write-Host " ? $f" + } + Write-Host "============================================" + + return $script:copied.ToArray() +} diff --git a/tools/migration/Create-And-Propagate.ps1 b/tools/migration/Create-And-Propagate.ps1 new file mode 100644 index 000000000..1bb334bd4 --- /dev/null +++ b/tools/migration/Create-And-Propagate.ps1 @@ -0,0 +1,142 @@ +# Create-And-Propagate.ps1 +# ======================== +# SUPERWEAPON: Atomically create a PA interface AND replace its MC equivalent everywhere. +# +# This function: +# 1. Writes a new file (typically a platform-api interface) +# 2. Scans all .java files in a target directory +# 3. For each file, performs Symbol-Swap style replacement: +# - Replaces old type name with new type name +# - Removes old MC import +# - Adds new PA import +# 4. Creation and propagation happen in ONE call -- no partial states. +# +# USAGE: +# . tools/migration/Create-And-Propagate.ps1 +# +# Create-And-Propagate ` +# -FilePath 'platform-api/src/main/java/noppes/npcs/api/handler/IMessageService.java' ` +# -Content $interfaceCode ` +# -TargetDirectory 'core/src/main/java' ` +# -Swaps @( +# @('ChatComponentText', 'IMessageService', 'net.minecraft.util.ChatComponentText', 'noppes.npcs.api.handler.IMessageService'), +# @('ChatComponentTranslation', 'IMessageService', 'net.minecraft.util.ChatComponentTranslation', 'noppes.npcs.api.handler.IMessageService') +# ) +# +# PARAMS: +# -FilePath Relative path (from ProjectRoot) for the new file to create. +# -Content String content of the new file. +# -TargetDirectory Relative path (from ProjectRoot) to scan for propagation. All .java files +# in this directory (recursively) will have swaps applied. +# -Swaps Array of 4-element arrays: @(oldSymbol, newSymbol, oldImport, newImport). +# Same format as Symbol-Swap.ps1. +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# +# OUTPUT: +# Returns hashtable with 'Created' (file path) and 'Modified' (array of modified files). +# Prints log to stdout. + +function Create-And-Propagate { + param( + [Parameter(Mandatory=$true)] + [string]$FilePath, + + [Parameter(Mandatory=$true)] + [string]$Content, + + [Parameter(Mandatory=$true)] + [string]$TargetDirectory, + + [Parameter(Mandatory=$true)] + [array]$Swaps, + + [string]$ProjectRoot + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + # Guard against PowerShell single-element array flattening + if ($Swaps.Count -gt 0 -and $Swaps[0] -is [string]) { + $Swaps = @(,$Swaps) + } + + Write-Host "" + Write-Host "============================================" + Write-Host " CREATE-AND-PROPAGATE -- Atomic PA Creator" + Write-Host "============================================" + Write-Host "New file: $FilePath" + Write-Host "Target dir: $TargetDirectory" + Write-Host "Swaps: $($Swaps.Count)" + foreach ($s in $Swaps) { + Write-Host " $($s[0]) -> $($s[1])" + } + Write-Host "============================================" + Write-Host "" + + # Step 1: Create the new file + $fullPath = Join-Path $ProjectRoot $FilePath + $dir = Split-Path $fullPath -Parent + if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null } + [IO.File]::WriteAllText($fullPath, $Content) + Write-Host " CREATED: $FilePath" + + # Step 2: Propagate swaps across target directory + $fullTargetDir = Join-Path $ProjectRoot $TargetDirectory + if (!(Test-Path $fullTargetDir)) { + Write-Host "ERROR: Target directory not found: $fullTargetDir" + return @{ Created = $FilePath; Modified = @() } + } + + $files = Get-ChildItem -Recurse -Filter '*.java' -Path $fullTargetDir + $modified = [System.Collections.ArrayList]::new() + + foreach ($f in $files) { + $fileContent = [IO.File]::ReadAllText($f.FullName) + $original = $fileContent + $fileSwapped = $false + + # PHASE 1: Remove all old imports FIRST (before symbol replacement mangles them) + foreach ($swap in $Swaps) { + $oldImp = $swap[2] + if ($oldImp -and ($fileContent -match "import\s+(?:static\s+)?$([regex]::Escape($oldImp))\s*;")) { + $fileContent = $fileContent -replace "import\s+(?:static\s+)?$([regex]::Escape($oldImp))\s*;\r?\n", '' + } + } + + # PHASE 2: Replace symbols in code body + foreach ($swap in $Swaps) { + $oldSym = $swap[0]; $newSym = $swap[1] + if ($fileContent -match [regex]::Escape($oldSym)) { + $fileContent = $fileContent -replace [regex]::Escape($oldSym), $newSym + $fileSwapped = $true + } + } + + # PHASE 3: Add new imports (if swap happened, not empty, and not already present) + foreach ($swap in $Swaps) { + $newImp = $swap[3] + if ($newImp -and $fileSwapped -and !($fileContent -match "import\s+$([regex]::Escape($newImp))\s*;")) { + $fileContent = $fileContent -replace '(package\s+[^;]+;\s*\r?\n)', "`$1import $newImp;`n" + } + } + + if ($fileContent -ne $original) { + [IO.File]::WriteAllText($f.FullName, $fileContent) + [void]$modified.Add($f.FullName.Substring($fullTargetDir.Length + 1)) + Write-Host " PROPAGATED: $($f.Name)" + } + } + + Write-Host "" + Write-Host "============================================" + Write-Host " CREATE-AND-PROPAGATE SUMMARY" + Write-Host "============================================" + Write-Host "File created: $FilePath" + Write-Host "Files propagated: $($modified.Count) / $($files.Count)" + Write-Host "============================================" + + return @{ Created = $FilePath; Modified = $modified.ToArray() } +} diff --git a/tools/migration/Dedupe-Imports.ps1 b/tools/migration/Dedupe-Imports.ps1 new file mode 100644 index 000000000..f91430cbc --- /dev/null +++ b/tools/migration/Dedupe-Imports.ps1 @@ -0,0 +1,95 @@ +# Dedupe-Imports.ps1 +# ================== +# SUPERWEAPON: Clean up duplicate imports after Symbol-Swap operations. +# +# After Symbol-Swap runs, a file might have duplicate imports (e.g., both +# NBTTagCompound and NBTTagString map to INbt, producing two identical import lines). +# This function deduplicates and sorts all imports in every .java file. +# +# USAGE: +# . tools/migration/Dedupe-Imports.ps1 +# +# Dedupe-Imports -Directory 'core/src/main/java' +# +# PARAMS: +# -Directory Relative path (from ProjectRoot) to scan for .java files recursively. +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# +# OUTPUT: +# Returns array of modified file paths (relative to Directory). +# Prints log to stdout. + +function Dedupe-Imports { + param( + [Parameter(Mandatory=$true)] + [string]$Directory, + + [string]$ProjectRoot + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + $fullDir = Join-Path $ProjectRoot $Directory + if (!(Test-Path $fullDir)) { + Write-Host "ERROR: Directory not found: $fullDir" + return @() + } + + $files = Get-ChildItem -Recurse -Filter '*.java' -Path $fullDir + $modified = [System.Collections.ArrayList]::new() + $totalDupsRemoved = 0 + + Write-Host "" + Write-Host "============================================" + Write-Host " DEDUPE-IMPORTS -- Import Deduplicator" + Write-Host "============================================" + Write-Host "Directory: $Directory" + Write-Host "Files: $($files.Count)" + Write-Host "============================================" + Write-Host "" + + foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + + # Extract all import lines (preserving static vs non-static) + $importMatches = [regex]::Matches($content, '(?m)^import\s+(?:static\s+)?[^;]+;\s*$') + if ($importMatches.Count -eq 0) { continue } + + $importLines = $importMatches | ForEach-Object { $_.Value.Trim() } + $uniqueImports = $importLines | Sort-Object -Unique + + # Check if there are duplicates + $dupsRemoved = $importLines.Count - $uniqueImports.Count + if ($dupsRemoved -eq 0) { continue } + + # Remove all existing import lines + $noImports = [regex]::Replace($content, '(?m)^import\s+(?:static\s+)?[^;]+;\s*\r?\n', '') + + # Clean up any extra blank lines left behind (max 2 consecutive) + $noImports = [regex]::Replace($noImports, '(\r?\n){3,}', "`n`n") + + # Re-insert deduplicated imports after package line + $importBlock = ($uniqueImports -join "`n") + "`n" + $result = $noImports -replace '(package\s+[^;]+;\s*\r?\n)\s*', "`$1`n$importBlock`n" + + if ($result -ne $content) { + [IO.File]::WriteAllText($f.FullName, $result) + [void]$modified.Add($f.FullName.Substring($fullDir.Length + 1)) + $totalDupsRemoved += $dupsRemoved + Write-Host " DEDUPED ($dupsRemoved dups): $($f.Name)" + } + } + + Write-Host "" + Write-Host "============================================" + Write-Host " DEDUPE-IMPORTS SUMMARY" + Write-Host "============================================" + Write-Host "Files modified: $($modified.Count) / $($files.Count)" + Write-Host "Duplicates removed: $totalDupsRemoved" + Write-Host "============================================" + + return $modified.ToArray() +} diff --git a/tools/migration/Generate-Stubs.ps1 b/tools/migration/Generate-Stubs.ps1 new file mode 100644 index 000000000..bb6869512 --- /dev/null +++ b/tools/migration/Generate-Stubs.ps1 @@ -0,0 +1,101 @@ +# Generate-Stubs.ps1 +# ================== +# SUPERWEAPON: Create temporary compilation stubs for missing types. +# +# When core/ references classes that haven't been migrated yet (e.g., SyncController, +# ScriptController), the build fails. This function generates minimal placeholder +# classes so the build passes. The stubs get replaced when the real class arrives. +# +# USAGE: +# . tools/migration/Generate-Stubs.ps1 +# +# Generate-Stubs -Stubs @( +# @{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; +# body='public static void updateDialog(Object d) {} public static void removeDialog(int id) {}' }, +# @{ pkg='noppes.npcs.controllers'; name='ScriptController'; type='class'; +# body='public static boolean HasStart = false;' } +# ) -TargetRoot 'core/src/main/java' +# +# PARAMS: +# -Stubs Array of hashtables, each with: +# pkg - Package name (e.g., 'noppes.npcs.controllers') +# name - Class/interface name (e.g., 'SyncController') +# type - 'class' or 'interface' +# body - Code body (method stubs, field declarations). Can be multiline. +# -TargetRoot Relative path (from ProjectRoot) where stubs are created. +# Defaults to 'core/src/main/java'. +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# +# OUTPUT: +# Returns array of created file paths (relative to TargetRoot). +# Prints log to stdout. + +function Generate-Stubs { + param( + [Parameter(Mandatory=$true)] + [array]$Stubs, + + [string]$TargetRoot = 'core/src/main/java', + + [string]$ProjectRoot + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + $created = [System.Collections.ArrayList]::new() + + Write-Host "" + Write-Host "============================================" + Write-Host " GENERATE-STUBS -- Compilation Placeholders" + Write-Host "============================================" + Write-Host "Target root: $TargetRoot" + Write-Host "Stubs: $($Stubs.Count)" + Write-Host "============================================" + Write-Host "" + + foreach ($s in $Stubs) { + $pkgPath = $s.pkg -replace '\.', '/' + $dir = Join-Path $ProjectRoot (Join-Path $TargetRoot $pkgPath) + if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force | Out-Null } + + $filePath = Join-Path $dir "$($s.name).java" + $relativePath = "$pkgPath/$($s.name).java" + + # Check if file already exists -- do NOT overwrite real classes + if (Test-Path $filePath) { + $existingContent = [IO.File]::ReadAllText($filePath) + if ($existingContent -notmatch 'TEMPORARY STUB') { + Write-Host " SKIPPED (real class exists): $relativePath" + continue + } + } + + $content = @" +package $($s.pkg); + +/** + * TEMPORARY STUB -- auto-generated for compilation. + * Will be replaced when this class is properly migrated. + * DO NOT add logic here. + */ +public $($s.type) $($s.name) { + $($s.body) +} +"@ + [IO.File]::WriteAllText($filePath, $content) + [void]$created.Add($relativePath) + Write-Host " STUB: $($s.pkg).$($s.name)" + } + + Write-Host "" + Write-Host "============================================" + Write-Host " GENERATE-STUBS SUMMARY" + Write-Host "============================================" + Write-Host "Stubs created: $($created.Count) / $($Stubs.Count)" + Write-Host "============================================" + + return $created.ToArray() +} diff --git a/tools/migration/Nuke-Imports.ps1 b/tools/migration/Nuke-Imports.ps1 new file mode 100644 index 000000000..c26cb2c23 --- /dev/null +++ b/tools/migration/Nuke-Imports.ps1 @@ -0,0 +1,94 @@ +# Nuke-Imports.ps1 +# ================= +# SUPERWEAPON: Remove ALL forbidden imports from a directory. +# +# Scans every .java file in a directory and removes any import line +# whose package matches a forbidden prefix. Run this AFTER mass-copy, +# BEFORE Symbol-Swap, to clean the slate. +# +# USAGE: +# . tools/migration/Nuke-Imports.ps1 +# +# Nuke-Imports -Directory 'core/src/main/java' -ForbiddenPrefixes @( +# 'net.minecraft.', 'cpw.mods.', 'net.minecraftforge.' +# ) +# +# PARAMS: +# -Directory Relative path (from ProjectRoot) to scan for .java files recursively. +# -ForbiddenPrefixes Array of import prefixes to remove. ALL imports starting with these +# will be deleted. Passed as dotted package prefixes (e.g., 'net.minecraft.'). +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# +# OUTPUT: +# Returns array of modified file paths (relative to Directory). +# Prints log to stdout. + +function Nuke-Imports { + param( + [Parameter(Mandatory=$true)] + [string]$Directory, + + [Parameter(Mandatory=$true)] + [string[]]$ForbiddenPrefixes, + + [string]$ProjectRoot + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + $fullDir = Join-Path $ProjectRoot $Directory + if (!(Test-Path $fullDir)) { + Write-Host "ERROR: Directory not found: $fullDir" + return @() + } + + # Build regex pattern from forbidden prefixes + $escapedPrefixes = $ForbiddenPrefixes | ForEach-Object { [regex]::Escape($_) } + $pattern = ($escapedPrefixes | ForEach-Object { "import\s+(?:static\s+)?$_" }) -join '|' + + $files = Get-ChildItem -Recurse -Filter '*.java' -Path $fullDir + $modified = [System.Collections.ArrayList]::new() + $totalNuked = 0 + + Write-Host "" + Write-Host "============================================" + Write-Host " NUKE-IMPORTS -- Forbidden Import Remover" + Write-Host "============================================" + Write-Host "Directory: $Directory" + Write-Host "Files to scan: $($files.Count)" + Write-Host "Forbidden: $($ForbiddenPrefixes.Count) prefix(es)" + foreach ($p in $ForbiddenPrefixes) { Write-Host " x $p" } + Write-Host "============================================" + Write-Host "" + + foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $original = $content + + # Remove matching import lines (entire line including newline) + $nukedContent = [regex]::Replace($content, "(?m)^(?:$pattern)[^;]*;\s*\r?\n", '') + + if ($nukedContent -ne $original) { + # Count how many imports were removed + $beforeCount = ([regex]::Matches($original, "(?m)^(?:$pattern)[^;]*;")).Count + $totalNuked += $beforeCount + + [IO.File]::WriteAllText($f.FullName, $nukedContent) + [void]$modified.Add($f.FullName.Substring($fullDir.Length + 1)) + Write-Host " NUKED $beforeCount imports: $($f.Name)" + } + } + + Write-Host "" + Write-Host "============================================" + Write-Host " NUKE-IMPORTS SUMMARY" + Write-Host "============================================" + Write-Host "Files modified: $($modified.Count) / $($files.Count)" + Write-Host "Imports removed: $totalNuked" + Write-Host "============================================" + + return $modified.ToArray() +} diff --git a/tools/migration/Static-Transform.ps1 b/tools/migration/Static-Transform.ps1 new file mode 100644 index 000000000..105ec38d4 --- /dev/null +++ b/tools/migration/Static-Transform.ps1 @@ -0,0 +1,113 @@ +# Static-Transform.ps1 +# ==================== +# SUPERWEAPON: Regex-based method call rewriting across all files. +# +# Unlike Symbol-Swap (which does simple name replacement), this function handles +# structural transformations where method signatures change: +# - CompressedStreamTools.readCompressed(file) -> PlatformServiceHolder.get().readCompressedNBT(file) +# - new NBTTagCompound() -> NBT.compound() +# - MathHelper.clamp_int(x, y, z) -> ValueUtil.clampInt(x, y, z) +# +# USAGE: +# . tools/migration/Static-Transform.ps1 +# +# Static-Transform -Directory 'core/src/main/java' -Transforms @( +# @('CompressedStreamTools\.readCompressed\s*\(([^)]+)\)', +# 'PlatformServiceHolder.get().readCompressedNBT($1)'), +# @('new\s+NBTTagCompound\s*\(\)', +# 'NBT.compound()'), +# @('MathHelper\.clamp_int\s*\(', +# 'ValueUtil.clampInt(') +# ) +# +# PARAMS: +# -Directory Relative path (from ProjectRoot) to scan for .java files recursively. +# -Transforms Array of 2-element arrays: @(regexPattern, replacement). +# - regexPattern: A .NET regex pattern matching the code to transform. +# Use capture groups ($1, $2, etc.) to preserve arguments. +# - replacement: The replacement string. Use $1, $2 for captured groups. +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# +# OUTPUT: +# Returns array of modified file paths (relative to Directory). +# Prints log to stdout. + +function Static-Transform { + param( + [Parameter(Mandatory=$true)] + [string]$Directory, + + [Parameter(Mandatory=$true)] + [array]$Transforms, + + [string]$ProjectRoot + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + $fullDir = Join-Path $ProjectRoot $Directory + if (!(Test-Path $fullDir)) { + Write-Host "ERROR: Directory not found: $fullDir" + return @() + } + + # Guard against PowerShell single-element array flattening + if ($Transforms.Count -gt 0 -and $Transforms[0] -is [string]) { + $Transforms = @(,$Transforms) + } + + $files = Get-ChildItem -Recurse -Filter '*.java' -Path $fullDir + $modified = [System.Collections.ArrayList]::new() + $totalTransforms = 0 + + Write-Host "" + Write-Host "============================================" + Write-Host " STATIC-TRANSFORM -- Method Call Rewriter" + Write-Host "============================================" + Write-Host "Directory: $Directory" + Write-Host "Files: $($files.Count)" + Write-Host "Transforms: $($Transforms.Count)" + foreach ($t in $Transforms) { + # Show a truncated version of the pattern for readability + $shortPattern = if ($t[0].Length -gt 50) { $t[0].Substring(0, 50) + '...' } else { $t[0] } + Write-Host " /$shortPattern/ -> $($t[1])" + } + Write-Host "============================================" + Write-Host "" + + foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $original = $content + $fileTransformCount = 0 + + foreach ($t in $Transforms) { + $pattern = $t[0]; $replacement = $t[1] + + $matches = [regex]::Matches($content, $pattern) + if ($matches.Count -gt 0) { + $content = [regex]::Replace($content, $pattern, $replacement) + $fileTransformCount += $matches.Count + } + } + + if ($content -ne $original) { + [IO.File]::WriteAllText($f.FullName, $content) + [void]$modified.Add($f.FullName.Substring($fullDir.Length + 1)) + $totalTransforms += $fileTransformCount + Write-Host " TRANSFORMED ($fileTransformCount hits): $($f.Name)" + } + } + + Write-Host "" + Write-Host "============================================" + Write-Host " STATIC-TRANSFORM SUMMARY" + Write-Host "============================================" + Write-Host "Files modified: $($modified.Count) / $($files.Count)" + Write-Host "Total transforms: $totalTransforms" + Write-Host "============================================" + + return $modified.ToArray() +} diff --git a/tools/migration/Symbol-Swap.ps1 b/tools/migration/Symbol-Swap.ps1 new file mode 100644 index 000000000..2d6b3e633 --- /dev/null +++ b/tools/migration/Symbol-Swap.ps1 @@ -0,0 +1,123 @@ +# Symbol-Swap.ps1 +# ================ +# SUPERWEAPON: Bulk type replacement with import surgery. +# +# For every .java file in a directory, this function: +# 1. Replaces ALL occurrences of old symbol names with new ones +# 2. Removes the old MC import line +# 3. Adds the new PA import line (if not already present) +# 4. Logs every file it modifies +# +# USAGE: +# . tools/migration/Symbol-Swap.ps1 +# +# Symbol-Swap -Directory 'core/src/main/java' -Swaps @( +# @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), +# @('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer') +# ) +# +# PARAMS: +# -Directory Relative path (from ProjectRoot) to scan for .java files recursively. +# -Swaps Array of 4-element arrays: @(oldSymbol, newSymbol, oldImport, newImport). +# - oldSymbol: The type name to replace in code (e.g., 'NBTTagCompound') +# - newSymbol: The replacement type name (e.g., 'INbt') +# - oldImport: The fully-qualified old import to REMOVE (e.g., 'net.minecraft.nbt.NBTTagCompound') +# - newImport: The fully-qualified new import to ADD (e.g., 'noppes.npcs.api.nbt.INbt') +# Use '' (empty string) for newImport if no import should be added. +# -ProjectRoot Absolute project root (auto-detected from script location if not provided) +# +# OUTPUT: +# Returns array of modified file paths (relative to Directory). +# Prints log to stdout. + +function Symbol-Swap { + param( + [Parameter(Mandatory=$true)] + [string]$Directory, + + [Parameter(Mandatory=$true)] + [array]$Swaps, + + [string]$ProjectRoot + ) + + # Auto-detect ProjectRoot from script location if not provided + if (-not $ProjectRoot) { + $ProjectRoot = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path + } + + $fullDir = Join-Path $ProjectRoot $Directory + if (!(Test-Path $fullDir)) { + Write-Host "ERROR: Directory not found: $fullDir" + return @() + } + + # Guard against PowerShell single-element array flattening: + # If Swaps is a flat array of strings (e.g., @('A','B','C','D')) instead of + # array-of-arrays, wrap it so the code treats it as one swap entry. + if ($Swaps.Count -gt 0 -and $Swaps[0] -is [string]) { + $Swaps = @(,$Swaps) + } + + $files = Get-ChildItem -Recurse -Filter '*.java' -Path $fullDir + $modified = [System.Collections.ArrayList]::new() + + Write-Host "" + Write-Host "============================================" + Write-Host " SYMBOL-SWAP -- Bulk Type Replacement" + Write-Host "============================================" + Write-Host "Directory: $Directory" + Write-Host "Files: $($files.Count)" + Write-Host "Swaps: $($Swaps.Count)" + foreach ($s in $Swaps) { + Write-Host " $($s[0]) -> $($s[1])" + } + Write-Host "============================================" + Write-Host "" + + foreach ($f in $files) { + $content = [IO.File]::ReadAllText($f.FullName) + $original = $content + $fileSwapped = $false + + # PHASE 1: Remove all old imports FIRST (before symbol replacement mangles them) + foreach ($swap in $Swaps) { + $oldImp = $swap[2] + if ($oldImp -and ($content -match "import\s+(?:static\s+)?$([regex]::Escape($oldImp))\s*;")) { + $content = $content -replace "import\s+(?:static\s+)?$([regex]::Escape($oldImp))\s*;\r?\n", '' + } + } + + # PHASE 2: Replace symbols in code body + foreach ($swap in $Swaps) { + $oldSym = $swap[0]; $newSym = $swap[1] + if ($content -match [regex]::Escape($oldSym)) { + $content = $content -replace [regex]::Escape($oldSym), $newSym + $fileSwapped = $true + } + } + + # PHASE 3: Add new imports (if swap happened, not empty, and not already present) + foreach ($swap in $Swaps) { + $newImp = $swap[3] + if ($newImp -and $fileSwapped -and !($content -match "import\s+$([regex]::Escape($newImp))\s*;")) { + $content = $content -replace '(package\s+[^;]+;\s*\r?\n)', "`$1import $newImp;`n" + } + } + + if ($content -ne $original) { + [IO.File]::WriteAllText($f.FullName, $content) + [void]$modified.Add($f.FullName.Substring($fullDir.Length + 1)) + Write-Host " SWAPPED: $($f.Name)" + } + } + + Write-Host "" + Write-Host "============================================" + Write-Host " SYMBOL-SWAP SUMMARY" + Write-Host "============================================" + Write-Host "Files modified: $($modified.Count) / $($files.Count)" + Write-Host "============================================" + + return $modified.ToArray() +} diff --git a/tools/migration/analyze.py b/tools/migration/analyze.py new file mode 100644 index 000000000..f7781beae --- /dev/null +++ b/tools/migration/analyze.py @@ -0,0 +1,2298 @@ +#!/usr/bin/env python3 +""" +analyze.py — Unified Diagnostic Toolchain for Migration Analysis +==================================================================== +Comprehensive subcommand interface for querying, analyzing, and validating +the CustomNPC-Plus migration workflow. + +Subcommands: + query-type Query MC type from index (P0) + query-file Query file from index (P0) + extract-signatures Extract method signatures from Java files (P0) + surface-miner Find minimal interface surface for a type (P0) + type-usage Show all members of an MC type used within a directory scope (P0) + diff-signatures Compare signatures between two Java files (P3) + migration-diff Compare mc1710 original vs migrated core/ file — PASS/WARN/FAIL verdict (P3) + coverage-report Migration coverage analysis (P3) + classify Classify MC type for migration strategy (P0) + classify-all Classify ALL MC types in index and output as JSON (P0) + +Usage: + python analyze.py query-type EntityPlayer + python analyze.py query-type EntityPlayer --fqn net.minecraft.entity.player.EntityPlayer + python analyze.py query-file src/main/java/noppes/npcs/controllers/QuestController.java --readiness + python analyze.py extract-signatures platform-api/src/main/java/noppes/npcs/api/INbt.java --json + python analyze.py surface-miner NBTTagCompound --scope core/src/main/java + python analyze.py surface-miner EntityPlayer --compare-existing platform-api/.../IPlayer.java + python analyze.py type-usage EntityPlayer --scope noppes/npcs/controllers/ + python analyze.py diff-signatures --old file1.java --new file2.java + python analyze.py migration-diff --old mc1710/FactionController.java --new core/FactionController.java + python analyze.py coverage-report --detailed + python analyze.py classify MinecraftServer + python analyze.py classify MinecraftServer --surface + python analyze.py classify --file PlayerDataController.java + python analyze.py classify-all + python analyze.py classify-all --output /tmp/classes.json + python analyze.py classify-all --json +""" + +import sys +import re +import json +import difflib +import argparse +from pathlib import Path +from collections import defaultdict +from datetime import datetime, timezone + +MC_PREFIXES = ("net.minecraft.", "cpw.mods.", "net.minecraftforge.") + +from pa_rules import EXISTING_MAPPINGS as KNOWN_PA +from pa_rules import classify_type as _classify_type, get_pa_name, get_service_target + +# ============================================================ +# Utilities +# ============================================================ + + +def auto_detect_project_root(): + """Auto-detect project root from script location (tools/migration/ -> root).""" + script_dir = Path(__file__).resolve().parent + return script_dir.parent.parent + + +def load_index(project_root, index_path="tools/migration/mc_usage_index.json"): + """Load the MC usage index JSON. Raises FileNotFoundError with clear message.""" + index_file = Path(project_root) / index_path + if not index_file.exists(): + raise FileNotFoundError( + f"Index not found: {index_file}\n" + f"Run: python tools/migration/scan_codebase.py" + ) + with open(index_file, "r", encoding="utf-8") as f: + return json.load(f) + + +def resolve_java_file(project_root, path_hint): + """Resolve a Java file path — handles both relative and absolute paths.""" + p = Path(path_hint) + if p.is_absolute() and p.exists(): + return p + resolved = Path(project_root) / path_hint + if resolved.exists(): + return resolved + # Try normalizing slashes + normalized = path_hint.replace("\\", "/") + resolved = Path(project_root) / normalized + if resolved.exists(): + return resolved + return None + + +def setup_treesitter_parser(): + """Initialize tree-sitter parser with Java grammar. Returns (parser, Language) or (None, None).""" + try: + import tree_sitter_java as tsjava + from tree_sitter import Language, Parser + except ImportError: + return None, None + lang = Language(tsjava.language()) + parser = Parser(lang) + return parser, lang + + +def _node_text(node, source_bytes): + """Extract text from a tree-sitter node.""" + if node is None: + return "" + return source_bytes[node.start_byte : node.end_byte].decode( + "utf-8", errors="replace" + ) + + +def extract_signatures_from_file(file_path, parser, public_only=False): + """ + Extract all method/constructor signatures from a Java file using tree-sitter. + + Returns a list of dicts: + { + "name": str, + "return_type": str, (empty for constructors) + "params": [{"type": str, "name": str}, ...], + "modifiers": [str, ...], + "annotations": [str, ...], + "line": int, + "kind": "method" | "constructor", + "javadoc": str | None, + } + """ + source_bytes = Path(file_path).read_bytes() + tree = parser.parse(source_bytes) + signatures = [] + _walk_for_signatures(tree.root_node, source_bytes, signatures, public_only) + return signatures + + +def _walk_for_signatures(node, source_bytes, signatures, public_only): + """Walk AST collecting method/constructor declarations.""" + if node.type in ("method_declaration", "constructor_declaration"): + sig = _extract_single_signature(node, source_bytes, public_only) + if sig is not None: + signatures.append(sig) + for child in node.children: + _walk_for_signatures(child, source_bytes, signatures, public_only) + + +_MODIFIER_KEYWORDS = frozenset( + { + "public", + "private", + "protected", + "static", + "final", + "abstract", + "synchronized", + "native", + "default", + "strictfp", + } +) + + +def _extract_single_signature(node, source_bytes, public_only): + """Extract signature from a method_declaration or constructor_declaration node.""" + is_constructor = node.type == "constructor_declaration" + + # Collect modifiers and annotations + modifiers = [] + annotations = [] + for child in node.children: + if child.type == "modifiers": + for mod_child in child.children: + if mod_child.type in ("marker_annotation", "annotation"): + annotations.append(_node_text(mod_child, source_bytes)) + else: + txt = _node_text(mod_child, source_bytes).strip() + if txt in _MODIFIER_KEYWORDS: + modifiers.append(txt) + + # Filter by visibility + if public_only: + has_access = any(m in ("public", "private", "protected") for m in modifiers) + if has_access and "public" not in modifiers: + return None + # In interfaces, no-access-modifier means public — allow through + + # Name + name_node = node.child_by_field_name("name") + name = _node_text(name_node, source_bytes) if name_node else "?" + + # Return type (not for constructors) + return_type = "" + if not is_constructor: + type_node = node.child_by_field_name("type") + return_type = _node_text(type_node, source_bytes) if type_node else "void" + + # Parameters + params = [] + params_node = node.child_by_field_name("parameters") + if params_node: + for param_child in params_node.children: + if param_child.type in ("formal_parameter", "spread_parameter"): + p_type_node = param_child.child_by_field_name("type") + p_name_node = param_child.child_by_field_name("name") + p_type = _node_text(p_type_node, source_bytes) if p_type_node else "?" + + # Handle varargs + if param_child.type == "spread_parameter": + p_type += "..." + + p_name = _node_text(p_name_node, source_bytes) if p_name_node else "?" + + # Handle array dimensions on name + dims_node = param_child.child_by_field_name("dimensions") + if dims_node: + p_type += _node_text(dims_node, source_bytes) + + params.append({"type": p_type, "name": p_name}) + + # Javadoc — look for block_comment immediately before this node + javadoc = None + prev = node.prev_named_sibling + if prev and prev.type == "block_comment": + comment_text = _node_text(prev, source_bytes) + if comment_text.startswith("/**"): + javadoc = comment_text + + line = node.start_point[0] + 1 + + return { + "name": name, + "return_type": return_type, + "params": params, + "modifiers": modifiers, + "annotations": annotations, + "line": line, + "kind": "constructor" if is_constructor else "method", + "javadoc": javadoc, + } + + +def format_signature(sig): + """Format a signature dict into a human-readable one-liner.""" + parts = [] + if sig["annotations"]: + parts.append(" ".join(sig["annotations"])) + if sig["modifiers"]: + parts.append(" ".join(sig["modifiers"])) + if sig["return_type"]: + parts.append(sig["return_type"]) + param_str = ", ".join(f"{p['type']} {p['name']}" for p in sig["params"]) + parts.append(f"{sig['name']}({param_str})") + return " ".join(parts) + + +def signature_key(sig): + """Create a comparison key for a signature (name + param types, ignoring param names).""" + param_types = tuple(p["type"] for p in sig["params"]) + return (sig["name"], param_types) + + +# ============================================================ +# SUBCOMMAND: query-type (P0) +# ============================================================ + + +def cmd_query_type(args): + """Query MC type from index — imports, method calls, field accesses, hierarchy, PA status.""" + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + index = load_index(project_root, args.index) + + # Find the type by FQN or short name + type_key = _find_type_key(index, args.type, args.fqn) + if type_key is None: + print( + f"ERROR: Type '{args.fqn or args.type}' not found in index", file=sys.stderr + ) + return 1 + + ti = index["types"][type_key] + + if args.json_output: + json.dump({"fqn": type_key, **ti}, sys.stdout, indent=2) + print() + return 0 + + # Human-readable output + print() + print("=" * 80) + print(f"TYPE: {ti['shortName']} ({type_key})") + print("=" * 80) + print(f" Package: {ti['package']}") + print(f" PA Abstraction: {ti.get('paAbstraction') or 'NONE'}") + print(f" Imported by: {ti['importCount']} files") + print() + + # Method calls + if ti.get("methodCalls") and not args.field_accesses_only: + sorted_methods = sorted( + ti["methodCalls"].items(), key=lambda x: x[1]["count"], reverse=True + ) + limit = args.top if args.top else len(sorted_methods) + print(f" METHOD CALLS ({len(ti['methodCalls'])} unique methods):") + print(f" {'Method':<40} {'Calls':>6} {'Files':>6}") + print(f" {'-' * 40} {'-' * 6} {'-' * 6}") + for method, data in sorted_methods[:limit]: + print(f" {method:<40} {data['count']:>6} {len(data['files']):>6}") + if args.show_files: + for f in data["files"][:3]: + print(f" - {f}") + if len(data["files"]) > 3: + print(f" ... and {len(data['files']) - 3} more") + print() + + # Static calls + if ti.get("staticCalls") and not args.field_accesses_only: + sorted_statics = sorted( + ti["staticCalls"].items(), key=lambda x: x[1]["count"], reverse=True + ) + limit = args.top if args.top else len(sorted_statics) + print(f" STATIC CALLS ({len(ti['staticCalls'])} unique methods):") + print(f" {'Method':<40} {'Calls':>6} {'Files':>6}") + print(f" {'-' * 40} {'-' * 6} {'-' * 6}") + for method, data in sorted_statics[:limit]: + print(f" {method:<40} {data['count']:>6} {len(data['files']):>6}") + print() + + # Field accesses + if ti.get("fieldAccesses") and not args.methods_only: + sorted_fields = sorted( + ti["fieldAccesses"].items(), key=lambda x: x[1]["count"], reverse=True + ) + limit = args.top if args.top else len(sorted_fields) + print(f" FIELD ACCESSES ({len(ti['fieldAccesses'])} unique fields):") + print(f" {'Field':<40} {'Accesses':>8} {'Files':>6}") + print(f" {'-' * 40} {'-' * 8} {'-' * 6}") + for field, data in sorted_fields[:limit]: + print(f" {field:<40} {data['count']:>8} {len(data['files']):>6}") + print() + + # Hierarchy + extends = index["hierarchy"]["extends"].get(type_key, []) + implements = index["hierarchy"]["implements"].get(type_key, []) + + if extends: + print(f" EXTENDED BY ({len(extends)} classes):") + for entry in extends[:10]: + print(f" {entry['class']:<40} in {entry['file']}") + if len(extends) > 10: + print(f" ... and {len(extends) - 10} more") + print() + + if implements: + print(f" IMPLEMENTED BY ({len(implements)} classes):") + for entry in implements[:10]: + print(f" {entry['class']:<40} in {entry['file']}") + if len(implements) > 10: + print(f" ... and {len(implements) - 10} more") + print() + + # Usage summary + usage = ti.get("usage", {}) + print(" USAGE SUMMARY:") + print(f" Constructors: {len(usage.get('constructors', []))}") + print(f" Casts: {len(usage.get('casts', []))}") + print(f" instanceof: {len(usage.get('instanceof', []))}") + print() + + return 0 + + +def _find_type_key(index, short_name, fqn=None): + """Find type key in index by FQN or short name.""" + if fqn: + return fqn if fqn in index["types"] else None + # Search by short name — exact suffix match + for key in index["types"]: + if key.endswith("." + short_name) or key == short_name: + return key + return None + + +def add_query_type_args(subparsers): + p = subparsers.add_parser("query-type", help="Query MC type from index (P0)") + p.add_argument("type", help="Type simple name (e.g. EntityPlayer)") + p.add_argument( + "--fqn", help="Exact fully-qualified name (overrides simple name search)" + ) + p.add_argument( + "--methods-only", action="store_true", help="Show method/static calls only" + ) + p.add_argument( + "--field-accesses-only", action="store_true", help="Show field accesses only" + ) + p.add_argument( + "--show-files", action="store_true", help="Show file list for each method" + ) + p.add_argument( + "--top", type=int, default=0, help="Limit output to top N entries (0=all)" + ) + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument( + "--index", + default="tools/migration/mc_usage_index.json", + help="Path to index JSON (relative to project root)", + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_query_type) + + +# ============================================================ +# SUBCOMMAND: query-file (P0) +# ============================================================ + + +def cmd_query_file(args): + """Query file from index — MC types used, readiness score, blocking items.""" + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + index = load_index(project_root, args.index) + + # Normalize and find file + file_hint = args.file.replace("\\", "/") + file_key = _find_file_key(index, file_hint) + + if file_key is None: + print(f"ERROR: File '{args.file}' not found in index", file=sys.stderr) + # Show closest matches + basename = file_hint.split("/")[-1] + candidates = [f for f in index["files"] if basename in f] + if candidates: + print("Did you mean:", file=sys.stderr) + for c in candidates[:5]: + print(f" {c}", file=sys.stderr) + return 1 + + fd = index["files"][file_key] + + if args.json_output: + output = {"file": file_key, **fd} + if args.readiness: + output["readiness"] = _calc_readiness(fd) + json.dump(output, sys.stdout, indent=2) + print() + return 0 + + # Human-readable + print() + print("=" * 80) + print(f"FILE: {file_key}") + print("=" * 80) + print(f" MC Import Count: {fd['mcImportCount']}") + print(f" MC Types: {', '.join(fd['mcTypes'][:10])}") + if len(fd["mcTypes"]) > 10: + print(f" ... and {len(fd['mcTypes']) - 10} more") + print() + + # Readiness score + if args.readiness: + readiness = _calc_readiness(fd) + print(f" MIGRATION READINESS: {readiness['score']:.1f}%") + print(f" Abstracted: {readiness['abstracted']}/{readiness['total']}") + if readiness["blocking"]: + print( + f" Blocking: {', '.join(t.rsplit('.', 1)[-1] for t in readiness['blocking'][:5])}" + ) + if len(readiness["blocking"]) > 5: + print(f" ... and {len(readiness['blocking']) - 5} more") + print() + + # Detailed type listing + print(" MC TYPES USED:") + print(f" {'Type':<35} {'PA Mapping'}") + print(f" {'-' * 35} {'-' * 30}") + for fqn in sorted(fd["mcFqns"]): + short = fqn.rsplit(".", 1)[-1] + pa = KNOWN_PA.get(fqn) + pa_str = f"-> {pa}" if pa else "(NOT ABSTRACTED)" + print(f" {short:<35} {pa_str}") + print() + + return 0 + + +def _find_file_key(index, file_hint): + """Find file key in index by exact or suffix match.""" + if file_hint in index["files"]: + return file_hint + # Exact suffix match + for fpath in index["files"]: + if fpath.endswith(file_hint) or file_hint.endswith(fpath): + return fpath + # Partial match from end (at least filename + one directory) + hint_parts = file_hint.replace("\\", "/").split("/") + for fpath in index["files"]: + fpath_parts = fpath.split("/") + match_len = 0 + for hp, fp in zip(reversed(hint_parts), reversed(fpath_parts)): + if hp == fp: + match_len += 1 + else: + break + if match_len >= 2: + return fpath + return None + + +def _calc_readiness(fd): + """Calculate migration readiness score for a file.""" + mc_fqns = fd.get("mcFqns", []) + if not mc_fqns: + return {"score": 100.0, "abstracted": 0, "total": 0, "blocking": []} + abstracted = sum(1 for fqn in mc_fqns if KNOWN_PA.get(fqn)) + blocking = [fqn for fqn in mc_fqns if not KNOWN_PA.get(fqn)] + score = abstracted / len(mc_fqns) * 100 + return { + "score": score, + "abstracted": abstracted, + "total": len(mc_fqns), + "blocking": blocking, + } + + +def add_query_file_args(subparsers): + p = subparsers.add_parser("query-file", help="Query file from index (P0)") + p.add_argument("file", help="File path (relative or absolute)") + p.add_argument( + "--readiness", action="store_true", help="Show migration readiness score" + ) + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument( + "--index", + default="tools/migration/mc_usage_index.json", + help="Path to index JSON", + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_query_file) + + +# ============================================================ +# SUBCOMMAND: extract-signatures (P0) +# ============================================================ + + +def cmd_extract_signatures(args): + """Extract full method signatures from a Java file using tree-sitter.""" + parser, lang = setup_treesitter_parser() + if parser is None: + print("ERROR: tree-sitter-java not installed", file=sys.stderr) + print("Run: pip install tree-sitter tree-sitter-java", file=sys.stderr) + return 1 + + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + java_file = resolve_java_file(project_root, args.file) + if java_file is None or not java_file.exists(): + print(f"ERROR: File not found: {args.file}", file=sys.stderr) + return 1 + + signatures = extract_signatures_from_file( + java_file, parser, public_only=args.public_only + ) + + if args.json_output: + json.dump( + { + "file": str(java_file), + "total_methods": len(signatures), + "signatures": signatures, + }, + sys.stdout, + indent=2, + ) + print() + return 0 + + # Human-readable + rel = java_file.name + print() + print("=" * 80) + print(f"SIGNATURES: {rel}") + print("=" * 80) + print(f" Total methods: {len(signatures)}") + print() + + if not signatures: + print(" (no methods found)") + return 0 + + for sig in signatures: + line_str = f"L{sig['line']}" + kind_str = f"[{sig['kind']}]" if sig["kind"] == "constructor" else "" + formatted = format_signature(sig) + print(f" {line_str:>5} {kind_str:<14} {formatted}") + print() + + return 0 + + +def add_extract_signatures_args(subparsers): + p = subparsers.add_parser( + "extract-signatures", help="Extract method signatures from Java files (P0)" + ) + p.add_argument("file", help="Path to Java file") + p.add_argument( + "--public-only", action="store_true", help="Show only public methods" + ) + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_extract_signatures) + + +# ============================================================ +# SUBCOMMAND: surface-miner (P0) +# ============================================================ + + +def cmd_surface_miner(args): + """ + Find minimal interface surface for a type based on actual codebase usage. + Examines the index for all method calls and field accesses to the given type, + producing the minimal set needed for a PA interface. + """ + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + index = load_index(project_root, args.index) + + # Find the type + type_key = _find_type_key(index, args.type, args.fqn) + if type_key is None: + print( + f"ERROR: Type '{args.fqn or args.type}' not found in index", file=sys.stderr + ) + return 1 + + ti = index["types"][type_key] + + # Scope filtering + scope = args.scope.replace("\\", "/") if args.scope else None + + def _filter_files(files): + if not scope: + return files + return [f for f in files if f.startswith(scope) or scope in f] + + # Gather methods + methods = {} + for method, data in ti.get("methodCalls", {}).items(): + files = _filter_files(data["files"]) + if files: + methods[method] = {"count": len(files), "files": files, "kind": "instance"} + + for method, data in ti.get("staticCalls", {}).items(): + files = _filter_files(data["files"]) + if files: + methods[method] = {"count": len(files), "files": files, "kind": "static"} + + # Gather fields + fields = {} + for field, data in ti.get("fieldAccesses", {}).items(): + files = _filter_files(data["files"]) + if files: + fields[field] = {"count": len(files), "files": files} + + # Compare with existing PA interface + existing_methods = set() + if args.compare_existing: + parser, lang = setup_treesitter_parser() + if parser: + pa_file = resolve_java_file(project_root, args.compare_existing) + if pa_file and pa_file.exists(): + pa_sigs = extract_signatures_from_file(pa_file, parser) + existing_methods = {s["name"] for s in pa_sigs} + + if args.json_output: + output = { + "type": type_key, + "pa_abstraction": ti.get("paAbstraction"), + "methods": methods, + "fields": fields, + } + if existing_methods: + output["existing_pa_methods"] = sorted(existing_methods) + output["missing_from_pa"] = sorted(set(methods.keys()) - existing_methods) + output["unused_in_pa"] = sorted(existing_methods - set(methods.keys())) + json.dump(output, sys.stdout, indent=2, default=list) + print() + return 0 + + # Human-readable + print() + print("=" * 80) + print(f"MINIMAL SURFACE: {ti['shortName']} ({type_key})") + print("=" * 80) + print(f" PA Abstraction: {ti.get('paAbstraction') or 'NONE'}") + scope_str = f" (scoped to {scope})" if scope else "" + print(f" Scope: all usage sites{scope_str}") + print() + + # Methods + sorted_methods = sorted(methods.items(), key=lambda x: x[1]["count"], reverse=True) + print(f" METHODS ({len(sorted_methods)} unique):") + print(f" {'Method':<40} {'Kind':<8} {'Usage':>6}") + print(f" {'-' * 40} {'-' * 8} {'-' * 6}") + for method, data in sorted_methods: + marker = "" + if existing_methods: + marker = " [PA]" if method in existing_methods else " [MISSING]" + print(f" {method:<40} {data['kind']:<8} {data['count']:>6}{marker}") + print() + + # Fields + if fields: + sorted_fields = sorted( + fields.items(), key=lambda x: x[1]["count"], reverse=True + ) + print(f" FIELDS ({len(sorted_fields)} unique):") + print(f" {'Field':<40} {'Usage':>6}") + print(f" {'-' * 40} {'-' * 6}") + for field, data in sorted_fields: + print(f" {field:<40} {data['count']:>6}") + print() + + # Comparison summary + if existing_methods: + used_methods = set(methods.keys()) + missing = used_methods - existing_methods + unused = existing_methods - used_methods + covered = used_methods & existing_methods + + print(f" COMPARISON WITH EXISTING PA INTERFACE:") + print(f" Covered by PA: {len(covered)}/{len(used_methods)} methods") + print(f" Missing from PA: {len(missing)}") + if missing: + for m in sorted(missing): + print(f" + {m}") + print(f" Unused in PA: {len(unused)}") + if unused: + for m in sorted(unused): + print(f" - {m}") + print() + + return 0 + + +def add_surface_miner_args(subparsers): + p = subparsers.add_parser( + "surface-miner", help="Find minimal interface surface for a type (P0)" + ) + p.add_argument("type", help="MC type simple name (e.g. NBTTagCompound)") + p.add_argument("--fqn", help="Exact FQN") + p.add_argument( + "--scope", + help="Limit analysis to files under this path prefix (e.g. core/src/main/java)", + ) + p.add_argument("--compare-existing", help="Compare with existing PA interface file") + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument( + "--index", + default="tools/migration/mc_usage_index.json", + help="Path to index JSON", + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_surface_miner) + + +# ============================================================ +# SUBCOMMAND: type-usage (P0) +# ============================================================ + + +def cmd_type_usage(args): + """Show ALL members of an MC type used within files under a given directory scope.""" + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + index = load_index(project_root, args.index) + + # Find the type + type_key = _find_type_key(index, args.type, args.fqn) + if type_key is None: + print( + f"ERROR: Type '{args.fqn or args.type}' not found in index", file=sys.stderr + ) + return 1 + + ti = index["types"][type_key] + + # Scope filtering + scope = args.scope.replace("\\", "/") if args.scope else None + + def _filter_files(files): + if not scope: + return files + return [f for f in files if f.startswith(scope) or scope in f] + + def _filter_usage_entries(entries): + """Filter usage entries (list of {file, line} dicts) by scope, return file list.""" + if not entries: + return [] + files = [e["file"] for e in entries if isinstance(e, dict) and "file" in e] + if scope: + files = [f for f in files if f.startswith(scope) or scope in f] + return files + + # Gather method calls (scoped) + method_calls = {} + for method, data in ti.get("methodCalls", {}).items(): + files = _filter_files(data["files"]) + if files: + method_calls[method] = {"count": len(files), "files": files} + + # Gather static calls (scoped) + static_calls = {} + for method, data in ti.get("staticCalls", {}).items(): + files = _filter_files(data["files"]) + if files: + static_calls[method] = {"count": len(files), "files": files} + + # Gather field accesses (scoped) + field_accesses = {} + for field, data in ti.get("fieldAccesses", {}).items(): + files = _filter_files(data["files"]) + if files: + field_accesses[field] = {"count": len(files), "files": files} + + # Gather constructors, casts, instanceof (scoped) + usage = ti.get("usage", {}) + constructor_files = _filter_usage_entries(usage.get("constructors", [])) + cast_files = _filter_usage_entries(usage.get("casts", [])) + instanceof_files = _filter_usage_entries(usage.get("instanceof", [])) + + # Count occurrences per file for casts/instanceof/constructors + def _count_per_file(file_list): + counts = defaultdict(int) + for f in file_list: + counts[f] += 1 + return counts + + constructor_counts = _count_per_file(constructor_files) + cast_counts = _count_per_file(cast_files) + instanceof_counts = _count_per_file(instanceof_files) + + # Compute total files in scope + all_scope_files = set() + for data in method_calls.values(): + all_scope_files.update(data["files"]) + for data in static_calls.values(): + all_scope_files.update(data["files"]) + for data in field_accesses.values(): + all_scope_files.update(data["files"]) + all_scope_files.update(constructor_counts.keys()) + all_scope_files.update(cast_counts.keys()) + all_scope_files.update(instanceof_counts.keys()) + + total_files_in_scope = len(all_scope_files) + + # Count total files globally for this type + all_global_files = set() + for data in ti.get("methodCalls", {}).values(): + all_global_files.update(data["files"]) + for data in ti.get("staticCalls", {}).values(): + all_global_files.update(data["files"]) + for data in ti.get("fieldAccesses", {}).values(): + all_global_files.update(data["files"]) + for e in usage.get("constructors", []): + if isinstance(e, dict) and "file" in e: + all_global_files.add(e["file"]) + for e in usage.get("casts", []): + if isinstance(e, dict) and "file" in e: + all_global_files.add(e["file"]) + for e in usage.get("instanceof", []): + if isinstance(e, dict) and "file" in e: + all_global_files.add(e["file"]) + # Also include importedBy if available + imported_by = ti.get("importedBy", []) + if imported_by: + all_global_files.update(imported_by) + total_files_global = ( + len(all_global_files) if all_global_files else ti.get("importCount", 0) + ) + + # Apply --top limit + top = args.top if args.top else 0 + + if args.json_output: + output = { + "type": type_key, + "shortName": ti["shortName"], + "paAbstraction": ti.get("paAbstraction"), + "scope": scope or "(all)", + "totalFilesInScope": total_files_in_scope, + "totalFilesGlobal": total_files_global, + "methodCalls": method_calls, + "staticCalls": static_calls, + "fieldAccesses": field_accesses, + "constructors": { + "count": len(constructor_files), + "files": sorted(constructor_counts.keys()), + }, + "casts": { + "count": len(cast_files), + "files": sorted(cast_counts.keys()), + }, + "instanceof": { + "count": len(instanceof_files), + "files": sorted(instanceof_counts.keys()), + }, + } + json.dump(output, sys.stdout, indent=2) + print() + return 0 + + # Human-readable output + scope_label = scope if scope else "(all files)" + print() + print("=" * 80) + print(f"TYPE USAGE: {ti['shortName']} in {scope_label}") + print("=" * 80) + print(f" PA Abstraction: {ti.get('paAbstraction') or 'NONE'}") + print(f" Files in scope: {total_files_in_scope} (of {total_files_global} total)") + print() + + # Method calls + total_method_calls = sum(d["count"] for d in method_calls.values()) + sorted_methods = sorted( + method_calls.items(), key=lambda x: x[1]["count"], reverse=True + ) + limit_methods = sorted_methods[:top] if top else sorted_methods + print( + f" METHOD CALLS ({len(method_calls)} unique, {total_method_calls} total calls):" + ) + if limit_methods: + print(f" {'Method':<40} {'Calls':>5} {'Files':>5}") + print(f" {'-' * 40} {'-' * 5} {'-' * 5}") + for method, data in limit_methods: + print(f" {method:<40} {data['count']:>5} {len(data['files']):>5}") + for f in data["files"][:5]: + print(f" - {f}") + if len(data["files"]) > 5: + print(f" ... and {len(data['files']) - 5} more") + else: + print(" (none)") + print() + + # Static calls + total_static_calls = sum(d["count"] for d in static_calls.values()) + sorted_statics = sorted( + static_calls.items(), key=lambda x: x[1]["count"], reverse=True + ) + limit_statics = sorted_statics[:top] if top else sorted_statics + if limit_statics: + print( + f" STATIC CALLS ({len(static_calls)} unique, {total_static_calls} total calls):" + ) + print(f" {'Method':<40} {'Calls':>5} {'Files':>5}") + print(f" {'-' * 40} {'-' * 5} {'-' * 5}") + for method, data in limit_statics: + print(f" {method:<40} {data['count']:>5} {len(data['files']):>5}") + for f in data["files"][:5]: + print(f" - {f}") + if len(data["files"]) > 5: + print(f" ... and {len(data['files']) - 5} more") + print() + else: + print(" STATIC CALLS: (none)") + print() + + # Field accesses + total_field_accesses = sum(d["count"] for d in field_accesses.values()) + sorted_fields = sorted( + field_accesses.items(), key=lambda x: x[1]["count"], reverse=True + ) + limit_fields = sorted_fields[:top] if top else sorted_fields + if limit_fields: + print( + f" FIELD ACCESSES ({len(field_accesses)} unique, {total_field_accesses} total accesses):" + ) + print(f" {'Field':<40} {'Accesses':>8} {'Files':>5}") + print(f" {'-' * 40} {'-' * 8} {'-' * 5}") + for field, data in limit_fields: + print(f" {field:<40} {data['count']:>8} {len(data['files']):>5}") + for f in data["files"][:5]: + print(f" - {f}") + if len(data["files"]) > 5: + print(f" ... and {len(data['files']) - 5} more") + print() + else: + print(" FIELD ACCESSES: (none)") + print() + + # Constructors + print( + f" CONSTRUCTORS: {len(constructor_files)} occurrences" + + (f" in {len(constructor_counts)} files" if constructor_files else "") + ) + if constructor_counts: + for f in sorted(constructor_counts.keys()): + print(f" - {f} ({constructor_counts[f]})") + print() + + # Casts + print( + f" CASTS: {len(cast_files)} occurrences" + + (f" in {len(cast_counts)} files" if cast_files else "") + ) + if cast_counts: + for f in sorted(cast_counts.keys()): + print(f" - {f} ({cast_counts[f]})") + print() + + # instanceof + print( + f" INSTANCEOF: {len(instanceof_files)} occurrences" + + (f" in {len(instanceof_counts)} files" if instanceof_files else "") + ) + if instanceof_counts: + for f in sorted(instanceof_counts.keys()): + print(f" - {f} ({instanceof_counts[f]})") + print() + + return 0 + + +def add_type_usage_args(subparsers): + p = subparsers.add_parser( + "type-usage", + help="Show all members of an MC type used within a directory scope (P0)", + ) + p.add_argument("type", help="MC type simple name (e.g. EntityPlayer)") + p.add_argument("--fqn", help="Exact FQN override") + p.add_argument( + "--scope", + help="Directory path prefix filter (e.g. noppes/npcs/controllers/)", + ) + p.add_argument( + "--top", + type=int, + default=0, + help="Limit methods/fields to top N by count (0=all)", + ) + p.add_argument( + "--json", + dest="json_output", + action="store_true", + help="Machine-readable JSON output", + ) + p.add_argument( + "--index", + default="tools/migration/mc_usage_index.json", + help="Path to index JSON (relative to project root)", + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_type_usage) + + +# ============================================================ +# SUBCOMMAND: diff-signatures (P3) +# ============================================================ + + +def cmd_diff_signatures(args): + """Compare method signatures between two Java files.""" + parser, lang = setup_treesitter_parser() + if parser is None: + print("ERROR: tree-sitter-java not installed", file=sys.stderr) + print("Run: pip install tree-sitter tree-sitter-java", file=sys.stderr) + return 1 + + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + + old_file = resolve_java_file(project_root, args.old) + new_file = resolve_java_file(project_root, args.new) + + if old_file is None or not old_file.exists(): + print(f"ERROR: Old file not found: {args.old}", file=sys.stderr) + return 1 + if new_file is None or not new_file.exists(): + print(f"ERROR: New file not found: {args.new}", file=sys.stderr) + return 1 + + old_sigs = extract_signatures_from_file(old_file, parser) + new_sigs = extract_signatures_from_file(new_file, parser) + + # Build maps by signature key + old_map = {} + for sig in old_sigs: + key = signature_key(sig) + old_map[key] = sig + + new_map = {} + for sig in new_sigs: + key = signature_key(sig) + new_map[key] = sig + + old_keys = set(old_map.keys()) + new_keys = set(new_map.keys()) + + added = new_keys - old_keys + removed = old_keys - new_keys + common = old_keys & new_keys + + # Detect changed signatures (same key, different return type or modifiers) + changed = [] + for key in common: + o = old_map[key] + n = new_map[key] + if o["return_type"] != n["return_type"] or o["modifiers"] != n["modifiers"]: + changed.append((o, n)) + + if args.json_output: + output = { + "old_file": str(old_file), + "new_file": str(new_file), + "added": [new_map[k] for k in sorted(added)], + "removed": [old_map[k] for k in sorted(removed)], + "changed": [{"old": o, "new": n} for o, n in changed], + "unchanged": len(common) - len(changed), + } + json.dump(output, sys.stdout, indent=2) + print() + return 0 + + # Human-readable + print() + print("=" * 80) + print("SIGNATURE DIFF") + print("=" * 80) + print(f" Old: {old_file.name} ({len(old_sigs)} methods)") + print(f" New: {new_file.name} ({len(new_sigs)} methods)") + print() + + if added: + print(f" ADDED ({len(added)}):") + for key in sorted(added): + print(f" + {format_signature(new_map[key])}") + print() + + if removed: + print(f" REMOVED ({len(removed)}):") + for key in sorted(removed): + print(f" - {format_signature(old_map[key])}") + print() + + if changed: + print(f" CHANGED ({len(changed)}):") + for old_sig, new_sig in changed: + print(f" OLD: {format_signature(old_sig)}") + print(f" NEW: {format_signature(new_sig)}") + print() + + if not added and not removed and not changed: + print(" No differences found.") + print() + + print( + f" Summary: +{len(added)} added, -{len(removed)} removed, " + f"~{len(changed)} changed, ={len(common) - len(changed)} unchanged" + ) + print() + + return 0 + + +def add_diff_signatures_args(subparsers): + p = subparsers.add_parser( + "diff-signatures", help="Compare method signatures between two Java files (P3)" + ) + p.add_argument("--old", required=True, help="Path to old/original Java file") + p.add_argument("--new", required=True, help="Path to new/updated Java file") + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_diff_signatures) + + +# ============================================================ +# SUBCOMMAND: coverage-report (P3) +# ============================================================ + + +def cmd_coverage_report(args): + """Migration coverage analysis — % types abstracted, breakdown by subsystem, blocking.""" + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + index = load_index(project_root, args.index) + + summary = index.get("summary", {}) + types = index.get("types", {}) + files = index.get("files", {}) + + # Basic stats + total_files = summary.get("totalFiles", len(files)) + files_with_deps = summary.get("filesWithMcDeps", len(files)) + total_mc_imports = summary.get("totalMcImports", 0) + unique_types = summary.get("uniqueMcTypes", len(types)) + + # Abstraction coverage + abstracted_types = [] + blocking_types = [] + + for fqn, ti in types.items(): + if ti.get("paAbstraction"): + abstracted_types.append((fqn, ti)) + else: + blocking_types.append((fqn, ti)) + + abstracted = len(abstracted_types) + not_abstracted = len(blocking_types) + total_types = abstracted + not_abstracted + coverage_pct = (abstracted / total_types * 100) if total_types > 0 else 0 + + # Import-weighted coverage + abstracted_imports = sum(ti["importCount"] for _, ti in abstracted_types) + total_import_count = sum(ti["importCount"] for ti in types.values()) + import_coverage_pct = ( + (abstracted_imports / total_import_count * 100) if total_import_count > 0 else 0 + ) + + # Per-package breakdown + by_package = defaultdict(lambda: {"types": 0, "abstracted": 0, "imports": 0}) + for fqn, ti in types.items(): + pkg = ti["package"] + by_package[pkg]["types"] += 1 + by_package[pkg]["imports"] += ti["importCount"] + if ti.get("paAbstraction"): + by_package[pkg]["abstracted"] += 1 + + if args.json_output: + output = { + "totalFiles": total_files, + "filesWithMcDeps": files_with_deps, + "totalMcImports": total_mc_imports, + "uniqueMcTypes": unique_types, + "abstractionCoverage": { + "typeCoverage": f"{coverage_pct:.1f}%", + "importCoverage": f"{import_coverage_pct:.1f}%", + "abstracted": abstracted, + "notAbstracted": not_abstracted, + }, + "topBlockingTypes": [ + { + "fqn": fqn, + "shortName": ti["shortName"], + "importCount": ti["importCount"], + } + for fqn, ti in sorted( + blocking_types, key=lambda x: x[1]["importCount"], reverse=True + )[:20] + ], + "byPackage": { + pkg: data + for pkg, data in sorted( + by_package.items(), key=lambda x: x[1]["imports"], reverse=True + ) + }, + } + json.dump(output, sys.stdout, indent=2) + print() + return 0 + + # Human-readable + print() + print("=" * 80) + print("MIGRATION COVERAGE REPORT") + print("=" * 80) + print() + + print(" OVERALL STATISTICS:") + print(f" Total files scanned: {total_files:>6,}") + print(f" Files with MC deps: {files_with_deps:>6,}") + print(f" Total MC imports: {total_mc_imports:>6,}") + print(f" Unique MC types: {unique_types:>6}") + print() + + print(" ABSTRACTION COVERAGE:") + print(f" Type coverage: {abstracted}/{total_types} ({coverage_pct:.1f}%)") + print( + f" Import coverage: {abstracted_imports}/{total_import_count} ({import_coverage_pct:.1f}%)" + ) + print() + + # Top blocking types + sorted_blocking = sorted( + blocking_types, key=lambda x: x[1]["importCount"], reverse=True + ) + limit = 20 if args.detailed else 10 + print(f" TOP BLOCKING TYPES (no PA abstraction):") + print(f" {'#':>4} {'Type':<40} {'Imports':>7}") + print(f" {'':4} {'-' * 40} {'-' * 7}") + for i, (fqn, ti) in enumerate(sorted_blocking[:limit]): + print(f" {i + 1:>4}. {ti['shortName']:<40} {ti['importCount']:>7}") + if len(sorted_blocking) > limit: + print(f" {'':4} ... and {len(sorted_blocking) - limit} more") + print() + + # Package breakdown (detailed) + if args.detailed: + sorted_packages = sorted( + by_package.items(), key=lambda x: x[1]["imports"], reverse=True + ) + print(f" PACKAGE BREAKDOWN:") + print(f" {'Package':<45} {'Types':>5} {'Abstr':>5} {'Imports':>7}") + print(f" {'-' * 45} {'-' * 5} {'-' * 5} {'-' * 7}") + for pkg, data in sorted_packages[:20]: + print( + f" {pkg:<45} {data['types']:>5} {data['abstracted']:>5} {data['imports']:>7}" + ) + print() + + # Top files (detailed) + if args.detailed: + sorted_files = sorted( + files.items(), key=lambda x: x[1]["mcImportCount"], reverse=True + ) + print(f" TOP FILES BY MC DEPENDENCY:") + print(f" {'File':<60} {'MC Types':>8}") + print(f" {'-' * 60} {'-' * 8}") + for fpath, fd in sorted_files[:15]: + print(f" {fpath:<60} {fd['mcImportCount']:>8}") + print() + + return 0 + + +def add_coverage_report_args(subparsers): + p = subparsers.add_parser( + "coverage-report", help="Migration coverage analysis (P3)" + ) + p.add_argument( + "--detailed", + action="store_true", + help="Show detailed breakdown (packages, files)", + ) + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument( + "--index", + default="tools/migration/mc_usage_index.json", + help="Path to index JSON", + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_coverage_report) + + +# ============================================================ +# SUBCOMMAND: classify (P0) +# ============================================================ + + +def _gather_surface_data(index, type_key): + """Build surface_data dict from index for auto-classification.""" + ti = index["types"][type_key] + methods = [] + for method, data in ti.get("methodCalls", {}).items(): + methods.append({"name": method, "kind": "instance", "count": data["count"]}) + for method, data in ti.get("staticCalls", {}).items(): + methods.append({"name": method, "kind": "static", "count": data["count"]}) + return {"methods": methods} + + +def _format_classification(result, simple_name): + """Format a classification result for human-readable output.""" + lines = [] + cls = result["classification"] + lines.append(f" {simple_name:<30} {cls}") + reason = result["reason"].replace("\u2192", "->") + lines.append(f" Reason: {reason}") + if result.get("pa_name"): + lines.append(f" PA Name: {result['pa_name']}") + if result.get("target"): + lines.append(f" Target: {result['target']}") + if result.get("service_name"): + lines.append(f" Service: {result['service_name']}") + if result.get("transform_patterns"): + lines.append(f" Patterns ({len(result['transform_patterns'])}):") + for pattern, replacement in result["transform_patterns"]: + lines.append(f" {pattern}") + lines.append(f" -> {replacement}") + return "\n".join(lines) + + +def cmd_classify(args): + """Classify MC types using pa_rules — single type or file mode.""" + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + + if args.file: + return _classify_file_mode(args, project_root) + if not args.type: + print("ERROR: Provide a type name or --file", file=sys.stderr) + return 1 + return _classify_single_mode(args, project_root) + + +def _classify_single_mode(args, project_root): + """Classify a single MC type.""" + simple_name = args.type + surface_data = None + + if args.surface or args.fqn: + try: + index = load_index(project_root, args.index) + type_key = _find_type_key(index, simple_name, args.fqn) + if type_key and args.surface: + surface_data = _gather_surface_data(index, type_key) + except FileNotFoundError: + if args.surface: + print( + "WARNING: Index not found, --surface data unavailable", + file=sys.stderr, + ) + + result = _classify_type(simple_name, surface_data) + + if args.json_output: + output = {"type": simple_name, **result} + json.dump(output, sys.stdout, indent=2) + print() + return 0 + + print() + print("=" * 60) + print("CLASSIFY") + print("=" * 60) + print(_format_classification(result, simple_name)) + print() + return 0 + + +def _classify_file_mode(args, project_root): + """Classify all MC types in a file — migration plan.""" + index = load_index(project_root, args.index) + file_hint = args.file.replace("\\", "/") + file_key = _find_file_key(index, file_hint) + + if file_key is None: + print(f"ERROR: File '{args.file}' not found in index", file=sys.stderr) + basename = file_hint.split("/")[-1] + candidates = [f for f in index["files"] if basename in f] + if candidates: + print("Did you mean:", file=sys.stderr) + for c in candidates[:5]: + print(f" {c}", file=sys.stderr) + return 1 + + fd = index["files"][file_key] + mc_fqns = fd.get("mcFqns", []) + + if not mc_fqns: + if args.json_output: + json.dump({"file": file_key, "types": [], "plan": []}, sys.stdout, indent=2) + print() + else: + print(f"\n {file_key}: No MC types found.\n") + return 0 + + results = [] + for fqn in sorted(mc_fqns): + simple = fqn.rsplit(".", 1)[-1] + surface_data = None + if args.surface: + type_key = _find_type_key(index, simple) + if type_key: + surface_data = _gather_surface_data(index, type_key) + classification = _classify_type(simple, surface_data) + results.append({"fqn": fqn, "simple": simple, **classification}) + + if args.json_output: + json.dump({"file": file_key, "plan": results}, sys.stdout, indent=2) + print() + return 0 + + print() + print("=" * 80) + print(f"MIGRATION PLAN: {file_key}") + print("=" * 80) + print(f" MC Types: {len(mc_fqns)}") + print() + + by_cls = defaultdict(list) + for r in results: + by_cls[r["classification"]].append(r) + + order = ["EXISTING", "INTERFACE", "SERVICE", "TRANSFORM", "SUPPRESS", "AUTO"] + for cls in order: + items = by_cls.get(cls, []) + if not items: + continue + print(f" {cls} ({len(items)}):") + for item in items: + pa_str = f" -> {item['pa_name']}" if item.get("pa_name") else "" + svc_str = f" [{item['service_name']}]" if item.get("service_name") else "" + print(f" {item['simple']:<30}{pa_str}{svc_str}") + print(f" {item['reason'].replace(chr(0x2192), '->')}") + print() + + return 0 + + +def add_classify_args(subparsers): + p = subparsers.add_parser( + "classify", help="Classify MC type for migration strategy (P0)" + ) + p.add_argument( + "type", + nargs="?", + default=None, + help="MC type simple name (e.g. MinecraftServer)", + ) + p.add_argument( + "--file", help="Classify all MC types in a file (migration plan mode)" + ) + p.add_argument("--fqn", help="Exact FQN override") + p.add_argument( + "--surface", + action="store_true", + help="Gather surface data from index for auto-classification", + ) + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument( + "--index", + default="tools/migration/mc_usage_index.json", + help="Path to index JSON (relative to project root)", + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_classify) + + +# ============================================================ +# SUBCOMMAND: classify-all (P0) +# ============================================================ + + +_CLASSIFY_ORDER = ["EXISTING", "INTERFACE", "SERVICE", "TRANSFORM", "SUPPRESS", "AUTO"] +_CLASSIFY_LABELS = { + "EXISTING": "already have PA abstractions", + "INTERFACE": "become standalone PA interfaces", + "SERVICE": "add methods to PlatformService or domain services", + "TRANSFORM": "handle via Static-Transform regex", + "SUPPRESS": "never abstracted, stay in mc1710", + "AUTO": "not explicitly classified, use heuristics if surface data available", +} +_LARGE_GROUP_CAP = 10 + + +def _format_type_line(cls, entry): + """Format a single type line based on classification.""" + name = entry["shortName"] + if cls == "EXISTING" or cls == "INTERFACE": + pa = entry.get("pa_name") or "?" + return f" {name:<30} -> {pa}" + if cls == "SERVICE": + svc = entry.get("service_name") or "PlatformService" + return f" {name:<30} -> {svc}" + if cls == "TRANSFORM": + patterns = entry.get("transform_patterns") or [] + return f" {name:<30} -> ({len(patterns)} patterns)" + return f" {name}" + + +def _map_line(cls, entry): + """Build a single line for the flat map file.""" + name = entry["shortName"] + if cls in ("EXISTING", "INTERFACE"): + return f"{name} -> {entry.get('pa_name') or '?'}" + if cls == "SERVICE": + return f"{name} -> {entry.get('service_name') or 'PlatformService'}" + if cls == "TRANSFORM": + n = len(entry.get("transform_patterns") or []) + return f"{name} -> ({n} patterns)" + return name + + +def _write_map_file(map_path, grouped): + """Write the flat name->mapping text file (all entries, uncapped).""" + map_path.parent.mkdir(parents=True, exist_ok=True) + with open(map_path, "w", encoding="utf-8") as f: + first = True + for cls in _CLASSIFY_ORDER: + items = grouped.get(cls, []) + if not items: + continue + if not first: + f.write("\n") + first = False + f.write(f"{cls}:\n") + for entry in items: + f.write(f"{_map_line(cls, entry)}\n") + + +def cmd_classify_all(args): + """Classify ALL MC types in the index and output results as JSON.""" + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + index = load_index(project_root, args.index) + + types = index.get("types", {}) + total = len(types) + + results = {} + grouped = defaultdict(list) + + for fqn, ti in types.items(): + simple_name = ti["shortName"] + + surface_data = _gather_surface_data(index, fqn) + if not surface_data["methods"]: + surface_data = None + + result = _classify_type(simple_name, surface_data) + classification = result["classification"] + + entry = { + "shortName": simple_name, + "classification": classification, + "reason": result["reason"], + "pa_name": result.get("pa_name"), + "target": result.get("target"), + "import_count": ti.get("importCount", 0), + "file_count": len(ti.get("importedBy", [])), + } + if result.get("service_name"): + entry["service_name"] = result["service_name"] + if result.get("transform_patterns"): + entry["transform_patterns"] = [ + [p, r] for p, r in result["transform_patterns"] + ] + + results[fqn] = entry + grouped[classification].append({"fqn": fqn, **entry}) + + for cls in grouped: + grouped[cls].sort(key=lambda e: e["import_count"], reverse=True) + + timestamp = datetime.now(timezone.utc).isoformat() + classified_counts = { + cls: len(grouped[cls]) for cls in _CLASSIFY_ORDER if grouped.get(cls) + } + + json_grouped = {} + for cls in _CLASSIFY_ORDER: + items = grouped.get(cls, []) + if not items: + continue + json_items = [] + for e in items: + item = {"fqn": e["fqn"], "shortName": e["shortName"]} + if cls in ("EXISTING", "INTERFACE", "AUTO"): + item["pa_name"] = e.get("pa_name") + if cls == "SERVICE": + item["service_name"] = e.get("service_name") + if cls == "TRANSFORM": + item["pattern_count"] = len(e.get("transform_patterns") or []) + item["import_count"] = e["import_count"] + json_items.append(item) + json_grouped[cls] = json_items + + output = { + "metadata": { + "timestamp": timestamp, + "total_types": total, + "classified": classified_counts, + }, + "grouped_by_classification": json_grouped, + "types": results, + } + + output_path = Path(args.output) + if not output_path.is_absolute(): + output_path = Path(project_root) / args.output + output_path.parent.mkdir(parents=True, exist_ok=True) + with open(output_path, "w", encoding="utf-8") as f: + json.dump(output, f, indent=2, ensure_ascii=False) + f.write("\n") + + map_path = Path(args.map_file) + if not map_path.is_absolute(): + map_path = Path(project_root) / args.map_file + _write_map_file(map_path, grouped) + + if args.json_stdout: + json.dump(output, sys.stdout, indent=2, ensure_ascii=True) + print() + else: + print() + print("=" * 80) + print("CLASSIFY ALL MC TYPES") + print("=" * 80) + print(f" Processing {total} types from index...") + print() + print(" CLASSIFICATION SUMMARY:") + for cls in _CLASSIFY_ORDER: + count = classified_counts.get(cls, 0) + if count > 0: + print(f" {cls:<14}{count:>4} types") + print() + print(f" {'_' * 78}") + + for cls in _CLASSIFY_ORDER: + items = grouped.get(cls, []) + if not items: + continue + label = _CLASSIFY_LABELS.get(cls, "") + print() + print(f" {cls} ({len(items)} types -- {label}):") + cap = _LARGE_GROUP_CAP if len(items) > _LARGE_GROUP_CAP + 3 else len(items) + for entry in items[:cap]: + print(_format_type_line(cls, entry)) + remaining = len(items) - cap + if remaining > 0: + print(f" ... ({remaining} more)") + + print() + print(f" {'_' * 78}") + print(f" Output JSON written: {output_path}") + print(f" Map file written: {map_path}") + print() + + return 0 + + +def add_classify_all_args(subparsers): + p = subparsers.add_parser( + "classify-all", help="Classify ALL MC types in index and output as JSON (P0)" + ) + p.add_argument( + "--output", + default="tools/migration/classification_results.json", + help="Output JSON file path (default: tools/migration/classification_results.json)", + ) + p.add_argument( + "--map-file", + default="tools/migration/pa_classifications_map.txt", + help="Output flat map file (default: tools/migration/pa_classifications_map.txt)", + ) + p.add_argument( + "--json", + dest="json_stdout", + action="store_true", + help="Output summary to stdout as JSON instead of human-readable text", + ) + p.add_argument( + "--index", + default="tools/migration/mc_usage_index.json", + help="Path to index JSON (relative to project root)", + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_classify_all) + + +# ============================================================ +# Normalization utilities for migration-diff +# ============================================================ + + +def _load_classifications(project_root, classifications_path): + """Load the mc_type_classifications.json file. Returns the 'types' dict.""" + cls_file = Path(project_root) / classifications_path + if not cls_file.exists(): + raise FileNotFoundError( + f"Classifications file not found: {cls_file}\n" + f"Expected at: {classifications_path}" + ) + with open(cls_file, "r", encoding="utf-8") as f: + data = json.load(f) + return data.get("types", {}) + + +def normalize_text(text, classifications): + """ + Normalize text by replacing MC type names with their PA equivalents. + + For EXISTING/INTERFACE/SERVICE entries (those with 'pa' or 'service' field): + - Whole-word replace MC simple name -> PA name + For TRANSFORM entries: + - Apply each regex pattern from the 'patterns' list + + This is used to normalize BOTH old and new file content so that pure + type migrations vanish from diffs. + """ + result = text + + # Phase 1: TRANSFORM patterns (apply regex replacements) + for type_name, info in classifications.items(): + if type_name.startswith("_"): + continue + category = info.get("category", "") + if category == "TRANSFORM": + patterns = info.get("patterns", []) + for pat in patterns: + if len(pat) >= 2: + try: + result = re.sub(pat[0], pat[1], result) + except re.error: + pass + + # Phase 2: EXISTING/INTERFACE/SERVICE whole-word replacements + for type_name, info in classifications.items(): + if type_name.startswith("_"): + continue + category = info.get("category", "") + if category not in ("EXISTING", "INTERFACE", "SERVICE"): + continue + pa_name = info.get("pa") or info.get("service") + if not pa_name: + continue + # Skip very short names to avoid false positives + if len(type_name) < 4: + continue + # Whole-word replacement + result = re.sub(r"\b" + re.escape(type_name) + r"\b", pa_name, result) + + return result + + +# ============================================================ +# SUBCOMMAND: migration-diff (P3) +# ============================================================ + + +def _extract_method_bodies(file_path, parser): + """ + Extract method signatures AND bodies from a Java file using tree-sitter. + + Returns a list of dicts: + { + "name": str, + "params": [{"type": str, "name": str}, ...], + "line": int, + "body": str | None, + "signature_text": str, + } + """ + source_bytes = Path(file_path).read_bytes() + tree = parser.parse(source_bytes) + methods = [] + _walk_for_method_bodies(tree.root_node, source_bytes, methods) + return methods, source_bytes + + +def _walk_for_method_bodies(node, source_bytes, methods): + """Walk AST collecting method declarations with bodies.""" + if node.type in ("method_declaration", "constructor_declaration"): + is_constructor = node.type == "constructor_declaration" + name_node = node.child_by_field_name("name") + name = _node_text(name_node, source_bytes) if name_node else "?" + + # Return type + return_type = "" + if not is_constructor: + type_node = node.child_by_field_name("type") + return_type = _node_text(type_node, source_bytes) if type_node else "void" + + # Parameters + params = [] + params_node = node.child_by_field_name("parameters") + if params_node: + for param_child in params_node.children: + if param_child.type in ("formal_parameter", "spread_parameter"): + p_type_node = param_child.child_by_field_name("type") + p_name_node = param_child.child_by_field_name("name") + p_type = ( + _node_text(p_type_node, source_bytes) if p_type_node else "?" + ) + if param_child.type == "spread_parameter": + p_type += "..." + p_name = ( + _node_text(p_name_node, source_bytes) if p_name_node else "?" + ) + dims_node = param_child.child_by_field_name("dimensions") + if dims_node: + p_type += _node_text(dims_node, source_bytes) + params.append({"type": p_type, "name": p_name}) + + # Body + body_node = node.child_by_field_name("body") + body_text = _node_text(body_node, source_bytes) if body_node else None + + # Build a readable signature + param_str = ", ".join(f"{p['type']} {p['name']}" for p in params) + sig_text = f"{return_type + ' ' if return_type else ''}{name}({param_str})" + + methods.append( + { + "name": name, + "return_type": return_type, + "params": params, + "line": node.start_point[0] + 1, + "body": body_text, + "signature_text": sig_text.strip(), + } + ) + + for child in node.children: + _walk_for_method_bodies(child, source_bytes, methods) + + +def _normalized_signature_key(sig, classifications): + """Create a signature key with normalized param types (MC -> PA).""" + normalized_params = [] + for p in sig["params"]: + ptype = p["type"] + for type_name, info in classifications.items(): + if type_name.startswith("_"): + continue + category = info.get("category", "") + if category not in ("EXISTING", "INTERFACE", "SERVICE"): + continue + pa_name = info.get("pa") or info.get("service") + if not pa_name: + continue + if len(type_name) < 4: + continue + ptype = re.sub(r"\b" + re.escape(type_name) + r"\b", pa_name, ptype) + normalized_params.append(ptype) + return (sig["name"], tuple(normalized_params)) + + +def _scan_unmigrated_types(file_text, classifications): + """ + Scan file text for whole-word occurrences of MC type names that should + have been replaced (EXISTING, INTERFACE, SERVICE with pa/service field). + + Returns a list of dicts: { "mc_name": str, "pa_name": str, "lines": [int], "in_import": bool } + """ + results = [] + lines = file_text.split("\n") + + for type_name, info in classifications.items(): + if type_name.startswith("_"): + continue + category = info.get("category", "") + if category not in ("EXISTING", "INTERFACE", "SERVICE"): + continue + pa_name = info.get("pa") or info.get("service") + if not pa_name: + continue + # Skip short names to avoid false positives + if len(type_name) < 4: + continue + + pattern = re.compile(r"\b" + re.escape(type_name) + r"\b") + found_lines = [] + has_import = False + for i, line in enumerate(lines, 1): + if pattern.search(line): + if line.strip().startswith("import "): + has_import = True + found_lines.append(i) + + if found_lines: + results.append( + { + "mc_name": type_name, + "pa_name": pa_name, + "lines": found_lines, + "in_import": has_import, + } + ) + + return results + + +def cmd_migration_diff(args): + """Compare an original mc1710 Java file against a migrated core/ file.""" + parser, lang = setup_treesitter_parser() + if parser is None: + print("ERROR: tree-sitter-java not installed", file=sys.stderr) + print("Run: pip install tree-sitter tree-sitter-java", file=sys.stderr) + return 1 + + project_root = ( + Path(args.project_root) if args.project_root else auto_detect_project_root() + ) + + # Load classifications + classifications_path = args.classifications + classifications = _load_classifications(project_root, classifications_path) + + # Resolve files + old_file = resolve_java_file(project_root, args.old) + new_file = resolve_java_file(project_root, args.new) + + if old_file is None or not old_file.exists(): + print(f"ERROR: Old file not found: {args.old}", file=sys.stderr) + return 1 + if new_file is None or not new_file.exists(): + print(f"ERROR: New file not found: {args.new}", file=sys.stderr) + return 1 + + # Count classification types + type_count = sum(1 for k in classifications if not k.startswith("_")) + + # ── STEP 1: UNMIGRATED types scan on new file ── + new_text = new_file.read_text(encoding="utf-8", errors="replace") + unmigrated = _scan_unmigrated_types(new_text, classifications) + + # ── STEP 2: MISSING_METHOD detection ── + old_methods, _ = _extract_method_bodies(old_file, parser) + new_methods, _ = _extract_method_bodies(new_file, parser) + + # Build maps by normalized key + old_method_map = {} + for m in old_methods: + key = _normalized_signature_key(m, classifications) + old_method_map[key] = m + + new_method_map = {} + for m in new_methods: + key = _normalized_signature_key(m, classifications) + new_method_map[key] = m + + old_keys = set(old_method_map.keys()) + new_keys = set(new_method_map.keys()) + + missing_methods = [] + for key in sorted(old_keys - new_keys): + m = old_method_map[key] + missing_methods.append( + { + "name": m["name"], + "signature": m["signature_text"], + "line": m["line"], + } + ) + + # ── STEP 3: SEMANTIC_BODY_DIFF detection ── + semantic_diffs = [] + common_keys = old_keys & new_keys + for key in sorted(common_keys): + old_m = old_method_map[key] + new_m = new_method_map[key] + + old_body = old_m.get("body") + new_body = new_m.get("body") + + # Skip methods without bodies (abstract/interface) + if old_body is None or new_body is None: + continue + + # Normalize both bodies + norm_old = normalize_text(old_body, classifications) + norm_new = normalize_text(new_body, classifications) + + # Strip whitespace for comparison + norm_old_lines = norm_old.strip().splitlines() + norm_new_lines = norm_new.strip().splitlines() + + # Use SequenceMatcher for similarity ratio + matcher = difflib.SequenceMatcher(None, norm_old_lines, norm_new_lines) + ratio = matcher.ratio() + + # Generate unified diff for detail + diff_lines = list( + difflib.unified_diff( + norm_old_lines, + norm_new_lines, + fromfile="old (normalized)", + tofile="new (normalized)", + lineterm="", + ) + ) + + # Filter to actual change lines (not headers) + change_lines = [l for l in diff_lines if l.startswith("+") or l.startswith("-")] + change_lines = [ + l + for l in change_lines + if not l.startswith("+++") and not l.startswith("---") + ] + + if ratio < 0.85 or len(change_lines) > 0: + semantic_diffs.append( + { + "name": old_m["name"], + "signature": old_m["signature_text"], + "ratio": round(ratio, 3), + "diff_lines": diff_lines[:10], + "total_diff_lines": len(change_lines), + "old_line": old_m["line"], + "new_line": new_m["line"], + } + ) + + # ── VERDICT ── + if missing_methods: + verdict = "FAIL" + verdict_reason = f"{len(missing_methods)} missing method(s)" + elif unmigrated or semantic_diffs: + verdict = "WARN" + parts = [] + if unmigrated: + parts.append(f"{len(unmigrated)} unmigrated type(s)") + if semantic_diffs: + parts.append(f"{len(semantic_diffs)} body diff(s)") + verdict_reason = ", ".join(parts) + else: + verdict = "PASS" + verdict_reason = "all methods present, no unmigrated types, no body drift" + + note = ( + "NOTE: migration-diff cannot detect subtle semantic drift (algorithmic changes, " + "logic reordering, renamed variables). Manual review is always recommended " + "when WARN or FAIL." + ) + + # ── OUTPUT ── + if args.json_output: + output = { + "old_file": str(old_file), + "new_file": str(new_file), + "unmigrated": unmigrated, + "missing_methods": missing_methods, + "semantic_body_diffs": [ + { + "name": d["name"], + "signature": d["signature"], + "similarity_ratio": d["ratio"], + "diff_line_count": d["total_diff_lines"], + "diff_preview": d["diff_lines"], + } + for d in semantic_diffs + ], + "verdict": verdict, + "verdict_reason": verdict_reason, + } + json.dump(output, sys.stdout, indent=2) + print() + return 0 + + # Human-readable output + print() + print("=" * 80) + print("MIGRATION DIFF") + print("=" * 80) + print(f" Old: {old_file.name} (mc1710)") + print(f" New: {new_file.name} (core)") + print(f" Classifications: {Path(classifications_path).name} ({type_count} types)") + print() + + # Unmigrated types + if unmigrated: + print(f" UNMIGRATED TYPES ({len(unmigrated)} found in new file):") + for u in unmigrated: + line_str = ", ".join(str(l) for l in u["lines"][:10]) + if len(u["lines"]) > 10: + line_str += f" ... ({len(u['lines'])} total)" + import_note = " [import not cleaned]" if u["in_import"] else "" + print( + f" ! {u['mc_name']} -> should be {u['pa_name']} " + f"(found on line {line_str}){import_note}" + ) + print() + else: + print(" UNMIGRATED TYPES: None [OK]") + print() + + # Missing methods + if missing_methods: + print( + f" MISSING METHODS ({len(missing_methods)} found in old, absent in new):" + ) + for m in missing_methods: + print(f" - {m['signature']} [line {m['line']} in old]") + print() + else: + print(" MISSING METHODS: None [OK]") + print() + + # Semantic body diffs + if semantic_diffs: + print( + f" SEMANTIC BODY DIFFS ({len(semantic_diffs)} methods have non-migration body changes):" + ) + for d in semantic_diffs: + print(f" ~ {d['signature']}") + print( + f" Similarity: {d['ratio']:.1%} " + f"[{d['total_diff_lines']} diff line(s)]" + ) + # Show up to 10 diff lines + shown = 0 + for dl in d["diff_lines"]: + if shown >= 10: + remaining = len(d["diff_lines"]) - 10 + print(f" ... ({remaining} more diff lines)") + break + print(f" {dl}") + shown += 1 + print( + f" [!] Manual review required -- could be logic change or safe refactor" + ) + print() + else: + print(" SEMANTIC BODY DIFFS: None [OK]") + print() + + # Verdict + print(" " + "-" * 78) + print( + f" VERDICT: {verdict} " + f"[{len(unmigrated)} unmigrated type(s), " + f"{len(missing_methods)} missing method(s), " + f"{len(semantic_diffs)} body diff(s)]" + ) + print(f" {note}") + print("=" * 80) + print() + + return 0 + + +def add_migration_diff_args(subparsers): + p = subparsers.add_parser( + "migration-diff", + help="Compare mc1710 original vs migrated core/ file — PASS/WARN/FAIL verdict (P3)", + ) + p.add_argument("--old", required=True, help="Path to original mc1710 Java file") + p.add_argument("--new", required=True, help="Path to migrated core/ Java file") + p.add_argument( + "--classifications", + default="tools/migration/mc_type_classifications.json", + help="Path to classifications JSON (relative to project root)", + ) + p.add_argument( + "--json", dest="json_output", action="store_true", help="Output as JSON" + ) + p.add_argument("--project-root", help="Project root (auto-detected if omitted)") + p.set_defaults(func=cmd_migration_diff) + + +# ============================================================ +# Main CLI +# ============================================================ + + +def main(): + parser = argparse.ArgumentParser( + prog="analyze.py", + description="Unified Diagnostic Toolchain for CustomNPC-Plus Migration Analysis", + ) + subparsers = parser.add_subparsers(dest="command", help="Available subcommands") + + # Register all subcommands + add_query_type_args(subparsers) + add_query_file_args(subparsers) + add_extract_signatures_args(subparsers) + add_surface_miner_args(subparsers) + add_type_usage_args(subparsers) + add_diff_signatures_args(subparsers) + add_migration_diff_args(subparsers) + add_coverage_report_args(subparsers) + add_classify_args(subparsers) + add_classify_all_args(subparsers) + + args = parser.parse_args() + + if not args.command: + parser.print_help() + return 1 + + try: + return args.func(args) + except FileNotFoundError as e: + print(f"ERROR: {e}", file=sys.stderr) + return 1 + except Exception as e: + print(f"ERROR: {e}", file=sys.stderr) + import traceback + + traceback.print_exc(file=sys.stderr) + return 1 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/tools/migration/classification_results.json b/tools/migration/classification_results.json new file mode 100644 index 000000000..e69faad36 --- /dev/null +++ b/tools/migration/classification_results.json @@ -0,0 +1,6110 @@ +{ + "metadata": { + "timestamp": "2026-03-15T20:27:05.209749+00:00", + "total_types": 400, + "classified": { + "EXISTING": 11, + "INTERFACE": 46, + "SERVICE": 95, + "TRANSFORM": 5, + "SUPPRESS": 55, + "AUTO": 188 + } + }, + "grouped_by_classification": { + "EXISTING": [ + { + "fqn": "net.minecraft.nbt.NBTTagCompound", + "shortName": "NBTTagCompound", + "pa_name": "INbt", + "import_count": 593 + }, + { + "fqn": "net.minecraft.entity.player.EntityPlayer", + "shortName": "EntityPlayer", + "pa_name": "IPlayer", + "import_count": 551 + }, + { + "fqn": "net.minecraft.entity.player.EntityPlayerMP", + "shortName": "EntityPlayerMP", + "pa_name": "IPlayer", + "import_count": 304 + }, + { + "fqn": "net.minecraft.entity.Entity", + "shortName": "Entity", + "pa_name": "IEntity", + "import_count": 262 + }, + { + "fqn": "net.minecraft.item.ItemStack", + "shortName": "ItemStack", + "pa_name": "IItemStack", + "import_count": 228 + }, + { + "fqn": "net.minecraft.entity.EntityLivingBase", + "shortName": "EntityLivingBase", + "pa_name": "IEntityLivingBase", + "import_count": 201 + }, + { + "fqn": "net.minecraft.world.World", + "shortName": "World", + "pa_name": "IWorld", + "import_count": 172 + }, + { + "fqn": "net.minecraft.nbt.NBTTagList", + "shortName": "NBTTagList", + "pa_name": "INbtList", + "import_count": 111 + }, + { + "fqn": "net.minecraft.util.DamageSource", + "shortName": "DamageSource", + "pa_name": "IDamageSource", + "import_count": 36 + }, + { + "fqn": "net.minecraft.world.WorldServer", + "shortName": "WorldServer", + "pa_name": "IWorld", + "import_count": 18 + }, + { + "fqn": "net.minecraft.entity.EntityLiving", + "shortName": "EntityLiving", + "pa_name": "IEntityLiving", + "import_count": 18 + } + ], + "INTERFACE": [ + { + "fqn": "net.minecraft.util.ResourceLocation", + "shortName": "ResourceLocation", + "pa_name": "IResourceLocation", + "import_count": 145 + }, + { + "fqn": "net.minecraft.block.Block", + "shortName": "Block", + "pa_name": "IBlock", + "import_count": 84 + }, + { + "fqn": "net.minecraft.tileentity.TileEntity", + "shortName": "TileEntity", + "pa_name": "ITileEntity", + "import_count": 78 + }, + { + "fqn": "net.minecraft.util.AxisAlignedBB", + "shortName": "AxisAlignedBB", + "pa_name": "IBoundingBox", + "import_count": 59 + }, + { + "fqn": "net.minecraft.command.ICommandSender", + "shortName": "ICommandSender", + "pa_name": "ICommandSender", + "import_count": 47 + }, + { + "fqn": "net.minecraft.util.Vec3", + "shortName": "Vec3", + "pa_name": "IVector3", + "import_count": 43 + }, + { + "fqn": "net.minecraft.inventory.Slot", + "shortName": "Slot", + "pa_name": "ISlot", + "import_count": 42 + }, + { + "fqn": "net.minecraft.client.renderer.RenderBlocks", + "shortName": "RenderBlocks", + "pa_name": "IRenderBlocks", + "import_count": 35 + }, + { + "fqn": "net.minecraft.inventory.IInventory", + "shortName": "IInventory", + "pa_name": "IIInventory", + "import_count": 30 + }, + { + "fqn": "net.minecraft.world.IBlockAccess", + "shortName": "IBlockAccess", + "pa_name": "IIBlockAccess", + "import_count": 30 + }, + { + "fqn": "net.minecraft.inventory.Container", + "shortName": "Container", + "pa_name": "IContainer", + "import_count": 25 + }, + { + "fqn": "net.minecraft.util.ChatComponentTranslation", + "shortName": "ChatComponentTranslation", + "pa_name": "ITextComponent", + "import_count": 24 + }, + { + "fqn": "net.minecraft.util.ChatComponentText", + "shortName": "ChatComponentText", + "pa_name": "ITextComponent", + "import_count": 20 + }, + { + "fqn": "net.minecraft.entity.item.EntityItem", + "shortName": "EntityItem", + "pa_name": "IEntityItem", + "import_count": 15 + }, + { + "fqn": "net.minecraft.util.MovingObjectPosition", + "shortName": "MovingObjectPosition", + "pa_name": "IRayTraceResult", + "import_count": 15 + }, + { + "fqn": "net.minecraft.item.ItemArmor", + "shortName": "ItemArmor", + "pa_name": "IItemArmor", + "import_count": 13 + }, + { + "fqn": "net.minecraft.nbt.NBTBase", + "shortName": "NBTBase", + "pa_name": "INbtBase", + "import_count": 13 + }, + { + "fqn": "net.minecraft.util.math.BlockPos", + "shortName": "BlockPos", + "pa_name": "IBlockPos", + "import_count": 10 + }, + { + "fqn": "net.minecraft.util.IChatComponent", + "shortName": "IChatComponent", + "pa_name": "ITextComponent", + "import_count": 10 + }, + { + "fqn": "net.minecraftforge.common.config.Configuration", + "shortName": "Configuration", + "pa_name": "IConfiguration", + "import_count": 9 + }, + { + "fqn": "net.minecraft.client.renderer.entity.RenderItem", + "shortName": "RenderItem", + "pa_name": "IRenderItem", + "import_count": 8 + }, + { + "fqn": "net.minecraft.entity.monster.EntityMob", + "shortName": "EntityMob", + "pa_name": "IEntityMob", + "import_count": 7 + }, + { + "fqn": "net.minecraft.entity.EntityCreature", + "shortName": "EntityCreature", + "pa_name": "IEntityLiving", + "import_count": 7 + }, + { + "fqn": "net.minecraft.potion.Potion", + "shortName": "Potion", + "pa_name": "IPotionType", + "import_count": 7 + }, + { + "fqn": "net.minecraftforge.common.config.Property", + "shortName": "Property", + "pa_name": "IProperty", + "import_count": 7 + }, + { + "fqn": "net.minecraft.potion.PotionEffect", + "shortName": "PotionEffect", + "pa_name": "IPotionEffect", + "import_count": 6 + }, + { + "fqn": "net.minecraft.village.MerchantRecipeList", + "shortName": "MerchantRecipeList", + "pa_name": "IMerchantRecipeList", + "import_count": 6 + }, + { + "fqn": "cpw.mods.fml.common.ModContainer", + "shortName": "ModContainer", + "pa_name": "IModContainer", + "import_count": 5 + }, + { + "fqn": "net.minecraft.inventory.InventoryCrafting", + "shortName": "InventoryCrafting", + "pa_name": "IInventoryCrafting", + "import_count": 4 + }, + { + "fqn": "net.minecraft.entity.ai.attributes.AttributeModifier", + "shortName": "AttributeModifier", + "pa_name": "IAttributeModifier", + "import_count": 3 + }, + { + "fqn": "net.minecraft.world.Explosion", + "shortName": "Explosion", + "pa_name": "IExplosion", + "import_count": 3 + }, + { + "fqn": "net.minecraft.util.ChatStyle", + "shortName": "ChatStyle", + "pa_name": "ITextStyle", + "import_count": 3 + }, + { + "fqn": "net.minecraft.client.audio.SoundHandler", + "shortName": "SoundHandler", + "pa_name": "ISoundHandler", + "import_count": 3 + }, + { + "fqn": "net.minecraft.entity.ai.attributes.IAttributeInstance", + "shortName": "IAttributeInstance", + "pa_name": "IIAttributeInstance", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.world.BlockEvent", + "shortName": "BlockEvent", + "pa_name": "IBlockEvent", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.resources.ResourcePackRepository", + "shortName": "ResourcePackRepository", + "pa_name": "IResourcePackRepository", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.common.ForgeChunkManager.Ticket", + "shortName": "Ticket", + "pa_name": "ITicket", + "import_count": 2 + }, + { + "fqn": "net.minecraft.enchantment.Enchantment", + "shortName": "Enchantment", + "pa_name": "IEnchantment", + "import_count": 2 + }, + { + "fqn": "net.minecraft.scoreboard.ScoreObjective", + "shortName": "ScoreObjective", + "pa_name": "IScoreObjective", + "import_count": 2 + }, + { + "fqn": "net.minecraft.scoreboard.ScorePlayerTeam", + "shortName": "ScorePlayerTeam", + "pa_name": "IScorePlayerTeam", + "import_count": 2 + }, + { + "fqn": "net.minecraft.scoreboard.Scoreboard", + "shortName": "Scoreboard", + "pa_name": "IScoreboard", + "import_count": 2 + }, + { + "fqn": "cpw.mods.fml.common.network.FMLEventChannel", + "shortName": "FMLEventChannel", + "pa_name": "IFMLEventChannel", + "import_count": 1 + }, + { + "fqn": "net.minecraft.dispenser.IBlockSource", + "shortName": "IBlockSource", + "pa_name": "IIBlockSource", + "import_count": 1 + }, + { + "fqn": "net.minecraft.command.server.CommandBlockLogic", + "shortName": "CommandBlockLogic", + "pa_name": "ICommandBlockLogic", + "import_count": 1 + }, + { + "fqn": "net.minecraft.util.math.IntHashMap", + "shortName": "IntHashMap", + "pa_name": "IIntHashMap", + "import_count": 1 + }, + { + "fqn": "net.minecraft.village.MerchantRecipe", + "shortName": "MerchantRecipe", + "pa_name": "IMerchantRecipe", + "import_count": 1 + } + ], + "SERVICE": [ + { + "fqn": "net.minecraft.util.StatCollector", + "shortName": "StatCollector", + "service_name": "PlatformService", + "import_count": 106 + }, + { + "fqn": "net.minecraft.item.Item", + "shortName": "Item", + "service_name": "PlatformService", + "import_count": 72 + }, + { + "fqn": "cpw.mods.fml.client.registry.RenderingRegistry", + "shortName": "RenderingRegistry", + "service_name": "PlatformService", + "import_count": 28 + }, + { + "fqn": "net.minecraft.server.MinecraftServer", + "shortName": "MinecraftServer", + "service_name": "PlatformService", + "import_count": 26 + }, + { + "fqn": "net.minecraft.client.renderer.texture.IIconRegister", + "shortName": "IIconRegister", + "service_name": "PlatformService", + "import_count": 26 + }, + { + "fqn": "net.minecraft.entity.EntityList", + "shortName": "EntityList", + "service_name": "PlatformService", + "import_count": 25 + }, + { + "fqn": "cpw.mods.fml.common.FMLCommonHandler", + "shortName": "FMLCommonHandler", + "service_name": "PlatformService", + "import_count": 25 + }, + { + "fqn": "net.minecraft.nbt.CompressedStreamTools", + "shortName": "CompressedStreamTools", + "service_name": "NBTIO", + "import_count": 24 + }, + { + "fqn": "net.minecraft.client.gui.Gui", + "shortName": "Gui", + "service_name": "PlatformService", + "import_count": 22 + }, + { + "fqn": "net.minecraft.command.CommandBase", + "shortName": "CommandBase", + "service_name": "PlatformService", + "import_count": 14 + }, + { + "fqn": "cpw.mods.fml.common.Loader", + "shortName": "Loader", + "service_name": "PlatformService", + "import_count": 11 + }, + { + "fqn": "net.minecraftforge.client.IItemRenderer", + "shortName": "IItemRenderer", + "service_name": "PlatformService", + "import_count": 11 + }, + { + "fqn": "net.minecraft.client.resources.IResource", + "shortName": "IResource", + "service_name": "PlatformService", + "import_count": 11 + }, + { + "fqn": "net.minecraft.client.resources.I18n", + "shortName": "I18n", + "service_name": "PlatformService", + "import_count": 9 + }, + { + "fqn": "cpw.mods.fml.common.FMLLog", + "shortName": "FMLLog", + "service_name": "PlatformService", + "import_count": 9 + }, + { + "fqn": "net.minecraft.client.renderer.ItemRenderer", + "shortName": "ItemRenderer", + "service_name": "PlatformService", + "import_count": 8 + }, + { + "fqn": "cpw.mods.fml.common.ObfuscationReflectionHelper", + "shortName": "ObfuscationReflectionHelper", + "service_name": "PlatformService", + "import_count": 6 + }, + { + "fqn": "net.minecraft.entity.passive.EntityVillager", + "shortName": "EntityVillager", + "service_name": "PlatformService", + "import_count": 6 + }, + { + "fqn": "net.minecraftforge.common.util.FakePlayer", + "shortName": "FakePlayer", + "service_name": "PlatformService", + "import_count": 6 + }, + { + "fqn": "net.minecraft.command.IEntitySelector", + "shortName": "IEntitySelector", + "service_name": "PlatformService", + "import_count": 6 + }, + { + "fqn": "net.minecraft.network.play.server.S35PacketUpdateTileEntity", + "shortName": "S35PacketUpdateTileEntity", + "service_name": "PlatformService", + "import_count": 6 + }, + { + "fqn": "net.minecraft.util.ChatAllowedCharacters", + "shortName": "ChatAllowedCharacters", + "service_name": "PlatformService", + "import_count": 6 + }, + { + "fqn": "net.minecraft.entity.item.EntityXPOrb", + "shortName": "EntityXPOrb", + "service_name": "PlatformService", + "import_count": 5 + }, + { + "fqn": "net.minecraft.stats.Achievement", + "shortName": "Achievement", + "service_name": "PlatformService", + "import_count": 5 + }, + { + "fqn": "net.minecraft.block.BlockColored", + "shortName": "BlockColored", + "service_name": "PlatformService", + "import_count": 5 + }, + { + "fqn": "net.minecraft.entity.EnumCreatureAttribute", + "shortName": "EnumCreatureAttribute", + "service_name": "PlatformService", + "import_count": 4 + }, + { + "fqn": "cpw.mods.fml.common.gameevent.PlayerEvent", + "shortName": "PlayerEvent", + "service_name": "PlatformService", + "import_count": 4 + }, + { + "fqn": "net.minecraft.client.resources.IResourceManager", + "shortName": "IResourceManager", + "service_name": "PlatformService", + "import_count": 4 + }, + { + "fqn": "net.minecraft.client.audio.PositionedSoundRecord", + "shortName": "PositionedSoundRecord", + "service_name": "PlatformService", + "import_count": 4 + }, + { + "fqn": "net.minecraft.client.renderer.entity.NPCRendererHelper", + "shortName": "NPCRendererHelper", + "service_name": "PlatformService", + "import_count": 4 + }, + { + "fqn": "net.minecraft.client.renderer.GLAllocation", + "shortName": "GLAllocation", + "service_name": "PlatformService", + "import_count": 4 + }, + { + "fqn": "net.minecraft.client.renderer.entity.RenderBiped", + "shortName": "RenderBiped", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.item.ItemEditableBook", + "shortName": "ItemEditableBook", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.item.ItemWritableBook", + "shortName": "ItemWritableBook", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.client.ForgeHooksClient", + "shortName": "ForgeHooksClient", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.client.MinecraftForgeClient", + "shortName": "MinecraftForgeClient", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.common.ForgeChunkManager", + "shortName": "ForgeChunkManager", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.world.biome.BiomeGenBase", + "shortName": "BiomeGenBase", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.event.entity.living.LivingEvent", + "shortName": "LivingEvent", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.event.entity.player.EntityInteractEvent", + "shortName": "EntityInteractEvent", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerInteractEvent", + "shortName": "PlayerInteractEvent", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.client.resources.SimpleReloadableResourceManager", + "shortName": "SimpleReloadableResourceManager", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.client.settings.KeyBinding", + "shortName": "KeyBinding", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.inventory.ICrafting", + "shortName": "ICrafting", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.item.ItemFood", + "shortName": "ItemFood", + "service_name": "PlatformService", + "import_count": 3 + }, + { + "fqn": "net.minecraft.command.PlayerSelector", + "shortName": "PlayerSelector", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.common.DimensionManager", + "shortName": "DimensionManager", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.settings.GameSettings", + "shortName": "GameSettings", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.renderer.texture.TextureUtil", + "shortName": "TextureUtil", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.common.util.EnumHelper", + "shortName": "EnumHelper", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.oredict.OreDictionary", + "shortName": "OreDictionary", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.enchantment.EnchantmentHelper", + "shortName": "EnchantmentHelper", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.world.chunk.Chunk", + "shortName": "Chunk", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.entity.EntityJoinWorldEvent", + "shortName": "EntityJoinWorldEvent", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.entity.item.ItemTossEvent", + "shortName": "ItemTossEvent", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerUseItemEvent", + "shortName": "PlayerUseItemEvent", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.entity.living.LivingAttackEvent", + "shortName": "LivingAttackEvent", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.entity.living.LivingHurtEvent", + "shortName": "LivingHurtEvent", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.IRangedAttackMob", + "shortName": "IRangedAttackMob", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.resources.NPCResourceHelper", + "shortName": "NPCResourceHelper", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.renderer.ActiveRenderInfo", + "shortName": "ActiveRenderInfo", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.IMerchant", + "shortName": "IMerchant", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.common.BiomeDictionary", + "shortName": "BiomeDictionary", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.inventory.InventoryCraftResult", + "shortName": "InventoryCraftResult", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.util.WeightedRandom", + "shortName": "WeightedRandom", + "service_name": "PlatformService", + "import_count": 2 + }, + { + "fqn": "net.minecraft.world.WorldProvider", + "shortName": "WorldProvider", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockDispenser", + "shortName": "BlockDispenser", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.event.FMLServerAboutToStartEvent", + "shortName": "FMLServerAboutToStartEvent", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.nbt.NBTUtil", + "shortName": "NBTUtil", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.util.StringUtils", + "shortName": "StringUtils", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.tileentity.MobSpawnerBaseLogic", + "shortName": "MobSpawnerBaseLogic", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.tileentity.TileEntityCommandBlock", + "shortName": "TileEntityCommandBlock", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.tileentity.TileEntityMobSpawner", + "shortName": "TileEntityMobSpawner", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.common.ForgeHooks", + "shortName": "ForgeHooks", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.living.LivingFallEvent", + "shortName": "LivingFallEvent", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerDropsEvent", + "shortName": "PlayerDropsEvent", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.item.EntityEnderPearl", + "shortName": "EntityEnderPearl", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.renderer.texture.ITickable", + "shortName": "ITickable", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.client.event.MouseEvent", + "shortName": "MouseEvent", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.client.registry.ClientRegistry", + "shortName": "ClientRegistry", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.renderer.IImageBuffer", + "shortName": "IImageBuffer", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.util.Util", + "shortName": "Util", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.relauncher.ReflectionHelper", + "shortName": "ReflectionHelper", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.audio.SoundRegistry", + "shortName": "SoundRegistry", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.model.TexturedQuad", + "shortName": "TexturedQuad", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.boss.BossStatus", + "shortName": "BossStatus", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.item.ItemPotion", + "shortName": "ItemPotion", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.potion.PotionHelper", + "shortName": "PotionHelper", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.model.ModelBook", + "shortName": "ModelBook", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.NPCEntityHelper", + "shortName": "NPCEntityHelper", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.relauncher.FMLLaunchHandler", + "shortName": "FMLLaunchHandler", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.stats.StatList", + "shortName": "StatList", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.world.WorldSettings", + "shortName": "WorldSettings", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "net.minecraft.scoreboard.Score", + "shortName": "Score", + "service_name": "PlatformService", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.client.FMLClientHandler", + "shortName": "FMLClientHandler", + "service_name": "PlatformService", + "import_count": 1 + } + ], + "TRANSFORM": [ + { + "fqn": "cpw.mods.fml.relauncher.Side", + "shortName": "Side", + "pattern_count": 2, + "import_count": 405 + }, + { + "fqn": "cpw.mods.fml.relauncher.SideOnly", + "shortName": "SideOnly", + "pattern_count": 0, + "import_count": 395 + }, + { + "fqn": "net.minecraft.util.MathHelper", + "shortName": "MathHelper", + "pattern_count": 7, + "import_count": 98 + }, + { + "fqn": "net.minecraft.util.EnumChatFormatting", + "shortName": "EnumChatFormatting", + "pattern_count": 0, + "import_count": 19 + }, + { + "fqn": "net.minecraft.util.EnumFacing", + "shortName": "EnumFacing", + "pattern_count": 0, + "import_count": 3 + } + ], + "SUPPRESS": [ + { + "fqn": "net.minecraft.client.gui.GuiButton", + "shortName": "GuiButton", + "import_count": 218 + }, + { + "fqn": "net.minecraft.client.Minecraft", + "shortName": "Minecraft", + "import_count": 180 + }, + { + "fqn": "net.minecraft.client.model.ModelRenderer", + "shortName": "ModelRenderer", + "import_count": 122 + }, + { + "fqn": "net.minecraft.client.model.ModelBase", + "shortName": "ModelBase", + "import_count": 102 + }, + { + "fqn": "net.minecraft.client.gui.GuiScreen", + "shortName": "GuiScreen", + "import_count": 70 + }, + { + "fqn": "net.minecraft.client.renderer.Tessellator", + "shortName": "Tessellator", + "import_count": 46 + }, + { + "fqn": "net.minecraft.client.renderer.RenderHelper", + "shortName": "RenderHelper", + "import_count": 40 + }, + { + "fqn": "net.minecraft.client.renderer.OpenGlHelper", + "shortName": "OpenGlHelper", + "import_count": 39 + }, + { + "fqn": "net.minecraft.client.renderer.texture.TextureManager", + "shortName": "TextureManager", + "import_count": 38 + }, + { + "fqn": "net.minecraft.client.gui.FontRenderer", + "shortName": "FontRenderer", + "import_count": 38 + }, + { + "fqn": "net.minecraft.util.IIcon", + "shortName": "IIcon", + "import_count": 35 + }, + { + "fqn": "net.minecraft.client.renderer.entity.RenderManager", + "shortName": "RenderManager", + "import_count": 33 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAIBase", + "shortName": "EntityAIBase", + "import_count": 27 + }, + { + "fqn": "net.minecraft.client.gui.ScaledResolution", + "shortName": "ScaledResolution", + "import_count": 26 + }, + { + "fqn": "net.minecraft.creativetab.CreativeTabs", + "shortName": "CreativeTabs", + "import_count": 25 + }, + { + "fqn": "cpw.mods.fml.common.registry.GameRegistry", + "shortName": "GameRegistry", + "import_count": 18 + }, + { + "fqn": "cpw.mods.fml.common.eventhandler.Event", + "shortName": "Event", + "import_count": 17 + }, + { + "fqn": "net.minecraft.client.model.ModelBiped", + "shortName": "ModelBiped", + "import_count": 16 + }, + { + "fqn": "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "shortName": "SubscribeEvent", + "import_count": 15 + }, + { + "fqn": "net.minecraft.client.renderer.entity.Render", + "shortName": "Render", + "import_count": 8 + }, + { + "fqn": "net.minecraftforge.common.MinecraftForge", + "shortName": "MinecraftForge", + "import_count": 8 + }, + { + "fqn": "net.minecraft.client.entity.EntityClientPlayerMP", + "shortName": "EntityClientPlayerMP", + "import_count": 7 + }, + { + "fqn": "net.minecraft.inventory.InventoryBasic", + "shortName": "InventoryBasic", + "import_count": 7 + }, + { + "fqn": "net.minecraft.network.Packet", + "shortName": "Packet", + "import_count": 7 + }, + { + "fqn": "cpw.mods.fml.common.network.internal.FMLProxyPacket", + "shortName": "FMLProxyPacket", + "import_count": 5 + }, + { + "fqn": "net.minecraft.pathfinding.PathEntity", + "shortName": "PathEntity", + "import_count": 5 + }, + { + "fqn": "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer", + "shortName": "TileEntitySpecialRenderer", + "import_count": 5 + }, + { + "fqn": "net.minecraft.network.PacketBuffer", + "shortName": "PacketBuffer", + "import_count": 4 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAITarget", + "shortName": "EntityAITarget", + "import_count": 4 + }, + { + "fqn": "net.minecraft.client.gui.inventory.GuiContainer", + "shortName": "GuiContainer", + "import_count": 4 + }, + { + "fqn": "net.minecraft.client.renderer.entity.RenderPlayer", + "shortName": "RenderPlayer", + "import_count": 3 + }, + { + "fqn": "net.minecraft.pathfinding.PathNavigate", + "shortName": "PathNavigate", + "import_count": 3 + }, + { + "fqn": "net.minecraft.pathfinding.PathPoint", + "shortName": "PathPoint", + "import_count": 3 + }, + { + "fqn": "net.minecraft.client.entity.AbstractClientPlayer", + "shortName": "AbstractClientPlayer", + "import_count": 3 + }, + { + "fqn": "net.minecraft.client.gui.GuiTextField", + "shortName": "GuiTextField", + "import_count": 3 + }, + { + "fqn": "net.minecraft.entity.player.InventoryPlayer", + "shortName": "InventoryPlayer", + "import_count": 3 + }, + { + "fqn": "net.minecraft.client.renderer.EntityRenderer", + "shortName": "EntityRenderer", + "import_count": 3 + }, + { + "fqn": "cpw.mods.fml.common.network.NetworkRegistry", + "shortName": "NetworkRegistry", + "import_count": 2 + }, + { + "fqn": "cpw.mods.fml.common.registry.EntityRegistry", + "shortName": "EntityRegistry", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.resources.IResourcePack", + "shortName": "IResourcePack", + "import_count": 2 + }, + { + "fqn": "net.minecraft.item.crafting.CraftingManager", + "shortName": "CraftingManager", + "import_count": 2 + }, + { + "fqn": "cpw.mods.fml.common.event.FMLInitializationEvent", + "shortName": "FMLInitializationEvent", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.event.FMLPreInitializationEvent", + "shortName": "FMLPreInitializationEvent", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.event.FMLServerStartingEvent", + "shortName": "FMLServerStartingEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.ForgeEventFactory", + "shortName": "ForgeEventFactory", + "import_count": 1 + }, + { + "fqn": "net.minecraft.pathfinding.PathFinder", + "shortName": "PathFinder", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.material.MapColor", + "shortName": "MapColor", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.renderer.RenderGlobal", + "shortName": "RenderGlobal", + "import_count": 1 + }, + { + "fqn": "net.minecraft.item.crafting.IRecipe", + "shortName": "IRecipe", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.gui.GuiSlot", + "shortName": "GuiSlot", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.renderer.entity.RenderLiving", + "shortName": "RenderLiving", + "import_count": 1 + }, + { + "fqn": "net.minecraft.item.crafting.ShapedRecipes", + "shortName": "ShapedRecipes", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.DataWatcher", + "shortName": "DataWatcher", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAITasks", + "shortName": "EntityAITasks", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.eventhandler.EventBus", + "shortName": "EventBus", + "import_count": 1 + } + ], + "AUTO": [ + { + "fqn": "net.minecraft.init.Blocks", + "shortName": "Blocks", + "pa_name": "IBlocks", + "import_count": 47 + }, + { + "fqn": "net.minecraft.nbt.NBTTagString", + "shortName": "NBTTagString", + "pa_name": "INBTTagString", + "import_count": 35 + }, + { + "fqn": "net.minecraft.client.model.ModelBox", + "shortName": "ModelBox", + "pa_name": "IModelBox", + "import_count": 32 + }, + { + "fqn": "net.minecraft.command.CommandException", + "shortName": "CommandException", + "pa_name": "ICommandException", + "import_count": 31 + }, + { + "fqn": "net.minecraft.init.Items", + "shortName": "Items", + "pa_name": "IItems", + "import_count": 29 + }, + { + "fqn": "net.minecraft.block.material.Material", + "shortName": "Material", + "pa_name": "IMaterial", + "import_count": 24 + }, + { + "fqn": "net.minecraft.client.gui.GuiYesNo", + "shortName": "GuiYesNo", + "pa_name": "IGuiYesNo", + "import_count": 22 + }, + { + "fqn": "net.minecraft.client.gui.GuiYesNoCallback", + "shortName": "GuiYesNoCallback", + "pa_name": "IGuiYesNoCallback", + "import_count": 21 + }, + { + "fqn": "net.minecraft.item.ItemBlock", + "shortName": "ItemBlock", + "pa_name": "IItemBlock", + "import_count": 19 + }, + { + "fqn": "cpw.mods.fml.common.eventhandler.Cancelable", + "shortName": "Cancelable", + "pa_name": "ICancelable", + "import_count": 19 + }, + { + "fqn": "net.minecraft.block.BlockContainer", + "shortName": "BlockContainer", + "pa_name": "IBlockContainer", + "import_count": 16 + }, + { + "fqn": "net.minecraft.item.EnumAction", + "shortName": "EnumAction", + "pa_name": "IEnumAction", + "import_count": 11 + }, + { + "fqn": "net.minecraft.entity.SharedMonsterAttributes", + "shortName": "SharedMonsterAttributes", + "pa_name": "ISharedMonsterAttributes", + "import_count": 10 + }, + { + "fqn": "net.minecraftforge.common.util.Constants", + "shortName": "Constants", + "pa_name": "IConstants", + "import_count": 9 + }, + { + "fqn": "net.minecraft.nbt.NBTTagDouble", + "shortName": "NBTTagDouble", + "pa_name": "INBTTagDouble", + "import_count": 9 + }, + { + "fqn": "net.minecraft.nbt.NBTTagInt", + "shortName": "NBTTagInt", + "pa_name": "INBTTagInt", + "import_count": 8 + }, + { + "fqn": "net.minecraft.entity.passive.EntityAnimal", + "shortName": "EntityAnimal", + "pa_name": "IEntityAnimal", + "import_count": 7 + }, + { + "fqn": "net.minecraft.entity.passive.EntityTameable", + "shortName": "EntityTameable", + "pa_name": "IEntityTameable", + "import_count": 7 + }, + { + "fqn": "net.minecraft.client.renderer.entity.RendererLivingEntity", + "shortName": "RendererLivingEntity", + "pa_name": "IRendererLivingEntity", + "import_count": 7 + }, + { + "fqn": "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "shortName": "ISimpleBlockRenderingHandler", + "pa_name": "IISimpleBlockRenderingHandler", + "import_count": 7 + }, + { + "fqn": "cpw.mods.fml.common.gameevent.TickEvent", + "shortName": "TickEvent", + "pa_name": "ITickEvent", + "import_count": 6 + }, + { + "fqn": "net.minecraft.client.renderer.texture.TextureMap", + "shortName": "TextureMap", + "pa_name": "ITextureMap", + "import_count": 6 + }, + { + "fqn": "net.minecraft.nbt.NBTTagFloat", + "shortName": "NBTTagFloat", + "pa_name": "INBTTagFloat", + "import_count": 6 + }, + { + "fqn": "net.minecraft.entity.projectile.EntityThrowable", + "shortName": "EntityThrowable", + "pa_name": "IEntityThrowable", + "import_count": 5 + }, + { + "fqn": "net.minecraft.client.particle.EntityFX", + "shortName": "EntityFX", + "pa_name": "IEntityFX", + "import_count": 5 + }, + { + "fqn": "net.minecraft.entity.boss.EntityDragon", + "shortName": "EntityDragon", + "pa_name": "IEntityDragon", + "import_count": 4 + }, + { + "fqn": "net.minecraft.util.ChunkCoordinates", + "shortName": "ChunkCoordinates", + "pa_name": "IPos", + "import_count": 4 + }, + { + "fqn": "net.minecraftforge.event.world.WorldEvent", + "shortName": "WorldEvent", + "pa_name": "IWorldEvent", + "import_count": 4 + }, + { + "fqn": "net.minecraft.entity.projectile.EntityArrow", + "shortName": "EntityArrow", + "pa_name": "IEntityArrow", + "import_count": 4 + }, + { + "fqn": "net.minecraftforge.event.entity.player.ItemTooltipEvent", + "shortName": "ItemTooltipEvent", + "pa_name": "IItemTooltipEvent", + "import_count": 4 + }, + { + "fqn": "net.minecraft.network.NetworkManager", + "shortName": "NetworkManager", + "pa_name": "INetworkManager", + "import_count": 4 + }, + { + "fqn": "net.minecraft.entity.passive.EntitySheep", + "shortName": "EntitySheep", + "pa_name": "IEntitySheep", + "import_count": 4 + }, + { + "fqn": "net.minecraft.nbt.NBTTagByte", + "shortName": "NBTTagByte", + "pa_name": "INBTTagByte", + "import_count": 4 + }, + { + "fqn": "net.minecraft.item.ItemBow", + "shortName": "ItemBow", + "pa_name": "IItemBow", + "import_count": 4 + }, + { + "fqn": "net.minecraft.nbt.NBTTagIntArray", + "shortName": "NBTTagIntArray", + "pa_name": "INBTTagIntArray", + "import_count": 4 + }, + { + "fqn": "net.minecraft.block.BlockIce", + "shortName": "BlockIce", + "pa_name": "IBlockIce", + "import_count": 3 + }, + { + "fqn": "net.minecraft.block.BlockLeavesBase", + "shortName": "BlockLeavesBase", + "pa_name": "IBlockLeavesBase", + "import_count": 3 + }, + { + "fqn": "net.minecraft.block.BlockVine", + "shortName": "BlockVine", + "pa_name": "IBlockVine", + "import_count": 3 + }, + { + "fqn": "net.minecraft.entity.passive.EntityHorse", + "shortName": "EntityHorse", + "pa_name": "IEntityHorse", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.client.event.RenderWorldLastEvent", + "shortName": "RenderWorldLastEvent", + "pa_name": "IRenderWorldLastEvent", + "import_count": 3 + }, + { + "fqn": "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData", + "shortName": "IEntityAdditionalSpawnData", + "pa_name": "IIEntityAdditionalSpawnData", + "import_count": 3 + }, + { + "fqn": "cpw.mods.fml.common.network.FMLNetworkEvent", + "shortName": "FMLNetworkEvent", + "pa_name": "IFMLNetworkEvent", + "import_count": 3 + }, + { + "fqn": "net.minecraft.item.ItemArmor.ArmorMaterial", + "shortName": "ArmorMaterial", + "pa_name": "IArmorMaterial", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.event.entity.EntityEvent", + "shortName": "EntityEvent", + "pa_name": "IEntityEvent", + "import_count": 3 + }, + { + "fqn": "net.minecraft.util.EntityDamageSource", + "shortName": "EntityDamageSource", + "pa_name": "IEntityDamageSource", + "import_count": 3 + }, + { + "fqn": "net.minecraft.world.ChunkCoordIntPair", + "shortName": "ChunkCoordIntPair", + "pa_name": "IChunkCoordIntPair", + "import_count": 3 + }, + { + "fqn": "cpw.mods.fml.common.eventhandler.EventPriority", + "shortName": "EventPriority", + "pa_name": "IEventPriority", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.client.event.GuiScreenEvent", + "shortName": "GuiScreenEvent", + "pa_name": "IGuiScreenEvent", + "import_count": 3 + }, + { + "fqn": "net.minecraftforge.common.IExtendedEntityProperties", + "shortName": "IExtendedEntityProperties", + "pa_name": "IIExtendedEntityProperties", + "import_count": 3 + }, + { + "fqn": "net.minecraft.item.ItemSword", + "shortName": "ItemSword", + "pa_name": "IItemSword", + "import_count": 3 + }, + { + "fqn": "net.minecraft.entity.monster.EntityGhast", + "shortName": "EntityGhast", + "pa_name": "IEntityGhast", + "import_count": 2 + }, + { + "fqn": "net.minecraft.network.play.server.S12PacketEntityVelocity", + "shortName": "S12PacketEntityVelocity", + "pa_name": "IS12PacketEntityVelocity", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.entity.EntityPlayerSP", + "shortName": "EntityPlayerSP", + "pa_name": "IEntityPlayerSP", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.client.IItemRenderer.ItemRenderType", + "shortName": "ItemRenderType", + "pa_name": "IItemRenderType", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.EnumCreatureType", + "shortName": "EnumCreatureType", + "pa_name": "IEnumCreatureType", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.world.ChunkDataEvent", + "shortName": "ChunkDataEvent", + "pa_name": "IChunkDataEvent", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.world.ChunkEvent", + "shortName": "ChunkEvent", + "pa_name": "IChunkEvent", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.world.ChunkWatchEvent", + "shortName": "ChunkWatchEvent", + "pa_name": "IChunkWatchEvent", + "import_count": 2 + }, + { + "fqn": "net.minecraft.inventory.ContainerPlayer", + "shortName": "ContainerPlayer", + "pa_name": "IContainerPlayer", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.event.entity.living.LivingDeathEvent", + "shortName": "LivingDeathEvent", + "pa_name": "ILivingDeathEvent", + "import_count": 2 + }, + { + "fqn": "cpw.mods.fml.common.gameevent.TickEvent.Phase", + "shortName": "Phase", + "pa_name": "IPhase", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.ai.EntityMoveHelper", + "shortName": "EntityMoveHelper", + "pa_name": "IEntityMoveHelper", + "import_count": 2 + }, + { + "fqn": "net.minecraft.world.EnumSkyBlock", + "shortName": "EnumSkyBlock", + "pa_name": "IEnumSkyBlock", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.resources.AbstractResourcePack", + "shortName": "AbstractResourcePack", + "pa_name": "IAbstractResourcePack", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.resources.FallbackResourceManager", + "shortName": "FallbackResourceManager", + "pa_name": "IFallbackResourceManager", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.client.event.RenderLivingEvent", + "shortName": "RenderLivingEvent", + "pa_name": "IRenderLivingEvent", + "import_count": 2 + }, + { + "fqn": "net.minecraftforge.client.event.RenderPlayerEvent", + "shortName": "RenderPlayerEvent", + "pa_name": "IRenderPlayerEvent", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.particle.EntityPortalFX", + "shortName": "EntityPortalFX", + "pa_name": "IEntityPortalFX", + "import_count": 2 + }, + { + "fqn": "net.minecraft.client.resources.SkinManager", + "shortName": "SkinManager", + "pa_name": "ISkinManager", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.monster.EntityEnderman", + "shortName": "EntityEnderman", + "pa_name": "IEntityEnderman", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.monster.EntityCreeper", + "shortName": "EntityCreeper", + "pa_name": "IEntityCreeper", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.monster.IMob", + "shortName": "IMob", + "pa_name": "IIMob", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.INpc", + "shortName": "INpc", + "pa_name": "IINpc", + "import_count": 2 + }, + { + "fqn": "net.minecraft.entity.projectile.EntityFishHook", + "shortName": "EntityFishHook", + "pa_name": "IEntityFishHook", + "import_count": 2 + }, + { + "fqn": "net.minecraft.nbt.NBTBase.NBTPrimitive", + "shortName": "NBTPrimitive", + "pa_name": "INBTPrimitive", + "import_count": 2 + }, + { + "fqn": "net.minecraft.command.PlayerNotFoundException", + "shortName": "PlayerNotFoundException", + "pa_name": "IPlayerNotFoundException", + "import_count": 1 + }, + { + "fqn": "net.minecraft.network.NetHandlerPlayServer", + "shortName": "NetHandlerPlayServer", + "pa_name": "INetHandlerPlayServer", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.gui.achievement.GuiAchievement", + "shortName": "GuiAchievement", + "pa_name": "IGuiAchievement", + "import_count": 1 + }, + { + "fqn": "net.minecraft.nbt.NBTSizeTracker", + "shortName": "NBTSizeTracker", + "pa_name": "INBTSizeTracker", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.network.IGuiHandler", + "shortName": "IGuiHandler", + "pa_name": "IIGuiHandler", + "import_count": 1 + }, + { + "fqn": "net.minecraft.dispenser.BehaviorDefaultDispenseItem", + "shortName": "BehaviorDefaultDispenseItem", + "pa_name": "IBehaviorDefaultDispenseItem", + "import_count": 1 + }, + { + "fqn": "net.minecraft.item.Item.ToolMaterial", + "shortName": "ToolMaterial", + "pa_name": "IToolMaterial", + "import_count": 1 + }, + { + "fqn": "net.minecraft.item.ItemFlintAndSteel", + "shortName": "ItemFlintAndSteel", + "pa_name": "IItemFlintAndSteel", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.Mod", + "shortName": "Mod", + "pa_name": "IMod", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.Mod.EventHandler", + "shortName": "EventHandler", + "pa_name": "IEventHandler", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.SidedProxy", + "shortName": "SidedProxy", + "pa_name": "ISidedProxy", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.event.FMLLoadCompleteEvent", + "shortName": "FMLLoadCompleteEvent", + "pa_name": "IFMLLoadCompleteEvent", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.event.FMLServerStartedEvent", + "shortName": "FMLServerStartedEvent", + "pa_name": "IFMLServerStartedEvent", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.event.FMLServerStoppedEvent", + "shortName": "FMLServerStoppedEvent", + "pa_name": "IFMLServerStoppedEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraft.world.Teleporter", + "shortName": "Teleporter", + "pa_name": "ITeleporter", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.LoaderState", + "shortName": "LoaderState", + "pa_name": "ILoaderState", + "import_count": 1 + }, + { + "fqn": "net.minecraft.util.EntityDamageSourceIndirect", + "shortName": "EntityDamageSourceIndirect", + "pa_name": "IEntityDamageSourceIndirect", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.eventhandler.Event.Result", + "shortName": "Result", + "pa_name": "IResult", + "import_count": 1 + }, + { + "fqn": "net.minecraft.world.ChunkPosition", + "shortName": "ChunkPosition", + "pa_name": "IChunkPosition", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.AnvilRepairEvent", + "shortName": "AnvilRepairEvent", + "pa_name": "IAnvilRepairEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerDestroyItemEvent", + "shortName": "PlayerDestroyItemEvent", + "pa_name": "IPlayerDestroyItemEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.EntityStruckByLightningEvent", + "shortName": "EntityStruckByLightningEvent", + "pa_name": "IEntityStruckByLightningEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.PlaySoundAtEntityEvent", + "shortName": "PlaySoundAtEntityEvent", + "pa_name": "IPlaySoundAtEntityEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.AchievementEvent", + "shortName": "AchievementEvent", + "pa_name": "IAchievementEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.ArrowLooseEvent", + "shortName": "ArrowLooseEvent", + "pa_name": "IArrowLooseEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.ArrowNockEvent", + "shortName": "ArrowNockEvent", + "pa_name": "IArrowNockEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.BonemealEvent", + "shortName": "BonemealEvent", + "pa_name": "IBonemealEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.FillBucketEvent", + "shortName": "FillBucketEvent", + "pa_name": "IFillBucketEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerOpenContainerEvent", + "shortName": "PlayerOpenContainerEvent", + "pa_name": "IPlayerOpenContainerEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerPickupXpEvent", + "shortName": "PlayerPickupXpEvent", + "pa_name": "IPlayerPickupXpEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerSleepInBedEvent", + "shortName": "PlayerSleepInBedEvent", + "pa_name": "IPlayerSleepInBedEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerWakeUpEvent", + "shortName": "PlayerWakeUpEvent", + "pa_name": "IPlayerWakeUpEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.UseHoeEvent", + "shortName": "UseHoeEvent", + "pa_name": "IUseHoeEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerEvent", + "shortName": "PlayerEvent", + "pa_name": "IPlayerEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.player.PlayerInteractEvent.Action", + "shortName": "Action", + "pa_name": "IAction", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.terraingen.PopulateChunkEvent", + "shortName": "PopulateChunkEvent", + "pa_name": "IPopulateChunkEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAIDoorInteract", + "shortName": "EntityAIDoorInteract", + "pa_name": "IEntityAIDoorInteract", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockDoor", + "shortName": "BlockDoor", + "pa_name": "IBlockDoor", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockFence", + "shortName": "BlockFence", + "pa_name": "IBlockFence", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockFenceGate", + "shortName": "BlockFenceGate", + "pa_name": "IBlockFenceGate", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockRailBase", + "shortName": "BlockRailBase", + "pa_name": "IBlockRailBase", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockWall", + "shortName": "BlockWall", + "pa_name": "IBlockWall", + "import_count": 1 + }, + { + "fqn": "net.minecraft.world.ChunkCache", + "shortName": "ChunkCache", + "pa_name": "IChunkCache", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAINearestAttackableTarget", + "shortName": "EntityAINearestAttackableTarget", + "pa_name": "IEntityAINearestAttackableTarget", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockBreakable", + "shortName": "BlockBreakable", + "pa_name": "IBlockBreakable", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.common.util.ForgeDirection", + "shortName": "ForgeDirection", + "pa_name": "IForgeDirection", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.client.event.RenderGameOverlayEvent", + "shortName": "RenderGameOverlayEvent", + "pa_name": "IRenderGameOverlayEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.client.event.RenderHandEvent", + "shortName": "RenderHandEvent", + "pa_name": "IRenderHandEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.particle.EntityFlameFX", + "shortName": "EntityFlameFX", + "pa_name": "IEntityFlameFX", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.particle.EntitySmokeFX", + "shortName": "EntitySmokeFX", + "pa_name": "IEntitySmokeFX", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.resources.IReloadableResourceManager", + "shortName": "IReloadableResourceManager", + "pa_name": "IIReloadableResourceManager", + "import_count": 1 + }, + { + "fqn": "net.minecraft.util.ReportedException", + "shortName": "ReportedException", + "pa_name": "IReportedException", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.client.ClientCommandHandler", + "shortName": "ClientCommandHandler", + "pa_name": "IClientCommandHandler", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.resources.FolderResourcePack", + "shortName": "FolderResourcePack", + "pa_name": "IFolderResourcePack", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.resources.IResourceManagerReloadListener", + "shortName": "IResourceManagerReloadListener", + "pa_name": "IIResourceManagerReloadListener", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.passive.EntityChicken", + "shortName": "EntityChicken", + "pa_name": "IEntityChicken", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.renderer.texture.SimpleTexture", + "shortName": "SimpleTexture", + "pa_name": "ISimpleTexture", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.gameevent.InputEvent", + "shortName": "InputEvent", + "pa_name": "IInputEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraft.event.ClickEvent", + "shortName": "ClickEvent", + "pa_name": "IClickEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraft.event.ClickEvent.Action", + "shortName": "Action", + "pa_name": "IAction", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.audio.ISound", + "shortName": "ISound", + "pa_name": "IISound", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.audio.ITickableSound", + "shortName": "ITickableSound", + "pa_name": "IITickableSound", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.audio.MovingSound", + "shortName": "MovingSound", + "pa_name": "IMovingSound", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.entity.EntityEvent.EntityConstructing", + "shortName": "EntityConstructing", + "pa_name": "IEntityConstructing", + "import_count": 1 + }, + { + "fqn": "net.minecraft.network.play.client.C17PacketCustomPayload", + "shortName": "C17PacketCustomPayload", + "pa_name": "IC17PacketCustomPayload", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.shader.ShaderGroup", + "shortName": "ShaderGroup", + "pa_name": "IShaderGroup", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.client.event.GuiOpenEvent", + "shortName": "GuiOpenEvent", + "pa_name": "IGuiOpenEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.gui.GuiConfirmOpenLink", + "shortName": "GuiConfirmOpenLink", + "pa_name": "IGuiConfirmOpenLink", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.resources.DefaultResourcePack", + "shortName": "DefaultResourcePack", + "pa_name": "IDefaultResourcePack", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.renderer.texture.ITextureObject", + "shortName": "ITextureObject", + "pa_name": "IITextureObject", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.model.PositionTextureVertex", + "shortName": "PositionTextureVertex", + "pa_name": "IPositionTextureVertex", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.renderer.ImageBufferDownload", + "shortName": "ImageBufferDownload", + "pa_name": "IImageBufferDownload", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.client.IItemRenderer.ItemRendererHelper", + "shortName": "ItemRendererHelper", + "pa_name": "IItemRendererHelper", + "import_count": 1 + }, + { + "fqn": "net.minecraft.inventory.SlotCrafting", + "shortName": "SlotCrafting", + "pa_name": "ISlotCrafting", + "import_count": 1 + }, + { + "fqn": "net.minecraft.network.play.server.S2FPacketSetSlot", + "shortName": "S2FPacketSetSlot", + "pa_name": "IS2FPacketSetSlot", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.common.ForgeChunkManager.LoadingCallback", + "shortName": "LoadingCallback", + "pa_name": "ILoadingCallback", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.common.ForgeChunkManager.Type", + "shortName": "Type", + "pa_name": "IType", + "import_count": 1 + }, + { + "fqn": "net.minecraft.enchantment.EnumEnchantmentType", + "shortName": "EnumEnchantmentType", + "pa_name": "IEnumEnchantmentType", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAIAttackOnCollide", + "shortName": "EntityAIAttackOnCollide", + "pa_name": "IEntityAIAttackOnCollide", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAIHurtByTarget", + "shortName": "EntityAIHurtByTarget", + "pa_name": "IEntityAIHurtByTarget", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAIOpenDoor", + "shortName": "EntityAIOpenDoor", + "pa_name": "IEntityAIOpenDoor", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAIRestrictSun", + "shortName": "EntityAIRestrictSun", + "pa_name": "IEntityAIRestrictSun", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAISwimming", + "shortName": "EntityAISwimming", + "pa_name": "IEntityAISwimming", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAITasks.EntityAITaskEntry", + "shortName": "EntityAITaskEntry", + "pa_name": "IEntityAITaskEntry", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.boss.IBossDisplayData", + "shortName": "IBossDisplayData", + "pa_name": "IIBossDisplayData", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.monster.EntityZombie", + "shortName": "EntityZombie", + "pa_name": "IEntityZombie", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.passive.EntityBat", + "shortName": "EntityBat", + "pa_name": "IEntityBat", + "import_count": 1 + }, + { + "fqn": "net.minecraft.network.play.server.S0BPacketAnimation", + "shortName": "S0BPacketAnimation", + "pa_name": "IS0BPacketAnimation", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.event.ServerChatEvent", + "shortName": "ServerChatEvent", + "pa_name": "IServerChatEvent", + "import_count": 1 + }, + { + "fqn": "net.minecraft.network.play.server.S27PacketExplosion", + "shortName": "S27PacketExplosion", + "pa_name": "IS27PacketExplosion", + "import_count": 1 + }, + { + "fqn": "net.minecraft.util.MovingObjectPosition.MovingObjectType", + "shortName": "MovingObjectType", + "pa_name": "IMovingObjectType", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.monster.EntitySkeleton", + "shortName": "EntitySkeleton", + "pa_name": "IEntitySkeleton", + "import_count": 1 + }, + { + "fqn": "net.minecraft.network.play.server.S04PacketEntityEquipment", + "shortName": "S04PacketEntityEquipment", + "pa_name": "IS04PacketEntityEquipment", + "import_count": 1 + }, + { + "fqn": "net.minecraft.item.ItemColored", + "shortName": "ItemColored", + "pa_name": "IItemColored", + "import_count": 1 + }, + { + "fqn": "cpw.mods.fml.common.network.internal.FMLMessage", + "shortName": "FMLMessage", + "pa_name": "IFMLMessage", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.EntityTrackerEntry", + "shortName": "EntityTrackerEntry", + "pa_name": "IEntityTrackerEntry", + "import_count": 1 + }, + { + "fqn": "net.minecraft.world.EnumDifficulty", + "shortName": "EnumDifficulty", + "pa_name": "IEnumDifficulty", + "import_count": 1 + }, + { + "fqn": "net.minecraft.command.CommandHandler", + "shortName": "CommandHandler", + "pa_name": "ICommandHandler", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.common.BiomeDictionary.Type", + "shortName": "Type", + "pa_name": "IType", + "import_count": 1 + }, + { + "fqn": "net.minecraft.util.Vec3i", + "shortName": "Vec3i", + "pa_name": "IVec3i", + "import_count": 1 + }, + { + "fqn": "net.minecraft.block.BlockAir", + "shortName": "BlockAir", + "pa_name": "IBlockAir", + "import_count": 1 + }, + { + "fqn": "net.minecraft.entity.effect.EntityLightningBolt", + "shortName": "EntityLightningBolt", + "pa_name": "IEntityLightningBolt", + "import_count": 1 + }, + { + "fqn": "net.minecraft.tileentity.TileEntitySign", + "shortName": "TileEntitySign", + "pa_name": "ITileEntitySign", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.common.util.BlockSnapshot", + "shortName": "BlockSnapshot", + "pa_name": "IBlockSnapshot", + "import_count": 1 + }, + { + "fqn": "net.minecraft.stats.StatBase", + "shortName": "StatBase", + "pa_name": "IStatBase", + "import_count": 1 + }, + { + "fqn": "net.minecraftforge.common.IPlantable", + "shortName": "IPlantable", + "pa_name": "IIPlantable", + "import_count": 1 + }, + { + "fqn": "net.minecraft.scoreboard.IScoreObjectiveCriteria", + "shortName": "IScoreObjectiveCriteria", + "pa_name": "IIScoreObjectiveCriteria", + "import_count": 1 + }, + { + "fqn": "net.minecraft.nbt.NBTTagByteArray", + "shortName": "NBTTagByteArray", + "pa_name": "INBTTagByteArray", + "import_count": 1 + }, + { + "fqn": "net.minecraft.nbt.NBTTagLong", + "shortName": "NBTTagLong", + "pa_name": "INBTTagLong", + "import_count": 1 + }, + { + "fqn": "net.minecraft.nbt.NBTTagShort", + "shortName": "NBTTagShort", + "pa_name": "INBTTagShort", + "import_count": 1 + }, + { + "fqn": "net.minecraft.world.IWorldAccess", + "shortName": "IWorldAccess", + "pa_name": "IIWorldAccess", + "import_count": 1 + }, + { + "fqn": "net.minecraft.client.gui.inventory.GuiInventory", + "shortName": "GuiInventory", + "pa_name": "IGuiInventory", + "import_count": 1 + }, + { + "fqn": "net.minecraft.network.play.client.C0DPacketCloseWindow", + "shortName": "C0DPacketCloseWindow", + "pa_name": "IC0DPacketCloseWindow", + "import_count": 1 + } + ] + }, + "types": { + "net.minecraft.nbt.NBTTagCompound": { + "shortName": "NBTTagCompound", + "classification": "EXISTING", + "reason": "Already abstracted as INbt", + "pa_name": "INbt", + "target": null, + "import_count": 593, + "file_count": 593 + }, + "net.minecraft.entity.player.EntityPlayer": { + "shortName": "EntityPlayer", + "classification": "EXISTING", + "reason": "Already abstracted as IPlayer", + "pa_name": "IPlayer", + "target": null, + "import_count": 551, + "file_count": 551 + }, + "cpw.mods.fml.relauncher.Side": { + "shortName": "Side", + "classification": "TRANSFORM", + "reason": "Static-Transform (2 regex patterns)", + "pa_name": null, + "target": null, + "import_count": 405, + "file_count": 405, + "transform_patterns": [ + [ + "@SideOnly\\s*\\(\\s*Side\\.CLIENT\\s*\\)", + "@ClientOnly" + ], + [ + "@SideOnly\\s*\\(\\s*Side\\.SERVER\\s*\\)", + "@ServerOnly" + ] + ] + }, + "cpw.mods.fml.relauncher.SideOnly": { + "shortName": "SideOnly", + "classification": "TRANSFORM", + "reason": "Static-Transform (0 regex patterns)", + "pa_name": null, + "target": null, + "import_count": 395, + "file_count": 395 + }, + "net.minecraft.entity.player.EntityPlayerMP": { + "shortName": "EntityPlayerMP", + "classification": "EXISTING", + "reason": "Already abstracted as IPlayer", + "pa_name": "IPlayer", + "target": null, + "import_count": 304, + "file_count": 304 + }, + "net.minecraft.entity.Entity": { + "shortName": "Entity", + "classification": "EXISTING", + "reason": "Already abstracted as IEntity", + "pa_name": "IEntity", + "target": null, + "import_count": 262, + "file_count": 262 + }, + "net.minecraft.item.ItemStack": { + "shortName": "ItemStack", + "classification": "EXISTING", + "reason": "Already abstracted as IItemStack", + "pa_name": "IItemStack", + "target": null, + "import_count": 228, + "file_count": 228 + }, + "net.minecraft.client.gui.GuiButton": { + "shortName": "GuiButton", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 218, + "file_count": 218 + }, + "net.minecraft.entity.EntityLivingBase": { + "shortName": "EntityLivingBase", + "classification": "EXISTING", + "reason": "Already abstracted as IEntityLivingBase", + "pa_name": "IEntityLivingBase", + "target": null, + "import_count": 201, + "file_count": 201 + }, + "net.minecraft.client.Minecraft": { + "shortName": "Minecraft", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 180, + "file_count": 180 + }, + "net.minecraft.world.World": { + "shortName": "World", + "classification": "EXISTING", + "reason": "Already abstracted as IWorld", + "pa_name": "IWorld", + "target": null, + "import_count": 172, + "file_count": 172 + }, + "net.minecraft.util.ResourceLocation": { + "shortName": "ResourceLocation", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "IResourceLocation", + "target": "platform-api/src/main/java/noppes/npcs/api/IResourceLocation.java", + "import_count": 145, + "file_count": 145 + }, + "net.minecraft.client.model.ModelRenderer": { + "shortName": "ModelRenderer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 122, + "file_count": 122 + }, + "net.minecraft.nbt.NBTTagList": { + "shortName": "NBTTagList", + "classification": "EXISTING", + "reason": "Already abstracted as INbtList", + "pa_name": "INbtList", + "target": null, + "import_count": 111, + "file_count": 111 + }, + "net.minecraft.util.StatCollector": { + "shortName": "StatCollector", + "classification": "SERVICE", + "reason": "Translation/localization is platform-specific", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 106, + "file_count": 106, + "service_name": "PlatformService" + }, + "net.minecraft.client.model.ModelBase": { + "shortName": "ModelBase", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 102, + "file_count": 102 + }, + "net.minecraft.util.MathHelper": { + "shortName": "MathHelper", + "classification": "TRANSFORM", + "reason": "Static-Transform (7 regex patterns)", + "pa_name": null, + "target": null, + "import_count": 98, + "file_count": 98, + "transform_patterns": [ + [ + "MathHelper\\.clamp_int\\s*\\(", + "ValueUtil.clampInt(" + ], + [ + "MathHelper\\.clamp_float\\s*\\(", + "ValueUtil.clampFloat(" + ], + [ + "MathHelper\\.clamp_double\\s*\\(", + "ValueUtil.clampDouble(" + ], + [ + "MathHelper\\.sqrt_double\\s*\\(", + "Math.sqrt(" + ], + [ + "MathHelper\\.sqrt_float\\s*\\(", + "(float)Math.sqrt(" + ], + [ + "MathHelper\\.floor_double\\s*\\(", + "ValueUtil.floorDouble(" + ], + [ + "MathHelper\\.floor_float\\s*\\(", + "ValueUtil.floorFloat(" + ] + ] + }, + "net.minecraft.block.Block": { + "shortName": "Block", + "classification": "INTERFACE", + "reason": "Auto: 28 methods, 14% static → instance-heavy", + "pa_name": "IBlock", + "target": "platform-api/src/main/java/noppes/npcs/api/IBlock.java", + "import_count": 84, + "file_count": 84 + }, + "net.minecraft.tileentity.TileEntity": { + "shortName": "TileEntity", + "classification": "INTERFACE", + "reason": "Auto: 6 methods, 0% static → instance-heavy", + "pa_name": "ITileEntity", + "target": "platform-api/src/main/java/noppes/npcs/api/ITileEntity.java", + "import_count": 78, + "file_count": 78 + }, + "net.minecraft.item.Item": { + "shortName": "Item", + "classification": "SERVICE", + "reason": "Auto: 75% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 72, + "file_count": 72, + "service_name": "PlatformService" + }, + "net.minecraft.client.gui.GuiScreen": { + "shortName": "GuiScreen", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 70, + "file_count": 70 + }, + "net.minecraft.util.AxisAlignedBB": { + "shortName": "AxisAlignedBB", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "IBoundingBox", + "target": "platform-api/src/main/java/noppes/npcs/api/IBoundingBox.java", + "import_count": 59, + "file_count": 59 + }, + "net.minecraft.command.ICommandSender": { + "shortName": "ICommandSender", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "ICommandSender", + "target": "platform-api/src/main/java/noppes/npcs/api/ICommandSender.java", + "import_count": 47, + "file_count": 47 + }, + "net.minecraft.init.Blocks": { + "shortName": "Blocks", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlocks", + "target": null, + "import_count": 47, + "file_count": 47 + }, + "net.minecraft.client.renderer.Tessellator": { + "shortName": "Tessellator", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 46, + "file_count": 46 + }, + "net.minecraft.util.Vec3": { + "shortName": "Vec3", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "IVector3", + "target": "platform-api/src/main/java/noppes/npcs/api/IVector3.java", + "import_count": 43, + "file_count": 43 + }, + "net.minecraft.inventory.Slot": { + "shortName": "Slot", + "classification": "INTERFACE", + "reason": "Auto: 13 methods, 0% static → instance-heavy", + "pa_name": "ISlot", + "target": "platform-api/src/main/java/noppes/npcs/api/ISlot.java", + "import_count": 42, + "file_count": 42 + }, + "net.minecraft.client.renderer.RenderHelper": { + "shortName": "RenderHelper", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 40, + "file_count": 40 + }, + "net.minecraft.client.renderer.OpenGlHelper": { + "shortName": "OpenGlHelper", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 39, + "file_count": 39 + }, + "net.minecraft.client.renderer.texture.TextureManager": { + "shortName": "TextureManager", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 38, + "file_count": 38 + }, + "net.minecraft.client.gui.FontRenderer": { + "shortName": "FontRenderer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 38, + "file_count": 38 + }, + "net.minecraft.util.DamageSource": { + "shortName": "DamageSource", + "classification": "EXISTING", + "reason": "Already abstracted as IDamageSource", + "pa_name": "IDamageSource", + "target": null, + "import_count": 36, + "file_count": 36 + }, + "net.minecraft.client.renderer.RenderBlocks": { + "shortName": "RenderBlocks", + "classification": "INTERFACE", + "reason": "Auto: 13 methods, 8% static → instance-heavy", + "pa_name": "IRenderBlocks", + "target": "platform-api/src/main/java/noppes/npcs/api/IRenderBlocks.java", + "import_count": 35, + "file_count": 35 + }, + "net.minecraft.nbt.NBTTagString": { + "shortName": "NBTTagString", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagString", + "target": null, + "import_count": 35, + "file_count": 35 + }, + "net.minecraft.util.IIcon": { + "shortName": "IIcon", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 35, + "file_count": 35 + }, + "net.minecraft.client.renderer.entity.RenderManager": { + "shortName": "RenderManager", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 33, + "file_count": 33 + }, + "net.minecraft.client.model.ModelBox": { + "shortName": "ModelBox", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IModelBox", + "target": null, + "import_count": 32, + "file_count": 32 + }, + "net.minecraft.command.CommandException": { + "shortName": "CommandException", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ICommandException", + "target": null, + "import_count": 31, + "file_count": 31 + }, + "net.minecraft.inventory.IInventory": { + "shortName": "IInventory", + "classification": "INTERFACE", + "reason": "Auto: 8 methods, 0% static → instance-heavy", + "pa_name": "IIInventory", + "target": "platform-api/src/main/java/noppes/npcs/api/IIInventory.java", + "import_count": 30, + "file_count": 30 + }, + "net.minecraft.world.IBlockAccess": { + "shortName": "IBlockAccess", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "IIBlockAccess", + "target": "platform-api/src/main/java/noppes/npcs/api/IIBlockAccess.java", + "import_count": 30, + "file_count": 30 + }, + "net.minecraft.init.Items": { + "shortName": "Items", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItems", + "target": null, + "import_count": 29, + "file_count": 29 + }, + "cpw.mods.fml.client.registry.RenderingRegistry": { + "shortName": "RenderingRegistry", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 28, + "file_count": 28, + "service_name": "PlatformService" + }, + "net.minecraft.entity.ai.EntityAIBase": { + "shortName": "EntityAIBase", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 27, + "file_count": 27 + }, + "net.minecraft.server.MinecraftServer": { + "shortName": "MinecraftServer", + "classification": "SERVICE", + "reason": "Server access is a core platform concern (getServer, isDedicatedServer)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 26, + "file_count": 26, + "service_name": "PlatformService" + }, + "net.minecraft.client.gui.ScaledResolution": { + "shortName": "ScaledResolution", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 26, + "file_count": 26 + }, + "net.minecraft.client.renderer.texture.IIconRegister": { + "shortName": "IIconRegister", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 26, + "file_count": 26, + "service_name": "PlatformService" + }, + "net.minecraft.entity.EntityList": { + "shortName": "EntityList", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 25, + "file_count": 25, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.FMLCommonHandler": { + "shortName": "FMLCommonHandler", + "classification": "SERVICE", + "reason": "Side detection is platform infrastructure", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 25, + "file_count": 25, + "service_name": "PlatformService" + }, + "net.minecraft.inventory.Container": { + "shortName": "Container", + "classification": "INTERFACE", + "reason": "Auto: 11 methods, 27% static → instance-heavy", + "pa_name": "IContainer", + "target": "platform-api/src/main/java/noppes/npcs/api/IContainer.java", + "import_count": 25, + "file_count": 25 + }, + "net.minecraft.creativetab.CreativeTabs": { + "shortName": "CreativeTabs", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 25, + "file_count": 25 + }, + "net.minecraft.util.ChatComponentTranslation": { + "shortName": "ChatComponentTranslation", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "ITextComponent", + "target": "platform-api/src/main/java/noppes/npcs/api/ITextComponent.java", + "import_count": 24, + "file_count": 24 + }, + "net.minecraft.nbt.CompressedStreamTools": { + "shortName": "CompressedStreamTools", + "classification": "SERVICE", + "reason": "NBT I/O operations belong with NBT infrastructure", + "pa_name": null, + "target": "platform-api/src/main/java/noppes/npcs/platform/nbt/NBTIO.java", + "import_count": 24, + "file_count": 24, + "service_name": "NBTIO" + }, + "net.minecraft.block.material.Material": { + "shortName": "Material", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IMaterial", + "target": null, + "import_count": 24, + "file_count": 24 + }, + "net.minecraft.client.gui.GuiYesNo": { + "shortName": "GuiYesNo", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IGuiYesNo", + "target": null, + "import_count": 22, + "file_count": 22 + }, + "net.minecraft.client.gui.Gui": { + "shortName": "Gui", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 22, + "file_count": 22, + "service_name": "PlatformService" + }, + "net.minecraft.client.gui.GuiYesNoCallback": { + "shortName": "GuiYesNoCallback", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IGuiYesNoCallback", + "target": null, + "import_count": 21, + "file_count": 21 + }, + "net.minecraft.util.ChatComponentText": { + "shortName": "ChatComponentText", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "ITextComponent", + "target": "platform-api/src/main/java/noppes/npcs/api/ITextComponent.java", + "import_count": 20, + "file_count": 20 + }, + "net.minecraft.util.EnumChatFormatting": { + "shortName": "EnumChatFormatting", + "classification": "TRANSFORM", + "reason": "Static-Transform (0 regex patterns)", + "pa_name": null, + "target": null, + "import_count": 19, + "file_count": 19 + }, + "net.minecraft.item.ItemBlock": { + "shortName": "ItemBlock", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemBlock", + "target": null, + "import_count": 19, + "file_count": 19 + }, + "cpw.mods.fml.common.eventhandler.Cancelable": { + "shortName": "Cancelable", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ICancelable", + "target": null, + "import_count": 19, + "file_count": 19 + }, + "net.minecraft.world.WorldServer": { + "shortName": "WorldServer", + "classification": "EXISTING", + "reason": "Already abstracted as IWorld", + "pa_name": "IWorld", + "target": null, + "import_count": 18, + "file_count": 18 + }, + "cpw.mods.fml.common.registry.GameRegistry": { + "shortName": "GameRegistry", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 18, + "file_count": 18 + }, + "net.minecraft.entity.EntityLiving": { + "shortName": "EntityLiving", + "classification": "EXISTING", + "reason": "Already abstracted as IEntityLiving", + "pa_name": "IEntityLiving", + "target": null, + "import_count": 18, + "file_count": 18 + }, + "cpw.mods.fml.common.eventhandler.Event": { + "shortName": "Event", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 17, + "file_count": 17 + }, + "net.minecraft.client.model.ModelBiped": { + "shortName": "ModelBiped", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 16, + "file_count": 16 + }, + "net.minecraft.block.BlockContainer": { + "shortName": "BlockContainer", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockContainer", + "target": null, + "import_count": 16, + "file_count": 16 + }, + "net.minecraft.entity.item.EntityItem": { + "shortName": "EntityItem", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "IEntityItem", + "target": "platform-api/src/main/java/noppes/npcs/api/entity/IEntityItem.java", + "import_count": 15, + "file_count": 15 + }, + "cpw.mods.fml.common.eventhandler.SubscribeEvent": { + "shortName": "SubscribeEvent", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 15, + "file_count": 15 + }, + "net.minecraft.util.MovingObjectPosition": { + "shortName": "MovingObjectPosition", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "IRayTraceResult", + "target": "platform-api/src/main/java/noppes/npcs/api/IRayTraceResult.java", + "import_count": 15, + "file_count": 15 + }, + "net.minecraft.command.CommandBase": { + "shortName": "CommandBase", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 14, + "file_count": 14, + "service_name": "PlatformService" + }, + "net.minecraft.item.ItemArmor": { + "shortName": "ItemArmor", + "classification": "INTERFACE", + "reason": "Auto: 4 methods, 25% static → instance-heavy", + "pa_name": "IItemArmor", + "target": "platform-api/src/main/java/noppes/npcs/api/item/IItemArmor.java", + "import_count": 13, + "file_count": 13 + }, + "net.minecraft.nbt.NBTBase": { + "shortName": "NBTBase", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "INbtBase", + "target": "platform-api/src/main/java/noppes/npcs/api/INbtBase.java", + "import_count": 13, + "file_count": 13 + }, + "cpw.mods.fml.common.Loader": { + "shortName": "Loader", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 11, + "file_count": 11, + "service_name": "PlatformService" + }, + "net.minecraftforge.client.IItemRenderer": { + "shortName": "IItemRenderer", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 11, + "file_count": 11, + "service_name": "PlatformService" + }, + "net.minecraft.client.resources.IResource": { + "shortName": "IResource", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 11, + "file_count": 11, + "service_name": "PlatformService" + }, + "net.minecraft.item.EnumAction": { + "shortName": "EnumAction", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEnumAction", + "target": null, + "import_count": 11, + "file_count": 11 + }, + "net.minecraft.util.math.BlockPos": { + "shortName": "BlockPos", + "classification": "INTERFACE", + "reason": "Auto: 22 methods, 9% static → instance-heavy", + "pa_name": "IBlockPos", + "target": "platform-api/src/main/java/noppes/npcs/api/IBlockPos.java", + "import_count": 10, + "file_count": 10 + }, + "net.minecraft.entity.SharedMonsterAttributes": { + "shortName": "SharedMonsterAttributes", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ISharedMonsterAttributes", + "target": null, + "import_count": 10, + "file_count": 10 + }, + "net.minecraft.util.IChatComponent": { + "shortName": "IChatComponent", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "ITextComponent", + "target": "platform-api/src/main/java/noppes/npcs/api/ITextComponent.java", + "import_count": 10, + "file_count": 10 + }, + "net.minecraftforge.common.util.Constants": { + "shortName": "Constants", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IConstants", + "target": null, + "import_count": 9, + "file_count": 9 + }, + "net.minecraft.nbt.NBTTagDouble": { + "shortName": "NBTTagDouble", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagDouble", + "target": null, + "import_count": 9, + "file_count": 9 + }, + "net.minecraft.client.resources.I18n": { + "shortName": "I18n", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 9, + "file_count": 9, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.FMLLog": { + "shortName": "FMLLog", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 9, + "file_count": 9, + "service_name": "PlatformService" + }, + "net.minecraftforge.common.config.Configuration": { + "shortName": "Configuration", + "classification": "INTERFACE", + "reason": "Auto: 8 methods, 0% static → instance-heavy", + "pa_name": "IConfiguration", + "target": "platform-api/src/main/java/noppes/npcs/api/IConfiguration.java", + "import_count": 9, + "file_count": 9 + }, + "net.minecraft.client.renderer.entity.Render": { + "shortName": "Render", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 8, + "file_count": 8 + }, + "net.minecraft.client.renderer.ItemRenderer": { + "shortName": "ItemRenderer", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 8, + "file_count": 8, + "service_name": "PlatformService" + }, + "net.minecraftforge.common.MinecraftForge": { + "shortName": "MinecraftForge", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 8, + "file_count": 8 + }, + "net.minecraft.nbt.NBTTagInt": { + "shortName": "NBTTagInt", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagInt", + "target": null, + "import_count": 8, + "file_count": 8 + }, + "net.minecraft.client.renderer.entity.RenderItem": { + "shortName": "RenderItem", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 33% static → instance-heavy", + "pa_name": "IRenderItem", + "target": "platform-api/src/main/java/noppes/npcs/api/IRenderItem.java", + "import_count": 8, + "file_count": 8 + }, + "net.minecraft.entity.monster.EntityMob": { + "shortName": "EntityMob", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "IEntityMob", + "target": "platform-api/src/main/java/noppes/npcs/api/entity/IEntityMob.java", + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.entity.passive.EntityAnimal": { + "shortName": "EntityAnimal", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAnimal", + "target": null, + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.entity.passive.EntityTameable": { + "shortName": "EntityTameable", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityTameable", + "target": null, + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.client.entity.EntityClientPlayerMP": { + "shortName": "EntityClientPlayerMP", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.inventory.InventoryBasic": { + "shortName": "InventoryBasic", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.entity.EntityCreature": { + "shortName": "EntityCreature", + "classification": "INTERFACE", + "reason": "Auto: 10 methods, 0% static → instance-heavy", + "pa_name": "IEntityLiving", + "target": "platform-api/src/main/java/noppes/npcs/api/entity/IEntityLiving.java", + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.potion.Potion": { + "shortName": "Potion", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "IPotionType", + "target": "platform-api/src/main/java/noppes/npcs/api/IPotionType.java", + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.network.Packet": { + "shortName": "Packet", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.client.renderer.entity.RendererLivingEntity": { + "shortName": "RendererLivingEntity", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IRendererLivingEntity", + "target": null, + "import_count": 7, + "file_count": 7 + }, + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler": { + "shortName": "ISimpleBlockRenderingHandler", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IISimpleBlockRenderingHandler", + "target": null, + "import_count": 7, + "file_count": 7 + }, + "net.minecraftforge.common.config.Property": { + "shortName": "Property", + "classification": "INTERFACE", + "reason": "Auto: 6 methods, 0% static → instance-heavy", + "pa_name": "IProperty", + "target": "platform-api/src/main/java/noppes/npcs/api/IProperty.java", + "import_count": 7, + "file_count": 7 + }, + "net.minecraft.potion.PotionEffect": { + "shortName": "PotionEffect", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "IPotionEffect", + "target": "platform-api/src/main/java/noppes/npcs/api/IPotionEffect.java", + "import_count": 6, + "file_count": 6 + }, + "cpw.mods.fml.common.ObfuscationReflectionHelper": { + "shortName": "ObfuscationReflectionHelper", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 6, + "file_count": 6, + "service_name": "PlatformService" + }, + "net.minecraft.village.MerchantRecipeList": { + "shortName": "MerchantRecipeList", + "classification": "INTERFACE", + "reason": "Auto: 6 methods, 17% static → instance-heavy", + "pa_name": "IMerchantRecipeList", + "target": "platform-api/src/main/java/noppes/npcs/api/IMerchantRecipeList.java", + "import_count": 6, + "file_count": 6 + }, + "net.minecraft.entity.passive.EntityVillager": { + "shortName": "EntityVillager", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 6, + "file_count": 6, + "service_name": "PlatformService" + }, + "net.minecraftforge.common.util.FakePlayer": { + "shortName": "FakePlayer", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 6, + "file_count": 6, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.gameevent.TickEvent": { + "shortName": "TickEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ITickEvent", + "target": null, + "import_count": 6, + "file_count": 6 + }, + "net.minecraft.command.IEntitySelector": { + "shortName": "IEntitySelector", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 6, + "file_count": 6, + "service_name": "PlatformService" + }, + "net.minecraft.network.play.server.S35PacketUpdateTileEntity": { + "shortName": "S35PacketUpdateTileEntity", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 6, + "file_count": 6, + "service_name": "PlatformService" + }, + "net.minecraft.client.renderer.texture.TextureMap": { + "shortName": "TextureMap", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ITextureMap", + "target": null, + "import_count": 6, + "file_count": 6 + }, + "net.minecraft.util.ChatAllowedCharacters": { + "shortName": "ChatAllowedCharacters", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 6, + "file_count": 6, + "service_name": "PlatformService" + }, + "net.minecraft.nbt.NBTTagFloat": { + "shortName": "NBTTagFloat", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagFloat", + "target": null, + "import_count": 6, + "file_count": 6 + }, + "net.minecraft.entity.item.EntityXPOrb": { + "shortName": "EntityXPOrb", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 5, + "file_count": 5, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.network.internal.FMLProxyPacket": { + "shortName": "FMLProxyPacket", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 5, + "file_count": 5 + }, + "net.minecraft.stats.Achievement": { + "shortName": "Achievement", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 5, + "file_count": 5, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.ModContainer": { + "shortName": "ModContainer", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "IModContainer", + "target": "platform-api/src/main/java/noppes/npcs/api/IModContainer.java", + "import_count": 5, + "file_count": 5 + }, + "net.minecraft.entity.projectile.EntityThrowable": { + "shortName": "EntityThrowable", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityThrowable", + "target": null, + "import_count": 5, + "file_count": 5 + }, + "net.minecraft.pathfinding.PathEntity": { + "shortName": "PathEntity", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 5, + "file_count": 5 + }, + "net.minecraft.block.BlockColored": { + "shortName": "BlockColored", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 5, + "file_count": 5, + "service_name": "PlatformService" + }, + "net.minecraft.client.particle.EntityFX": { + "shortName": "EntityFX", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityFX", + "target": null, + "import_count": 5, + "file_count": 5 + }, + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer": { + "shortName": "TileEntitySpecialRenderer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 5, + "file_count": 5 + }, + "net.minecraft.entity.boss.EntityDragon": { + "shortName": "EntityDragon", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityDragon", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.util.ChunkCoordinates": { + "shortName": "ChunkCoordinates", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPos", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.network.PacketBuffer": { + "shortName": "PacketBuffer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.entity.EnumCreatureAttribute": { + "shortName": "EnumCreatureAttribute", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 4, + "file_count": 4, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.world.WorldEvent": { + "shortName": "WorldEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IWorldEvent", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.entity.projectile.EntityArrow": { + "shortName": "EntityArrow", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityArrow", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "cpw.mods.fml.common.gameevent.PlayerEvent": { + "shortName": "PlayerEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 4, + "file_count": 4, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.player.ItemTooltipEvent": { + "shortName": "ItemTooltipEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemTooltipEvent", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.entity.ai.EntityAITarget": { + "shortName": "EntityAITarget", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.network.NetworkManager": { + "shortName": "NetworkManager", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INetworkManager", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.client.resources.IResourceManager": { + "shortName": "IResourceManager", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 4, + "file_count": 4, + "service_name": "PlatformService" + }, + "net.minecraft.client.audio.PositionedSoundRecord": { + "shortName": "PositionedSoundRecord", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 4, + "file_count": 4, + "service_name": "PlatformService" + }, + "net.minecraft.entity.passive.EntitySheep": { + "shortName": "EntitySheep", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntitySheep", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.client.gui.inventory.GuiContainer": { + "shortName": "GuiContainer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.client.renderer.entity.NPCRendererHelper": { + "shortName": "NPCRendererHelper", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 4, + "file_count": 4, + "service_name": "PlatformService" + }, + "net.minecraft.nbt.NBTTagByte": { + "shortName": "NBTTagByte", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagByte", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.client.renderer.GLAllocation": { + "shortName": "GLAllocation", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 4, + "file_count": 4, + "service_name": "PlatformService" + }, + "net.minecraft.item.ItemBow": { + "shortName": "ItemBow", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemBow", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.inventory.InventoryCrafting": { + "shortName": "InventoryCrafting", + "classification": "INTERFACE", + "reason": "Auto: 4 methods, 0% static → instance-heavy", + "pa_name": "IInventoryCrafting", + "target": "platform-api/src/main/java/noppes/npcs/api/IInventoryCrafting.java", + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.nbt.NBTTagIntArray": { + "shortName": "NBTTagIntArray", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagIntArray", + "target": null, + "import_count": 4, + "file_count": 4 + }, + "net.minecraft.block.BlockIce": { + "shortName": "BlockIce", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockIce", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.block.BlockLeavesBase": { + "shortName": "BlockLeavesBase", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockLeavesBase", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.block.BlockVine": { + "shortName": "BlockVine", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockVine", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.entity.passive.EntityHorse": { + "shortName": "EntityHorse", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityHorse", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.client.renderer.entity.RenderBiped": { + "shortName": "RenderBiped", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraft.client.renderer.entity.RenderPlayer": { + "shortName": "RenderPlayer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraftforge.client.event.RenderWorldLastEvent": { + "shortName": "RenderWorldLastEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IRenderWorldLastEvent", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.entity.ai.attributes.AttributeModifier": { + "shortName": "AttributeModifier", + "classification": "INTERFACE", + "reason": "Auto: 4 methods, 0% static → instance-heavy", + "pa_name": "IAttributeModifier", + "target": "platform-api/src/main/java/noppes/npcs/api/IAttributeModifier.java", + "import_count": 3, + "file_count": 3 + }, + "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData": { + "shortName": "IEntityAdditionalSpawnData", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIEntityAdditionalSpawnData", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.world.Explosion": { + "shortName": "Explosion", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "IExplosion", + "target": "platform-api/src/main/java/noppes/npcs/api/IExplosion.java", + "import_count": 3, + "file_count": 3 + }, + "cpw.mods.fml.common.network.FMLNetworkEvent": { + "shortName": "FMLNetworkEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFMLNetworkEvent", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.item.ItemEditableBook": { + "shortName": "ItemEditableBook", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraft.item.ItemWritableBook": { + "shortName": "ItemWritableBook", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraft.util.ChatStyle": { + "shortName": "ChatStyle", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "ITextStyle", + "target": "platform-api/src/main/java/noppes/npcs/api/ITextStyle.java", + "import_count": 3, + "file_count": 3 + }, + "net.minecraftforge.client.ForgeHooksClient": { + "shortName": "ForgeHooksClient", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraftforge.client.MinecraftForgeClient": { + "shortName": "MinecraftForgeClient", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraft.item.ItemArmor.ArmorMaterial": { + "shortName": "ArmorMaterial", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IArmorMaterial", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.util.EnumFacing": { + "shortName": "EnumFacing", + "classification": "TRANSFORM", + "reason": "Static-Transform (0 regex patterns)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraftforge.common.ForgeChunkManager": { + "shortName": "ForgeChunkManager", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.EntityEvent": { + "shortName": "EntityEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityEvent", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.util.EntityDamageSource": { + "shortName": "EntityDamageSource", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityDamageSource", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.world.ChunkCoordIntPair": { + "shortName": "ChunkCoordIntPair", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IChunkCoordIntPair", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.world.biome.BiomeGenBase": { + "shortName": "BiomeGenBase", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.living.LivingEvent": { + "shortName": "LivingEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.player.EntityInteractEvent": { + "shortName": "EntityInteractEvent", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.player.PlayerInteractEvent": { + "shortName": "PlayerInteractEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.eventhandler.EventPriority": { + "shortName": "EventPriority", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEventPriority", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.pathfinding.PathNavigate": { + "shortName": "PathNavigate", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.pathfinding.PathPoint": { + "shortName": "PathPoint", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.client.resources.SimpleReloadableResourceManager": { + "shortName": "SimpleReloadableResourceManager", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraft.client.entity.AbstractClientPlayer": { + "shortName": "AbstractClientPlayer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.client.settings.KeyBinding": { + "shortName": "KeyBinding", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraft.client.audio.SoundHandler": { + "shortName": "SoundHandler", + "classification": "INTERFACE", + "reason": "Auto: 6 methods, 0% static → instance-heavy", + "pa_name": "ISoundHandler", + "target": "platform-api/src/main/java/noppes/npcs/api/ISoundHandler.java", + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.client.gui.GuiTextField": { + "shortName": "GuiTextField", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.entity.player.InventoryPlayer": { + "shortName": "InventoryPlayer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.client.renderer.EntityRenderer": { + "shortName": "EntityRenderer", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraftforge.client.event.GuiScreenEvent": { + "shortName": "GuiScreenEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IGuiScreenEvent", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.inventory.ICrafting": { + "shortName": "ICrafting", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraftforge.common.IExtendedEntityProperties": { + "shortName": "IExtendedEntityProperties", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIExtendedEntityProperties", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.item.ItemSword": { + "shortName": "ItemSword", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemSword", + "target": null, + "import_count": 3, + "file_count": 3 + }, + "net.minecraft.item.ItemFood": { + "shortName": "ItemFood", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 3, + "file_count": 3, + "service_name": "PlatformService" + }, + "net.minecraft.entity.monster.EntityGhast": { + "shortName": "EntityGhast", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityGhast", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.command.PlayerSelector": { + "shortName": "PlayerSelector", + "classification": "SERVICE", + "reason": "Single static method (matchPlayers), too small for own service", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.network.play.server.S12PacketEntityVelocity": { + "shortName": "S12PacketEntityVelocity", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IS12PacketEntityVelocity", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.ai.attributes.IAttributeInstance": { + "shortName": "IAttributeInstance", + "classification": "INTERFACE", + "reason": "Auto: 4 methods, 0% static → instance-heavy", + "pa_name": "IIAttributeInstance", + "target": "platform-api/src/main/java/noppes/npcs/api/IIAttributeInstance.java", + "import_count": 2, + "file_count": 2 + }, + "cpw.mods.fml.common.network.NetworkRegistry": { + "shortName": "NetworkRegistry", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.common.DimensionManager": { + "shortName": "DimensionManager", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.client.entity.EntityPlayerSP": { + "shortName": "EntityPlayerSP", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityPlayerSP", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.client.settings.GameSettings": { + "shortName": "GameSettings", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.client.renderer.texture.TextureUtil": { + "shortName": "TextureUtil", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.client.IItemRenderer.ItemRenderType": { + "shortName": "ItemRenderType", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemRenderType", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.common.util.EnumHelper": { + "shortName": "EnumHelper", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.oredict.OreDictionary": { + "shortName": "OreDictionary", + "classification": "SERVICE", + "reason": "Auto: 100% static methods (> 60% threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.registry.EntityRegistry": { + "shortName": "EntityRegistry", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.enchantment.EnchantmentHelper": { + "shortName": "EnchantmentHelper", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.entity.EnumCreatureType": { + "shortName": "EnumCreatureType", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEnumCreatureType", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.world.chunk.Chunk": { + "shortName": "Chunk", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.world.ChunkDataEvent": { + "shortName": "ChunkDataEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IChunkDataEvent", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.event.world.ChunkEvent": { + "shortName": "ChunkEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IChunkEvent", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.event.world.ChunkWatchEvent": { + "shortName": "ChunkWatchEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IChunkWatchEvent", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.event.entity.EntityJoinWorldEvent": { + "shortName": "EntityJoinWorldEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.item.ItemTossEvent": { + "shortName": "ItemTossEvent", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.player.PlayerUseItemEvent": { + "shortName": "PlayerUseItemEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.inventory.ContainerPlayer": { + "shortName": "ContainerPlayer", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IContainerPlayer", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.event.entity.living.LivingAttackEvent": { + "shortName": "LivingAttackEvent", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.living.LivingDeathEvent": { + "shortName": "LivingDeathEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ILivingDeathEvent", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.event.entity.living.LivingHurtEvent": { + "shortName": "LivingHurtEvent", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.world.BlockEvent": { + "shortName": "BlockEvent", + "classification": "INTERFACE", + "reason": "Auto: 5 methods, 0% static → instance-heavy", + "pa_name": "IBlockEvent", + "target": "platform-api/src/main/java/noppes/npcs/api/IBlockEvent.java", + "import_count": 2, + "file_count": 2 + }, + "cpw.mods.fml.common.gameevent.TickEvent.Phase": { + "shortName": "Phase", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPhase", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.IRangedAttackMob": { + "shortName": "IRangedAttackMob", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.entity.ai.EntityMoveHelper": { + "shortName": "EntityMoveHelper", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityMoveHelper", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.world.EnumSkyBlock": { + "shortName": "EnumSkyBlock", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEnumSkyBlock", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.client.resources.AbstractResourcePack": { + "shortName": "AbstractResourcePack", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IAbstractResourcePack", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.client.resources.FallbackResourceManager": { + "shortName": "FallbackResourceManager", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFallbackResourceManager", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.client.resources.IResourcePack": { + "shortName": "IResourcePack", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.client.resources.NPCResourceHelper": { + "shortName": "NPCResourceHelper", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.client.resources.ResourcePackRepository": { + "shortName": "ResourcePackRepository", + "classification": "INTERFACE", + "reason": "Auto: 4 methods, 0% static → instance-heavy", + "pa_name": "IResourcePackRepository", + "target": "platform-api/src/main/java/noppes/npcs/api/IResourcePackRepository.java", + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.client.event.RenderLivingEvent": { + "shortName": "RenderLivingEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IRenderLivingEvent", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraftforge.client.event.RenderPlayerEvent": { + "shortName": "RenderPlayerEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IRenderPlayerEvent", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.client.renderer.ActiveRenderInfo": { + "shortName": "ActiveRenderInfo", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.client.particle.EntityPortalFX": { + "shortName": "EntityPortalFX", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityPortalFX", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.IMerchant": { + "shortName": "IMerchant", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.common.BiomeDictionary": { + "shortName": "BiomeDictionary", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.item.crafting.CraftingManager": { + "shortName": "CraftingManager", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.client.resources.SkinManager": { + "shortName": "SkinManager", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ISkinManager", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.inventory.InventoryCraftResult": { + "shortName": "InventoryCraftResult", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraftforge.common.ForgeChunkManager.Ticket": { + "shortName": "Ticket", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "ITicket", + "target": "platform-api/src/main/java/noppes/npcs/api/ITicket.java", + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.util.WeightedRandom": { + "shortName": "WeightedRandom", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 2, + "file_count": 2, + "service_name": "PlatformService" + }, + "net.minecraft.enchantment.Enchantment": { + "shortName": "Enchantment", + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": "IEnchantment", + "target": "platform-api/src/main/java/noppes/npcs/api/IEnchantment.java", + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.monster.EntityEnderman": { + "shortName": "EntityEnderman", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityEnderman", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.monster.EntityCreeper": { + "shortName": "EntityCreeper", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityCreeper", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.monster.IMob": { + "shortName": "IMob", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIMob", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.INpc": { + "shortName": "INpc", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IINpc", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.entity.projectile.EntityFishHook": { + "shortName": "EntityFishHook", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityFishHook", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.nbt.NBTBase.NBTPrimitive": { + "shortName": "NBTPrimitive", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTPrimitive", + "target": null, + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.scoreboard.ScoreObjective": { + "shortName": "ScoreObjective", + "classification": "INTERFACE", + "reason": "Auto: 4 methods, 0% static → instance-heavy", + "pa_name": "IScoreObjective", + "target": "platform-api/src/main/java/noppes/npcs/api/IScoreObjective.java", + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.scoreboard.ScorePlayerTeam": { + "shortName": "ScorePlayerTeam", + "classification": "INTERFACE", + "reason": "Auto: 11 methods, 0% static → instance-heavy", + "pa_name": "IScorePlayerTeam", + "target": "platform-api/src/main/java/noppes/npcs/api/IScorePlayerTeam.java", + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.scoreboard.Scoreboard": { + "shortName": "Scoreboard", + "classification": "INTERFACE", + "reason": "Auto: 13 methods, 0% static → instance-heavy", + "pa_name": "IScoreboard", + "target": "platform-api/src/main/java/noppes/npcs/api/scoreboard/IScoreboard.java", + "import_count": 2, + "file_count": 2 + }, + "net.minecraft.command.PlayerNotFoundException": { + "shortName": "PlayerNotFoundException", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlayerNotFoundException", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.network.FMLEventChannel": { + "shortName": "FMLEventChannel", + "classification": "INTERFACE", + "reason": "Auto: 4 methods, 0% static → instance-heavy", + "pa_name": "IFMLEventChannel", + "target": "platform-api/src/main/java/noppes/npcs/api/IFMLEventChannel.java", + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.network.NetHandlerPlayServer": { + "shortName": "NetHandlerPlayServer", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INetHandlerPlayServer", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.gui.achievement.GuiAchievement": { + "shortName": "GuiAchievement", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IGuiAchievement", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.world.WorldProvider": { + "shortName": "WorldProvider", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.nbt.NBTSizeTracker": { + "shortName": "NBTSizeTracker", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTSizeTracker", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.network.IGuiHandler": { + "shortName": "IGuiHandler", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIGuiHandler", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockDispenser": { + "shortName": "BlockDispenser", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.dispenser.BehaviorDefaultDispenseItem": { + "shortName": "BehaviorDefaultDispenseItem", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBehaviorDefaultDispenseItem", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.dispenser.IBlockSource": { + "shortName": "IBlockSource", + "classification": "INTERFACE", + "reason": "Auto: 5 methods, 0% static → instance-heavy", + "pa_name": "IIBlockSource", + "target": "platform-api/src/main/java/noppes/npcs/api/IIBlockSource.java", + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.item.Item.ToolMaterial": { + "shortName": "ToolMaterial", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IToolMaterial", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.item.ItemFlintAndSteel": { + "shortName": "ItemFlintAndSteel", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemFlintAndSteel", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.Mod": { + "shortName": "Mod", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IMod", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.Mod.EventHandler": { + "shortName": "EventHandler", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEventHandler", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.SidedProxy": { + "shortName": "SidedProxy", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ISidedProxy", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.event.FMLInitializationEvent": { + "shortName": "FMLInitializationEvent", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.event.FMLLoadCompleteEvent": { + "shortName": "FMLLoadCompleteEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFMLLoadCompleteEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.event.FMLPreInitializationEvent": { + "shortName": "FMLPreInitializationEvent", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.event.FMLServerAboutToStartEvent": { + "shortName": "FMLServerAboutToStartEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.event.FMLServerStartedEvent": { + "shortName": "FMLServerStartedEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFMLServerStartedEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.event.FMLServerStartingEvent": { + "shortName": "FMLServerStartingEvent", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.event.FMLServerStoppedEvent": { + "shortName": "FMLServerStoppedEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFMLServerStoppedEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.world.Teleporter": { + "shortName": "Teleporter", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ITeleporter", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.LoaderState": { + "shortName": "LoaderState", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ILoaderState", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.nbt.NBTUtil": { + "shortName": "NBTUtil", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.util.StringUtils": { + "shortName": "StringUtils", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.command.server.CommandBlockLogic": { + "shortName": "CommandBlockLogic", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "ICommandBlockLogic", + "target": "platform-api/src/main/java/noppes/npcs/api/ICommandBlockLogic.java", + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.tileentity.MobSpawnerBaseLogic": { + "shortName": "MobSpawnerBaseLogic", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.tileentity.TileEntityCommandBlock": { + "shortName": "TileEntityCommandBlock", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.tileentity.TileEntityMobSpawner": { + "shortName": "TileEntityMobSpawner", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.util.EntityDamageSourceIndirect": { + "shortName": "EntityDamageSourceIndirect", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityDamageSourceIndirect", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.eventhandler.Event.Result": { + "shortName": "Result", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IResult", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.world.ChunkPosition": { + "shortName": "ChunkPosition", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IChunkPosition", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.ForgeEventFactory": { + "shortName": "ForgeEventFactory", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.AnvilRepairEvent": { + "shortName": "AnvilRepairEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IAnvilRepairEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.PlayerDestroyItemEvent": { + "shortName": "PlayerDestroyItemEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlayerDestroyItemEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.common.ForgeHooks": { + "shortName": "ForgeHooks", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.EntityStruckByLightningEvent": { + "shortName": "EntityStruckByLightningEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityStruckByLightningEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.PlaySoundAtEntityEvent": { + "shortName": "PlaySoundAtEntityEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlaySoundAtEntityEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.living.LivingFallEvent": { + "shortName": "LivingFallEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.player.AchievementEvent": { + "shortName": "AchievementEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IAchievementEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.ArrowLooseEvent": { + "shortName": "ArrowLooseEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IArrowLooseEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.ArrowNockEvent": { + "shortName": "ArrowNockEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IArrowNockEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.BonemealEvent": { + "shortName": "BonemealEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBonemealEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.FillBucketEvent": { + "shortName": "FillBucketEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFillBucketEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.PlayerDropsEvent": { + "shortName": "PlayerDropsEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraftforge.event.entity.player.PlayerOpenContainerEvent": { + "shortName": "PlayerOpenContainerEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlayerOpenContainerEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.PlayerPickupXpEvent": { + "shortName": "PlayerPickupXpEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlayerPickupXpEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.PlayerSleepInBedEvent": { + "shortName": "PlayerSleepInBedEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlayerSleepInBedEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.PlayerWakeUpEvent": { + "shortName": "PlayerWakeUpEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlayerWakeUpEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.UseHoeEvent": { + "shortName": "UseHoeEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IUseHoeEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.PlayerEvent": { + "shortName": "PlayerEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPlayerEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.player.PlayerInteractEvent.Action": { + "shortName": "Action", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IAction", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.terraingen.PopulateChunkEvent": { + "shortName": "PopulateChunkEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPopulateChunkEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAIDoorInteract": { + "shortName": "EntityAIDoorInteract", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAIDoorInteract", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockDoor": { + "shortName": "BlockDoor", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockDoor", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockFence": { + "shortName": "BlockFence", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockFence", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockFenceGate": { + "shortName": "BlockFenceGate", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockFenceGate", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockRailBase": { + "shortName": "BlockRailBase", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockRailBase", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockWall": { + "shortName": "BlockWall", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockWall", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.pathfinding.PathFinder": { + "shortName": "PathFinder", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.util.math.IntHashMap": { + "shortName": "IntHashMap", + "classification": "INTERFACE", + "reason": "Auto: 3 methods, 0% static → instance-heavy", + "pa_name": "IIntHashMap", + "target": "platform-api/src/main/java/noppes/npcs/api/IIntHashMap.java", + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.world.ChunkCache": { + "shortName": "ChunkCache", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IChunkCache", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAINearestAttackableTarget": { + "shortName": "EntityAINearestAttackableTarget", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAINearestAttackableTarget", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockBreakable": { + "shortName": "BlockBreakable", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockBreakable", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.material.MapColor": { + "shortName": "MapColor", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.common.util.ForgeDirection": { + "shortName": "ForgeDirection", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IForgeDirection", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.item.EntityEnderPearl": { + "shortName": "EntityEnderPearl", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.renderer.texture.ITickable": { + "shortName": "ITickable", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraftforge.client.event.MouseEvent": { + "shortName": "MouseEvent", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraftforge.client.event.RenderGameOverlayEvent": { + "shortName": "RenderGameOverlayEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IRenderGameOverlayEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.client.event.RenderHandEvent": { + "shortName": "RenderHandEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IRenderHandEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.client.registry.ClientRegistry": { + "shortName": "ClientRegistry", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.particle.EntityFlameFX": { + "shortName": "EntityFlameFX", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityFlameFX", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.particle.EntitySmokeFX": { + "shortName": "EntitySmokeFX", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntitySmokeFX", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.renderer.RenderGlobal": { + "shortName": "RenderGlobal", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.resources.IReloadableResourceManager": { + "shortName": "IReloadableResourceManager", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIReloadableResourceManager", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.util.ReportedException": { + "shortName": "ReportedException", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IReportedException", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.client.ClientCommandHandler": { + "shortName": "ClientCommandHandler", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IClientCommandHandler", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.resources.FolderResourcePack": { + "shortName": "FolderResourcePack", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFolderResourcePack", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.resources.IResourceManagerReloadListener": { + "shortName": "IResourceManagerReloadListener", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIResourceManagerReloadListener", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.passive.EntityChicken": { + "shortName": "EntityChicken", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityChicken", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.renderer.IImageBuffer": { + "shortName": "IImageBuffer", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.renderer.texture.SimpleTexture": { + "shortName": "SimpleTexture", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ISimpleTexture", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.gameevent.InputEvent": { + "shortName": "InputEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IInputEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.util.Util": { + "shortName": "Util", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.event.ClickEvent": { + "shortName": "ClickEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IClickEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.event.ClickEvent.Action": { + "shortName": "Action", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IAction", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.audio.ISound": { + "shortName": "ISound", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IISound", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.audio.ITickableSound": { + "shortName": "ITickableSound", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IITickableSound", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.audio.MovingSound": { + "shortName": "MovingSound", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IMovingSound", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.entity.EntityEvent.EntityConstructing": { + "shortName": "EntityConstructing", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityConstructing", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.network.play.client.C17PacketCustomPayload": { + "shortName": "C17PacketCustomPayload", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IC17PacketCustomPayload", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.village.MerchantRecipe": { + "shortName": "MerchantRecipe", + "classification": "INTERFACE", + "reason": "Auto: 5 methods, 0% static → instance-heavy", + "pa_name": "IMerchantRecipe", + "target": "platform-api/src/main/java/noppes/npcs/api/IMerchantRecipe.java", + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.item.crafting.IRecipe": { + "shortName": "IRecipe", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.shader.ShaderGroup": { + "shortName": "ShaderGroup", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IShaderGroup", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.client.event.GuiOpenEvent": { + "shortName": "GuiOpenEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IGuiOpenEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.gui.GuiConfirmOpenLink": { + "shortName": "GuiConfirmOpenLink", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IGuiConfirmOpenLink", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.relauncher.ReflectionHelper": { + "shortName": "ReflectionHelper", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.audio.SoundRegistry": { + "shortName": "SoundRegistry", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.resources.DefaultResourcePack": { + "shortName": "DefaultResourcePack", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IDefaultResourcePack", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.gui.GuiSlot": { + "shortName": "GuiSlot", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.renderer.texture.ITextureObject": { + "shortName": "ITextureObject", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IITextureObject", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.model.PositionTextureVertex": { + "shortName": "PositionTextureVertex", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IPositionTextureVertex", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.model.TexturedQuad": { + "shortName": "TexturedQuad", + "classification": "SERVICE", + "reason": "Auto: only 2 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.renderer.ImageBufferDownload": { + "shortName": "ImageBufferDownload", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IImageBufferDownload", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.client.IItemRenderer.ItemRendererHelper": { + "shortName": "ItemRendererHelper", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemRendererHelper", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.client.renderer.entity.RenderLiving": { + "shortName": "RenderLiving", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.boss.BossStatus": { + "shortName": "BossStatus", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.item.ItemPotion": { + "shortName": "ItemPotion", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.potion.PotionHelper": { + "shortName": "PotionHelper", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.model.ModelBook": { + "shortName": "ModelBook", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.inventory.SlotCrafting": { + "shortName": "SlotCrafting", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ISlotCrafting", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.network.play.server.S2FPacketSetSlot": { + "shortName": "S2FPacketSetSlot", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IS2FPacketSetSlot", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.common.ForgeChunkManager.LoadingCallback": { + "shortName": "LoadingCallback", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ILoadingCallback", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.common.ForgeChunkManager.Type": { + "shortName": "Type", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IType", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.item.crafting.ShapedRecipes": { + "shortName": "ShapedRecipes", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.enchantment.EnumEnchantmentType": { + "shortName": "EnumEnchantmentType", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEnumEnchantmentType", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.DataWatcher": { + "shortName": "DataWatcher", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.NPCEntityHelper": { + "shortName": "NPCEntityHelper", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.entity.ai.EntityAIAttackOnCollide": { + "shortName": "EntityAIAttackOnCollide", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAIAttackOnCollide", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAIHurtByTarget": { + "shortName": "EntityAIHurtByTarget", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAIHurtByTarget", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAIOpenDoor": { + "shortName": "EntityAIOpenDoor", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAIOpenDoor", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAIRestrictSun": { + "shortName": "EntityAIRestrictSun", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAIRestrictSun", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAISwimming": { + "shortName": "EntityAISwimming", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAISwimming", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAITasks": { + "shortName": "EntityAITasks", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.ai.EntityAITasks.EntityAITaskEntry": { + "shortName": "EntityAITaskEntry", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityAITaskEntry", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.boss.IBossDisplayData": { + "shortName": "IBossDisplayData", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIBossDisplayData", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.monster.EntityZombie": { + "shortName": "EntityZombie", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityZombie", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.passive.EntityBat": { + "shortName": "EntityBat", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityBat", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.network.play.server.S0BPacketAnimation": { + "shortName": "S0BPacketAnimation", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IS0BPacketAnimation", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.event.ServerChatEvent": { + "shortName": "ServerChatEvent", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IServerChatEvent", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.network.play.server.S27PacketExplosion": { + "shortName": "S27PacketExplosion", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IS27PacketExplosion", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.util.MovingObjectPosition.MovingObjectType": { + "shortName": "MovingObjectType", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IMovingObjectType", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.monster.EntitySkeleton": { + "shortName": "EntitySkeleton", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntitySkeleton", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.network.play.server.S04PacketEntityEquipment": { + "shortName": "S04PacketEntityEquipment", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IS04PacketEntityEquipment", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.item.ItemColored": { + "shortName": "ItemColored", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IItemColored", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.relauncher.FMLLaunchHandler": { + "shortName": "FMLLaunchHandler", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "cpw.mods.fml.common.network.internal.FMLMessage": { + "shortName": "FMLMessage", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IFMLMessage", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.EntityTrackerEntry": { + "shortName": "EntityTrackerEntry", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityTrackerEntry", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.world.EnumDifficulty": { + "shortName": "EnumDifficulty", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEnumDifficulty", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.common.eventhandler.EventBus": { + "shortName": "EventBus", + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": null, + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.command.CommandHandler": { + "shortName": "CommandHandler", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ICommandHandler", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.common.BiomeDictionary.Type": { + "shortName": "Type", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IType", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.util.Vec3i": { + "shortName": "Vec3i", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IVec3i", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.block.BlockAir": { + "shortName": "BlockAir", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockAir", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.entity.effect.EntityLightningBolt": { + "shortName": "EntityLightningBolt", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IEntityLightningBolt", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.tileentity.TileEntitySign": { + "shortName": "TileEntitySign", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "ITileEntitySign", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraftforge.common.util.BlockSnapshot": { + "shortName": "BlockSnapshot", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IBlockSnapshot", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.stats.StatBase": { + "shortName": "StatBase", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IStatBase", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.stats.StatList": { + "shortName": "StatList", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.world.WorldSettings": { + "shortName": "WorldSettings", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraftforge.common.IPlantable": { + "shortName": "IPlantable", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIPlantable", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.scoreboard.IScoreObjectiveCriteria": { + "shortName": "IScoreObjectiveCriteria", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIScoreObjectiveCriteria", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.scoreboard.Score": { + "shortName": "Score", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.nbt.NBTTagByteArray": { + "shortName": "NBTTagByteArray", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagByteArray", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.nbt.NBTTagLong": { + "shortName": "NBTTagLong", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagLong", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.nbt.NBTTagShort": { + "shortName": "NBTTagShort", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "INBTTagShort", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.world.IWorldAccess": { + "shortName": "IWorldAccess", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IIWorldAccess", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "cpw.mods.fml.client.FMLClientHandler": { + "shortName": "FMLClientHandler", + "classification": "SERVICE", + "reason": "Auto: only 1 methods (< 3 threshold)", + "pa_name": null, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "import_count": 1, + "file_count": 1, + "service_name": "PlatformService" + }, + "net.minecraft.client.gui.inventory.GuiInventory": { + "shortName": "GuiInventory", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IGuiInventory", + "target": null, + "import_count": 1, + "file_count": 1 + }, + "net.minecraft.network.play.client.C0DPacketCloseWindow": { + "shortName": "C0DPacketCloseWindow", + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": "IC0DPacketCloseWindow", + "target": null, + "import_count": 1, + "file_count": 1 + } + } +} diff --git a/tools/migration/mc_type_classifications_original.json b/tools/migration/mc_type_classifications_original.json new file mode 100644 index 000000000..3247f5eb0 --- /dev/null +++ b/tools/migration/mc_type_classifications_original.json @@ -0,0 +1,931 @@ +{ + "_meta": { + "version": "2.0", + "generated": "2026-03-15", + "author": "Expert hand-curated classification of all 400 MC types in the CustomNPC-Plus codebase", + "purpose": "Authoritative migration mapping. Tells the toolchain exactly what to do with each MC type encountered in core/ code.", + "categories": { + "EXISTING": "Already abstracted and registered in migration tooling. Symbol-Swap ready.", + "INTERFACE": "Needs a PA interface (or PA interface exists but not yet registered). These appear as types in method signatures, fields, and locals in core/ code.", + "SERVICE": "Static utility/singleton. Methods route to PlatformService or NBTIO. Cannot be interfaces (Java 7 has no static interface methods).", + "TRANSFORM": "Handled by Static-Transform regex. Annotations, enums, or math utilities that get textually replaced.", + "SUPPRESS": "Never abstract. Client-only, networking, entity hierarchy, event system, or too niche. Code using these stays in mc1710." + }, + "stats": { + "total": 400, + "EXISTING": 11, + "INTERFACE": 15, + "SERVICE": 12, + "TRANSFORM": 10, + "SUPPRESS": 352 + } + }, + + "types": { + + "__comment_existing": "=== EXISTING: Already abstracted, Symbol-Swap ready (11 types) ===", + + "NBTTagCompound": { + "fqn": "net.minecraft.nbt.NBTTagCompound", + "category": "EXISTING", + "pa": "INbt", + "package": "noppes.npcs.api", + "imports": 593, + "notes": "Most-imported MC type. 4,447 method calls. Core NBT compound wrapper." + }, + "EntityPlayer": { + "fqn": "net.minecraft.entity.player.EntityPlayer", + "category": "EXISTING", + "pa": "IPlayer", + "package": "noppes.npcs.api.entity", + "imports": 551, + "notes": "Core player abstraction. 180 casts, 122 instanceof across codebase." + }, + "EntityPlayerMP": { + "fqn": "net.minecraft.entity.player.EntityPlayerMP", + "category": "EXISTING", + "pa": "IPlayer", + "package": "noppes.npcs.api.entity", + "imports": 304, + "notes": "Server-side player. Maps to same IPlayer as EntityPlayer." + }, + "Entity": { + "fqn": "net.minecraft.entity.Entity", + "category": "EXISTING", + "pa": "IEntity", + "package": "noppes.npcs.api.entity", + "imports": 262, + "notes": "Base entity type. Used heavily in casts and instanceof." + }, + "ItemStack": { + "fqn": "net.minecraft.item.ItemStack", + "category": "EXISTING", + "pa": "IItemStack", + "package": "noppes.npcs.api.item", + "imports": 228, + "notes": "Item stack wrapper. NOTE: 1.11+ changes null → ItemStack.EMPTY." + }, + "EntityLivingBase": { + "fqn": "net.minecraft.entity.EntityLivingBase", + "category": "EXISTING", + "pa": "IEntityLivingBase", + "package": "noppes.npcs.api.entity", + "imports": 201, + "notes": "Living entity base. 1,113 field accesses across codebase." + }, + "World": { + "fqn": "net.minecraft.world.World", + "category": "EXISTING", + "pa": "IWorld", + "package": "noppes.npcs.api", + "imports": 172, + "notes": "World access. Used for block/entity queries, spawning, etc." + }, + "NBTTagList": { + "fqn": "net.minecraft.nbt.NBTTagList", + "category": "EXISTING", + "pa": "INbtList", + "package": "noppes.npcs.api", + "imports": 111, + "notes": "NBT list wrapper." + }, + "DamageSource": { + "fqn": "net.minecraft.util.DamageSource", + "category": "EXISTING", + "pa": "IDamageSource", + "package": "noppes.npcs.api", + "imports": 36, + "notes": "Damage source abstraction." + }, + "WorldServer": { + "fqn": "net.minecraft.world.WorldServer", + "category": "EXISTING", + "pa": "IWorld", + "package": "noppes.npcs.api", + "imports": 18, + "notes": "Server world. Maps to same IWorld as World." + }, + "EntityLiving": { + "fqn": "net.minecraft.entity.EntityLiving", + "category": "EXISTING", + "pa": "IEntityLiving", + "package": "noppes.npcs.api.entity", + "imports": 18, + "notes": "AI-capable living entity." + }, + + + "__comment_interface": "=== INTERFACE: Need PA interface for core/ migration (15 types) ===", + + "ResourceLocation": { + "fqn": "net.minecraft.util.ResourceLocation", + "category": "INTERFACE", + "pa": "IResourceLocation", + "package": "noppes.npcs.api", + "imports": 145, + "pa_exists": false, + "methods": ["getResourceDomain", "getResourcePath", "toString"], + "constructors": ["IResourceLocation.of(String domain, String path)", "IResourceLocation.of(String combined)"], + "reason": "Universal asset/registry identifier. Exists in all MC versions with same semantics. Pure value object — 2 getters + toString. Factory methods go to PlatformService since Java 7 can't have static interface methods.", + "notes": "Simple to abstract. Low risk. High impact (145 imports)." + }, + "AxisAlignedBB": { + "fqn": "net.minecraft.util.AxisAlignedBB", + "category": "INTERFACE", + "pa": "IBoundingBox", + "package": "noppes.npcs.api", + "imports": 59, + "pa_exists": false, + "methods": ["getMinX", "getMinY", "getMinZ", "getMaxX", "getMaxY", "getMaxZ", "expand", "offset", "intersectsWith", "isVecInside"], + "reason": "Bounding box geometry. Used in collision detection, targeting, area queries. Same concept across all versions but package changes.", + "notes": "Mostly used in entity/ability code that stays in mc1710. Only abstract if core code needs it." + }, + "ICommandSender": { + "fqn": "net.minecraft.command.ICommandSender", + "category": "INTERFACE", + "pa": "ICommandSender", + "package": "noppes.npcs.api", + "imports": 47, + "pa_exists": false, + "methods": ["getCommandSenderName", "addChatMessage", "canCommandSenderUseCommand", "getEntityWorld", "getCommandSenderPosition"], + "reason": "Command execution context. Used in command system which migrates to core. 1.13+ replaces with CommandSource (Brigadier).", + "notes": "Name stays ICommandSender — already good. Will need Brigadier adapter in 1.13+ leaves." + }, + "Vec3": { + "fqn": "net.minecraft.util.Vec3", + "category": "INTERFACE", + "pa": "IVector3", + "package": "noppes.npcs.api", + "imports": 43, + "pa_exists": false, + "methods": ["getX", "getY", "getZ", "add", "subtract", "normalize", "distanceTo", "lengthVector", "crossProduct", "dotProduct"], + "reason": "3D vector. Used in abilities, AI targeting, raytrace. Same concept in all versions.", + "notes": "Consider making immutable value object with static factory." + }, + "ChatComponentText": { + "fqn": "net.minecraft.util.ChatComponentText", + "category": "INTERFACE", + "pa": "ITextComponent", + "package": "noppes.npcs.api", + "imports": 20, + "pa_exists": false, + "methods": ["getText", "setChatStyle", "appendSibling", "getFormattedText", "getUnformattedText"], + "reason": "Chat text. 1.7: ChatComponentText, 1.16: StringTextComponent, 1.19: Component.literal(). The PA name ITextComponent is stable across all versions.", + "notes": "ChatComponentText, ChatComponentTranslation, and IChatComponent all map to ITextComponent. Factory methods on PlatformService: createTextComponent(String), createTranslation(String key, Object... args)." + }, + "ChatComponentTranslation": { + "fqn": "net.minecraft.util.ChatComponentTranslation", + "category": "INTERFACE", + "pa": "ITextComponent", + "package": "noppes.npcs.api", + "imports": 24, + "pa_exists": false, + "methods": ["getKey", "getFormatArgs"], + "reason": "Translatable chat text. Maps to same ITextComponent. Factory: PlatformService.createTranslation(key, args).", + "notes": "See ChatComponentText entry." + }, + "IChatComponent": { + "fqn": "net.minecraft.util.IChatComponent", + "category": "INTERFACE", + "pa": "ITextComponent", + "package": "noppes.npcs.api", + "imports": 10, + "pa_exists": false, + "methods": ["getFormattedText", "getUnformattedText", "appendSibling", "setChatStyle", "getChatStyle"], + "reason": "Chat component interface. All chat types map to ITextComponent.", + "notes": "This IS the base interface in 1.7.10. In modern MC it's Component." + }, + "ChatStyle": { + "fqn": "net.minecraft.util.ChatStyle", + "category": "INTERFACE", + "pa": "ITextStyle", + "package": "noppes.npcs.api", + "imports": 3, + "pa_exists": false, + "methods": ["setColor", "setBold", "setItalic", "setUnderlined", "setStrikethrough", "setObfuscated"], + "reason": "Text formatting style. Paired with ITextComponent.", + "notes": "Low import count but semantically necessary for complete text abstraction." + }, + "MovingObjectPosition": { + "fqn": "net.minecraft.util.MovingObjectPosition", + "category": "INTERFACE", + "pa": "IRayTraceResult", + "package": "noppes.npcs.api", + "imports": 15, + "pa_exists": false, + "methods": ["getType", "getBlockPos", "getEntity", "getHitVec", "getSideHit"], + "reason": "Raytrace result. 1.7: MovingObjectPosition, 1.9+: RayTraceResult, 1.16+: HitResult. Used in abilities and targeting.", + "notes": "Inner enum MovingObjectType also needs mapping (BLOCK, ENTITY, MISS)." + }, + "NBTBase": { + "fqn": "net.minecraft.nbt.NBTBase", + "category": "INTERFACE", + "pa": "INbtBase", + "package": "noppes.npcs.api", + "imports": 13, + "pa_exists": false, + "methods": ["getId", "copy"], + "reason": "Base NBT tag type. Used when working with heterogeneous NBT tag collections (e.g., iterating NBTTagList contents).", + "notes": "Minimal interface. Most code already uses INbt/INbtList directly." + }, + "Potion": { + "fqn": "net.minecraft.potion.Potion", + "category": "INTERFACE", + "pa": "IPotionType", + "package": "noppes.npcs.api", + "imports": 7, + "pa_exists": false, + "methods": ["getId", "getName", "isBadEffect", "isInstant", "getStatusIconIndex"], + "reason": "Potion type registry entry. 1.7: Potion[] array, 1.9+: Registry. Used in custom effects system.", + "notes": "Registration changes significantly between versions. Core uses id-based lookup." + }, + "PotionEffect": { + "fqn": "net.minecraft.potion.PotionEffect", + "category": "INTERFACE", + "pa": "IPotionEffect", + "package": "noppes.npcs.api", + "imports": 6, + "pa_exists": false, + "methods": ["getPotionID", "getDuration", "getAmplifier", "getIsAmbient", "getIsShowParticles"], + "reason": "Active potion effect instance. Used in custom effects, ability system.", + "notes": "1.9+ changes getPotionID() to getPotion() returning registry entry." + }, + "Explosion": { + "fqn": "net.minecraft.world.Explosion", + "category": "INTERFACE", + "pa": "IExplosion", + "package": "noppes.npcs.api", + "imports": 3, + "pa_exists": false, + "methods": ["getExplosivePlacedBy", "getPosition"], + "reason": "Explosion event data. Used in ability system for energy explosions.", + "notes": "Low import count. Consider if SERVICE would be simpler." + }, + "Configuration": { + "fqn": "net.minecraftforge.common.config.Configuration", + "category": "INTERFACE", + "pa": "IForgeConfig", + "package": "noppes.npcs.api", + "imports": 9, + "pa_exists": false, + "methods": ["get", "getCategory", "save", "load", "hasKey", "hasCategory"], + "reason": "Forge configuration file wrapper. Config system migrates to core. 1.13+ uses TOML-based ForgeConfigSpec instead.", + "notes": "Paired with Property → IConfigProperty. Config classes in core use this." + }, + "Property": { + "fqn": "net.minecraftforge.common.config.Property", + "category": "INTERFACE", + "pa": "IConfigProperty", + "package": "noppes.npcs.api", + "imports": 7, + "pa_exists": false, + "methods": ["getString", "getInt", "getDouble", "getBoolean", "getStringList", "set", "setComment"], + "reason": "Individual config property. Paired with IForgeConfig.", + "notes": "Used in all ConfigMain, ConfigClient, ConfigScript, etc. files." + }, + + + "__comment_service": "=== SERVICE: Static utility → PlatformService/NBTIO methods (12 types) ===", + + "StatCollector": { + "fqn": "net.minecraft.util.StatCollector", + "category": "SERVICE", + "service": "PlatformService", + "imports": 106, + "methods": { + "translateToLocal(String key)": "Server-side translation. Returns localized string.", + "translateToLocalFormatted(String key, Object... args)": "Server-side formatted translation." + }, + "reason": "Pure static translation utility. 1.7: StatCollector, 1.12+: I18n, 1.16+: different I18n. Translation is inherently platform-specific.", + "notes": "106 imports — 3rd highest SERVICE type. High-impact abstraction." + }, + "Item": { + "fqn": "net.minecraft.item.Item", + "category": "SERVICE", + "service": "PlatformService", + "imports": 72, + "methods": { + "getItemById(int id)": "Registry lookup: ID → Item. Returns IItemStack or Object.", + "getIdFromItem(Item item)": "Reverse registry lookup: Item → ID." + }, + "reason": "Item registry is static. Core code only uses registry lookup methods. Item subclasses (ItemArmor, ItemSword, etc.) stay in mc1710.", + "notes": "72 imports but most are in mc1710 item classes. Only registry lookups need abstracting." + }, + "MinecraftServer": { + "fqn": "net.minecraft.server.MinecraftServer", + "category": "SERVICE", + "service": "PlatformService", + "imports": 26, + "methods": { + "getServer()": "Static singleton accessor. 1.7: MinecraftServer.getServer(), 1.16+: different access.", + "isDedicatedServer()": "Server type check.", + "worldServerForDimension(int dim)": "Get world by dimension ID. Returns IWorld.", + "getConfigurationManager()": "Get player list manager." + }, + "reason": "Static singleton with static getServer(). Java 7 can't have static interface methods.", + "notes": "Some methods already in PlatformService (getWorldSaveDirectory, isPhysicalClient)." + }, + "EntityList": { + "fqn": "net.minecraft.entity.EntityList", + "category": "SERVICE", + "service": "PlatformService", + "imports": 25, + "methods": { + "getEntityString(Entity e)": "Get entity's registry name string.", + "createEntityByName(String name, World world)": "Spawn entity by registry name." + }, + "reason": "Static entity registry. 1.9+ replaces with ForgeRegistries.ENTITIES.", + "notes": "Used in clone system and NPC spawning." + }, + "FMLCommonHandler": { + "fqn": "cpw.mods.fml.common.FMLCommonHandler", + "category": "SERVICE", + "service": "PlatformService", + "imports": 25, + "methods": { + "instance().getSide()": "Get physical side (CLIENT/SERVER). Already covered by PlatformService.isPhysicalClient().", + "instance().getEffectiveSide()": "Get logical side (CLIENT/SERVER)." + }, + "reason": "FML singleton for side detection. Already partially covered by PlatformService.", + "notes": "1.13+ uses FMLEnvironment.dist instead." + }, + "CompressedStreamTools": { + "fqn": "net.minecraft.nbt.CompressedStreamTools", + "category": "SERVICE", + "service": "NBTIO", + "imports": 24, + "methods": { + "readCompressed(InputStream)": "Read compressed NBT from stream. Returns INbt.", + "writeCompressed(NBTTagCompound, OutputStream)": "Write compressed NBT to stream." + }, + "reason": "Static NBT I/O. Already abstracted in PlatformService.readCompressedNBT/writeCompressedNBT.", + "notes": "Already has Static-Transform patterns defined." + }, + "CommandBase": { + "fqn": "net.minecraft.command.CommandBase", + "category": "SERVICE", + "service": "PlatformService", + "imports": 14, + "methods": { + "parseDouble(String)": "Parse double from command arg.", + "parseInt(String)": "Parse int from command arg.", + "getListOfStringsMatchingLastWord(String[], String...)": "Tab completion helper." + }, + "reason": "Static command utilities. Commands stay in mc1710 but some utility methods are useful in core.", + "notes": "1.13+ Brigadier replaces the entire command system. These utilities become irrelevant." + }, + "Loader": { + "fqn": "cpw.mods.fml.common.Loader", + "category": "SERVICE", + "service": "PlatformService", + "imports": 11, + "methods": { + "isModLoaded(String modid)": "Check if a mod is loaded." + }, + "reason": "Static mod loader query. 1.13+: ModList.get().isLoaded().", + "notes": "Single useful method. Add to PlatformService.isModLoaded()." + }, + "I18n": { + "fqn": "net.minecraft.client.resources.I18n", + "category": "SERVICE", + "service": "PlatformService", + "imports": 9, + "methods": { + "format(String key, Object... args)": "Client-side translation with formatting." + }, + "reason": "Client-side I18n. Overlaps with StatCollector for server-side. Both map to PlatformService.translate().", + "notes": "Client-specific. May stay in mc1710 client code." + }, + "DimensionManager": { + "fqn": "net.minecraftforge.common.DimensionManager", + "category": "SERVICE", + "service": "PlatformService", + "imports": 2, + "methods": { + "getWorld(int dimensionId)": "Get world by dimension ID. Returns IWorld.", + "getIDs()": "Get all registered dimension IDs." + }, + "reason": "Forge dimension management. Used in core for world access.", + "notes": "1.16+ completely reworks dimensions (ResourceKey)." + }, + "PlayerSelector": { + "fqn": "net.minecraft.command.PlayerSelector", + "category": "SERVICE", + "service": "PlatformService", + "imports": 2, + "methods": { + "matchPlayers(ICommandSender, String)": "Parse @p/@a/@r selectors. Returns List." + }, + "reason": "Command player selector parsing. 1.13+ Brigadier handles this natively.", + "notes": "Single static method." + }, + "NBTUtil": { + "fqn": "net.minecraft.nbt.NBTUtil", + "category": "SERVICE", + "service": "NBTIO", + "imports": 1, + "methods": { + "func_152459_a(NBTTagCompound, GameProfile)": "Write GameProfile to NBT.", + "func_152458_a(NBTTagCompound)": "Read GameProfile from NBT." + }, + "reason": "NBT utility for GameProfile serialization.", + "notes": "Very low usage. Consider suppressing." + }, + + + "__comment_transform": "=== TRANSFORM: Regex-based Static-Transform replacement (10 types) ===", + + "Side": { + "fqn": "cpw.mods.fml.relauncher.Side", + "category": "TRANSFORM", + "imports": 405, + "patterns": [ + ["@SideOnly\\s*\\(\\s*Side\\.CLIENT\\s*\\)", "@ClientOnly"], + ["@SideOnly\\s*\\(\\s*Side\\.SERVER\\s*\\)", "@ServerOnly"], + ["Side\\.CLIENT", "PlatformSide.CLIENT"], + ["Side\\.SERVER", "PlatformSide.SERVER"] + ], + "notes": "Highest-impact TRANSFORM. 800 imports (Side+SideOnly). Annotation swap eliminates both." + }, + "SideOnly": { + "fqn": "cpw.mods.fml.relauncher.SideOnly", + "category": "TRANSFORM", + "imports": 395, + "patterns": [], + "notes": "Handled by Side patterns above. Import gets nuked, annotation text gets swapped." + }, + "MathHelper": { + "fqn": "net.minecraft.util.MathHelper", + "category": "TRANSFORM", + "imports": 98, + "patterns": [ + ["MathHelper\\.clamp_int\\s*\\(", "ValueUtil.clampInt("], + ["MathHelper\\.clamp_float\\s*\\(", "ValueUtil.clampFloat("], + ["MathHelper\\.clamp_double\\s*\\(", "ValueUtil.clampDouble("], + ["MathHelper\\.sqrt_double\\s*\\(", "Math.sqrt("], + ["MathHelper\\.sqrt_float\\s*\\(", "(float)Math.sqrt("], + ["MathHelper\\.floor_double\\s*\\(", "ValueUtil.floorDouble("], + ["MathHelper\\.floor_float\\s*\\(", "ValueUtil.floorFloat("], + ["MathHelper\\.sin\\s*\\(", "(float)Math.sin("], + ["MathHelper\\.cos\\s*\\(", "(float)Math.cos("], + ["MathHelper\\.abs\\s*\\(", "Math.abs("], + ["MathHelper\\.ceiling_double_int\\s*\\(", "ValueUtil.ceilToInt("], + ["MathHelper\\.ceiling_float_int\\s*\\(", "ValueUtil.ceilToInt("] + ], + "notes": "Pure static math. All methods have Java stdlib or ValueUtil equivalents." + }, + "EnumChatFormatting": { + "fqn": "net.minecraft.util.EnumChatFormatting", + "category": "TRANSFORM", + "imports": 19, + "patterns": [ + ["EnumChatFormatting\\.", "TextFormatting."] + ], + "notes": "Color/formatting constants. Create a TextFormatting enum in core with same constants (RED, BLUE, BOLD, RESET, etc.). 1.16+: ChatFormatting." + }, + "EnumFacing": { + "fqn": "net.minecraft.util.EnumFacing", + "category": "TRANSFORM", + "imports": 3, + "patterns": [ + ["EnumFacing\\.", "Direction."] + ], + "notes": "Direction enum (UP/DOWN/NORTH/SOUTH/EAST/WEST). Create Direction enum in core. 1.13+: already Direction." + }, + "SharedMonsterAttributes": { + "fqn": "net.minecraft.entity.SharedMonsterAttributes", + "category": "TRANSFORM", + "imports": 10, + "patterns": [ + ["SharedMonsterAttributes\\.maxHealth", "Attributes.MAX_HEALTH"], + ["SharedMonsterAttributes\\.movementSpeed", "Attributes.MOVEMENT_SPEED"], + ["SharedMonsterAttributes\\.attackDamage", "Attributes.ATTACK_DAMAGE"], + ["SharedMonsterAttributes\\.followRange", "Attributes.FOLLOW_RANGE"], + ["SharedMonsterAttributes\\.knockbackResistance", "Attributes.KNOCKBACK_RESISTANCE"] + ], + "notes": "Attribute constants. Create Attributes class in core. These are IAttributeInstance references." + }, + "Constants": { + "fqn": "net.minecraftforge.common.util.Constants", + "category": "TRANSFORM", + "imports": 9, + "patterns": [ + ["Constants\\.NBT\\.TAG_COMPOUND", "NbtConstants.TAG_COMPOUND"], + ["Constants\\.NBT\\.TAG_STRING", "NbtConstants.TAG_STRING"], + ["Constants\\.NBT\\.TAG_LIST", "NbtConstants.TAG_LIST"], + ["Constants\\.NBT\\.TAG_INT", "NbtConstants.TAG_INT"], + ["Constants\\.NBT\\.TAG_DOUBLE", "NbtConstants.TAG_DOUBLE"], + ["Constants\\.NBT\\.TAG_BYTE", "NbtConstants.TAG_BYTE"], + ["Constants\\.NBT\\.TAG_FLOAT", "NbtConstants.TAG_FLOAT"], + ["Constants\\.NBT\\.TAG_LONG", "NbtConstants.TAG_LONG"], + ["Constants\\.NBT\\.TAG_SHORT", "NbtConstants.TAG_SHORT"], + ["Constants\\.NBT\\.TAG_INT_ARRAY", "NbtConstants.TAG_INT_ARRAY"], + ["Constants\\.NBT\\.TAG_BYTE_ARRAY", "NbtConstants.TAG_BYTE_ARRAY"] + ], + "notes": "Forge NBT type ID constants. Create NbtConstants class in core with same int values." + }, + "CommandException": { + "fqn": "net.minecraft.command.CommandException", + "category": "TRANSFORM", + "imports": 31, + "patterns": [ + ["net\\.minecraft\\.command\\.CommandException", "noppes.npcs.api.CommandException"], + ["new CommandException\\(", "new CommandException("] + ], + "notes": "Exception class. Create a plain Java CommandException in core. Same constructor signature (String message, Object... args). No MC dependency needed." + }, + "ChunkCoordinates": { + "fqn": "net.minecraft.util.ChunkCoordinates", + "category": "TRANSFORM", + "imports": 4, + "patterns": [ + ["new ChunkCoordinates\\(([^,]+),\\s*([^,]+),\\s*([^)]+)\\)", "new BlockPos($1, $2, $3)"], + ["\\.posX\\b", ".getX()"], + ["\\.posY\\b", ".getY()"], + ["\\.posZ\\b", ".getZ()"] + ], + "notes": "1.7.10 position class. Maps to IPos (already exists in platform-api) or inline x/y/z." + }, + "EnumAction": { + "fqn": "net.minecraft.item.EnumAction", + "category": "TRANSFORM", + "imports": 11, + "patterns": [ + ["EnumAction\\.", "ItemAction."] + ], + "notes": "Item use action enum (NONE, EAT, DRINK, BLOCK, BOW). Create ItemAction enum in core." + }, + + + "__comment_suppress": "=== SUPPRESS: Never abstract. Code using these stays in mc1710. (352 types) ===", + "__suppress_legend": { + "reasons": { + "client": "Client-only GUI, rendering, models, textures, audio, shaders, fonts", + "networking": "Packets, buffers, network handlers, protocol classes", + "entity-hierarchy": "Entity subclasses that extend MC Entity directly. Entity code stays in mc1710", + "entity-ai": "AI tasks, pathfinding, navigation, data watchers", + "event-system": "Forge/FML event classes, SubscribeEvent, EventBus, event handlers", + "registration": "GameRegistry, EntityRegistry, NetworkRegistry — platform-specific registration", + "recipe-system": "CraftingManager, IRecipe, ShapedRecipes — NEVER touch (AGENTS.md rule)", + "nbt-subtype": "Individual NBT tag types (NBTTagString, NBTTagInt, etc.) — handled through INbt getters/setters", + "block-internal": "Block subclasses, block materials, block states — block system stays in mc1710", + "item-internal": "Item subclasses (ItemSword, ItemBow, etc.) — item classes stay in mc1710", + "forge-internal": "Forge/FML lifecycle, mod loading, annotations, proxies, reflection helpers", + "inventory": "Inventory implementations, container internals — GUI/inventory stays in mc1710", + "world-internal": "Chunks, biomes, world providers, dimension internals", + "debug": "Profiler, crash reports, debug utilities", + "scoreboard-internal": "Score, criteria — too niche for core abstraction" + } + }, + + "GuiButton": { "fqn": "net.minecraft.client.gui.GuiButton", "category": "SUPPRESS", "imports": 218, "reason": "client" }, + "Minecraft": { "fqn": "net.minecraft.client.Minecraft", "category": "SUPPRESS", "imports": 180, "reason": "client" }, + "ModelRenderer": { "fqn": "net.minecraft.client.model.ModelRenderer", "category": "SUPPRESS", "imports": 122, "reason": "client" }, + "ModelBase": { "fqn": "net.minecraft.client.model.ModelBase", "category": "SUPPRESS", "imports": 102, "reason": "client" }, + "Block": { "fqn": "net.minecraft.block.Block", "category": "SUPPRESS", "imports": 84, "reason": "block-internal", "notes": "IBlock exists in scripting API for block access through IWorld. Raw MC Block class stays in mc1710." }, + "TileEntity": { "fqn": "net.minecraft.tileentity.TileEntity", "category": "SUPPRESS", "imports": 78, "reason": "block-internal", "notes": "ITileEntity exists in scripting API. Raw MC TileEntity stays in mc1710." }, + "GuiScreen": { "fqn": "net.minecraft.client.gui.GuiScreen", "category": "SUPPRESS", "imports": 70, "reason": "client" }, + "Tessellator": { "fqn": "net.minecraft.client.renderer.Tessellator", "category": "SUPPRESS", "imports": 46, "reason": "client" }, + "Slot": { "fqn": "net.minecraft.inventory.Slot", "category": "SUPPRESS", "imports": 42, "reason": "inventory", "notes": "ISlot exists in scripting API for different purpose." }, + "RenderHelper": { "fqn": "net.minecraft.client.renderer.RenderHelper", "category": "SUPPRESS", "imports": 40, "reason": "client" }, + "OpenGlHelper": { "fqn": "net.minecraft.client.renderer.OpenGlHelper", "category": "SUPPRESS", "imports": 39, "reason": "client" }, + "TextureManager": { "fqn": "net.minecraft.client.renderer.texture.TextureManager", "category": "SUPPRESS", "imports": 38, "reason": "client" }, + "FontRenderer": { "fqn": "net.minecraft.client.gui.FontRenderer", "category": "SUPPRESS", "imports": 38, "reason": "client" }, + "NBTTagString": { "fqn": "net.minecraft.nbt.NBTTagString", "category": "SUPPRESS", "imports": 35, "reason": "nbt-subtype", "notes": "Handled via INbt.setString/getString." }, + "IIcon": { "fqn": "net.minecraft.util.IIcon", "category": "SUPPRESS", "imports": 35, "reason": "client" }, + "RenderBlocks": { "fqn": "net.minecraft.client.renderer.RenderBlocks", "category": "SUPPRESS", "imports": 35, "reason": "client" }, + "RenderManager": { "fqn": "net.minecraft.client.renderer.entity.RenderManager", "category": "SUPPRESS", "imports": 33, "reason": "client" }, + "ModelBox": { "fqn": "net.minecraft.client.model.ModelBox", "category": "SUPPRESS", "imports": 32, "reason": "client" }, + "IInventory": { "fqn": "net.minecraft.inventory.IInventory", "category": "SUPPRESS", "imports": 30, "reason": "inventory", "notes": "1.12+ uses IItemHandler capability. Complex to abstract." }, + "IBlockAccess": { "fqn": "net.minecraft.world.IBlockAccess", "category": "SUPPRESS", "imports": 30, "reason": "client", "notes": "World read-only interface for rendering." }, + "RenderingRegistry": { "fqn": "cpw.mods.fml.client.registry.RenderingRegistry", "category": "SUPPRESS", "imports": 28, "reason": "client" }, + "EntityAIBase": { "fqn": "net.minecraft.entity.ai.EntityAIBase", "category": "SUPPRESS", "imports": 27, "reason": "entity-ai" }, + "ScaledResolution": { "fqn": "net.minecraft.client.gui.ScaledResolution", "category": "SUPPRESS", "imports": 26, "reason": "client" }, + "IIconRegister": { "fqn": "net.minecraft.client.renderer.texture.IIconRegister", "category": "SUPPRESS", "imports": 26, "reason": "client" }, + "Container": { "fqn": "net.minecraft.inventory.Container", "category": "SUPPRESS", "imports": 25, "reason": "inventory", "notes": "IContainer exists in scripting API for different purpose." }, + "CreativeTabs": { "fqn": "net.minecraft.creativetab.CreativeTabs", "category": "SUPPRESS", "imports": 25, "reason": "registration" }, + "Material": { "fqn": "net.minecraft.block.material.Material", "category": "SUPPRESS", "imports": 24, "reason": "block-internal" }, + "GuiYesNo": { "fqn": "net.minecraft.client.gui.GuiYesNo", "category": "SUPPRESS", "imports": 22, "reason": "client" }, + "Gui": { "fqn": "net.minecraft.client.gui.Gui", "category": "SUPPRESS", "imports": 22, "reason": "client" }, + "GuiYesNoCallback": { "fqn": "net.minecraft.client.gui.GuiYesNoCallback", "category": "SUPPRESS", "imports": 21, "reason": "client" }, + "ItemBlock": { "fqn": "net.minecraft.item.ItemBlock", "category": "SUPPRESS", "imports": 19, "reason": "item-internal", "notes": "IItemBlock exists in scripting API." }, + "Cancelable": { "fqn": "cpw.mods.fml.common.eventhandler.Cancelable", "category": "SUPPRESS", "imports": 19, "reason": "event-system" }, + "GameRegistry": { "fqn": "cpw.mods.fml.common.registry.GameRegistry", "category": "SUPPRESS", "imports": 18, "reason": "registration" }, + "Event": { "fqn": "cpw.mods.fml.common.eventhandler.Event", "category": "SUPPRESS", "imports": 17, "reason": "event-system" }, + "BlockContainer": { "fqn": "net.minecraft.block.BlockContainer", "category": "SUPPRESS", "imports": 16, "reason": "block-internal" }, + "ModelBiped": { "fqn": "net.minecraft.client.model.ModelBiped", "category": "SUPPRESS", "imports": 16, "reason": "client" }, + "SubscribeEvent": { "fqn": "cpw.mods.fml.common.eventhandler.SubscribeEvent", "category": "SUPPRESS", "imports": 15, "reason": "event-system" }, + "EntityItem": { "fqn": "net.minecraft.entity.item.EntityItem", "category": "SUPPRESS", "imports": 15, "reason": "entity-hierarchy", "notes": "IEntityItem exists in platform-api for scripting. Raw MC class stays in mc1710." }, + "ItemArmor": { "fqn": "net.minecraft.item.ItemArmor", "category": "SUPPRESS", "imports": 13, "reason": "item-internal", "notes": "IItemArmor exists in platform-api for scripting. Raw MC class stays in mc1710." }, + "IItemRenderer": { "fqn": "net.minecraftforge.client.IItemRenderer", "category": "SUPPRESS", "imports": 11, "reason": "client" }, + "IResource": { "fqn": "net.minecraft.client.resources.IResource", "category": "SUPPRESS", "imports": 11, "reason": "client" }, + "BlockPos": { "fqn": "net.minecraft.util.math.BlockPos", "category": "SUPPRESS", "imports": 10, "reason": "block-internal", "notes": "IPos exists in platform-api. BlockPos is 1.8+ only (not native to 1.7.10)." }, + "Render": { "fqn": "net.minecraft.client.renderer.entity.Render", "category": "SUPPRESS", "imports": 8, "reason": "client" }, + "ItemRenderer": { "fqn": "net.minecraft.client.renderer.ItemRenderer", "category": "SUPPRESS", "imports": 8, "reason": "client" }, + "MinecraftForge": { "fqn": "net.minecraftforge.common.MinecraftForge", "category": "SUPPRESS", "imports": 8, "reason": "event-system" }, + "RenderItem": { "fqn": "net.minecraft.client.renderer.entity.RenderItem", "category": "SUPPRESS", "imports": 8, "reason": "client" }, + "EntityMob": { "fqn": "net.minecraft.entity.monster.EntityMob", "category": "SUPPRESS", "imports": 7, "reason": "entity-hierarchy", "notes": "IMonster exists in platform-api." }, + "EntityCreature": { "fqn": "net.minecraft.entity.EntityCreature", "category": "SUPPRESS", "imports": 7, "reason": "entity-hierarchy", "notes": "IEntityLiving covers this in platform-api." }, + "EntityAnimal": { "fqn": "net.minecraft.entity.passive.EntityAnimal", "category": "SUPPRESS", "imports": 7, "reason": "entity-hierarchy", "notes": "IAnimal exists in platform-api." }, + "EntityTameable": { "fqn": "net.minecraft.entity.passive.EntityTameable", "category": "SUPPRESS", "imports": 7, "reason": "entity-hierarchy" }, + "RendererLivingEntity": { "fqn": "net.minecraft.client.renderer.entity.RendererLivingEntity", "category": "SUPPRESS", "imports": 7, "reason": "client" }, + "ISimpleBlockRenderingHandler": { "fqn": "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", "category": "SUPPRESS", "imports": 7, "reason": "client" }, + "EntityClientPlayerMP": { "fqn": "net.minecraft.client.entity.EntityClientPlayerMP", "category": "SUPPRESS", "imports": 7, "reason": "client" }, + "InventoryBasic": { "fqn": "net.minecraft.inventory.InventoryBasic", "category": "SUPPRESS", "imports": 7, "reason": "inventory" }, + "Packet": { "fqn": "net.minecraft.network.Packet", "category": "SUPPRESS", "imports": 7, "reason": "networking" }, + "Enchantment": { "fqn": "net.minecraft.enchantment.Enchantment", "category": "SUPPRESS", "imports": 2, "reason": "item-internal", "notes": "Too niche for core abstraction at 2 imports." }, + "MerchantRecipeList": { "fqn": "net.minecraft.village.MerchantRecipeList", "category": "SUPPRESS", "imports": 6, "reason": "entity-hierarchy", "notes": "Trading system stays in mc1710." }, + "MerchantRecipe": { "fqn": "net.minecraft.village.MerchantRecipe", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "ObfuscationReflectionHelper": { "fqn": "cpw.mods.fml.common.ObfuscationReflectionHelper", "category": "SUPPRESS", "imports": 6, "reason": "forge-internal" }, + "EntityVillager": { "fqn": "net.minecraft.entity.passive.EntityVillager", "category": "SUPPRESS", "imports": 6, "reason": "entity-hierarchy", "notes": "IVillager exists in platform-api." }, + "FakePlayer": { "fqn": "net.minecraftforge.common.util.FakePlayer", "category": "SUPPRESS", "imports": 6, "reason": "entity-hierarchy" }, + "IEntitySelector": { "fqn": "net.minecraft.command.IEntitySelector", "category": "SUPPRESS", "imports": 6, "reason": "entity-ai" }, + "S35PacketUpdateTileEntity": { "fqn": "net.minecraft.network.play.server.S35PacketUpdateTileEntity", "category": "SUPPRESS", "imports": 6, "reason": "networking" }, + "ChatAllowedCharacters": { "fqn": "net.minecraft.util.ChatAllowedCharacters", "category": "SUPPRESS", "imports": 6, "reason": "client" }, + "TickEvent": { "fqn": "cpw.mods.fml.common.gameevent.TickEvent", "category": "SUPPRESS", "imports": 6, "reason": "event-system" }, + "TextureMap": { "fqn": "net.minecraft.client.renderer.texture.TextureMap", "category": "SUPPRESS", "imports": 6, "reason": "client" }, + "NBTTagFloat": { "fqn": "net.minecraft.nbt.NBTTagFloat", "category": "SUPPRESS", "imports": 6, "reason": "nbt-subtype" }, + "EntityXPOrb": { "fqn": "net.minecraft.entity.item.EntityXPOrb", "category": "SUPPRESS", "imports": 5, "reason": "entity-hierarchy" }, + "Achievement": { "fqn": "net.minecraft.stats.Achievement", "category": "SUPPRESS", "imports": 5, "reason": "forge-internal", "notes": "Removed in 1.12+. Replaced by Advancements." }, + "BlockColored": { "fqn": "net.minecraft.block.BlockColored", "category": "SUPPRESS", "imports": 5, "reason": "block-internal" }, + "ModContainer": { "fqn": "cpw.mods.fml.common.ModContainer", "category": "SUPPRESS", "imports": 5, "reason": "forge-internal" }, + "EntityThrowable": { "fqn": "net.minecraft.entity.projectile.EntityThrowable", "category": "SUPPRESS", "imports": 5, "reason": "entity-hierarchy", "notes": "IThrowable exists in platform-api." }, + "EntityFX": { "fqn": "net.minecraft.client.particle.EntityFX", "category": "SUPPRESS", "imports": 5, "reason": "client" }, + "FMLProxyPacket": { "fqn": "cpw.mods.fml.common.network.internal.FMLProxyPacket", "category": "SUPPRESS", "imports": 5, "reason": "networking" }, + "PathEntity": { "fqn": "net.minecraft.pathfinding.PathEntity", "category": "SUPPRESS", "imports": 5, "reason": "entity-ai" }, + "TileEntitySpecialRenderer": { "fqn": "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer", "category": "SUPPRESS", "imports": 5, "reason": "client" }, + "Blocks": { "fqn": "net.minecraft.init.Blocks", "category": "SUPPRESS", "imports": 47, "reason": "block-internal", "notes": "Block registry constants (Blocks.air, Blocks.stone). Access blocks through IBlock/IWorld." }, + "Items": { "fqn": "net.minecraft.init.Items", "category": "SUPPRESS", "imports": 29, "reason": "item-internal", "notes": "Item registry constants. Access items through IItemStack." }, + "EnumCreatureAttribute": { "fqn": "net.minecraft.entity.EnumCreatureAttribute", "category": "SUPPRESS", "imports": 4, "reason": "entity-hierarchy" }, + "PlayerEvent": { "fqn": "cpw.mods.fml.common.gameevent.PlayerEvent", "category": "SUPPRESS", "imports": 4, "reason": "event-system" }, + "IResourceManager": { "fqn": "net.minecraft.client.resources.IResourceManager", "category": "SUPPRESS", "imports": 4, "reason": "client" }, + "PositionedSoundRecord": { "fqn": "net.minecraft.client.audio.PositionedSoundRecord", "category": "SUPPRESS", "imports": 4, "reason": "client" }, + "NPCRendererHelper": { "fqn": "net.minecraft.client.renderer.entity.NPCRendererHelper", "category": "SUPPRESS", "imports": 4, "reason": "client" }, + "GLAllocation": { "fqn": "net.minecraft.client.renderer.GLAllocation", "category": "SUPPRESS", "imports": 4, "reason": "client" }, + "EntityDragon": { "fqn": "net.minecraft.entity.boss.EntityDragon", "category": "SUPPRESS", "imports": 4, "reason": "entity-hierarchy" }, + "EntityArrow": { "fqn": "net.minecraft.entity.projectile.EntityArrow", "category": "SUPPRESS", "imports": 4, "reason": "entity-hierarchy", "notes": "IArrow exists in platform-api." }, + "ItemTooltipEvent": { "fqn": "net.minecraftforge.event.entity.player.ItemTooltipEvent", "category": "SUPPRESS", "imports": 4, "reason": "event-system" }, + "NetworkManager": { "fqn": "net.minecraft.network.NetworkManager", "category": "SUPPRESS", "imports": 4, "reason": "networking" }, + "EntitySheep": { "fqn": "net.minecraft.entity.passive.EntitySheep", "category": "SUPPRESS", "imports": 4, "reason": "entity-hierarchy" }, + "NBTTagByte": { "fqn": "net.minecraft.nbt.NBTTagByte", "category": "SUPPRESS", "imports": 4, "reason": "nbt-subtype" }, + "ItemBow": { "fqn": "net.minecraft.item.ItemBow", "category": "SUPPRESS", "imports": 4, "reason": "item-internal" }, + "NBTTagIntArray": { "fqn": "net.minecraft.nbt.NBTTagIntArray", "category": "SUPPRESS", "imports": 4, "reason": "nbt-subtype" }, + "WorldEvent": { "fqn": "net.minecraftforge.event.world.WorldEvent", "category": "SUPPRESS", "imports": 4, "reason": "event-system" }, + "PacketBuffer": { "fqn": "net.minecraft.network.PacketBuffer", "category": "SUPPRESS", "imports": 4, "reason": "networking" }, + "EntityAITarget": { "fqn": "net.minecraft.entity.ai.EntityAITarget", "category": "SUPPRESS", "imports": 4, "reason": "entity-ai" }, + "GuiContainer": { "fqn": "net.minecraft.client.gui.inventory.GuiContainer", "category": "SUPPRESS", "imports": 4, "reason": "client" }, + "InventoryCrafting": { "fqn": "net.minecraft.inventory.InventoryCrafting", "category": "SUPPRESS", "imports": 4, "reason": "recipe-system" }, + "AttributeModifier": { "fqn": "net.minecraft.entity.ai.attributes.AttributeModifier", "category": "SUPPRESS", "imports": 3, "reason": "entity-hierarchy" }, + "SoundHandler": { "fqn": "net.minecraft.client.audio.SoundHandler", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "RenderBiped": { "fqn": "net.minecraft.client.renderer.entity.RenderBiped", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "ItemEditableBook": { "fqn": "net.minecraft.item.ItemEditableBook", "category": "SUPPRESS", "imports": 3, "reason": "item-internal" }, + "ItemWritableBook": { "fqn": "net.minecraft.item.ItemWritableBook", "category": "SUPPRESS", "imports": 3, "reason": "item-internal" }, + "ForgeHooksClient": { "fqn": "net.minecraftforge.client.ForgeHooksClient", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "MinecraftForgeClient": { "fqn": "net.minecraftforge.client.MinecraftForgeClient", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "ForgeChunkManager": { "fqn": "net.minecraftforge.common.ForgeChunkManager", "category": "SUPPRESS", "imports": 3, "reason": "world-internal" }, + "BiomeGenBase": { "fqn": "net.minecraft.world.biome.BiomeGenBase", "category": "SUPPRESS", "imports": 3, "reason": "world-internal" }, + "LivingEvent": { "fqn": "net.minecraftforge.event.entity.living.LivingEvent", "category": "SUPPRESS", "imports": 3, "reason": "event-system" }, + "EntityInteractEvent": { "fqn": "net.minecraftforge.event.entity.player.EntityInteractEvent", "category": "SUPPRESS", "imports": 3, "reason": "event-system" }, + "PlayerInteractEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerInteractEvent", "category": "SUPPRESS", "imports": 3, "reason": "event-system" }, + "SimpleReloadableResourceManager": { "fqn": "net.minecraft.client.resources.SimpleReloadableResourceManager", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "KeyBinding": { "fqn": "net.minecraft.client.settings.KeyBinding", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "ICrafting": { "fqn": "net.minecraft.inventory.ICrafting", "category": "SUPPRESS", "imports": 3, "reason": "inventory" }, + "ItemFood": { "fqn": "net.minecraft.item.ItemFood", "category": "SUPPRESS", "imports": 3, "reason": "item-internal" }, + "PathNavigate": { "fqn": "net.minecraft.pathfinding.PathNavigate", "category": "SUPPRESS", "imports": 3, "reason": "entity-ai" }, + "PathPoint": { "fqn": "net.minecraft.pathfinding.PathPoint", "category": "SUPPRESS", "imports": 3, "reason": "entity-ai" }, + "AbstractClientPlayer": { "fqn": "net.minecraft.client.entity.AbstractClientPlayer", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "GuiTextField": { "fqn": "net.minecraft.client.gui.GuiTextField", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "InventoryPlayer": { "fqn": "net.minecraft.entity.player.InventoryPlayer", "category": "SUPPRESS", "imports": 3, "reason": "inventory" }, + "EntityRenderer": { "fqn": "net.minecraft.client.renderer.EntityRenderer", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "RenderPlayer": { "fqn": "net.minecraft.client.renderer.entity.RenderPlayer", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "BlockIce": { "fqn": "net.minecraft.block.BlockIce", "category": "SUPPRESS", "imports": 3, "reason": "block-internal" }, + "BlockLeavesBase": { "fqn": "net.minecraft.block.BlockLeavesBase", "category": "SUPPRESS", "imports": 3, "reason": "block-internal" }, + "BlockVine": { "fqn": "net.minecraft.block.BlockVine", "category": "SUPPRESS", "imports": 3, "reason": "block-internal" }, + "EntityHorse": { "fqn": "net.minecraft.entity.passive.EntityHorse", "category": "SUPPRESS", "imports": 3, "reason": "entity-hierarchy" }, + "RenderWorldLastEvent": { "fqn": "net.minecraftforge.client.event.RenderWorldLastEvent", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "IEntityAdditionalSpawnData": { "fqn": "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData", "category": "SUPPRESS", "imports": 3, "reason": "entity-hierarchy" }, + "FMLNetworkEvent": { "fqn": "cpw.mods.fml.common.network.FMLNetworkEvent", "category": "SUPPRESS", "imports": 3, "reason": "networking" }, + "ArmorMaterial": { "fqn": "net.minecraft.item.ItemArmor.ArmorMaterial", "category": "SUPPRESS", "imports": 3, "reason": "item-internal" }, + "EntityEvent": { "fqn": "net.minecraftforge.event.entity.EntityEvent", "category": "SUPPRESS", "imports": 3, "reason": "event-system" }, + "EntityDamageSource": { "fqn": "net.minecraft.util.EntityDamageSource", "category": "SUPPRESS", "imports": 3, "reason": "entity-hierarchy", "notes": "Subclass of DamageSource. IDamageSource covers the base." }, + "ChunkCoordIntPair": { "fqn": "net.minecraft.world.ChunkCoordIntPair", "category": "SUPPRESS", "imports": 3, "reason": "world-internal" }, + "EventPriority": { "fqn": "cpw.mods.fml.common.eventhandler.EventPriority", "category": "SUPPRESS", "imports": 3, "reason": "event-system" }, + "GuiScreenEvent": { "fqn": "net.minecraftforge.client.event.GuiScreenEvent", "category": "SUPPRESS", "imports": 3, "reason": "client" }, + "IExtendedEntityProperties": { "fqn": "net.minecraftforge.common.IExtendedEntityProperties", "category": "SUPPRESS", "imports": 3, "reason": "entity-hierarchy" }, + "ItemSword": { "fqn": "net.minecraft.item.ItemSword", "category": "SUPPRESS", "imports": 3, "reason": "item-internal" }, + "NBTTagDouble": { "fqn": "net.minecraft.nbt.NBTTagDouble", "category": "SUPPRESS", "imports": 9, "reason": "nbt-subtype" }, + "NBTTagInt": { "fqn": "net.minecraft.nbt.NBTTagInt", "category": "SUPPRESS", "imports": 8, "reason": "nbt-subtype" }, + "IAttributeInstance": { "fqn": "net.minecraft.entity.ai.attributes.IAttributeInstance", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "BlockEvent": { "fqn": "net.minecraftforge.event.world.BlockEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "ResourcePackRepository": { "fqn": "net.minecraft.client.resources.ResourcePackRepository", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "Ticket": { "fqn": "net.minecraftforge.common.ForgeChunkManager.Ticket", "category": "SUPPRESS", "imports": 2, "reason": "world-internal" }, + "ScoreObjective": { "fqn": "net.minecraft.scoreboard.ScoreObjective", "category": "SUPPRESS", "imports": 2, "reason": "scoreboard-internal", "notes": "IScoreboardObjective exists in platform-api." }, + "ScorePlayerTeam": { "fqn": "net.minecraft.scoreboard.ScorePlayerTeam", "category": "SUPPRESS", "imports": 2, "reason": "scoreboard-internal", "notes": "IScoreboardTeam exists in platform-api." }, + "Scoreboard": { "fqn": "net.minecraft.scoreboard.Scoreboard", "category": "SUPPRESS", "imports": 2, "reason": "scoreboard-internal", "notes": "IScoreboard exists in platform-api." }, + "NetworkRegistry": { "fqn": "cpw.mods.fml.common.network.NetworkRegistry", "category": "SUPPRESS", "imports": 2, "reason": "registration" }, + "EntityRegistry": { "fqn": "cpw.mods.fml.common.registry.EntityRegistry", "category": "SUPPRESS", "imports": 2, "reason": "registration" }, + "IResourcePack": { "fqn": "net.minecraft.client.resources.IResourcePack", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "CraftingManager": { "fqn": "net.minecraft.item.crafting.CraftingManager", "category": "SUPPRESS", "imports": 2, "reason": "recipe-system" }, + "GameSettings": { "fqn": "net.minecraft.client.settings.GameSettings", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "TextureUtil": { "fqn": "net.minecraft.client.renderer.texture.TextureUtil", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "EnumHelper": { "fqn": "net.minecraftforge.common.util.EnumHelper", "category": "SUPPRESS", "imports": 2, "reason": "forge-internal" }, + "OreDictionary": { "fqn": "net.minecraftforge.oredict.OreDictionary", "category": "SUPPRESS", "imports": 2, "reason": "forge-internal" }, + "EnchantmentHelper": { "fqn": "net.minecraft.enchantment.EnchantmentHelper", "category": "SUPPRESS", "imports": 2, "reason": "item-internal" }, + "Chunk": { "fqn": "net.minecraft.world.chunk.Chunk", "category": "SUPPRESS", "imports": 2, "reason": "world-internal" }, + "EntityJoinWorldEvent": { "fqn": "net.minecraftforge.event.entity.EntityJoinWorldEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "ItemTossEvent": { "fqn": "net.minecraftforge.event.entity.item.ItemTossEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "PlayerUseItemEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerUseItemEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "LivingAttackEvent": { "fqn": "net.minecraftforge.event.entity.living.LivingAttackEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "LivingHurtEvent": { "fqn": "net.minecraftforge.event.entity.living.LivingHurtEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "IRangedAttackMob": { "fqn": "net.minecraft.entity.IRangedAttackMob", "category": "SUPPRESS", "imports": 2, "reason": "entity-ai" }, + "NPCResourceHelper": { "fqn": "net.minecraft.client.resources.NPCResourceHelper", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "ActiveRenderInfo": { "fqn": "net.minecraft.client.renderer.ActiveRenderInfo", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "IMerchant": { "fqn": "net.minecraft.entity.IMerchant", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "BiomeDictionary": { "fqn": "net.minecraftforge.common.BiomeDictionary", "category": "SUPPRESS", "imports": 2, "reason": "world-internal" }, + "InventoryCraftResult": { "fqn": "net.minecraft.inventory.InventoryCraftResult", "category": "SUPPRESS", "imports": 2, "reason": "recipe-system" }, + "WeightedRandom": { "fqn": "net.minecraft.util.WeightedRandom", "category": "SUPPRESS", "imports": 2, "reason": "forge-internal" }, + "EntityGhast": { "fqn": "net.minecraft.entity.monster.EntityGhast", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "S12PacketEntityVelocity": { "fqn": "net.minecraft.network.play.server.S12PacketEntityVelocity", "category": "SUPPRESS", "imports": 2, "reason": "networking" }, + "EntityPlayerSP": { "fqn": "net.minecraft.client.entity.EntityPlayerSP", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "ItemRenderType": { "fqn": "net.minecraftforge.client.IItemRenderer.ItemRenderType", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "EnumCreatureType": { "fqn": "net.minecraft.entity.EnumCreatureType", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "ChunkDataEvent": { "fqn": "net.minecraftforge.event.world.ChunkDataEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "ChunkEvent": { "fqn": "net.minecraftforge.event.world.ChunkEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "ChunkWatchEvent": { "fqn": "net.minecraftforge.event.world.ChunkWatchEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "ContainerPlayer": { "fqn": "net.minecraft.inventory.ContainerPlayer", "category": "SUPPRESS", "imports": 2, "reason": "inventory" }, + "LivingDeathEvent": { "fqn": "net.minecraftforge.event.entity.living.LivingDeathEvent", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "Phase": { "fqn": "cpw.mods.fml.common.gameevent.TickEvent.Phase", "category": "SUPPRESS", "imports": 2, "reason": "event-system" }, + "EntityMoveHelper": { "fqn": "net.minecraft.entity.ai.EntityMoveHelper", "category": "SUPPRESS", "imports": 2, "reason": "entity-ai" }, + "EnumSkyBlock": { "fqn": "net.minecraft.world.EnumSkyBlock", "category": "SUPPRESS", "imports": 2, "reason": "world-internal" }, + "AbstractResourcePack": { "fqn": "net.minecraft.client.resources.AbstractResourcePack", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "FallbackResourceManager": { "fqn": "net.minecraft.client.resources.FallbackResourceManager", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "RenderLivingEvent": { "fqn": "net.minecraftforge.client.event.RenderLivingEvent", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "RenderPlayerEvent": { "fqn": "net.minecraftforge.client.event.RenderPlayerEvent", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "EntityPortalFX": { "fqn": "net.minecraft.client.particle.EntityPortalFX", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "SkinManager": { "fqn": "net.minecraft.client.resources.SkinManager", "category": "SUPPRESS", "imports": 2, "reason": "client" }, + "EntityEnderman": { "fqn": "net.minecraft.entity.monster.EntityEnderman", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "EntityCreeper": { "fqn": "net.minecraft.entity.monster.EntityCreeper", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "IMob": { "fqn": "net.minecraft.entity.monster.IMob", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "INpc": { "fqn": "net.minecraft.entity.INpc", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy" }, + "EntityFishHook": { "fqn": "net.minecraft.entity.projectile.EntityFishHook", "category": "SUPPRESS", "imports": 2, "reason": "entity-hierarchy", "notes": "IFishHook exists in platform-api." }, + "NBTPrimitive": { "fqn": "net.minecraft.nbt.NBTBase.NBTPrimitive", "category": "SUPPRESS", "imports": 2, "reason": "nbt-subtype" }, + + "__comment_suppress_1import": "=== SUPPRESS: 1-import types (all stay in mc1710) ===", + + "FMLEventChannel": { "fqn": "cpw.mods.fml.common.network.FMLEventChannel", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "IBlockSource": { "fqn": "net.minecraft.dispenser.IBlockSource", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "CommandBlockLogic": { "fqn": "net.minecraft.command.server.CommandBlockLogic", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "IntHashMap": { "fqn": "net.minecraft.util.math.IntHashMap", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "WorldProvider": { "fqn": "net.minecraft.world.WorldProvider", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "BlockDispenser": { "fqn": "net.minecraft.block.BlockDispenser", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "FMLServerAboutToStartEvent": { "fqn": "cpw.mods.fml.common.event.FMLServerAboutToStartEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "StringUtils": { "fqn": "net.minecraft.util.StringUtils", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "MobSpawnerBaseLogic": { "fqn": "net.minecraft.tileentity.MobSpawnerBaseLogic", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "TileEntityCommandBlock": { "fqn": "net.minecraft.tileentity.TileEntityCommandBlock", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "TileEntityMobSpawner": { "fqn": "net.minecraft.tileentity.TileEntityMobSpawner", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "ForgeHooks": { "fqn": "net.minecraftforge.common.ForgeHooks", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "LivingFallEvent": { "fqn": "net.minecraftforge.event.entity.living.LivingFallEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PlayerDropsEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerDropsEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "EntityEnderPearl": { "fqn": "net.minecraft.entity.item.EntityEnderPearl", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "ITickable": { "fqn": "net.minecraft.client.renderer.texture.ITickable", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "MouseEvent": { "fqn": "net.minecraftforge.client.event.MouseEvent", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ClientRegistry": { "fqn": "cpw.mods.fml.client.registry.ClientRegistry", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "IImageBuffer": { "fqn": "net.minecraft.client.renderer.IImageBuffer", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "Util": { "fqn": "net.minecraft.util.Util", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "ReflectionHelper": { "fqn": "cpw.mods.fml.relauncher.ReflectionHelper", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "SoundRegistry": { "fqn": "net.minecraft.client.audio.SoundRegistry", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "TexturedQuad": { "fqn": "net.minecraft.client.model.TexturedQuad", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "BossStatus": { "fqn": "net.minecraft.entity.boss.BossStatus", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ItemPotion": { "fqn": "net.minecraft.item.ItemPotion", "category": "SUPPRESS", "imports": 1, "reason": "item-internal" }, + "PotionHelper": { "fqn": "net.minecraft.potion.PotionHelper", "category": "SUPPRESS", "imports": 1, "reason": "item-internal" }, + "ModelBook": { "fqn": "net.minecraft.client.model.ModelBook", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "NPCEntityHelper": { "fqn": "net.minecraft.entity.NPCEntityHelper", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "FMLLaunchHandler": { "fqn": "cpw.mods.fml.relauncher.FMLLaunchHandler", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "StatList": { "fqn": "net.minecraft.stats.StatList", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "WorldSettings": { "fqn": "net.minecraft.world.WorldSettings", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "Score": { "fqn": "net.minecraft.scoreboard.Score", "category": "SUPPRESS", "imports": 1, "reason": "scoreboard-internal" }, + "FMLClientHandler": { "fqn": "cpw.mods.fml.client.FMLClientHandler", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "PlayerNotFoundException": { "fqn": "net.minecraft.command.PlayerNotFoundException", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal", "notes": "Subclass of CommandException. Use core CommandException." }, + "NetHandlerPlayServer": { "fqn": "net.minecraft.network.NetHandlerPlayServer", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "GuiAchievement": { "fqn": "net.minecraft.client.gui.achievement.GuiAchievement", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "NBTSizeTracker": { "fqn": "net.minecraft.nbt.NBTSizeTracker", "category": "SUPPRESS", "imports": 1, "reason": "nbt-subtype" }, + "IGuiHandler": { "fqn": "cpw.mods.fml.common.network.IGuiHandler", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "BehaviorDefaultDispenseItem": { "fqn": "net.minecraft.dispenser.BehaviorDefaultDispenseItem", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "ToolMaterial": { "fqn": "net.minecraft.item.Item.ToolMaterial", "category": "SUPPRESS", "imports": 1, "reason": "item-internal" }, + "ItemFlintAndSteel": { "fqn": "net.minecraft.item.ItemFlintAndSteel", "category": "SUPPRESS", "imports": 1, "reason": "item-internal" }, + "Mod": { "fqn": "cpw.mods.fml.common.Mod", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "EventHandler": { "fqn": "cpw.mods.fml.common.Mod.EventHandler", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "SidedProxy": { "fqn": "cpw.mods.fml.common.SidedProxy", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "FMLLoadCompleteEvent": { "fqn": "cpw.mods.fml.common.event.FMLLoadCompleteEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "FMLServerStartedEvent": { "fqn": "cpw.mods.fml.common.event.FMLServerStartedEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "FMLServerStoppedEvent": { "fqn": "cpw.mods.fml.common.event.FMLServerStoppedEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "FMLInitializationEvent": { "fqn": "cpw.mods.fml.common.event.FMLInitializationEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "FMLPreInitializationEvent": { "fqn": "cpw.mods.fml.common.event.FMLPreInitializationEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "FMLServerStartingEvent": { "fqn": "cpw.mods.fml.common.event.FMLServerStartingEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "ForgeEventFactory": { "fqn": "net.minecraftforge.event.ForgeEventFactory", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "Teleporter": { "fqn": "net.minecraft.world.Teleporter", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "LoaderState": { "fqn": "cpw.mods.fml.common.LoaderState", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "EntityDamageSourceIndirect": { "fqn": "net.minecraft.util.EntityDamageSourceIndirect", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "Result": { "fqn": "cpw.mods.fml.common.eventhandler.Event.Result", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "ChunkPosition": { "fqn": "net.minecraft.world.ChunkPosition", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "AnvilRepairEvent": { "fqn": "net.minecraftforge.event.entity.player.AnvilRepairEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PlayerDestroyItemEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerDestroyItemEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "EntityStruckByLightningEvent": { "fqn": "net.minecraftforge.event.entity.EntityStruckByLightningEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PlaySoundAtEntityEvent": { "fqn": "net.minecraftforge.event.entity.PlaySoundAtEntityEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "AchievementEvent": { "fqn": "net.minecraftforge.event.entity.player.AchievementEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "ArrowLooseEvent": { "fqn": "net.minecraftforge.event.entity.player.ArrowLooseEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "ArrowNockEvent": { "fqn": "net.minecraftforge.event.entity.player.ArrowNockEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "BonemealEvent": { "fqn": "net.minecraftforge.event.entity.player.BonemealEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "FillBucketEvent": { "fqn": "net.minecraftforge.event.entity.player.FillBucketEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PlayerOpenContainerEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerOpenContainerEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PlayerPickupXpEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerPickupXpEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PlayerSleepInBedEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerSleepInBedEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PlayerWakeUpEvent": { "fqn": "net.minecraftforge.event.entity.player.PlayerWakeUpEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "UseHoeEvent": { "fqn": "net.minecraftforge.event.entity.player.UseHoeEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "PopulateChunkEvent": { "fqn": "net.minecraftforge.event.terraingen.PopulateChunkEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "EntityAIDoorInteract": { "fqn": "net.minecraft.entity.ai.EntityAIDoorInteract", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "BlockDoor": { "fqn": "net.minecraft.block.BlockDoor", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "BlockFence": { "fqn": "net.minecraft.block.BlockFence", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "BlockFenceGate": { "fqn": "net.minecraft.block.BlockFenceGate", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "BlockRailBase": { "fqn": "net.minecraft.block.BlockRailBase", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "BlockWall": { "fqn": "net.minecraft.block.BlockWall", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "ChunkCache": { "fqn": "net.minecraft.world.ChunkCache", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "EntityAINearestAttackableTarget": { "fqn": "net.minecraft.entity.ai.EntityAINearestAttackableTarget", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "BlockBreakable": { "fqn": "net.minecraft.block.BlockBreakable", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "ForgeDirection": { "fqn": "net.minecraftforge.common.util.ForgeDirection", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "RenderGameOverlayEvent": { "fqn": "net.minecraftforge.client.event.RenderGameOverlayEvent", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "RenderHandEvent": { "fqn": "net.minecraftforge.client.event.RenderHandEvent", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "EntityFlameFX": { "fqn": "net.minecraft.client.particle.EntityFlameFX", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "EntitySmokeFX": { "fqn": "net.minecraft.client.particle.EntitySmokeFX", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "IReloadableResourceManager": { "fqn": "net.minecraft.client.resources.IReloadableResourceManager", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ReportedException": { "fqn": "net.minecraft.util.ReportedException", "category": "SUPPRESS", "imports": 1, "reason": "debug" }, + "ClientCommandHandler": { "fqn": "net.minecraftforge.client.ClientCommandHandler", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "FolderResourcePack": { "fqn": "net.minecraft.client.resources.FolderResourcePack", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "IResourceManagerReloadListener": { "fqn": "net.minecraft.client.resources.IResourceManagerReloadListener", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "EntityChicken": { "fqn": "net.minecraft.entity.passive.EntityChicken", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "SimpleTexture": { "fqn": "net.minecraft.client.renderer.texture.SimpleTexture", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "InputEvent": { "fqn": "cpw.mods.fml.common.gameevent.InputEvent", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ClickEvent": { "fqn": "net.minecraft.event.ClickEvent", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ISound": { "fqn": "net.minecraft.client.audio.ISound", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ITickableSound": { "fqn": "net.minecraft.client.audio.ITickableSound", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "MovingSound": { "fqn": "net.minecraft.client.audio.MovingSound", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "EntityConstructing": { "fqn": "net.minecraftforge.event.entity.EntityEvent.EntityConstructing", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "C17PacketCustomPayload": { "fqn": "net.minecraft.network.play.client.C17PacketCustomPayload", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "ShaderGroup": { "fqn": "net.minecraft.client.shader.ShaderGroup", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "GuiOpenEvent": { "fqn": "net.minecraftforge.client.event.GuiOpenEvent", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "GuiConfirmOpenLink": { "fqn": "net.minecraft.client.gui.GuiConfirmOpenLink", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "DefaultResourcePack": { "fqn": "net.minecraft.client.resources.DefaultResourcePack", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ITextureObject": { "fqn": "net.minecraft.client.renderer.texture.ITextureObject", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "PositionTextureVertex": { "fqn": "net.minecraft.client.model.PositionTextureVertex", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ImageBufferDownload": { "fqn": "net.minecraft.client.renderer.ImageBufferDownload", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ItemRendererHelper": { "fqn": "net.minecraftforge.client.IItemRenderer.ItemRendererHelper", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "SlotCrafting": { "fqn": "net.minecraft.inventory.SlotCrafting", "category": "SUPPRESS", "imports": 1, "reason": "recipe-system" }, + "S2FPacketSetSlot": { "fqn": "net.minecraft.network.play.server.S2FPacketSetSlot", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "LoadingCallback": { "fqn": "net.minecraftforge.common.ForgeChunkManager.LoadingCallback", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "EnumEnchantmentType": { "fqn": "net.minecraft.enchantment.EnumEnchantmentType", "category": "SUPPRESS", "imports": 1, "reason": "item-internal" }, + "EntityAIAttackOnCollide": { "fqn": "net.minecraft.entity.ai.EntityAIAttackOnCollide", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "EntityAIHurtByTarget": { "fqn": "net.minecraft.entity.ai.EntityAIHurtByTarget", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "EntityAIOpenDoor": { "fqn": "net.minecraft.entity.ai.EntityAIOpenDoor", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "EntityAIRestrictSun": { "fqn": "net.minecraft.entity.ai.EntityAIRestrictSun", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "EntityAISwimming": { "fqn": "net.minecraft.entity.ai.EntityAISwimming", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "EntityAITaskEntry": { "fqn": "net.minecraft.entity.ai.EntityAITasks.EntityAITaskEntry", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "IBossDisplayData": { "fqn": "net.minecraft.entity.boss.IBossDisplayData", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "EntityZombie": { "fqn": "net.minecraft.entity.monster.EntityZombie", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "EntityBat": { "fqn": "net.minecraft.entity.passive.EntityBat", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "S0BPacketAnimation": { "fqn": "net.minecraft.network.play.server.S0BPacketAnimation", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "ServerChatEvent": { "fqn": "net.minecraftforge.event.ServerChatEvent", "category": "SUPPRESS", "imports": 1, "reason": "event-system" }, + "S27PacketExplosion": { "fqn": "net.minecraft.network.play.server.S27PacketExplosion", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "MovingObjectType": { "fqn": "net.minecraft.util.MovingObjectPosition.MovingObjectType", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy", "notes": "Inner enum. Covered by IRayTraceResult.getType()." }, + "EntitySkeleton": { "fqn": "net.minecraft.entity.monster.EntitySkeleton", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "S04PacketEntityEquipment": { "fqn": "net.minecraft.network.play.server.S04PacketEntityEquipment", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "ItemColored": { "fqn": "net.minecraft.item.ItemColored", "category": "SUPPRESS", "imports": 1, "reason": "item-internal" }, + "FMLMessage": { "fqn": "cpw.mods.fml.common.network.internal.FMLMessage", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "EntityTrackerEntry": { "fqn": "net.minecraft.entity.EntityTrackerEntry", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "EnumDifficulty": { "fqn": "net.minecraft.world.EnumDifficulty", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "CommandHandler": { "fqn": "net.minecraft.command.CommandHandler", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "Vec3i": { "fqn": "net.minecraft.util.Vec3i", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "BlockAir": { "fqn": "net.minecraft.block.BlockAir", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "EntityLightningBolt": { "fqn": "net.minecraft.entity.effect.EntityLightningBolt", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "TileEntitySign": { "fqn": "net.minecraft.tileentity.TileEntitySign", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "BlockSnapshot": { "fqn": "net.minecraftforge.common.util.BlockSnapshot", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "StatBase": { "fqn": "net.minecraft.stats.StatBase", "category": "SUPPRESS", "imports": 1, "reason": "forge-internal" }, + "IPlantable": { "fqn": "net.minecraftforge.common.IPlantable", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "IScoreObjectiveCriteria": { "fqn": "net.minecraft.scoreboard.IScoreObjectiveCriteria", "category": "SUPPRESS", "imports": 1, "reason": "scoreboard-internal" }, + "NBTTagByteArray": { "fqn": "net.minecraft.nbt.NBTTagByteArray", "category": "SUPPRESS", "imports": 1, "reason": "nbt-subtype" }, + "NBTTagLong": { "fqn": "net.minecraft.nbt.NBTTagLong", "category": "SUPPRESS", "imports": 1, "reason": "nbt-subtype" }, + "NBTTagShort": { "fqn": "net.minecraft.nbt.NBTTagShort", "category": "SUPPRESS", "imports": 1, "reason": "nbt-subtype" }, + "IWorldAccess": { "fqn": "net.minecraft.world.IWorldAccess", "category": "SUPPRESS", "imports": 1, "reason": "world-internal" }, + "GuiInventory": { "fqn": "net.minecraft.client.gui.inventory.GuiInventory", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "C0DPacketCloseWindow": { "fqn": "net.minecraft.network.play.client.C0DPacketCloseWindow", "category": "SUPPRESS", "imports": 1, "reason": "networking" }, + "PathFinder": { "fqn": "net.minecraft.pathfinding.PathFinder", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "MapColor": { "fqn": "net.minecraft.block.material.MapColor", "category": "SUPPRESS", "imports": 1, "reason": "block-internal" }, + "RenderGlobal": { "fqn": "net.minecraft.client.renderer.RenderGlobal", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "IRecipe": { "fqn": "net.minecraft.item.crafting.IRecipe", "category": "SUPPRESS", "imports": 1, "reason": "recipe-system" }, + "GuiSlot": { "fqn": "net.minecraft.client.gui.GuiSlot", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "RenderLiving": { "fqn": "net.minecraft.client.renderer.entity.RenderLiving", "category": "SUPPRESS", "imports": 1, "reason": "client" }, + "ShapedRecipes": { "fqn": "net.minecraft.item.crafting.ShapedRecipes", "category": "SUPPRESS", "imports": 1, "reason": "recipe-system" }, + "DataWatcher": { "fqn": "net.minecraft.entity.DataWatcher", "category": "SUPPRESS", "imports": 1, "reason": "entity-hierarchy" }, + "EntityAITasks": { "fqn": "net.minecraft.entity.ai.EntityAITasks", "category": "SUPPRESS", "imports": 1, "reason": "entity-ai" }, + "EventBus": { "fqn": "cpw.mods.fml.common.eventhandler.EventBus", "category": "SUPPRESS", "imports": 1, "reason": "event-system" } + } +} diff --git a/tools/migration/mc_usage_index.json b/tools/migration/mc_usage_index.json new file mode 100644 index 000000000..d14e950d3 --- /dev/null +++ b/tools/migration/mc_usage_index.json @@ -0,0 +1,75784 @@ +{ + "meta": { + "scanDir": "mc1710\\src\\main\\java", + "projectRoot": "X:\\projects\\CustomNPC-Plus", + "generatedBy": "scan_codebase.py (tree-sitter)", + "timestamp": "2026-03-15T20:25:22" + }, + "summary": { + "totalFiles": 1722, + "filesWithMcDeps": 1453, + "totalMcImports": 6723, + "uniqueMcTypes": 400, + "parseErrors": 0, + "abstractionCoverage": { + "abstracted": 11, + "notAbstracted": 389, + "total": 400, + "percentage": "2.8%" + }, + "topTypes": [ + { + "fqn": "net.minecraft.nbt.NBTTagCompound", + "shortName": "NBTTagCompound", + "importCount": 593, + "pa": "INbt", + "methodCallCount": 4447, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 623 + }, + { + "fqn": "net.minecraft.entity.player.EntityPlayer", + "shortName": "EntityPlayer", + "importCount": 551, + "pa": "IPlayer", + "methodCallCount": 337, + "staticCallCount": 0, + "fieldAccessCount": 326, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "cpw.mods.fml.relauncher.Side", + "shortName": "Side", + "importCount": 405, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "cpw.mods.fml.relauncher.SideOnly", + "shortName": "SideOnly", + "importCount": 395, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.entity.player.EntityPlayerMP", + "shortName": "EntityPlayerMP", + "importCount": 304, + "pa": "IPlayer", + "methodCallCount": 60, + "staticCallCount": 0, + "fieldAccessCount": 73, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.entity.Entity", + "shortName": "Entity", + "importCount": 262, + "pa": "IEntity", + "methodCallCount": 88, + "staticCallCount": 0, + "fieldAccessCount": 270, + "extendsCount": 3, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.item.ItemStack", + "shortName": "ItemStack", + "importCount": 228, + "pa": "IItemStack", + "methodCallCount": 679, + "staticCallCount": 28, + "fieldAccessCount": 272, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 335 + }, + { + "fqn": "net.minecraft.client.gui.GuiButton", + "shortName": "GuiButton", + "importCount": 218, + "pa": null, + "methodCallCount": 2, + "staticCallCount": 0, + "fieldAccessCount": 427, + "extendsCount": 6, + "implementsCount": 0, + "constructorCount": 20 + }, + { + "fqn": "net.minecraft.entity.EntityLivingBase", + "shortName": "EntityLivingBase", + "importCount": 201, + "pa": "IEntityLivingBase", + "methodCallCount": 233, + "staticCallCount": 0, + "fieldAccessCount": 1113, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.Minecraft", + "shortName": "Minecraft", + "importCount": 180, + "pa": null, + "methodCallCount": 121, + "staticCallCount": 420, + "fieldAccessCount": 255, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.world.World", + "shortName": "World", + "importCount": 172, + "pa": "IWorld", + "methodCallCount": 319, + "staticCallCount": 2, + "fieldAccessCount": 72, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.util.ResourceLocation", + "shortName": "ResourceLocation", + "importCount": 145, + "pa": null, + "methodCallCount": 30, + "staticCallCount": 0, + "fieldAccessCount": 1, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 299 + }, + { + "fqn": "net.minecraft.client.model.ModelRenderer", + "shortName": "ModelRenderer", + "importCount": 122, + "pa": null, + "methodCallCount": 2015, + "staticCallCount": 0, + "fieldAccessCount": 1014, + "extendsCount": 20, + "implementsCount": 0, + "constructorCount": 757 + }, + { + "fqn": "net.minecraft.nbt.NBTTagList", + "shortName": "NBTTagList", + "importCount": 111, + "pa": "INbtList", + "methodCallCount": 616, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 161 + }, + { + "fqn": "net.minecraft.util.StatCollector", + "shortName": "StatCollector", + "importCount": 106, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 489, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.model.ModelBase", + "shortName": "ModelBase", + "importCount": 102, + "pa": null, + "methodCallCount": 23, + "staticCallCount": 0, + "fieldAccessCount": 5, + "extendsCount": 82, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.util.MathHelper", + "shortName": "MathHelper", + "importCount": 98, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 471, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.block.Block", + "shortName": "Block", + "importCount": 84, + "pa": null, + "methodCallCount": 78, + "staticCallCount": 21, + "fieldAccessCount": 0, + "extendsCount": 2, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.tileentity.TileEntity", + "shortName": "TileEntity", + "importCount": 78, + "pa": null, + "methodCallCount": 63, + "staticCallCount": 0, + "fieldAccessCount": 51, + "extendsCount": 8, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.item.Item", + "shortName": "Item", + "importCount": 72, + "pa": null, + "methodCallCount": 1, + "staticCallCount": 50, + "fieldAccessCount": 0, + "extendsCount": 12, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.gui.GuiScreen", + "shortName": "GuiScreen", + "importCount": 70, + "pa": null, + "methodCallCount": 3, + "staticCallCount": 16, + "fieldAccessCount": 0, + "extendsCount": 9, + "implementsCount": 0, + "constructorCount": 1 + }, + { + "fqn": "net.minecraft.util.AxisAlignedBB", + "shortName": "AxisAlignedBB", + "importCount": 59, + "pa": null, + "methodCallCount": 10, + "staticCallCount": 58, + "fieldAccessCount": 28, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.command.ICommandSender", + "shortName": "ICommandSender", + "importCount": 47, + "pa": null, + "methodCallCount": 53, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 1, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.init.Blocks", + "shortName": "Blocks", + "importCount": 47, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.renderer.Tessellator", + "shortName": "Tessellator", + "importCount": 46, + "pa": null, + "methodCallCount": 875, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.util.Vec3", + "shortName": "Vec3", + "importCount": 43, + "pa": null, + "methodCallCount": 19, + "staticCallCount": 87, + "fieldAccessCount": 467, + "extendsCount": 1, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.inventory.Slot", + "shortName": "Slot", + "importCount": 42, + "pa": null, + "methodCallCount": 75, + "staticCallCount": 0, + "fieldAccessCount": 33, + "extendsCount": 10, + "implementsCount": 0, + "constructorCount": 69 + }, + { + "fqn": "net.minecraft.client.renderer.RenderHelper", + "shortName": "RenderHelper", + "importCount": 40, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 88, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.renderer.OpenGlHelper", + "shortName": "OpenGlHelper", + "importCount": 39, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 79, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.renderer.texture.TextureManager", + "shortName": "TextureManager", + "importCount": 38, + "pa": null, + "methodCallCount": 136, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.gui.FontRenderer", + "shortName": "FontRenderer", + "importCount": 38, + "pa": null, + "methodCallCount": 159, + "staticCallCount": 0, + "fieldAccessCount": 39, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.util.DamageSource", + "shortName": "DamageSource", + "importCount": 36, + "pa": "IDamageSource", + "methodCallCount": 24, + "staticCallCount": 12, + "fieldAccessCount": 4, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.renderer.RenderBlocks", + "shortName": "RenderBlocks", + "importCount": 35, + "pa": null, + "methodCallCount": 26, + "staticCallCount": 7, + "fieldAccessCount": 4, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 2 + }, + { + "fqn": "net.minecraft.nbt.NBTTagString", + "shortName": "NBTTagString", + "importCount": 35, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 51 + }, + { + "fqn": "net.minecraft.util.IIcon", + "shortName": "IIcon", + "importCount": 35, + "pa": null, + "methodCallCount": 26, + "staticCallCount": 0, + "fieldAccessCount": 1, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.renderer.entity.RenderManager", + "shortName": "RenderManager", + "importCount": 33, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 2, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.model.ModelBox", + "shortName": "ModelBox", + "importCount": 32, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 1, + "implementsCount": 0, + "constructorCount": 305 + }, + { + "fqn": "net.minecraft.command.CommandException", + "shortName": "CommandException", + "importCount": 31, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 13 + }, + { + "fqn": "net.minecraft.inventory.IInventory", + "shortName": "IInventory", + "importCount": 30, + "pa": null, + "methodCallCount": 42, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 7, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.world.IBlockAccess", + "shortName": "IBlockAccess", + "importCount": 30, + "pa": null, + "methodCallCount": 32, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.init.Items", + "shortName": "Items", + "importCount": 29, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "cpw.mods.fml.client.registry.RenderingRegistry", + "shortName": "RenderingRegistry", + "importCount": 28, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 71, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.entity.ai.EntityAIBase", + "shortName": "EntityAIBase", + "importCount": 27, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 26, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.server.MinecraftServer", + "shortName": "MinecraftServer", + "importCount": 26, + "pa": null, + "methodCallCount": 8, + "staticCallCount": 60, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.client.gui.ScaledResolution", + "shortName": "ScaledResolution", + "importCount": 26, + "pa": null, + "methodCallCount": 77, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 41 + }, + { + "fqn": "net.minecraft.client.renderer.texture.IIconRegister", + "shortName": "IIconRegister", + "importCount": 26, + "pa": null, + "methodCallCount": 8, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.entity.EntityList", + "shortName": "EntityList", + "importCount": 25, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 27, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "cpw.mods.fml.common.FMLCommonHandler", + "shortName": "FMLCommonHandler", + "importCount": 25, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 44, + "fieldAccessCount": 0, + "extendsCount": 0, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.inventory.Container", + "shortName": "Container", + "importCount": 25, + "pa": null, + "methodCallCount": 10, + "staticCallCount": 10, + "fieldAccessCount": 0, + "extendsCount": 14, + "implementsCount": 0, + "constructorCount": 0 + }, + { + "fqn": "net.minecraft.creativetab.CreativeTabs", + "shortName": "CreativeTabs", + "importCount": 25, + "pa": null, + "methodCallCount": 0, + "staticCallCount": 0, + "fieldAccessCount": 0, + "extendsCount": 1, + "implementsCount": 0, + "constructorCount": 0 + } + ], + "topFiles": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "mcImports": 59 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "mcImports": 39 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "mcImports": 38 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "mcImports": 30 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "mcImports": 30 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "mcImports": 28 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "mcImports": 26 + }, + { + "file": "noppes/npcs/CustomNpcs.java", + "mcImports": 25 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "mcImports": 22 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "mcImports": 21 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "mcImports": 20 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "mcImports": 20 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "mcImports": 20 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "mcImports": 20 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "mcImports": 20 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "mcImports": 20 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "mcImports": 19 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "mcImports": 19 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "mcImports": 19 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "mcImports": 19 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "mcImports": 19 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "mcImports": 18 + }, + { + "file": "noppes/npcs/NPCSpawning.java", + "mcImports": 18 + }, + { + "file": "noppes/npcs/ScriptItemEventHandler.java", + "mcImports": 18 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "mcImports": 18 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCPony.java", + "mcImports": 18 + }, + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "mcImports": 18 + }, + { + "file": "foxz/command/CmdNoppes.java", + "mcImports": 17 + }, + { + "file": "noppes/npcs/CustomItems.java", + "mcImports": 17 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "mcImports": 17 + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "mcImports": 17 + }, + { + "file": "noppes/npcs/items/ItemTeleporter.java", + "mcImports": 17 + }, + { + "file": "kamkeel/npcs/command/SlayCommand.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/blocks/BlockCarpentryBench.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/blocks/BlockMailbox.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/blocks/BlockScripted.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "mcImports": 16 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "mcImports": 16 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "mcImports": 15 + }, + { + "file": "noppes/npcs/EventHooks.java", + "mcImports": 15 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "mcImports": 15 + }, + { + "file": "noppes/npcs/blocks/BlockBigSign.java", + "mcImports": 15 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "mcImports": 15 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "mcImports": 15 + } + ], + "byPackage": { + "net.minecraft.entity.player": { + "types": 3, + "typeNames": [ + "EntityPlayer", + "EntityPlayerMP", + "InventoryPlayer" + ], + "totalImports": 858 + }, + "net.minecraft.nbt": { + "types": 15, + "typeNames": [ + "CompressedStreamTools", + "NBTBase", + "NBTSizeTracker", + "NBTTagByte", + "NBTTagByteArray", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagFloat", + "NBTTagInt", + "NBTTagIntArray", + "NBTTagList", + "NBTTagLong", + "NBTTagShort", + "NBTTagString", + "NBTUtil" + ], + "totalImports": 812 + }, + "cpw.mods.fml.relauncher": { + "types": 4, + "typeNames": [ + "FMLLaunchHandler", + "ReflectionHelper", + "Side", + "SideOnly" + ], + "totalImports": 802 + }, + "net.minecraft.util": { + "types": 23, + "typeNames": [ + "AxisAlignedBB", + "ChatAllowedCharacters", + "ChatComponentText", + "ChatComponentTranslation", + "ChatStyle", + "ChunkCoordinates", + "DamageSource", + "EntityDamageSource", + "EntityDamageSourceIndirect", + "EnumChatFormatting", + "EnumFacing", + "IChatComponent", + "IIcon", + "MathHelper", + "MovingObjectPosition", + "ReportedException", + "ResourceLocation", + "StatCollector", + "StringUtils", + "Util", + "Vec3", + "Vec3i", + "WeightedRandom" + ], + "totalImports": 636 + }, + "net.minecraft.entity": { + "types": 14, + "typeNames": [ + "DataWatcher", + "Entity", + "EntityCreature", + "EntityList", + "EntityLiving", + "EntityLivingBase", + "EntityTrackerEntry", + "EnumCreatureAttribute", + "EnumCreatureType", + "IMerchant", + "INpc", + "IRangedAttackMob", + "NPCEntityHelper", + "SharedMonsterAttributes" + ], + "totalImports": 538 + }, + "net.minecraft.client.gui": { + "types": 10, + "typeNames": [ + "FontRenderer", + "Gui", + "GuiButton", + "GuiConfirmOpenLink", + "GuiScreen", + "GuiSlot", + "GuiTextField", + "GuiYesNo", + "GuiYesNoCallback", + "ScaledResolution" + ], + "totalImports": 422 + }, + "net.minecraft.item": { + "types": 13, + "typeNames": [ + "EnumAction", + "Item", + "ItemArmor", + "ItemBlock", + "ItemBow", + "ItemColored", + "ItemEditableBook", + "ItemFlintAndSteel", + "ItemFood", + "ItemPotion", + "ItemStack", + "ItemSword", + "ItemWritableBook" + ], + "totalImports": 362 + }, + "net.minecraft.client.model": { + "types": 7, + "typeNames": [ + "ModelBase", + "ModelBiped", + "ModelBook", + "ModelBox", + "ModelRenderer", + "PositionTextureVertex", + "TexturedQuad" + ], + "totalImports": 275 + }, + "net.minecraft.world": { + "types": 13, + "typeNames": [ + "ChunkCache", + "ChunkCoordIntPair", + "ChunkPosition", + "EnumDifficulty", + "EnumSkyBlock", + "Explosion", + "IBlockAccess", + "IWorldAccess", + "Teleporter", + "World", + "WorldProvider", + "WorldServer", + "WorldSettings" + ], + "totalImports": 235 + }, + "net.minecraft.client": { + "types": 1, + "typeNames": [ + "Minecraft" + ], + "totalImports": 180 + }, + "net.minecraft.client.renderer": { + "types": 11, + "typeNames": [ + "ActiveRenderInfo", + "EntityRenderer", + "GLAllocation", + "IImageBuffer", + "ImageBufferDownload", + "ItemRenderer", + "OpenGlHelper", + "RenderBlocks", + "RenderGlobal", + "RenderHelper", + "Tessellator" + ], + "totalImports": 180 + }, + "net.minecraft.block": { + "types": 14, + "typeNames": [ + "Block", + "BlockAir", + "BlockBreakable", + "BlockColored", + "BlockContainer", + "BlockDispenser", + "BlockDoor", + "BlockFence", + "BlockFenceGate", + "BlockIce", + "BlockLeavesBase", + "BlockRailBase", + "BlockVine", + "BlockWall" + ], + "totalImports": 122 + }, + "net.minecraft.inventory": { + "types": 9, + "typeNames": [ + "Container", + "ContainerPlayer", + "ICrafting", + "IInventory", + "InventoryBasic", + "InventoryCraftResult", + "InventoryCrafting", + "Slot", + "SlotCrafting" + ], + "totalImports": 116 + }, + "net.minecraft.command": { + "types": 7, + "typeNames": [ + "CommandBase", + "CommandException", + "CommandHandler", + "ICommandSender", + "IEntitySelector", + "PlayerNotFoundException", + "PlayerSelector" + ], + "totalImports": 102 + }, + "net.minecraft.tileentity": { + "types": 5, + "typeNames": [ + "MobSpawnerBaseLogic", + "TileEntity", + "TileEntityCommandBlock", + "TileEntityMobSpawner", + "TileEntitySign" + ], + "totalImports": 82 + }, + "net.minecraft.init": { + "types": 2, + "typeNames": [ + "Blocks", + "Items" + ], + "totalImports": 76 + }, + "net.minecraft.client.renderer.texture": { + "types": 7, + "typeNames": [ + "IIconRegister", + "ITextureObject", + "ITickable", + "SimpleTexture", + "TextureManager", + "TextureMap", + "TextureUtil" + ], + "totalImports": 75 + }, + "net.minecraft.client.renderer.entity": { + "types": 8, + "typeNames": [ + "NPCRendererHelper", + "Render", + "RenderBiped", + "RenderItem", + "RenderLiving", + "RenderManager", + "RenderPlayer", + "RendererLivingEntity" + ], + "totalImports": 67 + }, + "cpw.mods.fml.common": { + "types": 8, + "typeNames": [ + "FMLCommonHandler", + "FMLLog", + "Loader", + "LoaderState", + "Mod", + "ModContainer", + "ObfuscationReflectionHelper", + "SidedProxy" + ], + "totalImports": 59 + }, + "cpw.mods.fml.common.eventhandler": { + "types": 5, + "typeNames": [ + "Cancelable", + "Event", + "EventBus", + "EventPriority", + "SubscribeEvent" + ], + "totalImports": 55 + }, + "net.minecraft.client.resources": { + "types": 14, + "typeNames": [ + "AbstractResourcePack", + "DefaultResourcePack", + "FallbackResourceManager", + "FolderResourcePack", + "I18n", + "IReloadableResourceManager", + "IResource", + "IResourceManager", + "IResourceManagerReloadListener", + "IResourcePack", + "NPCResourceHelper", + "ResourcePackRepository", + "SimpleReloadableResourceManager", + "SkinManager" + ], + "totalImports": 43 + }, + "net.minecraft.entity.ai": { + "types": 11, + "typeNames": [ + "EntityAIAttackOnCollide", + "EntityAIBase", + "EntityAIDoorInteract", + "EntityAIHurtByTarget", + "EntityAINearestAttackableTarget", + "EntityAIOpenDoor", + "EntityAIRestrictSun", + "EntityAISwimming", + "EntityAITarget", + "EntityAITasks", + "EntityMoveHelper" + ], + "totalImports": 41 + }, + "cpw.mods.fml.client.registry": { + "types": 3, + "typeNames": [ + "ClientRegistry", + "ISimpleBlockRenderingHandler", + "RenderingRegistry" + ], + "totalImports": 36 + }, + "net.minecraft.entity.passive": { + "types": 7, + "typeNames": [ + "EntityAnimal", + "EntityBat", + "EntityChicken", + "EntityHorse", + "EntitySheep", + "EntityTameable", + "EntityVillager" + ], + "totalImports": 29 + }, + "net.minecraft.server": { + "types": 1, + "typeNames": [ + "MinecraftServer" + ], + "totalImports": 26 + }, + "net.minecraftforge.event.entity.player": { + "types": 18, + "typeNames": [ + "AchievementEvent", + "AnvilRepairEvent", + "ArrowLooseEvent", + "ArrowNockEvent", + "BonemealEvent", + "EntityInteractEvent", + "FillBucketEvent", + "ItemTooltipEvent", + "PlayerDestroyItemEvent", + "PlayerDropsEvent", + "PlayerEvent", + "PlayerInteractEvent", + "PlayerOpenContainerEvent", + "PlayerPickupXpEvent", + "PlayerSleepInBedEvent", + "PlayerUseItemEvent", + "PlayerWakeUpEvent", + "UseHoeEvent" + ], + "totalImports": 26 + }, + "net.minecraft.creativetab": { + "types": 1, + "typeNames": [ + "CreativeTabs" + ], + "totalImports": 25 + }, + "net.minecraft.block.material": { + "types": 2, + "typeNames": [ + "MapColor", + "Material" + ], + "totalImports": 25 + }, + "cpw.mods.fml.common.registry": { + "types": 3, + "typeNames": [ + "EntityRegistry", + "GameRegistry", + "IEntityAdditionalSpawnData" + ], + "totalImports": 23 + }, + "net.minecraft.entity.item": { + "types": 3, + "typeNames": [ + "EntityEnderPearl", + "EntityItem", + "EntityXPOrb" + ], + "totalImports": 21 + }, + "net.minecraftforge.common": { + "types": 7, + "typeNames": [ + "BiomeDictionary", + "DimensionManager", + "ForgeChunkManager", + "ForgeHooks", + "IExtendedEntityProperties", + "IPlantable", + "MinecraftForge" + ], + "totalImports": 20 + }, + "net.minecraftforge.common.util": { + "types": 5, + "typeNames": [ + "BlockSnapshot", + "Constants", + "EnumHelper", + "FakePlayer", + "ForgeDirection" + ], + "totalImports": 19 + }, + "net.minecraftforge.client": { + "types": 4, + "typeNames": [ + "ClientCommandHandler", + "ForgeHooksClient", + "IItemRenderer", + "MinecraftForgeClient" + ], + "totalImports": 18 + }, + "net.minecraft.entity.monster": { + "types": 7, + "typeNames": [ + "EntityCreeper", + "EntityEnderman", + "EntityGhast", + "EntityMob", + "EntitySkeleton", + "EntityZombie", + "IMob" + ], + "totalImports": 17 + }, + "net.minecraftforge.common.config": { + "types": 2, + "typeNames": [ + "Configuration", + "Property" + ], + "totalImports": 16 + }, + "net.minecraft.network": { + "types": 4, + "typeNames": [ + "NetHandlerPlayServer", + "NetworkManager", + "Packet", + "PacketBuffer" + ], + "totalImports": 16 + }, + "net.minecraft.potion": { + "types": 3, + "typeNames": [ + "Potion", + "PotionEffect", + "PotionHelper" + ], + "totalImports": 14 + }, + "net.minecraftforge.client.event": { + "types": 8, + "typeNames": [ + "GuiOpenEvent", + "GuiScreenEvent", + "MouseEvent", + "RenderGameOverlayEvent", + "RenderHandEvent", + "RenderLivingEvent", + "RenderPlayerEvent", + "RenderWorldLastEvent" + ], + "totalImports": 14 + }, + "net.minecraft.client.entity": { + "types": 3, + "typeNames": [ + "AbstractClientPlayer", + "EntityClientPlayerMP", + "EntityPlayerSP" + ], + "totalImports": 12 + }, + "net.minecraft.network.play.server": { + "types": 6, + "typeNames": [ + "S04PacketEntityEquipment", + "S0BPacketAnimation", + "S12PacketEntityVelocity", + "S27PacketExplosion", + "S2FPacketSetSlot", + "S35PacketUpdateTileEntity" + ], + "totalImports": 12 + }, + "net.minecraft.pathfinding": { + "types": 4, + "typeNames": [ + "PathEntity", + "PathFinder", + "PathNavigate", + "PathPoint" + ], + "totalImports": 12 + }, + "net.minecraftforge.event.world": { + "types": 5, + "typeNames": [ + "BlockEvent", + "ChunkDataEvent", + "ChunkEvent", + "ChunkWatchEvent", + "WorldEvent" + ], + "totalImports": 12 + }, + "net.minecraft.util.math": { + "types": 2, + "typeNames": [ + "BlockPos", + "IntHashMap" + ], + "totalImports": 11 + }, + "cpw.mods.fml.common.gameevent": { + "types": 3, + "typeNames": [ + "InputEvent", + "PlayerEvent", + "TickEvent" + ], + "totalImports": 11 + }, + "net.minecraft.entity.projectile": { + "types": 3, + "typeNames": [ + "EntityArrow", + "EntityFishHook", + "EntityThrowable" + ], + "totalImports": 11 + }, + "net.minecraft.client.audio": { + "types": 6, + "typeNames": [ + "ISound", + "ITickableSound", + "MovingSound", + "PositionedSoundRecord", + "SoundHandler", + "SoundRegistry" + ], + "totalImports": 11 + }, + "net.minecraftforge.event.entity.living": { + "types": 5, + "typeNames": [ + "LivingAttackEvent", + "LivingDeathEvent", + "LivingEvent", + "LivingFallEvent", + "LivingHurtEvent" + ], + "totalImports": 10 + }, + "net.minecraft.client.particle": { + "types": 4, + "typeNames": [ + "EntityFX", + "EntityFlameFX", + "EntityPortalFX", + "EntitySmokeFX" + ], + "totalImports": 9 + }, + "net.minecraft.scoreboard": { + "types": 5, + "typeNames": [ + "IScoreObjectiveCriteria", + "Score", + "ScoreObjective", + "ScorePlayerTeam", + "Scoreboard" + ], + "totalImports": 8 + }, + "net.minecraft.village": { + "types": 2, + "typeNames": [ + "MerchantRecipe", + "MerchantRecipeList" + ], + "totalImports": 7 + }, + "net.minecraft.stats": { + "types": 3, + "typeNames": [ + "Achievement", + "StatBase", + "StatList" + ], + "totalImports": 7 + }, + "cpw.mods.fml.common.network": { + "types": 4, + "typeNames": [ + "FMLEventChannel", + "FMLNetworkEvent", + "IGuiHandler", + "NetworkRegistry" + ], + "totalImports": 7 + }, + "net.minecraftforge.event.entity": { + "types": 4, + "typeNames": [ + "EntityEvent", + "EntityJoinWorldEvent", + "EntityStruckByLightningEvent", + "PlaySoundAtEntityEvent" + ], + "totalImports": 7 + }, + "cpw.mods.fml.common.event": { + "types": 7, + "typeNames": [ + "FMLInitializationEvent", + "FMLLoadCompleteEvent", + "FMLPreInitializationEvent", + "FMLServerAboutToStartEvent", + "FMLServerStartedEvent", + "FMLServerStartingEvent", + "FMLServerStoppedEvent" + ], + "totalImports": 7 + }, + "cpw.mods.fml.common.network.internal": { + "types": 2, + "typeNames": [ + "FMLMessage", + "FMLProxyPacket" + ], + "totalImports": 6 + }, + "net.minecraft.entity.boss": { + "types": 3, + "typeNames": [ + "BossStatus", + "EntityDragon", + "IBossDisplayData" + ], + "totalImports": 6 + }, + "net.minecraft.client.renderer.tileentity": { + "types": 1, + "typeNames": [ + "TileEntitySpecialRenderer" + ], + "totalImports": 5 + }, + "net.minecraft.client.gui.inventory": { + "types": 2, + "typeNames": [ + "GuiContainer", + "GuiInventory" + ], + "totalImports": 5 + }, + "net.minecraft.entity.ai.attributes": { + "types": 2, + "typeNames": [ + "AttributeModifier", + "IAttributeInstance" + ], + "totalImports": 5 + }, + "net.minecraft.client.settings": { + "types": 2, + "typeNames": [ + "GameSettings", + "KeyBinding" + ], + "totalImports": 5 + }, + "net.minecraft.enchantment": { + "types": 3, + "typeNames": [ + "Enchantment", + "EnchantmentHelper", + "EnumEnchantmentType" + ], + "totalImports": 5 + }, + "net.minecraft.item.crafting": { + "types": 3, + "typeNames": [ + "CraftingManager", + "IRecipe", + "ShapedRecipes" + ], + "totalImports": 4 + }, + "net.minecraftforge.common.ForgeChunkManager": { + "types": 3, + "typeNames": [ + "LoadingCallback", + "Ticket", + "Type" + ], + "totalImports": 4 + }, + "net.minecraft.item.ItemArmor": { + "types": 1, + "typeNames": [ + "ArmorMaterial" + ], + "totalImports": 3 + }, + "net.minecraft.world.biome": { + "types": 1, + "typeNames": [ + "BiomeGenBase" + ], + "totalImports": 3 + }, + "net.minecraftforge.client.IItemRenderer": { + "types": 2, + "typeNames": [ + "ItemRenderType", + "ItemRendererHelper" + ], + "totalImports": 3 + }, + "net.minecraftforge.oredict": { + "types": 1, + "typeNames": [ + "OreDictionary" + ], + "totalImports": 2 + }, + "net.minecraft.world.chunk": { + "types": 1, + "typeNames": [ + "Chunk" + ], + "totalImports": 2 + }, + "net.minecraftforge.event.entity.item": { + "types": 1, + "typeNames": [ + "ItemTossEvent" + ], + "totalImports": 2 + }, + "cpw.mods.fml.common.gameevent.TickEvent": { + "types": 1, + "typeNames": [ + "Phase" + ], + "totalImports": 2 + }, + "net.minecraft.nbt.NBTBase": { + "types": 1, + "typeNames": [ + "NBTPrimitive" + ], + "totalImports": 2 + }, + "net.minecraft.dispenser": { + "types": 2, + "typeNames": [ + "BehaviorDefaultDispenseItem", + "IBlockSource" + ], + "totalImports": 2 + }, + "net.minecraftforge.event": { + "types": 2, + "typeNames": [ + "ForgeEventFactory", + "ServerChatEvent" + ], + "totalImports": 2 + }, + "net.minecraft.network.play.client": { + "types": 2, + "typeNames": [ + "C0DPacketCloseWindow", + "C17PacketCustomPayload" + ], + "totalImports": 2 + }, + "net.minecraft.client.gui.achievement": { + "types": 1, + "typeNames": [ + "GuiAchievement" + ], + "totalImports": 1 + }, + "net.minecraft.item.Item": { + "types": 1, + "typeNames": [ + "ToolMaterial" + ], + "totalImports": 1 + }, + "cpw.mods.fml.common.Mod": { + "types": 1, + "typeNames": [ + "EventHandler" + ], + "totalImports": 1 + }, + "net.minecraft.command.server": { + "types": 1, + "typeNames": [ + "CommandBlockLogic" + ], + "totalImports": 1 + }, + "cpw.mods.fml.common.eventhandler.Event": { + "types": 1, + "typeNames": [ + "Result" + ], + "totalImports": 1 + }, + "net.minecraftforge.event.entity.player.PlayerInteractEvent": { + "types": 1, + "typeNames": [ + "Action" + ], + "totalImports": 1 + }, + "net.minecraftforge.event.terraingen": { + "types": 1, + "typeNames": [ + "PopulateChunkEvent" + ], + "totalImports": 1 + }, + "net.minecraft.event": { + "types": 1, + "typeNames": [ + "ClickEvent" + ], + "totalImports": 1 + }, + "net.minecraft.event.ClickEvent": { + "types": 1, + "typeNames": [ + "Action" + ], + "totalImports": 1 + }, + "net.minecraftforge.event.entity.EntityEvent": { + "types": 1, + "typeNames": [ + "EntityConstructing" + ], + "totalImports": 1 + }, + "net.minecraft.client.shader": { + "types": 1, + "typeNames": [ + "ShaderGroup" + ], + "totalImports": 1 + }, + "net.minecraft.entity.ai.EntityAITasks": { + "types": 1, + "typeNames": [ + "EntityAITaskEntry" + ], + "totalImports": 1 + }, + "net.minecraft.util.MovingObjectPosition": { + "types": 1, + "typeNames": [ + "MovingObjectType" + ], + "totalImports": 1 + }, + "net.minecraftforge.common.BiomeDictionary": { + "types": 1, + "typeNames": [ + "Type" + ], + "totalImports": 1 + }, + "net.minecraft.entity.effect": { + "types": 1, + "typeNames": [ + "EntityLightningBolt" + ], + "totalImports": 1 + }, + "cpw.mods.fml.client": { + "types": 1, + "typeNames": [ + "FMLClientHandler" + ], + "totalImports": 1 + } + } + }, + "types": { + "net.minecraft.nbt.NBTTagCompound": { + "shortName": "NBTTagCompound", + "package": "net.minecraft.nbt", + "importCount": 593, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/utils/Market.java", + "kamkeel/npcs/addon/DBCAddon.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/controllers/EnergyController.java", + "kamkeel/npcs/controllers/ProfileController.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/IAbilityAction.java", + "kamkeel/npcs/controllers/data/ability/data/ProjectileData.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "kamkeel/npcs/controllers/data/ability/data/effect/IEffectAction.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergy.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/controllers/data/attribute/requirement/IRequirementChecker.java", + "kamkeel/npcs/controllers/data/attribute/requirement/RequirementCheckerRegistry.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/ProfileSlotRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestActiveRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestCompletedRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/SoulbindRequirement.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/controllers/data/energy/IEnergyExtender.java", + "kamkeel/npcs/controllers/data/energycharge/EnergyChargeTracker.java", + "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "kamkeel/npcs/controllers/data/profile/IProfileData.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityOrb.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/data/ClonerPacket.java", + "kamkeel/npcs/network/packets/data/LoginPacket.java", + "kamkeel/npcs/network/packets/data/MarkDataPacket.java", + "kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java", + "kamkeel/npcs/network/packets/data/PlayerDataInfoPacket.java", + "kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java", + "kamkeel/npcs/network/packets/data/ProfileSharedQuestPacket.java", + "kamkeel/npcs/network/packets/data/QuestCompletionPacket.java", + "kamkeel/npcs/network/packets/data/SoundManagementPacket.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityHotbarSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilitySyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "kamkeel/npcs/network/packets/data/large/SyncEffectPacket.java", + "kamkeel/npcs/network/packets/data/large/SyncPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphSpawnPacket.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "kamkeel/npcs/network/packets/player/GetNPCRole.java", + "kamkeel/npcs/network/packets/player/GetTraderData.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSavePacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiButtonPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiClosePacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiUnfocusedPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomScrollClickPacket.java", + "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "kamkeel/npcs/network/packets/request/clone/MobSpawnerPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectRemovePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectSavePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedMarkDataPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAISavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplaySavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsSavePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/ModelDataSavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartySavePacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathSavePacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataSaveInfoPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleSavePacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportSavePacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "kamkeel/npcs/util/ByteBufUtils.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/ICompatibilty.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/QuestLogData.java", + "noppes/npcs/Resistances.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/Server.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBook.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileColorable.java", + "noppes/npcs/blocks/tiles/TileCouchWood.java", + "noppes/npcs/blocks/tiles/TileCouchWool.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TilePedestal.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/client/ClientCacheHandler.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/ScriptClientConfig.java", + "noppes/npcs/client/controllers/ClientCloneController.java", + "noppes/npcs/client/controllers/Preset.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/gui/GuiBorderBlock.java", + "noppes/npcs/client/gui/GuiNPCLinesEdit.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/GuiNpcPather.java", + "noppes/npcs/client/gui/GuiNpcRedstoneBlock.java", + "noppes/npcs/client/gui/GuiNpcWaypoint.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/SubGuiMagic.java", + "noppes/npcs/client/gui/SubGuiMagicCycle.java", + "noppes/npcs/client/gui/SubGuiMailmanSendSetup.java", + "noppes/npcs/client/gui/SubGuiNpcAvailability.java", + "noppes/npcs/client/gui/SubGuiNpcAvailabilityDialog.java", + "noppes/npcs/client/gui/SubGuiNpcAvailabilityQuest.java", + "noppes/npcs/client/gui/SubGuiNpcDialog.java", + "noppes/npcs/client/gui/SubGuiNpcDialogOption.java", + "noppes/npcs/client/gui/SubGuiNpcQuest.java", + "noppes/npcs/client/gui/SubGuiPlayerData.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCDialogNpcOptions.java", + "noppes/npcs/client/gui/advanced/GuiNPCFactionSetup.java", + "noppes/npcs/client/gui/advanced/GuiNPCLinesMenu.java", + "noppes/npcs/client/gui/advanced/GuiNPCMagic.java", + "noppes/npcs/client/gui/advanced/GuiNPCNightSetup.java", + "noppes/npcs/client/gui/advanced/GuiNPCSoundsMenu.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityConfig.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityLoad.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "noppes/npcs/client/gui/custom/interfaces/IDataHolder.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/global/GuiNPCManageBanks.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/global/GuiNpcManageRecipes.java", + "noppes/npcs/client/gui/global/GuiNPCManageTags.java", + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/HudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/item/GuiNpcMagicBook.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcAdvanced.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcAI.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcStats.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeDialog.java", + "noppes/npcs/client/gui/roles/GuiNpcBankSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcCompanion.java", + "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcMount.java", + "noppes/npcs/client/gui/roles/GuiNpcSpawner.java", + "noppes/npcs/client/gui/roles/GuiNpcTraderSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcTransporter.java", + "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/IGuiClose.java", + "noppes/npcs/client/gui/util/IGuiData.java", + "noppes/npcs/client/gui/util/IGuiError.java", + "noppes/npcs/client/gui/util/IPartyData.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/client/key/KeyPresetManager.java", + "noppes/npcs/client/util/Color.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionConfigSync.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/GlobalDataController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/LinkedNpcController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/MarketRegistry.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ProfileConfigSync.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ScriptConfigSync.java", + "noppes/npcs/controllers/ScriptContainer.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/ScriptEntityData.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/ServerTagMapController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/AbilityScript.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/BuiltInAnimation.java", + "noppes/npcs/controllers/data/ChainedAbilityScript.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/DialogOption.java", + "noppes/npcs/controllers/data/EffectScript.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/controllers/data/ForgeDataScript.java", + "noppes/npcs/controllers/data/GlobalNPCDataScript.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/IScriptUnit.java", + "noppes/npcs/controllers/data/JaninoScriptHandler.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/LinkedItemScript.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "noppes/npcs/controllers/data/PlayerBankData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerItemGiverData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerMailData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/QuestData.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/RecipeScript.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityChairMount.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityNpcCrystal.java", + "noppes/npcs/entity/EntityNpcDragon.java", + "noppes/npcs/entity/EntityNPCGolem.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityNpcPony.java", + "noppes/npcs/entity/EntityNpcSlime.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/entity/data/ModelRotate.java", + "noppes/npcs/entity/data/ModelRotatePart.java", + "noppes/npcs/entity/data/ModelScale.java", + "noppes/npcs/entity/data/ModelScalePart.java", + "noppes/npcs/entity/old/EntityNPCDwarfFemale.java", + "noppes/npcs/entity/old/EntityNPCDwarfMale.java", + "noppes/npcs/entity/old/EntityNPCElfFemale.java", + "noppes/npcs/entity/old/EntityNPCElfMale.java", + "noppes/npcs/entity/old/EntityNpcEnderchibi.java", + "noppes/npcs/entity/old/EntityNPCEnderman.java", + "noppes/npcs/entity/old/EntityNPCFurryFemale.java", + "noppes/npcs/entity/old/EntityNPCFurryMale.java", + "noppes/npcs/entity/old/EntityNPCHumanFemale.java", + "noppes/npcs/entity/old/EntityNPCHumanMale.java", + "noppes/npcs/entity/old/EntityNpcMonsterFemale.java", + "noppes/npcs/entity/old/EntityNpcMonsterMale.java", + "noppes/npcs/entity/old/EntityNpcNagaFemale.java", + "noppes/npcs/entity/old/EntityNpcNagaMale.java", + "noppes/npcs/entity/old/EntityNPCOrcFemale.java", + "noppes/npcs/entity/old/EntityNPCOrcMale.java", + "noppes/npcs/entity/old/EntityNpcSkeleton.java", + "noppes/npcs/entity/old/EntityNPCVillager.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMoneyBag.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/MoneyBagContents.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/mixin/MixinItemStack.java", + "noppes/npcs/quests/QuestDialog.java", + "noppes/npcs/quests/QuestInterface.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/quests/QuestLocation.java", + "noppes/npcs/quests/QuestManual.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobChunkLoader.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobFollower.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/JobHealer.java", + "noppes/npcs/roles/JobInterface.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleAuctioneer.java", + "noppes/npcs/roles/RoleBank.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleInterface.java", + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/roles/RolePostman.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/roles/RoleTransporter.java", + "noppes/npcs/roles/companion/CompanionFarmer.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/roles/companion/CompanionGuard.java", + "noppes/npcs/roles/companion/CompanionJobInterface.java", + "noppes/npcs/roles/companion/CompanionTrader.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptPixelmonPlayerData.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/ScriptTileEntity.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/entity/ScriptEnergyAbility.java", + "noppes/npcs/scripted/entity/ScriptEnergyZone.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiLine.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTextField.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLine.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/scripted/roles/ScriptJobSpawner.java", + "noppes/npcs/util/MarketCachedObject.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java", + "noppes/npcs/wrapper/nbt/NBTWrapperIO.java" + ], + "paAbstraction": "INbt", + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "foxz/command/CmdClone.java", + "line": 53 + }, + { + "file": "foxz/utils/Market.java", + "line": 31 + }, + { + "file": "foxz/utils/Market.java", + "line": 191 + }, + { + "file": "kamkeel/npcs/command/CloneCommand.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 167 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 181 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 678 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 840 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 234 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 245 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 256 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 266 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 268 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 277 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 280 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 284 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 287 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 295 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 298 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 303 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 306 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 315 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 325 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 327 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 337 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 339 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 349 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 370 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 417 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 803 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 807 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 810 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 815 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 819 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 822 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 134 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1500 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1574 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1582 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "line": 258 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "line": 266 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "line": 275 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "line": 285 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "line": 94 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "line": 113 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "line": 127 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "line": 140 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "line": 87 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "line": 423 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "line": 457 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/effect/IEffectAction.java", + "line": 40 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "line": 15 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "line": 192 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "line": 593 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "line": 40 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/Profile.java", + "line": 88 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/Profile.java", + "line": 92 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/Profile.java", + "line": 104 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/Slot.java", + "line": 86 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/Slot.java", + "line": 90 + }, + { + "file": "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "line": 214 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityBeam.java", + "line": 857 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 890 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyAbility.java", + "line": 420 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyAbility.java", + "line": 437 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 795 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 637 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 702 + }, + { + "file": "kamkeel/npcs/network/PacketUtil.java", + "line": 219 + }, + { + "file": "kamkeel/npcs/network/PacketUtil.java", + "line": 228 + }, + { + "file": "kamkeel/npcs/network/PacketUtil.java", + "line": 230 + }, + { + "file": "kamkeel/npcs/network/PacketUtil.java", + "line": 235 + }, + { + "file": "kamkeel/npcs/network/packets/data/LoginPacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/data/LoginPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/data/PlayerDataInfoPacket.java", + "line": 89 + }, + { + "file": "kamkeel/npcs/network/packets/data/ability/AbilityHotbarSyncPacket.java", + "line": 97 + }, + { + "file": "kamkeel/npcs/network/packets/data/ability/PlayerAbilitySyncPacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 106 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 131 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 353 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 363 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 371 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 379 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 402 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 404 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 425 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 433 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 524 + }, + { + "file": "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/player/GetNPCRole.java", + "line": 45 + }, + { + "file": "kamkeel/npcs/network/packets/player/GetTraderData.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "line": 108 + }, + { + "file": "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "line": 136 + }, + { + "file": "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "line": 202 + }, + { + "file": "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "line": 74 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/MountPacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcSavePacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "line": 112 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "line": 125 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 83 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 83 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 103 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 241 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 249 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 314 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 324 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 330 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 419 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 421 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 433 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "line": 102 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "line": 106 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 88 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "line": 93 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 102 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "line": 76 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "line": 87 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "line": 74 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicNpcSavePacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "line": 93 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "line": 98 + }, + { + "file": "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "line": 125 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "line": 88 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "line": 109 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "line": 125 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "line": 105 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "line": 106 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "line": 99 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "line": 99 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "line": 102 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "line": 99 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "line": 117 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "line": 77 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "line": 95 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "line": 83 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "line": 79 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "line": 103 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "line": 105 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 153 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 156 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 158 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 160 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 196 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 199 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 201 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 238 + }, + { + "file": "kamkeel/npcs/util/AttributeItemUtil.java", + "line": 239 + }, + { + "file": "noppes/npcs/DataAbilities.java", + "line": 1124 + }, + { + "file": "noppes/npcs/DataAdvanced.java", + "line": 93 + }, + { + "file": "noppes/npcs/DataAdvanced.java", + "line": 169 + }, + { + "file": "noppes/npcs/DataDisplay.java", + "line": 109 + }, + { + "file": "noppes/npcs/DataDisplay.java", + "line": 175 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 143 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 156 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 177 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 279 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 294 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 310 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 327 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 341 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 354 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 367 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 380 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 393 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 397 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 412 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 426 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 440 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 454 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 470 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 481 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 533 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 570 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 328 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 332 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 335 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 408 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 409 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 429 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 430 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 663 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 150 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 264 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 266 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 604 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 895 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 923 + }, + { + "file": "noppes/npcs/NpcMiscInventory.java", + "line": 21 + }, + { + "file": "noppes/npcs/QuestLogData.java", + "line": 28 + }, + { + "file": "noppes/npcs/QuestLogData.java", + "line": 52 + }, + { + "file": "noppes/npcs/Resistances.java", + "line": 16 + }, + { + "file": "noppes/npcs/ScriptItemEventHandler.java", + "line": 154 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 112 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 55 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 56 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 57 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 58 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 59 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 209 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 179 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 182 + }, + { + "file": "noppes/npcs/blocks/BlockBook.java", + "line": 35 + }, + { + "file": "noppes/npcs/blocks/BlockBorder.java", + "line": 64 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 205 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 208 + }, + { + "file": "noppes/npcs/blocks/BlockLightable.java", + "line": 33 + }, + { + "file": "noppes/npcs/blocks/BlockNpcRedstone.java", + "line": 33 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 149 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 152 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 175 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 178 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 149 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 152 + }, + { + "file": "noppes/npcs/blocks/BlockWaypoint.java", + "line": 32 + }, + { + "file": "noppes/npcs/blocks/BlockWaypoint.java", + "line": 46 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBanner.java", + "line": 29 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBigSign.java", + "line": 51 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBook.java", + "line": 20 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 46 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 96 + }, + { + "file": "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "line": 48 + }, + { + "file": "noppes/npcs/blocks/tiles/TilePedestal.java", + "line": 28 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 192 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 215 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 334 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 461 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 592 + }, + { + "file": "noppes/npcs/blocks/tiles/TileSign.java", + "line": 20 + }, + { + "file": "noppes/npcs/blocks/tiles/TileVariant.java", + "line": 52 + }, + { + "file": "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/ClientCacheHandler.java", + "line": 139 + }, + { + "file": "noppes/npcs/client/controllers/Preset.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/controllers/PresetController.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/gui/GuiBorderBlock.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/gui/GuiNPCLinesEdit.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "line": 337 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 259 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 273 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 343 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "line": 555 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "line": 166 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcPather.java", + "line": 114 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcRedstoneBlock.java", + "line": 115 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcWaypoint.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/gui/GuiScript.java", + "line": 403 + }, + { + "file": "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "line": 140 + }, + { + "file": "noppes/npcs/client/gui/SubGuiMagic.java", + "line": 260 + }, + { + "file": "noppes/npcs/client/gui/SubGuiMagicCycle.java", + "line": 314 + }, + { + "file": "noppes/npcs/client/gui/SubGuiMailmanSendSetup.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/gui/SubGuiNpcDialog.java", + "line": 197 + }, + { + "file": "noppes/npcs/client/gui/SubGuiNpcQuest.java", + "line": 118 + }, + { + "file": "noppes/npcs/client/gui/SubGuiNpcQuest.java", + "line": 125 + }, + { + "file": "noppes/npcs/client/gui/SubGuiNpcQuest.java", + "line": 238 + }, + { + "file": "noppes/npcs/client/gui/SubGuiPlayerData.java", + "line": 1036 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "line": 801 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCFactionSetup.java", + "line": 97 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCLinesMenu.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCNightSetup.java", + "line": 91 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCSoundsMenu.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "line": 122 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 495 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "line": 91 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "line": 124 + }, + { + "file": "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "line": 239 + }, + { + "file": "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "line": 139 + }, + { + "file": "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageBanks.java", + "line": 95 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageBanks.java", + "line": 197 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 293 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 314 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 341 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 343 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 482 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 487 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "line": 132 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "line": 229 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "line": 400 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "line": 423 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 289 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 309 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 334 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 336 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 470 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 475 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageTags.java", + "line": 116 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageTags.java", + "line": 173 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "line": 165 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "line": 198 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "line": 271 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/gui/mainmenu/GuiNpcAdvanced.java", + "line": 187 + }, + { + "file": "noppes/npcs/client/gui/mainmenu/GuiNpcAI.java", + "line": 184 + }, + { + "file": "noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java", + "line": 212 + }, + { + "file": "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "line": 182 + }, + { + "file": "noppes/npcs/client/gui/mainmenu/GuiNpcStats.java", + "line": 150 + }, + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 212 + }, + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 215 + }, + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 341 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 173 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "line": 1114 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "line": 1115 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "line": 421 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcBankSetup.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcCompanion.java", + "line": 106 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java", + "line": 104 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcMount.java", + "line": 161 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcSpawner.java", + "line": 206 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcTraderSetup.java", + "line": 120 + }, + { + "file": "noppes/npcs/client/key/KeyPreset.java", + "line": 239 + }, + { + "file": "noppes/npcs/client/key/KeyPresetManager.java", + "line": 73 + }, + { + "file": "noppes/npcs/controllers/AnimationController.java", + "line": 516 + }, + { + "file": "noppes/npcs/controllers/AnimationController.java", + "line": 521 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1506 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1526 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1629 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1636 + }, + { + "file": "noppes/npcs/controllers/BankController.java", + "line": 105 + }, + { + "file": "noppes/npcs/controllers/BankController.java", + "line": 109 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 414 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 419 + }, + { + "file": "noppes/npcs/controllers/DialogController.java", + "line": 300 + }, + { + "file": "noppes/npcs/controllers/DialogController.java", + "line": 305 + }, + { + "file": "noppes/npcs/controllers/FactionController.java", + "line": 104 + }, + { + "file": "noppes/npcs/controllers/FactionController.java", + "line": 108 + }, + { + "file": "noppes/npcs/controllers/FactionController.java", + "line": 160 + }, + { + "file": "noppes/npcs/controllers/GlobalDataController.java", + "line": 55 + }, + { + "file": "noppes/npcs/controllers/LinkedItemController.java", + "line": 327 + }, + { + "file": "noppes/npcs/controllers/LinkedItemController.java", + "line": 332 + }, + { + "file": "noppes/npcs/controllers/LinkedNpcController.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/LinkedNpcController.java", + "line": 106 + }, + { + "file": "noppes/npcs/controllers/LinkedNpcController.java", + "line": 158 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 225 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 231 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 235 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 277 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 347 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 187 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 221 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 248 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 426 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 429 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 544 + }, + { + "file": "noppes/npcs/controllers/ProfileConfigSync.java", + "line": 14 + }, + { + "file": "noppes/npcs/controllers/ProfileConfigSync.java", + "line": 26 + }, + { + "file": "noppes/npcs/controllers/QuestController.java", + "line": 244 + }, + { + "file": "noppes/npcs/controllers/QuestController.java", + "line": 248 + }, + { + "file": "noppes/npcs/controllers/RecipeController.java", + "line": 154 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 55 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 136 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 172 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 214 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 229 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 358 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 665 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 746 + }, + { + "file": "noppes/npcs/controllers/SpawnController.java", + "line": 90 + }, + { + "file": "noppes/npcs/controllers/SpawnController.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/SpawnController.java", + "line": 137 + }, + { + "file": "noppes/npcs/controllers/SpawnController.java", + "line": 213 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 108 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 112 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 290 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 301 + }, + { + "file": "noppes/npcs/controllers/TransportController.java", + "line": 96 + }, + { + "file": "noppes/npcs/controllers/TransportController.java", + "line": 100 + }, + { + "file": "noppes/npcs/controllers/data/Animation.java", + "line": 243 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 195 + }, + { + "file": "noppes/npcs/controllers/data/AuctionClaim.java", + "line": 212 + }, + { + "file": "noppes/npcs/controllers/data/AuctionListing.java", + "line": 217 + }, + { + "file": "noppes/npcs/controllers/data/BankData.java", + "line": 65 + }, + { + "file": "noppes/npcs/controllers/data/BankData.java", + "line": 102 + }, + { + "file": "noppes/npcs/controllers/data/BankData.java", + "line": 106 + }, + { + "file": "noppes/npcs/controllers/data/CustomEffect.java", + "line": 253 + }, + { + "file": "noppes/npcs/controllers/data/CustomEffect.java", + "line": 272 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 110 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 135 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 71 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 73 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 74 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 80 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 91 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 102 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 117 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 150 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 152 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 154 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 201 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 225 + }, + { + "file": "noppes/npcs/controllers/data/DataTransform.java", + "line": 231 + }, + { + "file": "noppes/npcs/controllers/data/Dialog.java", + "line": 204 + }, + { + "file": "noppes/npcs/controllers/data/Dialog.java", + "line": 240 + }, + { + "file": "noppes/npcs/controllers/data/DialogCategory.java", + "line": 44 + }, + { + "file": "noppes/npcs/controllers/data/DialogOption.java", + "line": 29 + }, + { + "file": "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "line": 83 + }, + { + "file": "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "line": 86 + }, + { + "file": "noppes/npcs/controllers/data/LinkedItem.java", + "line": 56 + }, + { + "file": "noppes/npcs/controllers/data/LinkedItem.java", + "line": 80 + }, + { + "file": "noppes/npcs/controllers/data/Magic.java", + "line": 81 + }, + { + "file": "noppes/npcs/controllers/data/MarkData.java", + "line": 41 + }, + { + "file": "noppes/npcs/controllers/data/MarkData.java", + "line": 44 + }, + { + "file": "noppes/npcs/controllers/data/MarkData.java", + "line": 47 + }, + { + "file": "noppes/npcs/controllers/data/MultiScriptHandler.java", + "line": 47 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 420 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 430 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 435 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 484 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 491 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 190 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1045 + }, + { + "file": "noppes/npcs/controllers/data/PlayerBankData.java", + "line": 37 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 188 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 212 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 221 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 235 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 249 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 343 + }, + { + "file": "noppes/npcs/controllers/data/PlayerDataScript.java", + "line": 100 + }, + { + "file": "noppes/npcs/controllers/data/PlayerFactionData.java", + "line": 47 + }, + { + "file": "noppes/npcs/controllers/data/PlayerFactionData.java", + "line": 76 + }, + { + "file": "noppes/npcs/controllers/data/PlayerFactionData.java", + "line": 84 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 20 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 54 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 70 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 75 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 78 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 88 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 203 + }, + { + "file": "noppes/npcs/controllers/data/PlayerTradeData.java", + "line": 402 + }, + { + "file": "noppes/npcs/controllers/data/PlayerTradeData.java", + "line": 413 + }, + { + "file": "noppes/npcs/controllers/data/Quest.java", + "line": 143 + }, + { + "file": "noppes/npcs/controllers/data/Quest.java", + "line": 161 + }, + { + "file": "noppes/npcs/controllers/data/Quest.java", + "line": 173 + }, + { + "file": "noppes/npcs/controllers/data/QuestCategory.java", + "line": 55 + }, + { + "file": "noppes/npcs/controllers/data/QuestData.java", + "line": 9 + }, + { + "file": "noppes/npcs/controllers/data/RecipeAnvil.java", + "line": 62 + }, + { + "file": "noppes/npcs/controllers/data/RecipeAnvil.java", + "line": 65 + }, + { + "file": "noppes/npcs/controllers/data/RecipeAnvil.java", + "line": 69 + }, + { + "file": "noppes/npcs/controllers/data/RecipeAnvil.java", + "line": 72 + }, + { + "file": "noppes/npcs/controllers/data/RecipeAnvil.java", + "line": 80 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 64 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 69 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 71 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 77 + }, + { + "file": "noppes/npcs/controllers/data/SingleScriptHandler.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/data/SpawnData.java", + "line": 113 + }, + { + "file": "noppes/npcs/controllers/data/SpawnData.java", + "line": 142 + }, + { + "file": "noppes/npcs/entity/EntityNpcCrystal.java", + "line": 28 + }, + { + "file": "noppes/npcs/entity/EntityNpcDragon.java", + "line": 61 + }, + { + "file": "noppes/npcs/entity/EntityNPCGolem.java", + "line": 52 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 330 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 556 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 577 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1842 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1861 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1866 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1871 + }, + { + "file": "noppes/npcs/entity/EntityNpcPony.java", + "line": 24 + }, + { + "file": "noppes/npcs/entity/EntityNpcSlime.java", + "line": 33 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 684 + }, + { + "file": "noppes/npcs/entity/data/DataSkinOverlays.java", + "line": 44 + }, + { + "file": "noppes/npcs/entity/data/DataSkinOverlays.java", + "line": 63 + }, + { + "file": "noppes/npcs/entity/data/DataTimers.java", + "line": 109 + }, + { + "file": "noppes/npcs/entity/data/ModelDataShared.java", + "line": 26 + }, + { + "file": "noppes/npcs/entity/data/ModelDataShared.java", + "line": 48 + }, + { + "file": "noppes/npcs/entity/data/ModelDataShared.java", + "line": 130 + }, + { + "file": "noppes/npcs/entity/data/ModelPartData.java", + "line": 25 + }, + { + "file": "noppes/npcs/entity/data/ModelRotate.java", + "line": 22 + }, + { + "file": "noppes/npcs/entity/data/ModelRotatePart.java", + "line": 12 + }, + { + "file": "noppes/npcs/entity/data/ModelScalePart.java", + "line": 11 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCDwarfFemale.java", + "line": 29 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCDwarfMale.java", + "line": 29 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCElfFemale.java", + "line": 31 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCElfMale.java", + "line": 31 + }, + { + "file": "noppes/npcs/entity/old/EntityNpcEnderchibi.java", + "line": 29 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCEnderman.java", + "line": 55 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCFurryFemale.java", + "line": 29 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCFurryMale.java", + "line": 28 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCHumanFemale.java", + "line": 28 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCHumanMale.java", + "line": 26 + }, + { + "file": "noppes/npcs/entity/old/EntityNpcMonsterFemale.java", + "line": 29 + }, + { + "file": "noppes/npcs/entity/old/EntityNpcMonsterMale.java", + "line": 27 + }, + { + "file": "noppes/npcs/entity/old/EntityNpcNagaFemale.java", + "line": 29 + }, + { + "file": "noppes/npcs/entity/old/EntityNpcNagaMale.java", + "line": 28 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCOrcFemale.java", + "line": 28 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCOrcMale.java", + "line": 29 + }, + { + "file": "noppes/npcs/entity/old/EntityNpcSkeleton.java", + "line": 28 + }, + { + "file": "noppes/npcs/entity/old/EntityNPCVillager.java", + "line": 29 + }, + { + "file": "noppes/npcs/items/ItemCrossbow.java", + "line": 79 + }, + { + "file": "noppes/npcs/items/ItemMachineGun.java", + "line": 111 + }, + { + "file": "noppes/npcs/items/ItemMoneyBag.java", + "line": 26 + }, + { + "file": "noppes/npcs/items/ItemMusket.java", + "line": 84 + }, + { + "file": "noppes/npcs/items/ItemNpcArmorColorable.java", + "line": 71 + }, + { + "file": "noppes/npcs/items/ItemNpcTool.java", + "line": 200 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 40 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 45 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 137 + }, + { + "file": "noppes/npcs/items/MoneyBagContents.java", + "line": 20 + }, + { + "file": "noppes/npcs/janino/JaninoScript.java", + "line": 555 + }, + { + "file": "noppes/npcs/roles/JobConversation.java", + "line": 44 + }, + { + "file": "noppes/npcs/roles/JobConversation.java", + "line": 53 + }, + { + "file": "noppes/npcs/roles/JobItemGiver.java", + "line": 57 + }, + { + "file": "noppes/npcs/roles/JobItemGiver.java", + "line": 80 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 78 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 269 + }, + { + "file": "noppes/npcs/roles/RoleInnkeeper.java", + "line": 38 + }, + { + "file": "noppes/npcs/roles/RoleTrader.java", + "line": 82 + }, + { + "file": "noppes/npcs/roles/RoleTrader.java", + "line": 87 + }, + { + "file": "noppes/npcs/roles/RoleTrader.java", + "line": 426 + }, + { + "file": "noppes/npcs/roles/companion/CompanionFarmer.java", + "line": 10 + }, + { + "file": "noppes/npcs/roles/companion/CompanionGuard.java", + "line": 15 + }, + { + "file": "noppes/npcs/roles/companion/CompanionTrader.java", + "line": 12 + }, + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 279 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 231 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 577 + }, + { + "file": "noppes/npcs/scripted/ScriptBlock.java", + "line": 170 + }, + { + "file": "noppes/npcs/scripted/ScriptParticle.java", + "line": 66 + }, + { + "file": "noppes/npcs/scripted/ScriptSound.java", + "line": 31 + }, + { + "file": "noppes/npcs/scripted/ScriptTileEntity.java", + "line": 74 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 425 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 431 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 437 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 443 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 449 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 455 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 468 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 480 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 500 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEnergyAbility.java", + "line": 141 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEnergyZone.java", + "line": 254 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 686 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 951 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 961 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 966 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "line": 17 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 825 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGui.java", + "line": 299 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGui.java", + "line": 310 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGui.java", + "line": 320 + }, + { + "file": "noppes/npcs/scripted/item/ScriptCustomItem.java", + "line": 297 + }, + { + "file": "noppes/npcs/scripted/item/ScriptCustomItem.java", + "line": 300 + }, + { + "file": "noppes/npcs/scripted/item/ScriptCustomItem.java", + "line": 312 + }, + { + "file": "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "line": 180 + }, + { + "file": "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "line": 192 + }, + { + "file": "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "line": 194 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemBook.java", + "line": 63 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 207 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 223 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 289 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 395 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 421 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 428 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 434 + }, + { + "file": "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "line": 198 + }, + { + "file": "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "line": 210 + }, + { + "file": "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "line": 212 + }, + { + "file": "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "line": 139 + }, + { + "file": "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "line": 148 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 43 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 77 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 237 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 343 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 344 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 366 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java", + "line": 16 + } + ], + "casts": [ + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 387 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 652 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 676 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 727 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 842 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1535 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1635 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "line": 451 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "line": 501 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "line": 31 + }, + { + "file": "kamkeel/npcs/controllers/data/energycharge/EnergyChargeTracker.java", + "line": 92 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "line": 46 + }, + { + "file": "kamkeel/npcs/util/ByteBufUtils.java", + "line": 57 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 502 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 507 + }, + { + "file": "noppes/npcs/Server.java", + "line": 56 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 222 + }, + { + "file": "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "line": 190 + }, + { + "file": "noppes/npcs/compat/PixelmonHelper.java", + "line": 230 + }, + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 255 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEnergyAbility.java", + "line": 151 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEnergyZone.java", + "line": 265 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGui.java", + "line": 271 + }, + { + "file": "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "line": 129 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 198 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 190 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 263 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java", + "line": 31 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/util/ByteBufUtils.java", + "line": 56 + }, + { + "file": "noppes/npcs/Server.java", + "line": 55 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 221 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 221 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java", + "line": 26 + } + ] + }, + "methodCalls": { + "setString": { + "count": 250, + "files": [ + "foxz/utils/Market.java", + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/SoulbindRequirement.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/QuestLogData.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/controllers/Preset.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityConfig.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionConfigSync.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/LinkedNpcController.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ScriptContainer.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/DialogOption.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/quests/QuestLocation.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobFollower.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiTextField.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getString": { + "count": 247, + "files": [ + "foxz/utils/Market.java", + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/SoulbindRequirement.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/QuestLogData.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/client/controllers/Preset.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeDialog.java", + "noppes/npcs/client/gui/roles/GuiNpcSpawner.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/LinkedNpcController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ScriptContainer.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/DialogOption.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/IScriptUnit.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/quests/QuestLocation.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobFollower.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiTextField.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "hasKey": { + "count": 471, + "files": [ + "foxz/utils/Market.java", + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/controllers/data/attribute/requirement/RequirementCheckerRegistry.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/ProfileSlotRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestActiveRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestCompletedRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/SoulbindRequirement.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/controllers/ClientCloneController.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/client/gui/SubGuiNpcAvailability.java", + "noppes/npcs/client/gui/SubGuiNpcDialogOption.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/global/GuiNpcManageRecipes.java", + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "noppes/npcs/client/gui/item/GuiNpcMagicBook.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcAdvanced.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeDialog.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/LinkedNpcController.java", + "noppes/npcs/controllers/MarketRegistry.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ScriptContainer.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTextField.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/scripted/roles/ScriptJobSpawner.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "copy": { + "count": 7, + "files": [ + "kamkeel/npcs/controllers/ProfileController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setTag": { + "count": 370, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/QuestLogData.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBook.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/client/controllers/Preset.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcPather.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/LinkedNpcController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ProfileConfigSync.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ScriptContainer.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerBankData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerItemGiverData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerMailData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/QuestData.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelRotate.java", + "noppes/npcs/entity/data/ModelScale.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/quests/QuestDialog.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/quests/QuestManual.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RolePostman.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getTagList": { + "count": 197, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/QuestLogData.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/controllers/ClientCloneController.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ScriptContainer.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/BuiltInAnimation.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerBankData.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerItemGiverData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerMailData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/quests/QuestDialog.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/quests/QuestManual.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "hasNoTags": { + "count": 14, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getCompoundTag": { + "count": 220, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSavePacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBook.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/client/controllers/Preset.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/item/GuiNpcMagicBook.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/controllers/LinkedNpcController.java", + "noppes/npcs/controllers/MarketRegistry.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestData.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelRotate.java", + "noppes/npcs/entity/data/ModelScale.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RolePostman.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setInteger": { + "count": 569, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/ProjectileData.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/ProfileSlotRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestActiveRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestCompletedRequirement.java", + "kamkeel/npcs/controllers/data/energycharge/EnergyChargeTracker.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileColorable.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/client/util/Color.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionConfigSync.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/GlobalDataController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/ProfileConfigSync.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/DialogOption.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobHealer.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleBank.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTransporter.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiLine.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLine.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setBoolean": { + "count": 291, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/ProjectileData.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/GetTraderData.java", + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/Resistances.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileCouchWood.java", + "noppes/npcs/blocks/tiles/TileCouchWool.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/controllers/AuctionConfigSync.java", + "noppes/npcs/controllers/ScriptConfigSync.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestData.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/entity/data/ModelRotate.java", + "noppes/npcs/entity/data/ModelRotatePart.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/roles/companion/CompanionFarmer.java", + "noppes/npcs/roles/companion/CompanionGuard.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setFloat": { + "count": 223, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/Resistances.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/util/Color.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelRotatePart.java", + "noppes/npcs/entity/data/ModelScalePart.java", + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getInteger": { + "count": 556, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/ProjectileData.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/ProfileSlotRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestActiveRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestCompletedRequirement.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileColorable.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCDialogNpcOptions.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcAdvanced.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/client/util/Color.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/GlobalDataController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/controllers/data/Bank.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/BuiltInAnimation.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/DialogOption.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobHealer.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleBank.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTransporter.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiLine.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLine.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getBoolean": { + "count": 295, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/AbilityAction.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/ProjectileData.java", + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/Resistances.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileCouchWood.java", + "noppes/npcs/blocks/tiles/TileCouchWool.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/client/ScriptClientConfig.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/BuiltInAnimation.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/controllers/data/IScriptHandlerPacket.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/data/QuestData.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/entity/data/ModelRotate.java", + "noppes/npcs/entity/data/ModelRotatePart.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/roles/companion/CompanionFarmer.java", + "noppes/npcs/roles/companion/CompanionGuard.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getFloat": { + "count": 226, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/Resistances.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/util/Color.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/BuiltInAnimation.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelRotatePart.java", + "noppes/npcs/entity/data/ModelScalePart.java", + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setByte": { + "count": 41, + "files": [ + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getByte": { + "count": 35, + "files": [ + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/BuiltInAnimation.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "equals": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "removeTag": { + "count": 55, + "files": [ + "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/LinkedNpcController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "func_150296_c": { + "count": 29, + "files": [ + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getLong": { + "count": 35, + "files": [ + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/JobChunkLoader.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setLong": { + "count": 42, + "files": [ + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/controllers/data/profile/Slot.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/GetTraderData.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/controllers/AuctionConfigSync.java", + "noppes/npcs/controllers/ProfileConfigSync.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/JobChunkLoader.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setDouble": { + "count": 75, + "files": [ + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/controllers/AuctionConfigSync.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getDouble": { + "count": 69, + "files": [ + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getIntArray": { + "count": 40, + "files": [ + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/items/MoneyBagContents.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTextField.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setIntArray": { + "count": 29, + "files": [ + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/network/packets/player/GetTraderData.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/items/MoneyBagContents.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiButton.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiLabel.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/gui/ScriptGuiTextField.java", + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java", + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java", + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java", + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getTag": { + "count": 28, + "files": [ + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/controllers/data/DataTransform.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setShort": { + "count": 9, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getShort": { + "count": 10, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "setByteArray": { + "count": 3, + "files": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getByteArray": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "func_150299_b": { + "count": 4, + "files": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "hashCode": { + "count": 1, + "files": [ + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.player.EntityPlayer": { + "shortName": "EntityPlayer", + "package": "net.minecraft.entity.player", + "importCount": 551, + "importedBy": [ + "foxz/command/CmdDialog.java", + "foxz/command/CmdNoppes.java", + "foxz/command/CmdNpc.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/commandhelper/permissions/OpOnly.java", + "foxz/commandhelper/permissions/PlayerOnly.java", + "foxz/utils/Utils.java", + "kamkeel/npcs/addon/DBCAddon.java", + "kamkeel/npcs/addon/client/DBCClient.java", + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/command/AttributeCommand.java", + "kamkeel/npcs/command/AuctionCommand.java", + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/CommandKamkeelBase.java", + "kamkeel/npcs/command/DialogCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/QuestCommand.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "kamkeel/npcs/command/profile/CommandProfile.java", + "kamkeel/npcs/command/profile/CommandProfileBase.java", + "kamkeel/npcs/command/profile/CommandProfileChange.java", + "kamkeel/npcs/command/profile/CommandProfileCreate.java", + "kamkeel/npcs/command/profile/CommandProfileList.java", + "kamkeel/npcs/command/profile/CommandProfileRemove.java", + "kamkeel/npcs/command/profile/CommandProfileRename.java", + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/controllers/AttributeController.java", + "kamkeel/npcs/controllers/ProfileController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/data/IAbilityAction.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "kamkeel/npcs/controllers/data/attribute/requirement/IRequirementChecker.java", + "kamkeel/npcs/controllers/data/attribute/requirement/RequirementCheckerRegistry.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/ProfileSlotRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestActiveRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestCompletedRequirement.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/SoulbindRequirement.java", + "kamkeel/npcs/controllers/data/attribute/tracker/AttributeRecalcEvent.java", + "kamkeel/npcs/controllers/data/attribute/tracker/IAttributeRecalcListener.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "kamkeel/npcs/controllers/data/profile/IProfileData.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/AbstractPacket.java", + "kamkeel/npcs/network/LargeAbstractPacket.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/ClonerPacket.java", + "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java", + "kamkeel/npcs/network/packets/data/DisableMouseInputPacket.java", + "kamkeel/npcs/network/packets/data/LoginPacket.java", + "kamkeel/npcs/network/packets/data/MarkDataPacket.java", + "kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java", + "kamkeel/npcs/network/packets/data/ParticlePacket.java", + "kamkeel/npcs/network/packets/data/PlayerDataInfoPacket.java", + "kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java", + "kamkeel/npcs/network/packets/data/ProfileSharedQuestPacket.java", + "kamkeel/npcs/network/packets/data/QuestCompletionPacket.java", + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java", + "kamkeel/npcs/network/packets/data/SoundManagementPacket.java", + "kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/VillagerListPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityCooldownSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityHotbarSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilityStatePacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilitySyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeRemovePacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiTeleporterPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java", + "kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "kamkeel/npcs/network/packets/data/large/ScrollDataPacket.java", + "kamkeel/npcs/network/packets/data/large/ScrollListPacket.java", + "kamkeel/npcs/network/packets/data/large/SyncEffectPacket.java", + "kamkeel/npcs/network/packets/data/large/SyncPacket.java", + "kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayClosePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphRemovePacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphSpawnPacket.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/BankActionPacket.java", + "kamkeel/npcs/network/packets/player/CheckPlayerValue.java", + "kamkeel/npcs/network/packets/player/CompanionActionPacket.java", + "kamkeel/npcs/network/packets/player/DialogSelectPacket.java", + "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "kamkeel/npcs/network/packets/player/GetNPCRole.java", + "kamkeel/npcs/network/packets/player/GetTraderData.java", + "kamkeel/npcs/network/packets/player/InputDevicePacket.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/player/SaveSignPacket.java", + "kamkeel/npcs/network/packets/player/ScreenSizePacket.java", + "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java", + "kamkeel/npcs/network/packets/player/SyncRevisionInfoPacket.java", + "kamkeel/npcs/network/packets/player/TransportPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSavePacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSelectPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiButtonPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiClosePacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiUnfocusedPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomScrollClickPacket.java", + "kamkeel/npcs/network/packets/player/item/GuiMagicBookPacket.java", + "kamkeel/npcs/network/packets/player/item/GuiPaintbrushPacket.java", + "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileCreatePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRemovePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRenamePacket.java", + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java", + "kamkeel/npcs/network/packets/request/GuiRequestPacket.java", + "kamkeel/npcs/network/packets/request/IsGuiOpenInform.java", + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java", + "kamkeel/npcs/network/packets/request/TraderMarketSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesGetAllPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankGetPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java", + "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "kamkeel/npcs/network/packets/request/bank/BanksGetPacket.java", + "kamkeel/npcs/network/packets/request/category/AbilityCategoryMovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryListRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryMoveItemPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "kamkeel/npcs/network/packets/request/clone/MobSpawnerPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectRemovePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectSavePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionsGetPacket.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/item/HammerPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemBuildPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCAddPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedSetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedMarkDataPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAISavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplaySavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsSavePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetAllPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnRemovePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/ModelDataSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcClosePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezeGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteNpcsGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteResetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyAcceptInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyIgnoreInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLeavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyPacketUtil.java", + "kamkeel/npcs/network/packets/request/party/PartySavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetLeaderPacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetQuestPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathSavePacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataDeleteInfoPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetNamesPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataMapRegenPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataRemovePacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataSaveInfoPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestUntrackPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipesGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleCompanionUpdatePacket.java", + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleSavePacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformLoadPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportsGetPacket.java", + "kamkeel/npcs/util/AttributeAttackUtil.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "kamkeel/npcs/util/VaultUtil.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesStringUtils.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/QuestLogData.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/CombatHandler.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAILook.java", + "noppes/npcs/ai/EntityAIWatchClosest.java", + "noppes/npcs/ai/selector/NPCAttackSelector.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/VersionChecker.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/config/ConfigScript.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerAuction.java", + "noppes/npcs/containers/ContainerAuctionBidding.java", + "noppes/npcs/containers/ContainerAuctionListing.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerEmpty.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerManageBanks.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCBankLarge.java", + "noppes/npcs/containers/ContainerNPCBankSmall.java", + "noppes/npcs/containers/ContainerNPCBankUnlock.java", + "noppes/npcs/containers/ContainerNPCBankUpgrade.java", + "noppes/npcs/containers/ContainerNPCCompanion.java", + "noppes/npcs/containers/ContainerNPCFollower.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/containers/ContainerNPCInv.java", + "noppes/npcs/containers/ContainerNpcItemGiver.java", + "noppes/npcs/containers/ContainerNpcQuestReward.java", + "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "noppes/npcs/containers/InventoryAuctionDisplay.java", + "noppes/npcs/containers/InventoryNPC.java", + "noppes/npcs/containers/InventoryNpcTrader.java", + "noppes/npcs/containers/SlotAuctionDisplay.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/CustomGuiController.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/PlayerQuestController.java", + "noppes/npcs/controllers/ProfileConfigSync.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogOption.java", + "noppes/npcs/controllers/data/Faction.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/controllers/data/PlayerEffect.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/entity/EntityDialogNpc.java", + "noppes/npcs/entity/EntityMagicProjectile.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemElementalStaff.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemLinked.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMoneyBag.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemMusicClarinet.java", + "noppes/npcs/items/ItemMusicOracina.java", + "noppes/npcs/items/ItemMusicViolin.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemScripted.java", + "noppes/npcs/items/ItemShield.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/items/ItemThrowingWeapon.java", + "noppes/npcs/items/MoneyBagContents.java", + "noppes/npcs/mixin/MixinEntityRenderer.java", + "noppes/npcs/mixin/MixinItemRenderer.java", + "noppes/npcs/mixin/MixinItemStack.java", + "noppes/npcs/quests/QuestDialog.java", + "noppes/npcs/quests/QuestInterface.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/quests/QuestKill.java", + "noppes/npcs/quests/QuestLocation.java", + "noppes/npcs/quests/QuestManual.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobChunkLoader.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/JobHealer.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleAuctioneer.java", + "noppes/npcs/roles/RoleBank.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleInterface.java", + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/roles/RolePostman.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/roles/RoleTransporter.java", + "noppes/npcs/roles/companion/CompanionGuard.java", + "noppes/npcs/roles/companion/CompanionTrader.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptAnimal.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptNpc.java", + "noppes/npcs/scripted/event/BlockEvent.java", + "noppes/npcs/scripted/event/NpcEvent.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/roles/ScriptJobItemGiver.java", + "noppes/npcs/scripted/roles/ScriptRoleFollower.java", + "noppes/npcs/scripted/wrapper/ScriptPlayerAbilityData.java", + "noppes/npcs/util/NPCMountUtil.java", + "somehussar/janino/EntityUnloadListener.java" + ], + "paAbstraction": "IPlayer", + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "foxz/commandhelper/permissions/OpOnly.java", + "line": 18 + }, + { + "file": "kamkeel/npcs/command/AttributeCommand.java", + "line": 93 + }, + { + "file": "kamkeel/npcs/command/AttributeCommand.java", + "line": 157 + }, + { + "file": "kamkeel/npcs/command/AttributeCommand.java", + "line": 207 + }, + { + "file": "kamkeel/npcs/command/AuctionCommand.java", + "line": 164 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeel.java", + "line": 190 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 158 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 177 + }, + { + "file": "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "line": 187 + }, + { + "file": "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfile.java", + "line": 141 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileBase.java", + "line": 130 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileChange.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileCreate.java", + "line": 41 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileList.java", + "line": 38 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileRemove.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileRename.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/controllers/AttributeController.java", + "line": 87 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 759 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 767 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 777 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 789 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 800 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 812 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 551 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 2367 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "line": 33 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "line": 32 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "line": 231 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 574 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 445 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 181 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyPanel.java", + "line": 245 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1054 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 2007 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 2013 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 2014 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 301 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 305 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 306 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 341 + }, + { + "file": "kamkeel/npcs/util/AttributeAttackUtil.java", + "line": 386 + }, + { + "file": "kamkeel/npcs/util/AttributeAttackUtil.java", + "line": 397 + }, + { + "file": "kamkeel/npcs/util/AttributeAttackUtil.java", + "line": 414 + }, + { + "file": "noppes/npcs/DataInventory.java", + "line": 179 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 477 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 495 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 517 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 543 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 561 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 580 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 870 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 1099 + }, + { + "file": "noppes/npcs/NoppesStringUtils.java", + "line": 39 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 120 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1280 + }, + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 66 + }, + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 188 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 507 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 522 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 528 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 542 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 556 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 571 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 573 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 580 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 589 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 607 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 608 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 625 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 629 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 643 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 649 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 677 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 677 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 679 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 683 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 687 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 694 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 712 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 713 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 719 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 210 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 212 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 226 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 307 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 321 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 332 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 521 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 529 + }, + { + "file": "noppes/npcs/ai/CombatHandler.java", + "line": 127 + }, + { + "file": "noppes/npcs/ai/CombatHandler.java", + "line": 127 + }, + { + "file": "noppes/npcs/ai/EntityAIAttackTarget.java", + "line": 81 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 64 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 68 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 114 + }, + { + "file": "noppes/npcs/blocks/BlockBigSign.java", + "line": 68 + }, + { + "file": "noppes/npcs/blocks/BlockBorder.java", + "line": 72 + }, + { + "file": "noppes/npcs/blocks/BlockNpcRedstone.java", + "line": 55 + }, + { + "file": "noppes/npcs/blocks/BlockScripted.java", + "line": 81 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 34 + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "line": 72 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 81 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 61 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/EntityUtil.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/EntityUtil.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 340 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 125 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 270 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 119 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1722 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1749 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1756 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1763 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 513 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 520 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 527 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 541 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 553 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 558 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 565 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 572 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 584 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 596 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 615 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 32 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 38 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 56 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 90 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 101 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 112 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 123 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 134 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 62 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 82 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 292 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 322 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 58 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 188 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 56 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 152 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 258 + }, + { + "file": "noppes/npcs/controllers/data/Availability.java", + "line": 351 + }, + { + "file": "noppes/npcs/controllers/data/Faction.java", + "line": 210 + }, + { + "file": "noppes/npcs/controllers/data/Faction.java", + "line": 214 + }, + { + "file": "noppes/npcs/controllers/data/Faction.java", + "line": 218 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 202 + }, + { + "file": "noppes/npcs/controllers/data/PlayerEffect.java", + "line": 65 + }, + { + "file": "noppes/npcs/controllers/data/Quest.java", + "line": 382 + }, + { + "file": "noppes/npcs/controllers/data/Quest.java", + "line": 391 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 357 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 675 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 708 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 713 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 800 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 802 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 2198 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 323 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 587 + }, + { + "file": "noppes/npcs/items/ItemLinked.java", + "line": 47 + }, + { + "file": "noppes/npcs/roles/JobHealer.java", + "line": 45 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptAnimal.java", + "line": 36 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptAnimal.java", + "line": 40 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptNpc.java", + "line": 382 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptNpc.java", + "line": 1141 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptNpc.java", + "line": 1368 + }, + { + "file": "noppes/npcs/scripted/roles/ScriptJobItemGiver.java", + "line": 106 + }, + { + "file": "noppes/npcs/scripted/roles/ScriptRoleFollower.java", + "line": 24 + }, + { + "file": "noppes/npcs/util/NPCMountUtil.java", + "line": 42 + }, + { + "file": "noppes/npcs/util/NPCMountUtil.java", + "line": 106 + } + ], + "instanceof": [ + { + "file": "foxz/command/CmdNoppes.java", + "line": 174 + }, + { + "file": "foxz/commandhelper/permissions/OpOnly.java", + "line": 16 + }, + { + "file": "foxz/commandhelper/permissions/PlayerOnly.java", + "line": 23 + }, + { + "file": "kamkeel/npcs/command/AttributeCommand.java", + "line": 88 + }, + { + "file": "kamkeel/npcs/command/AttributeCommand.java", + "line": 153 + }, + { + "file": "kamkeel/npcs/command/AttributeCommand.java", + "line": 203 + }, + { + "file": "kamkeel/npcs/command/AuctionCommand.java", + "line": 159 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeel.java", + "line": 189 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 157 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 176 + }, + { + "file": "kamkeel/npcs/command/SlayCommand.java", + "line": 99 + }, + { + "file": "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "line": 182 + }, + { + "file": "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfile.java", + "line": 140 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileBase.java", + "line": 129 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileChange.java", + "line": 37 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileCreate.java", + "line": 37 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileList.java", + "line": 34 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileRemove.java", + "line": 37 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileRename.java", + "line": 30 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 550 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 639 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 2366 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "line": 30 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "line": 79 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "line": 91 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "line": 29 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "line": 45 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "line": 252 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 49 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityBeam.java", + "line": 468 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityBeam.java", + "line": 498 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 573 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 444 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 180 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyPanel.java", + "line": 244 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1053 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1475 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 2006 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 2012 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 2012 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 300 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 304 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 304 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 340 + }, + { + "file": "kamkeel/npcs/util/AttributeAttackUtil.java", + "line": 385 + }, + { + "file": "kamkeel/npcs/util/AttributeAttackUtil.java", + "line": 396 + }, + { + "file": "kamkeel/npcs/util/AttributeAttackUtil.java", + "line": 413 + }, + { + "file": "noppes/npcs/DataInventory.java", + "line": 136 + }, + { + "file": "noppes/npcs/DataInventory.java", + "line": 159 + }, + { + "file": "noppes/npcs/DataInventory.java", + "line": 178 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 476 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 494 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 516 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 542 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 560 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 579 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 1098 + }, + { + "file": "noppes/npcs/NoppesStringUtils.java", + "line": 38 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 120 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1279 + }, + { + "file": "noppes/npcs/ScriptItemEventHandler.java", + "line": 43 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 678 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 109 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 205 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 205 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 223 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 306 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 320 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 331 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 382 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 471 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 527 + }, + { + "file": "noppes/npcs/ai/CombatHandler.java", + "line": 127 + }, + { + "file": "noppes/npcs/ai/EntityAIAttackTarget.java", + "line": 81 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 113 + }, + { + "file": "noppes/npcs/blocks/BlockBigSign.java", + "line": 67 + }, + { + "file": "noppes/npcs/blocks/BlockBorder.java", + "line": 71 + }, + { + "file": "noppes/npcs/blocks/BlockNpcRedstone.java", + "line": 54 + }, + { + "file": "noppes/npcs/blocks/BlockScripted.java", + "line": 80 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 33 + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "line": 71 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 80 + }, + { + "file": "noppes/npcs/blocks/BlockWaypoint.java", + "line": 42 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 209 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 448 + }, + { + "file": "noppes/npcs/client/EntityUtil.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/EntityUtil.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 340 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 269 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 291 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 321 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 211 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 257 + }, + { + "file": "noppes/npcs/controllers/data/PlayerEffect.java", + "line": 62 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 356 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 379 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 674 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 706 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 708 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 712 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 800 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 802 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 2198 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 322 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 678 + }, + { + "file": "noppes/npcs/items/ItemLinked.java", + "line": 46 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 37 + }, + { + "file": "noppes/npcs/roles/JobGuard.java", + "line": 53 + }, + { + "file": "noppes/npcs/roles/JobHealer.java", + "line": 44 + }, + { + "file": "noppes/npcs/roles/companion/CompanionGuard.java", + "line": 27 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 482 + }, + { + "file": "noppes/npcs/util/NPCMountUtil.java", + "line": 32 + }, + { + "file": "noppes/npcs/util/NPCMountUtil.java", + "line": 36 + }, + { + "file": "noppes/npcs/util/NPCMountUtil.java", + "line": 106 + }, + { + "file": "noppes/npcs/util/NPCMountUtil.java", + "line": 191 + } + ] + }, + "methodCalls": { + "getCommandSenderName": { + "count": 100, + "files": [ + "foxz/command/CmdNpc.java", + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/command/DialogCommand.java", + "kamkeel/npcs/command/QuestCommand.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/GetTraderData.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcClosePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "kamkeel/npcs/util/VaultUtil.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/quests/QuestLocation.java", + "noppes/npcs/quests/QuestManual.java" + ] + }, + "getEntityId": { + "count": 6, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemLinked.java" + ] + }, + "getHeldItem": { + "count": 21, + "files": [ + "kamkeel/npcs/command/AttributeCommand.java", + "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "getDisplayName": { + "count": 4, + "files": [ + "kamkeel/npcs/command/NpcCommand.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/roles/RoleCompanion.java" + ] + }, + "getUniqueID": { + "count": 70, + "files": [ + "kamkeel/npcs/controllers/AttributeController.java", + "kamkeel/npcs/controllers/ProfileController.java", + "kamkeel/npcs/controllers/data/attribute/requirement/types/SoulbindRequirement.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLeavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyPacketUtil.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/config/ConfigScript.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleFollower.java" + ] + }, + "getAttributeMap": { + "count": 3, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java" + ] + }, + "getHealth": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "noppes/npcs/roles/JobHealer.java" + ] + }, + "setHealth": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java" + ] + }, + "getEyeHeight": { + "count": 2, + "files": [ + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/items/ItemStaff.java" + ] + }, + "getLook": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityEnergyDome.java" + ] + }, + "attackTargetEntityWithCurrentItem": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityEnergyDome.java" + ] + }, + "addChatMessage": { + "count": 29, + "files": [ + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/VersionChecker.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/PlayerQuestController.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RolePostman.java", + "noppes/npcs/roles/RoleTransporter.java" + ] + }, + "openGui": { + "count": 9, + "files": [ + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/roles/RolePostman.java" + ] + }, + "mountEntity": { + "count": 4, + "files": [ + "kamkeel/npcs/network/packets/request/MountPacket.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/roles/RoleMount.java" + ] + }, + "onItemPickup": { + "count": 4, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "getRNG": { + "count": 3, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "addExperience": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/containers/ContainerAnvilRepair.java" + ] + }, + "destroyCurrentEquippedItem": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java" + ] + }, + "getGameProfile": { + "count": 3, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/config/ConfigScript.java", + "noppes/npcs/items/ItemNpcWand.java" + ] + }, + "isBlocking": { + "count": 1, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "getCurrentEquippedItem": { + "count": 6, + "files": [ + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "addChatComponentMessage": { + "count": 2, + "files": [ + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/tiles/TileBorder.java" + ] + }, + "setPositionAndUpdate": { + "count": 1, + "files": [ + "noppes/npcs/blocks/tiles/TileBorder.java" + ] + }, + "getDistanceSq": { + "count": 4, + "files": [ + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "isSprinting": { + "count": 3, + "files": [ + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "setSprinting": { + "count": 2, + "files": [ + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "getDistanceToEntity": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientTickHandler.java" + ] + }, + "isInvisible": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "isRiding": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "isChild": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "isSneaking": { + "count": 6, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemScripted.java", + "noppes/npcs/roles/RoleCompanion.java" + ] + }, + "dropPlayerItemWithRandomChoice": { + "count": 5, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java" + ] + }, + "entityDropItem": { + "count": 2, + "files": [ + "noppes/npcs/containers/ContainerNPCFollower.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java" + ] + }, + "getExtendedProperties": { + "count": 1, + "files": [ + "noppes/npcs/controllers/PlayerDataController.java" + ] + }, + "registerExtendedProperties": { + "count": 1, + "files": [ + "noppes/npcs/controllers/PlayerDataController.java" + ] + }, + "isEntityAlive": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/AnimationData.java" + ] + }, + "getLastAttackerTime": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/AnimationData.java" + ] + }, + "canCommandSenderUseCommand": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/AuctionBlacklist.java" + ] + }, + "setPosition": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "getPersistentID": { + "count": 7, + "files": [ + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "isClientWorld": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/PlayerDataScript.java" + ] + }, + "getItemIcon": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "setItemInUse": { + "count": 13, + "files": [ + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMusicClarinet.java", + "noppes/npcs/items/ItemMusicOracina.java", + "noppes/npcs/items/ItemMusicViolin.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemShield.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemThrowingWeapon.java" + ] + }, + "swingItem": { + "count": 2, + "files": [ + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemThrowingWeapon.java" + ] + }, + "isUsingItem": { + "count": 1, + "files": [ + "noppes/npcs/items/ItemMachineGun.java" + ] + }, + "getMaxHealth": { + "count": 1, + "files": [ + "noppes/npcs/roles/JobHealer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "lastTickPosX": { + "count": 4, + "files": [ + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "posX": { + "count": 15, + "files": [ + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemStaff.java" + ] + }, + "lastTickPosY": { + "count": 4, + "files": [ + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "posY": { + "count": 14, + "files": [ + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemStaff.java" + ] + }, + "lastTickPosZ": { + "count": 4, + "files": [ + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "posZ": { + "count": 15, + "files": [ + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemStaff.java" + ] + }, + "capabilities": { + "count": 30, + "files": [ + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemScripted.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemThrowingWeapon.java" + ] + }, + "inventory": { + "count": 64, + "files": [ + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/containers/ContainerAuction.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerManageBanks.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCCompanion.java", + "noppes/npcs/containers/ContainerNPCFollower.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNPCInv.java", + "noppes/npcs/containers/ContainerNpcItemGiver.java", + "noppes/npcs/containers/ContainerNpcQuestReward.java", + "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/JobItemGiver.java" + ] + }, + "isSwingInProgress": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityEnergyDome.java" + ] + }, + "worldObj": { + "count": 63, + "files": [ + "kamkeel/npcs/network/packets/data/SoundManagementPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCFollower.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "noppes/npcs/containers/ContainerNpcQuestReward.java", + "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/roles/RolePostman.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "ridingEntity": { + "count": 5, + "files": [ + "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/roles/RoleMount.java" + ] + }, + "openContainer": { + "count": 19, + "files": [ + "kamkeel/npcs/network/packets/player/customgui/CustomGuiButtonPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiUnfocusedPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomScrollClickPacket.java", + "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/controllers/CustomGuiController.java", + "noppes/npcs/controllers/data/BankData.java" + ] + }, + "inventoryContainer": { + "count": 2, + "files": [ + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "noppes/npcs/items/ItemLinked.java" + ] + }, + "fishEntity": { + "count": 1, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "ticksExisted": { + "count": 8, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/CustomEffect.java" + ] + }, + "motionX": { + "count": 5, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "motionY": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "motionZ": { + "count": 5, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "velocityChanged": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "moveForward": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "moveStrafing": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "isDead": { + "count": 3, + "files": [ + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "prevRotationYaw": { + "count": 3, + "files": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "rotationYaw": { + "count": 6, + "files": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "dimension": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientTickHandler.java" + ] + }, + "cameraYaw": { + "count": 3, + "files": [ + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "prevCameraYaw": { + "count": 4, + "files": [ + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "field_71091_bM": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "field_71096_bN": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "field_71097_bO": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "field_71094_bP": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "field_71095_bQ": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "field_71085_bR": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "rotationPitch": { + "count": 4, + "files": [ + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "distanceWalkedModified": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "prevDistanceWalkedModified": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "prevCameraPitch": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "cameraPitch": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "experienceTotal": { + "count": 4, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java" + ] + }, + "experienceLevel": { + "count": 2, + "files": [ + "noppes/npcs/controllers/data/Availability.java" + ] + }, + "prevRotationPitch": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "rotationYawHead": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "prevPosX": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "prevPosY": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "prevPosZ": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/PlayerAbilityData.java" + ] + }, + "fallDistance": { + "count": 2, + "files": [ + "noppes/npcs/roles/RoleMount.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "isJumping": { + "count": 1, + "files": [ + "noppes/npcs/util/NPCMountUtil.java" + ] + } + } + }, + "cpw.mods.fml.relauncher.Side": { + "shortName": "Side", + "package": "cpw.mods.fml.relauncher", + "importCount": 405, + "importedBy": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBarrier.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyExplosion.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldBuilder.java", + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldDefs.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergy.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/ClonerPacket.java", + "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java", + "kamkeel/npcs/network/packets/data/DisableMouseInputPacket.java", + "kamkeel/npcs/network/packets/data/LoginPacket.java", + "kamkeel/npcs/network/packets/data/MarkDataPacket.java", + "kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java", + "kamkeel/npcs/network/packets/data/ParticlePacket.java", + "kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java", + "kamkeel/npcs/network/packets/data/ProfileSharedQuestPacket.java", + "kamkeel/npcs/network/packets/data/QuestCompletionPacket.java", + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java", + "kamkeel/npcs/network/packets/data/SoundManagementPacket.java", + "kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/VillagerListPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityCooldownSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityHotbarSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilityStatePacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilitySyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeRemovePacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiTeleporterPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java", + "kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "kamkeel/npcs/network/packets/data/large/SyncEffectPacket.java", + "kamkeel/npcs/network/packets/data/large/SyncPacket.java", + "kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayClosePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphRemovePacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphSpawnPacket.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/BankActionPacket.java", + "kamkeel/npcs/network/packets/player/CheckPlayerValue.java", + "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "kamkeel/npcs/network/packets/player/InputDevicePacket.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "kamkeel/npcs/network/packets/player/ScreenSizePacket.java", + "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java", + "kamkeel/npcs/network/packets/player/SyncRevisionInfoPacket.java", + "kamkeel/npcs/network/packets/player/TransportPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiButtonPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiClosePacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiUnfocusedPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomScrollClickPacket.java", + "kamkeel/npcs/network/packets/player/item/GuiMagicBookPacket.java", + "kamkeel/npcs/network/packets/player/item/GuiPaintbrushPacket.java", + "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileCreatePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRemovePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRenamePacket.java", + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java", + "kamkeel/npcs/network/packets/request/GuiRequestPacket.java", + "kamkeel/npcs/network/packets/request/IsGuiOpenInform.java", + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java", + "kamkeel/npcs/network/packets/request/TraderMarketSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesGetAllPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankGetPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java", + "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "kamkeel/npcs/network/packets/request/bank/BanksGetPacket.java", + "kamkeel/npcs/network/packets/request/category/AbilityCategoryMovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryListRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryMoveItemPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "kamkeel/npcs/network/packets/request/clone/MobSpawnerPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionsGetPacket.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/item/HammerPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemBuildPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCAddPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedSetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedMarkDataPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAISavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplaySavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsSavePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetAllPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnRemovePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/ModelDataSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcClosePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezeGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteNpcsGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteResetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyAcceptInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyIgnoreInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLeavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/party/PartySavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetLeaderPacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetQuestPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathSavePacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetNamesPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataMapRegenPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestUntrackPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipesGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleCompanionUpdatePacket.java", + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleSavePacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformLoadPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportsGetPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/client/ClientAbilityState.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/ImageDownloadAlt.java", + "noppes/npcs/client/ScriptClientConfig.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/ZoneParticleFX.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/SubGuiTrapPresetSelector.java", + "noppes/npcs/client/gui/SubGuiZonePresetSelector.java", + "noppes/npcs/client/gui/advanced/SubGuiCustomEffectSelect.java", + "noppes/npcs/client/gui/builder/FieldDef.java", + "noppes/npcs/client/gui/builder/FieldType.java", + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/model/ModelNpcSlime.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/util/Color.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/entity/EntityChairMount.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemPlaceholder.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/mixin/MixinModelRenderer.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.relauncher.SideOnly": { + "shortName": "SideOnly", + "package": "cpw.mods.fml.relauncher", + "importCount": 395, + "importedBy": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBarrier.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyExplosion.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldBuilder.java", + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldDefs.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergy.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/ClonerPacket.java", + "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java", + "kamkeel/npcs/network/packets/data/DisableMouseInputPacket.java", + "kamkeel/npcs/network/packets/data/LoginPacket.java", + "kamkeel/npcs/network/packets/data/MarkDataPacket.java", + "kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java", + "kamkeel/npcs/network/packets/data/ParticlePacket.java", + "kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java", + "kamkeel/npcs/network/packets/data/ProfileSharedQuestPacket.java", + "kamkeel/npcs/network/packets/data/QuestCompletionPacket.java", + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java", + "kamkeel/npcs/network/packets/data/SoundManagementPacket.java", + "kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/VillagerListPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityCooldownSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityHotbarSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilityStatePacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilitySyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeRemovePacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiTeleporterPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java", + "kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "kamkeel/npcs/network/packets/data/large/SyncEffectPacket.java", + "kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayClosePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphRemovePacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphSpawnPacket.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/BankActionPacket.java", + "kamkeel/npcs/network/packets/player/CheckPlayerValue.java", + "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "kamkeel/npcs/network/packets/player/InputDevicePacket.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "kamkeel/npcs/network/packets/player/ScreenSizePacket.java", + "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java", + "kamkeel/npcs/network/packets/player/SyncRevisionInfoPacket.java", + "kamkeel/npcs/network/packets/player/TransportPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiButtonPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiClosePacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomGuiUnfocusedPacket.java", + "kamkeel/npcs/network/packets/player/customgui/CustomScrollClickPacket.java", + "kamkeel/npcs/network/packets/player/item/GuiMagicBookPacket.java", + "kamkeel/npcs/network/packets/player/item/GuiPaintbrushPacket.java", + "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileCreatePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRemovePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRenamePacket.java", + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java", + "kamkeel/npcs/network/packets/request/GuiRequestPacket.java", + "kamkeel/npcs/network/packets/request/IsGuiOpenInform.java", + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java", + "kamkeel/npcs/network/packets/request/TraderMarketSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesGetAllPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankGetPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java", + "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "kamkeel/npcs/network/packets/request/bank/BanksGetPacket.java", + "kamkeel/npcs/network/packets/request/category/AbilityCategoryMovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryListRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryMoveItemPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "kamkeel/npcs/network/packets/request/clone/MobSpawnerPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionsGetPacket.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/item/HammerPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemBuildPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCAddPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedSetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedMarkDataPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAISavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplaySavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsSavePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetAllPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnRemovePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/ModelDataSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcClosePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezeGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteNpcsGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteResetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyAcceptInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyIgnoreInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLeavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/party/PartySavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetLeaderPacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetQuestPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathSavePacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetNamesPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataMapRegenPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestUntrackPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipesGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleCompanionUpdatePacket.java", + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleSavePacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformLoadPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportsGetPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/AuctionClientConfig.java", + "noppes/npcs/client/ClientAbilityState.java", + "noppes/npcs/client/ImageDownloadAlt.java", + "noppes/npcs/client/ScriptClientConfig.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/ZoneParticleFX.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/SubGuiTrapPresetSelector.java", + "noppes/npcs/client/gui/SubGuiZonePresetSelector.java", + "noppes/npcs/client/gui/advanced/SubGuiCustomEffectSelect.java", + "noppes/npcs/client/gui/builder/FieldDef.java", + "noppes/npcs/client/gui/builder/FieldType.java", + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/model/ModelNpcSlime.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/util/Color.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/entity/EntityChairMount.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemPlaceholder.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/mixin/MixinModelRenderer.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.player.EntityPlayerMP": { + "shortName": "EntityPlayerMP", + "package": "net.minecraft.entity.player", + "importCount": 304, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdConfig.java", + "foxz/command/CmdNoppes.java", + "foxz/command/CmdNpc.java", + "foxz/command/CmdQuest.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/utils/Market.java", + "foxz/utils/Utils.java", + "kamkeel/npcs/addon/DBCAddon.java", + "kamkeel/npcs/command/AbilityCommand.java", + "kamkeel/npcs/command/ConfigCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/QuestCategoryCommand.java", + "kamkeel/npcs/command/QuestCommand.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/controllers/ProfileController.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/energycharge/EnergyChargeTracker.java", + "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/network/packets/data/ProfileSharedQuestPacket.java", + "kamkeel/npcs/network/packets/data/QuestCompletionPacket.java", + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityCooldownSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/AbilityHotbarSyncPacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilityStatePacket.java", + "kamkeel/npcs/network/packets/data/ability/PlayerAbilitySyncPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "kamkeel/npcs/network/packets/data/large/ScrollDataPacket.java", + "kamkeel/npcs/network/packets/data/large/ScrollListPacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphRemovePacket.java", + "kamkeel/npcs/network/packets/data/telegraph/TelegraphSpawnPacket.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/BankActionPacket.java", + "kamkeel/npcs/network/packets/player/CheckPlayerValue.java", + "kamkeel/npcs/network/packets/player/DialogSelectPacket.java", + "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "kamkeel/npcs/network/packets/player/GetNPCRole.java", + "kamkeel/npcs/network/packets/player/GetTraderData.java", + "kamkeel/npcs/network/packets/player/InputDevicePacket.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java", + "kamkeel/npcs/network/packets/player/SyncRevisionInfoPacket.java", + "kamkeel/npcs/network/packets/player/TransportPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSavePacket.java", + "kamkeel/npcs/network/packets/player/item/GuiMagicBookPacket.java", + "kamkeel/npcs/network/packets/player/item/GuiPaintbrushPacket.java", + "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileCreatePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRemovePacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileRenamePacket.java", + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java", + "kamkeel/npcs/network/packets/request/GuiRequestPacket.java", + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java", + "kamkeel/npcs/network/packets/request/TraderMarketSavePacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesGetAllPacket.java", + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilityRemovePacket.java", + "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java", + "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankGetPacket.java", + "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java", + "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "kamkeel/npcs/network/packets/request/bank/BanksGetPacket.java", + "kamkeel/npcs/network/packets/request/category/AbilityCategoryMovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryListRequestPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryMoveItemPacket.java", + "kamkeel/npcs/network/packets/request/category/CategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "kamkeel/npcs/network/packets/request/clone/MobSpawnerPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectGetPacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectRemovePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectSavePacket.java", + "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionSetPacket.java", + "kamkeel/npcs/network/packets/request/faction/FactionsGetPacket.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/item/HammerPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java", + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemBuildPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCAddPacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedNPCRemovePacket.java", + "kamkeel/npcs/network/packets/request/linked/LinkedSetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java", + "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedMarkDataPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAISavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplaySavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvSavePacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsSavePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetAllPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnRemovePacket.java", + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/ModelDataSavePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezeGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteFreezePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteNpcsGetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteResetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLeavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/party/PartySavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetLeaderPacket.java", + "kamkeel/npcs/network/packets/request/party/PartySetQuestPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "kamkeel/npcs/network/packets/request/pather/MovingPathSavePacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataDeleteInfoPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetNamesPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataMapRegenPacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataRemovePacket.java", + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataSaveInfoPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestLogToServerPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java", + "kamkeel/npcs/network/packets/request/quest/QuestUntrackPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "kamkeel/npcs/network/packets/request/recipe/RecipesGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleCompanionUpdatePacket.java", + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "kamkeel/npcs/network/packets/request/role/RoleSavePacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java", + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsGetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformLoadPacket.java", + "kamkeel/npcs/network/packets/request/transform/TransformSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoriesGetPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategoryRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportCategorySavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportRemovePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportSavePacket.java", + "kamkeel/npcs/network/packets/request/transport/TransportsGetPacket.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ServerTickHandler.java", + "noppes/npcs/ai/selector/NPCAttackSelector.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/CustomGuiController.java", + "noppes/npcs/controllers/MarketRegistry.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/PlayerQuestController.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemLinked.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemScripted.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptContainer.java", + "noppes/npcs/scripted/ScriptPixelmonPlayerData.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java", + "noppes/npcs/scripted/roles/ScriptJobSpawner.java", + "noppes/npcs/scripted/roles/ScriptRoleTransporter.java", + "noppes/npcs/wrapper/MC1710PlatformService.java" + ], + "paAbstraction": "IPlayer", + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "foxz/command/CmdClone.java", + "line": 39 + }, + { + "file": "foxz/command/CmdConfig.java", + "line": 204 + }, + { + "file": "foxz/command/CmdNoppes.java", + "line": 148 + }, + { + "file": "foxz/command/CmdNpc.java", + "line": 140 + }, + { + "file": "foxz/command/CmdQuest.java", + "line": 61 + }, + { + "file": "foxz/command/CmdQuest.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/command/AbilityCommand.java", + "line": 180 + }, + { + "file": "kamkeel/npcs/command/AbilityCommand.java", + "line": 227 + }, + { + "file": "kamkeel/npcs/command/AbilityCommand.java", + "line": 264 + }, + { + "file": "kamkeel/npcs/command/AbilityCommand.java", + "line": 312 + }, + { + "file": "kamkeel/npcs/command/AbilityCommand.java", + "line": 355 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 212 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 256 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 285 + }, + { + "file": "kamkeel/npcs/command/NpcCommand.java", + "line": 198 + }, + { + "file": "kamkeel/npcs/command/QuestCategoryCommand.java", + "line": 109 + }, + { + "file": "kamkeel/npcs/command/QuestCategoryCommand.java", + "line": 110 + }, + { + "file": "kamkeel/npcs/command/QuestCategoryCommand.java", + "line": 199 + }, + { + "file": "kamkeel/npcs/command/QuestCategoryCommand.java", + "line": 200 + }, + { + "file": "kamkeel/npcs/command/QuestCommand.java", + "line": 74 + }, + { + "file": "kamkeel/npcs/command/QuestCommand.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/command/QuestCommand.java", + "line": 125 + }, + { + "file": "kamkeel/npcs/command/QuestCommand.java", + "line": 126 + }, + { + "file": "kamkeel/npcs/command/SlayCommand.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 459 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 533 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 913 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "line": 232 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 204 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 225 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 315 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 370 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 415 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 442 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 682 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/CNPCData.java", + "line": 33 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 716 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 186 + }, + { + "file": "kamkeel/npcs/network/packets/player/BankActionPacket.java", + "line": 82 + }, + { + "file": "kamkeel/npcs/network/packets/player/CheckPlayerValue.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/player/DialogSelectPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/player/GetNPCRole.java", + "line": 45 + }, + { + "file": "kamkeel/npcs/network/packets/player/GetTraderData.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/network/packets/player/InputDevicePacket.java", + "line": 104 + }, + { + "file": "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "line": 104 + }, + { + "file": "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "line": 178 + }, + { + "file": "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/player/SyncRevisionInfoPacket.java", + "line": 81 + }, + { + "file": "kamkeel/npcs/network/packets/player/TransportPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSavePacket.java", + "line": 90 + }, + { + "file": "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "line": 77 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileCreatePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileRemovePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileRenamePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java", + "line": 48 + }, + { + "file": "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/AbilitiesGetAllPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilitiesGetPacket.java", + "line": 49 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilityRemovePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "line": 76 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java", + "line": 49 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilityRemovePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java", + "line": 46 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 176 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankGetPacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BanksGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java", + "line": 77 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryListRequestPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryRemovePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "line": 110 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 92 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "line": 95 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "line": 87 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 106 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategoriesGetPacket.java", + "line": 49 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategoryRemovePacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "line": 79 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "line": 81 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectGetPacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectRemovePacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectRemovePacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectSavePacket.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectSavePacket.java", + "line": 76 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionsGetPacket.java", + "line": 48 + }, + { + "file": "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java", + "line": 126 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobSpawnerRemovePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "line": 75 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "line": 77 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "line": 82 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemBuildPacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemRemovePacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "line": 76 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "line": 77 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedNPCAddPacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedNPCRemovePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java", + "line": 43 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java", + "line": 44 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetAllPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnRemovePacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "line": 74 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteFreezeGetPacket.java", + "line": 46 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteFreezePacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteNpcsGetPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java", + "line": 104 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyLeavePacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyLogToServerPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartySavePacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartySetLeaderPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartySetQuestPacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataDeleteInfoPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetInfoPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetNamesPacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataMapRegenPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataRemovePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataSaveInfoPacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategoriesGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategoryRemovePacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestLogToServerPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestUntrackPacket.java", + "line": 39 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipesGetPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "line": 99 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "line": 108 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "line": 86 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "line": 90 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "line": 99 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "line": 108 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "line": 91 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "line": 90 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "line": 86 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "line": 92 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "line": 97 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "line": 77 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "line": 81 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "line": 94 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "line": 91 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagsGetPacket.java", + "line": 44 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportCategoriesGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportCategoryRemovePacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportRemovePacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportsGetPacket.java", + "line": 55 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 238 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 1138 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 1145 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 663 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 131 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 154 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 264 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 266 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 365 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 371 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 386 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 392 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 440 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 447 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 454 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 461 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 468 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 475 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 645 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 761 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 880 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 891 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 897 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 923 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1234 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1266 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 144 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 153 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 181 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 183 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 613 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 764 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 766 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 117 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 128 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 146 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 263 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 272 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 362 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 547 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 570 + }, + { + "file": "noppes/npcs/ServerTickHandler.java", + "line": 42 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 66 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 71 + }, + { + "file": "noppes/npcs/blocks/BlockBook.java", + "line": 35 + }, + { + "file": "noppes/npcs/blocks/BlockMailbox.java", + "line": 43 + }, + { + "file": "noppes/npcs/blocks/BlockNpcRedstone.java", + "line": 35 + }, + { + "file": "noppes/npcs/blocks/BlockWaypoint.java", + "line": 34 + }, + { + "file": "noppes/npcs/blocks/BlockWaypoint.java", + "line": 48 + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 288 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 98 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 179 + }, + { + "file": "noppes/npcs/containers/ContainerCustomGui.java", + "line": 114 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 37 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 68 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 134 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 846 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1349 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 30 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 32 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 33 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 37 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 38 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 39 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 47 + }, + { + "file": "noppes/npcs/controllers/CustomGuiController.java", + "line": 51 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 110 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 111 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 112 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 127 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 128 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 133 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 134 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 145 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 146 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 149 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 150 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 177 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 208 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 226 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 257 + }, + { + "file": "noppes/npcs/controllers/PlayerQuestController.java", + "line": 52 + }, + { + "file": "noppes/npcs/controllers/PlayerQuestController.java", + "line": 53 + }, + { + "file": "noppes/npcs/controllers/PlayerQuestController.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/PlayerQuestController.java", + "line": 80 + }, + { + "file": "noppes/npcs/controllers/PlayerQuestController.java", + "line": 113 + }, + { + "file": "noppes/npcs/controllers/PlayerQuestController.java", + "line": 114 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 215 + }, + { + "file": "noppes/npcs/controllers/data/BankData.java", + "line": 112 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 186 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 191 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 194 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 504 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 515 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 768 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1000 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1011 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1025 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "line": 88 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 359 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 360 + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "line": 367 + }, + { + "file": "noppes/npcs/controllers/data/PlayerFactionData.java", + "line": 65 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 175 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 185 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 196 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 203 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 220 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 221 + }, + { + "file": "noppes/npcs/controllers/data/Quest.java", + "line": 160 + }, + { + "file": "noppes/npcs/controllers/data/Quest.java", + "line": 161 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 576 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 577 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1185 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1187 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 589 + }, + { + "file": "noppes/npcs/items/ItemLinked.java", + "line": 53 + }, + { + "file": "noppes/npcs/items/ItemNpcCloner.java", + "line": 29 + }, + { + "file": "noppes/npcs/items/ItemScripted.java", + "line": 28 + }, + { + "file": "noppes/npcs/items/ItemTeleporter.java", + "line": 39 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 265 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 433 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 433 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 785 + }, + { + "file": "noppes/npcs/scripted/ScriptContainer.java", + "line": 93 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 232 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 306 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 307 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 757 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 812 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 820 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 820 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 824 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 833 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 211 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 255 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 270 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 458 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 532 + }, + { + "file": "kamkeel/npcs/controllers/ProfileController.java", + "line": 912 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "line": 231 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "line": 244 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 203 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 224 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 314 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 369 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 412 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 441 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 681 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 715 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 185 + }, + { + "file": "kamkeel/npcs/network/packets/player/BankActionPacket.java", + "line": 79 + }, + { + "file": "kamkeel/npcs/network/packets/player/CheckPlayerValue.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/player/DialogSelectPacket.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/network/packets/player/FollowerPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/player/GetNPCRole.java", + "line": 41 + }, + { + "file": "kamkeel/npcs/network/packets/player/GetTraderData.java", + "line": 46 + }, + { + "file": "kamkeel/npcs/network/packets/player/InputDevicePacket.java", + "line": 102 + }, + { + "file": "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "line": 102 + }, + { + "file": "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "line": 176 + }, + { + "file": "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/player/SyncRevisionInfoPacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/player/item/GuiMagicBookPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/player/item/GuiPaintbrushPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileCreatePacket.java", + "line": 49 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java", + "line": 43 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileRemovePacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileRenamePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/GuiRequestPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/MountPacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/network/packets/request/TraderMarketSavePacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/AbilitiesGetAllPacket.java", + "line": 42 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilitiesGetPacket.java", + "line": 44 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilityRemovePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java", + "line": 44 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilityRemovePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java", + "line": 41 + }, + { + "file": "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 175 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankGetPacket.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/bank/BanksGetPacket.java", + "line": 43 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/AbilityCategoryMovePacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryListRequestPacket.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryMoveItemPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategoryRemovePacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "line": 46 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/MobSpawnerPacket.java", + "line": 117 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "line": 123 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategoriesGetPacket.java", + "line": 43 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategoryRemovePacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogNpcGetPacket.java", + "line": 41 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogNpcRemovePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectRemovePacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectSavePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java", + "line": 48 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionSetPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/faction/FactionsGetPacket.java", + "line": 42 + }, + { + "file": "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/request/item/HammerPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java", + "line": 100 + }, + { + "file": "kamkeel/npcs/network/packets/request/jobs/JobSpawnerRemovePacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemBuildPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemRemovePacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedNPCAddPacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedNPCRemovePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/linked/LinkedSetPacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java", + "line": 40 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java", + "line": 57 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedMarkDataPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedSavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAISavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplaySavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvSavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsSavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetAllPacket.java", + "line": 43 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnRemovePacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/ModelDataSavePacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteFreezeGetPacket.java", + "line": 42 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteFreezePacket.java", + "line": 48 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteNpcsGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteResetPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/pather/MovingPathSavePacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataDeleteInfoPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetInfoPacket.java", + "line": 43 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetNamesPacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataMapRegenPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataRemovePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/playerdata/PlayerDataSaveInfoPacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategoriesGetPacket.java", + "line": 41 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java", + "line": 51 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategoryRemovePacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/recipe/RecipesGetPacket.java", + "line": 48 + }, + { + "file": "kamkeel/npcs/network/packets/request/role/RoleCompanionUpdatePacket.java", + "line": 61 + }, + { + "file": "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java", + "line": 47 + }, + { + "file": "kamkeel/npcs/network/packets/request/role/RoleSavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "line": 79 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java", + "line": 64 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java", + "line": 62 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java", + "line": 59 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/network/packets/request/transform/TransformLoadPacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/transform/TransformSavePacket.java", + "line": 60 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportCategoriesGetPacket.java", + "line": 41 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportCategoryRemovePacket.java", + "line": 55 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportCategorySavePacket.java", + "line": 58 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java", + "line": 50 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportRemovePacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportSavePacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/request/transport/TransportsGetPacket.java", + "line": 48 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 355 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 376 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 197 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 213 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 247 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 260 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 278 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 292 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 304 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 316 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 328 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 340 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 352 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 364 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 397 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 409 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 421 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 433 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 445 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 457 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 469 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 481 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 493 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 506 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 520 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 541 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 555 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 570 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 588 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 606 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 612 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 632 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 648 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 676 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 676 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 692 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 718 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 734 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 754 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 779 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 544 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 552 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 63 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 110 + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 287 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 178 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 36 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 67 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 133 + }, + { + "file": "noppes/npcs/controllers/data/AnimationData.java", + "line": 55 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 150 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 163 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 189 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 503 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 514 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 767 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 933 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 996 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1008 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1022 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1095 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "line": 87 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 2050 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 2080 + }, + { + "file": "noppes/npcs/items/ItemLinked.java", + "line": 52 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 264 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 429 + } + ] + }, + "methodCalls": { + "addChatMessage": { + "count": 14, + "files": [ + "foxz/command/CmdNoppes.java", + "foxz/utils/Market.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/PlayerDataController.java" + ] + }, + "getEntityWorld": { + "count": 2, + "files": [ + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/NpcCommand.java" + ] + }, + "getCommandSenderName": { + "count": 13, + "files": [ + "foxz/utils/Market.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleTrader.java" + ] + }, + "getDisplayName": { + "count": 2, + "files": [ + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java" + ] + }, + "getUniqueID": { + "count": 7, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java" + ] + }, + "sendPlayerAbilities": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java" + ] + }, + "entityDropItem": { + "count": 2, + "files": [ + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java" + ] + }, + "closeContainer": { + "count": 3, + "files": [ + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "openGui": { + "count": 3, + "files": [ + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/controllers/CustomGuiController.java" + ] + }, + "mountEntity": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "setLocationAndAngles": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "getRNG": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "addExperience": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "sendContainerAndContentsToPlayer": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "getDistanceToEntity": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "getHeldItem": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "sendContainerToPlayer": { + "count": 2, + "files": [ + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/items/ItemLinked.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "posX": { + "count": 5, + "files": [ + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/NpcCommand.java", + "noppes/npcs/compat/PixelmonHelper.java" + ] + }, + "posY": { + "count": 5, + "files": [ + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/NpcCommand.java", + "noppes/npcs/compat/PixelmonHelper.java" + ] + }, + "posZ": { + "count": 5, + "files": [ + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/NpcCommand.java", + "noppes/npcs/compat/PixelmonHelper.java" + ] + }, + "rotationYaw": { + "count": 7, + "files": [ + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/compat/PixelmonHelper.java" + ] + }, + "length": { + "count": 2, + "files": [ + "foxz/commandhelper/AbstractCommandHelper.java", + "noppes/npcs/controllers/PlayerDataController.java" + ] + }, + "worldObj": { + "count": 8, + "files": [ + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/compat/PixelmonHelper.java" + ] + }, + "capabilities": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java" + ] + }, + "rotationPitch": { + "count": 4, + "files": [ + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "inventory": { + "count": 10, + "files": [ + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java" + ] + }, + "openContainer": { + "count": 15, + "files": [ + "kamkeel/npcs/network/packets/player/MailActionPacket.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "ridingEntity": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "dimension": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "inventoryContainer": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "playerNetServerHandler": { + "count": 2, + "files": [ + "noppes/npcs/roles/RoleTrader.java" + ] + } + } + }, + "net.minecraft.entity.Entity": { + "shortName": "Entity", + "package": "net.minecraft.entity", + "importCount": 262, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/addon/DBCAddon.java", + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyExplosion.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/controllers/EnergyController.java", + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/preview/PreviewEntityHandler.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "kamkeel/npcs/controllers/data/energy/IEnergyExtender.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/MarkDataPacket.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeRemovePacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteResetPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java", + "net/minecraft/client/renderer/entity/NPCRendererHelper.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/CustomTeleporter.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NpcDamageSource.java", + "noppes/npcs/NpcDamageSourceInderect.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/CombatHandler.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIWatchClosest.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/NPCPath.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/ai/selector/NPCAttackSelector.java", + "noppes/npcs/ai/selector/NPCInteractSelector.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCGolem.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelNpcSlime.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/animation/AniCrawling.java", + "noppes/npcs/client/model/animation/AniHug.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelBeard.java", + "noppes/npcs/client/model/part/ModelBreasts.java", + "noppes/npcs/client/model/part/ModelHair.java", + "noppes/npcs/client/model/part/ModelHorns.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelMohawk.java", + "noppes/npcs/client/model/part/ModelSkirt.java", + "noppes/npcs/client/model/part/ModelSnout.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/ModelWings.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/util/ModelPartInterface.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/controllers/ScriptEntityData.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/entity/EntityChairMount.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemLinked.java", + "noppes/npcs/items/ItemNpcArmor.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/mixin/MixinEntityTrackerEntry.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/companion/CompanionGuard.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptTelegraph.java", + "noppes/npcs/scripted/ScriptTelegraphInstance.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptEnergyAbility.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java", + "noppes/npcs/scripted/event/BlockEvent.java", + "noppes/npcs/scripted/event/NpcEvent.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java", + "noppes/npcs/scripted/roles/ScriptJobSpawner.java", + "noppes/npcs/util/NPCMountUtil.java", + "noppes/npcs/wrapper/MC1710PlatformService.java", + "somehussar/janino/EntityUnloadListener.java" + ], + "paAbstraction": "IEntity", + "usage": { + "extends": [ + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "class": "EntityAbilityZone" + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyAbility.java", + "class": "EntityEnergyAbility" + }, + { + "file": "noppes/npcs/entity/EntityChairMount.java", + "class": "EntityChairMount" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/controllers/TelegraphController.java", + "line": 378 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1035 + }, + { + "file": "noppes/npcs/ai/EntityAIAvoidTarget.java", + "line": 74 + }, + { + "file": "noppes/npcs/compat/PixelmonHelper.java", + "line": 248 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 181 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1378 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 2048 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 300 + }, + { + "file": "noppes/npcs/items/ItemTeleporter.java", + "line": 72 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 503 + }, + { + "file": "noppes/npcs/scripted/ScriptTelegraph.java", + "line": 206 + }, + { + "file": "noppes/npcs/scripted/ScriptTelegraphInstance.java", + "line": 71 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 328 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 453 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 456 + }, + { + "file": "noppes/npcs/wrapper/MC1710PlatformService.java", + "line": 115 + }, + { + "file": "noppes/npcs/wrapper/MC1710PlatformService.java", + "line": 120 + }, + { + "file": "noppes/npcs/wrapper/MC1710PlatformService.java", + "line": 126 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1034 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 180 + } + ] + }, + "methodCalls": { + "setPosition": { + "count": 6, + "files": [ + "foxz/command/CmdClone.java", + "kamkeel/npcs/command/CloneCommand.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/items/ItemSoulstoneFilled.java" + ] + }, + "getClass": { + "count": 5, + "files": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ] + }, + "getEyeHeight": { + "count": 7, + "files": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/EntityAIWatchClosest.java" + ] + }, + "getEntityId": { + "count": 20, + "files": [ + "kamkeel/npcs/controllers/EnergyController.java", + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/scripted/ScriptTelegraphInstance.java" + ] + }, + "setDead": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java" + ] + }, + "onUpdate": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java" + ] + }, + "isEntityAlive": { + "count": 9, + "files": [ + "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/EntityAIWatchClosest.java", + "noppes/npcs/ai/selector/NPCAttackSelector.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "getLookVec": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java" + ] + }, + "mountEntity": { + "count": 3, + "files": [ + "kamkeel/npcs/network/packets/request/MountPacket.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "getUniqueID": { + "count": 5, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/client/ClientProxy.java" + ] + }, + "getEntityData": { + "count": 2, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "setLocationAndAngles": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getDistanceSq": { + "count": 3, + "files": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/selector/NPCAttackSelector.java" + ] + }, + "getDistanceSqToEntity": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java" + ] + }, + "isInWater": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + }, + "getMaxSafePointTries": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + }, + "getDistanceToEntity": { + "count": 1, + "files": [ + "noppes/npcs/client/controllers/MusicController.java" + ] + }, + "writeToNBTOptional": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java" + ] + }, + "getCommandSenderName": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/controllers/data/AnimationData.java" + ] + }, + "isSneaking": { + "count": 3, + "files": [ + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java" + ] + }, + "setPositionAndRotation": { + "count": 1, + "files": [ + "noppes/npcs/compat/PixelmonHelper.java" + ] + }, + "attackEntityFrom": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "addVelocity": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "setFire": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "canBeCollidedWith": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "isEntityEqual": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "getCollisionBorderSize": { + "count": 1, + "files": [ + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "getExtendedProperties": { + "count": 1, + "files": [ + "noppes/npcs/scripted/NpcAPI.java" + ] + }, + "registerExtendedProperties": { + "count": 1, + "files": [ + "noppes/npcs/scripted/NpcAPI.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "isDead": { + "count": 18, + "files": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java" + ] + }, + "ticksExisted": { + "count": 5, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcCrystal.java" + ] + }, + "motionX": { + "count": 6, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "motionY": { + "count": 6, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "motionZ": { + "count": 5, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "posX": { + "count": 41, + "files": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "posY": { + "count": 37, + "files": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "posZ": { + "count": 41, + "files": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "lastTickPosX": { + "count": 2, + "files": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java" + ] + }, + "lastTickPosY": { + "count": 3, + "files": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "lastTickPosZ": { + "count": 2, + "files": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java" + ] + }, + "yOffset": { + "count": 2, + "files": [ + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "height": { + "count": 11, + "files": [ + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/entity/EntityCustomNpc.java" + ] + }, + "worldObj": { + "count": 19, + "files": [ + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/client/model/part/ModelWings.java", + "noppes/npcs/controllers/data/AnimationData.java" + ] + }, + "prevPosX": { + "count": 9, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java" + ] + }, + "prevPosY": { + "count": 10, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java" + ] + }, + "prevPosZ": { + "count": 9, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java" + ] + }, + "rotationYaw": { + "count": 9, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java" + ] + }, + "rotationPitch": { + "count": 2, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java" + ] + }, + "prevRotationYaw": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityEnergyPanel.java" + ] + }, + "dimension": { + "count": 6, + "files": [ + "kamkeel/npcs/network/PacketHandler.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "width": { + "count": 6, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/NPCPath.java", + "noppes/npcs/entity/EntityCustomNpc.java" + ] + }, + "forceSpawn": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "boundingBox": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + }, + "modelData": { + "count": 4, + "files": [ + "noppes/npcs/client/model/part/ModelLegs.java" + ] + }, + "textureLocation": { + "count": 1, + "files": [ + "noppes/npcs/client/model/part/ModelLegs.java" + ] + }, + "display": { + "count": 1, + "files": [ + "noppes/npcs/client/model/part/ModelLegs.java" + ] + }, + "hurtTime": { + "count": 1, + "files": [ + "noppes/npcs/client/model/part/ModelLegs.java" + ] + }, + "deathTime": { + "count": 1, + "files": [ + "noppes/npcs/client/model/part/ModelLegs.java" + ] + }, + "onGround": { + "count": 3, + "files": [ + "noppes/npcs/client/model/part/ModelWings.java", + "noppes/npcs/util/NPCMountUtil.java" + ] + }, + "hurtResistantTime": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "riddenByEntity": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "ridingEntity": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "fallDistance": { + "count": 3, + "files": [ + "noppes/npcs/util/NPCMountUtil.java" + ] + } + } + }, + "net.minecraft.item.ItemStack": { + "shortName": "ItemStack", + "package": "net.minecraft.item", + "importCount": 228, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/command/AttributeCommand.java", + "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/ITileIcon.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBook.java", + "noppes/npcs/blocks/tiles/TileColorable.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "noppes/npcs/constants/EnumCompanionTalent.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerAuction.java", + "noppes/npcs/containers/ContainerAuctionBidding.java", + "noppes/npcs/containers/ContainerAuctionListing.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerManageBanks.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCCompanion.java", + "noppes/npcs/containers/ContainerNPCFollower.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNPCInv.java", + "noppes/npcs/containers/ContainerNpcItemGiver.java", + "noppes/npcs/containers/ContainerNpcQuestReward.java", + "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "noppes/npcs/containers/InventoryAuctionDisplay.java", + "noppes/npcs/containers/InventoryNPC.java", + "noppes/npcs/containers/InventoryNpcTrader.java", + "noppes/npcs/containers/SlotAuctionDisplay.java", + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotCompanionWeapon.java", + "noppes/npcs/containers/SlotNPCArmor.java", + "noppes/npcs/containers/SlotNpcBankCurrency.java", + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "noppes/npcs/containers/SlotNpcTraderItems.java", + "noppes/npcs/containers/SlotValid.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/RecipesDefault.java", + "noppes/npcs/enchants/EnchantInterface.java", + "noppes/npcs/entity/EntityMagicProjectile.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemElementalStaff.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemGunChainsaw.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemLinked.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMoneyBag.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemMusicClarinet.java", + "noppes/npcs/items/ItemMusicOracina.java", + "noppes/npcs/items/ItemMusicViolin.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemNpcArmor.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcBlock.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemOrb.java", + "noppes/npcs/items/ItemPlaceholder.java", + "noppes/npcs/items/ItemScripted.java", + "noppes/npcs/items/ItemShield.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/items/ItemThrowingWeapon.java", + "noppes/npcs/items/ItemWand.java", + "noppes/npcs/items/MoneyBagContents.java", + "noppes/npcs/mixin/MixinItemStack.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/JobBard.java", + "noppes/npcs/roles/JobInterface.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptContainer.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/entity/ScriptEntityItem.java", + "noppes/npcs/scripted/entity/ScriptNpc.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java", + "noppes/npcs/scripted/event/NpcEvent.java", + "noppes/npcs/scripted/event/player/CustomGuiEvent.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "noppes/npcs/scripted/item/ScriptItemArmor.java", + "noppes/npcs/scripted/item/ScriptItemBlock.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java", + "noppes/npcs/util/IProjectileCallback.java", + "noppes/npcs/wrapper/MC1710PlatformService.java", + "tconstruct/client/tabs/AbstractTab.java", + "tconstruct/client/tabs/InventoryTabCustomNpc.java", + "tconstruct/client/tabs/InventoryTabVanilla.java" + ], + "paAbstraction": "IItemStack", + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 316 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 220 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 71 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 72 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 73 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 74 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 75 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 177 + }, + { + "file": "noppes/npcs/blocks/BlockBarrel.java", + "line": 27 + }, + { + "file": "noppes/npcs/blocks/BlockBarrel.java", + "line": 28 + }, + { + "file": "noppes/npcs/blocks/BlockBarrel.java", + "line": 29 + }, + { + "file": "noppes/npcs/blocks/BlockBarrel.java", + "line": 30 + }, + { + "file": "noppes/npcs/blocks/BlockBarrel.java", + "line": 31 + }, + { + "file": "noppes/npcs/blocks/BlockBarrel.java", + "line": 32 + }, + { + "file": "noppes/npcs/blocks/BlockBeam.java", + "line": 24 + }, + { + "file": "noppes/npcs/blocks/BlockBeam.java", + "line": 25 + }, + { + "file": "noppes/npcs/blocks/BlockBeam.java", + "line": 26 + }, + { + "file": "noppes/npcs/blocks/BlockBeam.java", + "line": 27 + }, + { + "file": "noppes/npcs/blocks/BlockBeam.java", + "line": 28 + }, + { + "file": "noppes/npcs/blocks/BlockBeam.java", + "line": 29 + }, + { + "file": "noppes/npcs/blocks/BlockCarpentryBench.java", + "line": 96 + }, + { + "file": "noppes/npcs/blocks/BlockCarpentryBench.java", + "line": 97 + }, + { + "file": "noppes/npcs/blocks/BlockChair.java", + "line": 93 + }, + { + "file": "noppes/npcs/blocks/BlockChair.java", + "line": 94 + }, + { + "file": "noppes/npcs/blocks/BlockChair.java", + "line": 95 + }, + { + "file": "noppes/npcs/blocks/BlockChair.java", + "line": 96 + }, + { + "file": "noppes/npcs/blocks/BlockChair.java", + "line": 97 + }, + { + "file": "noppes/npcs/blocks/BlockChair.java", + "line": 98 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "line": 42 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "line": 43 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "line": 44 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "line": 45 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "line": 46 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "line": 47 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 64 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 65 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 66 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 67 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 68 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 69 + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "line": 203 + }, + { + "file": "noppes/npcs/blocks/BlockCrate.java", + "line": 38 + }, + { + "file": "noppes/npcs/blocks/BlockCrate.java", + "line": 39 + }, + { + "file": "noppes/npcs/blocks/BlockCrate.java", + "line": 40 + }, + { + "file": "noppes/npcs/blocks/BlockCrate.java", + "line": 41 + }, + { + "file": "noppes/npcs/blocks/BlockCrate.java", + "line": 42 + }, + { + "file": "noppes/npcs/blocks/BlockCrate.java", + "line": 43 + }, + { + "file": "noppes/npcs/blocks/BlockCrystal.java", + "line": 46 + }, + { + "file": "noppes/npcs/blocks/BlockLightable.java", + "line": 69 + }, + { + "file": "noppes/npcs/blocks/BlockMailbox.java", + "line": 36 + }, + { + "file": "noppes/npcs/blocks/BlockMailbox.java", + "line": 37 + }, + { + "file": "noppes/npcs/blocks/BlockMailbox.java", + "line": 52 + }, + { + "file": "noppes/npcs/blocks/BlockPedestal.java", + "line": 56 + }, + { + "file": "noppes/npcs/blocks/BlockPedestal.java", + "line": 57 + }, + { + "file": "noppes/npcs/blocks/BlockPedestal.java", + "line": 58 + }, + { + "file": "noppes/npcs/blocks/BlockPedestal.java", + "line": 59 + }, + { + "file": "noppes/npcs/blocks/BlockPedestal.java", + "line": 60 + }, + { + "file": "noppes/npcs/blocks/BlockPlaceholder.java", + "line": 34 + }, + { + "file": "noppes/npcs/blocks/BlockShelf.java", + "line": 37 + }, + { + "file": "noppes/npcs/blocks/BlockShelf.java", + "line": 38 + }, + { + "file": "noppes/npcs/blocks/BlockShelf.java", + "line": 39 + }, + { + "file": "noppes/npcs/blocks/BlockShelf.java", + "line": 40 + }, + { + "file": "noppes/npcs/blocks/BlockShelf.java", + "line": 41 + }, + { + "file": "noppes/npcs/blocks/BlockShelf.java", + "line": 42 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 67 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 68 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 69 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 70 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 71 + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "line": 147 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 45 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 46 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 47 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 48 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 49 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 50 + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "line": 40 + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "line": 41 + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "line": 42 + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "line": 43 + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "line": 44 + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "line": 45 + }, + { + "file": "noppes/npcs/blocks/BlockTable.java", + "line": 22 + }, + { + "file": "noppes/npcs/blocks/BlockTable.java", + "line": 23 + }, + { + "file": "noppes/npcs/blocks/BlockTable.java", + "line": 24 + }, + { + "file": "noppes/npcs/blocks/BlockTable.java", + "line": 25 + }, + { + "file": "noppes/npcs/blocks/BlockTable.java", + "line": 26 + }, + { + "file": "noppes/npcs/blocks/BlockTable.java", + "line": 27 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 67 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 68 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 69 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 70 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 71 + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "line": 173 + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "line": 97 + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "line": 98 + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "line": 99 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 90 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 91 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 92 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 93 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 94 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 147 + }, + { + "file": "noppes/npcs/blocks/BlockWeaponRack.java", + "line": 65 + }, + { + "file": "noppes/npcs/blocks/BlockWeaponRack.java", + "line": 66 + }, + { + "file": "noppes/npcs/blocks/BlockWeaponRack.java", + "line": 67 + }, + { + "file": "noppes/npcs/blocks/BlockWeaponRack.java", + "line": 68 + }, + { + "file": "noppes/npcs/blocks/BlockWeaponRack.java", + "line": 69 + }, + { + "file": "noppes/npcs/blocks/BlockWeaponRack.java", + "line": 70 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBook.java", + "line": 9 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBook.java", + "line": 15 + }, + { + "file": "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "line": 183 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 60 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 125 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 344 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 597 + }, + { + "file": "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "line": 163 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 74 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 76 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "line": 167 + }, + { + "file": "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "line": 59 + }, + { + "file": "noppes/npcs/constants/EnumCompanionTalent.java", + "line": 16 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 85 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 88 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 91 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 97 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 100 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 103 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 106 + }, + { + "file": "noppes/npcs/controllers/data/LinkedItem.java", + "line": 130 + }, + { + "file": "noppes/npcs/controllers/data/Magic.java", + "line": 56 + }, + { + "file": "noppes/npcs/controllers/data/Magic.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 175 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 177 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 16 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 18 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 34 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 59 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 60 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 61 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 62 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 63 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 65 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 65 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 66 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 66 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 67 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 67 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 68 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 68 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 69 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 69 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 71 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 72 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 73 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 74 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 75 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 77 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 77 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 78 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 78 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 80 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 80 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 81 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 81 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 82 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 82 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 84 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 84 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 85 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 85 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 86 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 86 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 87 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 87 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 88 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 88 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 89 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 89 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 91 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 91 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 92 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 92 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 93 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 93 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 95 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 95 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 96 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 96 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 98 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 98 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 99 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 99 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 100 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 100 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 101 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 101 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 102 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 102 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 103 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 103 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 105 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 105 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 106 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 106 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 107 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 107 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 108 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 108 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 109 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 109 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 110 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 110 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 112 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 112 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 113 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 113 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 114 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 114 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 115 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 115 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 116 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 116 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 117 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 117 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 119 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 119 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 120 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 120 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 121 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 121 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 122 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 122 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 123 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 123 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 124 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 124 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 126 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 126 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 127 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 127 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 128 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 128 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 129 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 129 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 130 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 130 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 131 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 131 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 133 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 133 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 134 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 134 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 135 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 135 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 136 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 136 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 137 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 137 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 138 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 138 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 140 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 140 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 141 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 141 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 142 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 142 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 143 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 143 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 144 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 144 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 145 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 145 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 147 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 147 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 148 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 148 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 149 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 149 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 150 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 150 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 151 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 151 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 152 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 152 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 154 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 155 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 156 + }, + { + "file": "noppes/npcs/items/ItemCrossbow.java", + "line": 31 + }, + { + "file": "noppes/npcs/items/ItemElementalStaff.java", + "line": 36 + }, + { + "file": "noppes/npcs/items/ItemElementalStaff.java", + "line": 42 + }, + { + "file": "noppes/npcs/items/ItemGun.java", + "line": 48 + }, + { + "file": "noppes/npcs/items/ItemMachineGun.java", + "line": 131 + }, + { + "file": "noppes/npcs/items/ItemMusket.java", + "line": 36 + }, + { + "file": "noppes/npcs/items/ItemNpcTool.java", + "line": 60 + }, + { + "file": "noppes/npcs/items/ItemOrb.java", + "line": 32 + }, + { + "file": "noppes/npcs/items/ItemSlingshot.java", + "line": 36 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 39 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 198 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 201 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 204 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 207 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 210 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 213 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 216 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 218 + }, + { + "file": "noppes/npcs/items/ItemThrowingWeapon.java", + "line": 25 + }, + { + "file": "noppes/npcs/roles/JobBard.java", + "line": 29 + }, + { + "file": "noppes/npcs/roles/JobBard.java", + "line": 67 + }, + { + "file": "noppes/npcs/roles/JobBard.java", + "line": 71 + }, + { + "file": "noppes/npcs/roles/JobBard.java", + "line": 72 + }, + { + "file": "noppes/npcs/roles/JobBard.java", + "line": 75 + }, + { + "file": "noppes/npcs/roles/JobBard.java", + "line": 79 + }, + { + "file": "noppes/npcs/roles/JobBard.java", + "line": 83 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 526 + }, + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 45 + }, + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 48 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 674 + }, + { + "file": "noppes/npcs/scripted/ScriptContainer.java", + "line": 40 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 514 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 595 + }, + { + "file": "tconstruct/client/tabs/InventoryTabCustomNpc.java", + "line": 17 + }, + { + "file": "tconstruct/client/tabs/InventoryTabCustomNpc.java", + "line": 20 + }, + { + "file": "tconstruct/client/tabs/InventoryTabVanilla.java", + "line": 8 + } + ], + "casts": [ + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 489 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 605 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 792 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 691 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 165 + }, + { + "file": "noppes/npcs/containers/ContainerCrate.java", + "line": 67 + }, + { + "file": "noppes/npcs/containers/ContainerMail.java", + "line": 63 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 99 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 179 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 191 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 20 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptNpc.java", + "line": 751 + }, + { + "file": "noppes/npcs/wrapper/MC1710PlatformService.java", + "line": 131 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 178 + } + ] + }, + "methodCalls": { + "getItem": { + "count": 283, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileColorable.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotNPCArmor.java", + "noppes/npcs/containers/SlotNpcBankCurrency.java", + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "noppes/npcs/containers/SlotNpcTraderItems.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/enchants/EnchantInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemThrowingWeapon.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/item/ScriptItemArmor.java", + "noppes/npcs/scripted/item/ScriptItemBlock.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getDisplayName": { + "count": 11, + "files": [ + "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "copy": { + "count": 53, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/containers/InventoryNpcTrader.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getItemDamage": { + "count": 115, + "files": [ + "kamkeel/npcs/network/PacketUtil.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/SlotNpcBankCurrency.java", + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/items/ItemElementalStaff.java", + "noppes/npcs/items/ItemNpcBlock.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemOrb.java", + "noppes/npcs/items/ItemPlaceholder.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemThrowingWeapon.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "writeToNBT": { + "count": 12, + "files": [ + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBook.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getMaxStackSize": { + "count": 14, + "files": [ + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "splitStack": { + "count": 14, + "files": [ + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + }, + "getTagCompound": { + "count": 62, + "files": [ + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java" + ] + }, + "setTagCompound": { + "count": 16, + "files": [ + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java", + "noppes/npcs/scripted/item/ScriptCustomizableItem.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/item/ScriptLinkedItem.java" + ] + }, + "getItemSpriteNumber": { + "count": 11, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java" + ] + }, + "hasEffect": { + "count": 11, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "getHasSubtypes": { + "count": 4, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/containers/SlotNpcBankCurrency.java", + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "noppes/npcs/roles/RoleCompanion.java" + ] + }, + "setItemDamage": { + "count": 9, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipesDefault.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "hasTagCompound": { + "count": 17, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/items/ItemNpcArmorColorable.java" + ] + }, + "damageItem": { + "count": 10, + "files": [ + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/roles/RoleCompanion.java" + ] + }, + "getMaxDamage": { + "count": 6, + "files": [ + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "isItemStackDamageable": { + "count": 5, + "files": [ + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/controllers/data/RecipeAnvil.java" + ] + }, + "setTagInfo": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/player/GuiBook.java" + ] + }, + "func_150996_a": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/player/GuiBook.java" + ] + }, + "isItemEnchanted": { + "count": 5, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getIconIndex": { + "count": 4, + "files": [ + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java" + ] + }, + "hasDisplayName": { + "count": 4, + "files": [ + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getUnlocalizedName": { + "count": 3, + "files": [ + "noppes/npcs/quests/QuestItem.java" + ] + }, + "getAttributeModifiers": { + "count": 2, + "files": [ + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "setStackDisplayName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getEnchantmentTagList": { + "count": 1, + "files": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "addEnchantment": { + "count": 1, + "files": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "hashCode": { + "count": 1, + "files": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + } + }, + "staticCalls": { + "loadItemStackFromNBT": { + "count": 16, + "files": [ + "kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBook.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/controllers/data/AuctionClaim.java", + "noppes/npcs/controllers/data/AuctionListing.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java" + ] + }, + "areItemStackTagsEqual": { + "count": 3, + "files": [ + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/controllers/AuctionController.java" + ] + }, + "areItemStacksEqual": { + "count": 7, + "files": [ + "noppes/npcs/containers/ContainerAuctionListing.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "copyItemStack": { + "count": 2, + "files": [ + "noppes/npcs/containers/InventoryNpcTrader.java" + ] + } + }, + "fieldAccesses": { + "stackSize": { + "count": 202, + "files": [ + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/containers/InventoryNPC.java", + "noppes/npcs/containers/SlotNpcTraderItems.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/quests/QuestItem.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "stackTagCompound": { + "count": 63, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMoneyBag.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "length": { + "count": 7, + "files": [ + "noppes/npcs/EventHooks.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/controllers/AuctionController.java" + ] + } + } + }, + "net.minecraft.client.gui.GuiButton": { + "shortName": "GuiButton", + "package": "net.minecraft.client.gui", + "importCount": 218, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldBuilder.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/gui/EventGuiScriptList.java", + "noppes/npcs/client/gui/GuiBorderBlock.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/GuiNpcDimension.java", + "noppes/npcs/client/gui/GuiNPCFactionSelection.java", + "noppes/npcs/client/gui/GuiNPCLinesEdit.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/GuiNpcPather.java", + "noppes/npcs/client/gui/GuiNpcRedstoneBlock.java", + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "noppes/npcs/client/gui/GuiNpcSelectionInterface.java", + "noppes/npcs/client/gui/GuiNPCTransportCategoryEdit.java", + "noppes/npcs/client/gui/GuiNpcWaypoint.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/client/gui/GuiScriptList.java", + "noppes/npcs/client/gui/SubGuiAnimationFrame.java", + "noppes/npcs/client/gui/SubGuiAnimationOptions.java", + "noppes/npcs/client/gui/SubGuiCloneFolderName.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/SubGuiClonerQuickTags.java", + "noppes/npcs/client/gui/SubGuiColorSelector.java", + "noppes/npcs/client/gui/SubGuiCustomHitbox.java", + "noppes/npcs/client/gui/SubGuiEditText.java", + "noppes/npcs/client/gui/SubGuiEffectGeneral.java", + "noppes/npcs/client/gui/SubGuiFolderSelect.java", + "noppes/npcs/client/gui/SubGuiMagic.java", + "noppes/npcs/client/gui/SubGuiMagicCycle.java", + "noppes/npcs/client/gui/SubGuiMailmanSendSetup.java", + "noppes/npcs/client/gui/SubGuiMoveConfirm.java", + "noppes/npcs/client/gui/SubGuiNpcAvailability.java", + "noppes/npcs/client/gui/SubGuiNpcAvailabilityDialog.java", + "noppes/npcs/client/gui/SubGuiNpcAvailabilityQuest.java", + "noppes/npcs/client/gui/SubGuiNpcBiomes.java", + "noppes/npcs/client/gui/SubGuiNpcCommand.java", + "noppes/npcs/client/gui/SubGuiNpcDialog.java", + "noppes/npcs/client/gui/SubGuiNpcDialogOption.java", + "noppes/npcs/client/gui/SubGuiNpcDialogOptions.java", + "noppes/npcs/client/gui/SubGuiNpcDialogVisual.java", + "noppes/npcs/client/gui/SubGuiNpcDimensions.java", + "noppes/npcs/client/gui/SubGuiNpcFactionOptions.java", + "noppes/npcs/client/gui/SubGuiNpcFactionPoints.java", + "noppes/npcs/client/gui/SubGuiNpcMeleeProperties.java", + "noppes/npcs/client/gui/SubGuiNpcMovement.java", + "noppes/npcs/client/gui/SubGuiNpcName.java", + "noppes/npcs/client/gui/SubGuiNpcPartyOptions.java", + "noppes/npcs/client/gui/SubGuiNpcProfileOptions.java", + "noppes/npcs/client/gui/SubGuiNpcProjectiles.java", + "noppes/npcs/client/gui/SubGuiNpcQuest.java", + "noppes/npcs/client/gui/SubGuiNpcRangeProperties.java", + "noppes/npcs/client/gui/SubGuiNpcResistanceProperties.java", + "noppes/npcs/client/gui/SubGuiNpcRespawn.java", + "noppes/npcs/client/gui/SubGuiNpcTextArea.java", + "noppes/npcs/client/gui/SubGuiNpcTint.java", + "noppes/npcs/client/gui/SubGuiPlayerData.java", + "noppes/npcs/client/gui/SubGuiScriptParticle.java", + "noppes/npcs/client/gui/SubGuiSpawningOptions.java", + "noppes/npcs/client/gui/SubGuiTagSelect.java", + "noppes/npcs/client/gui/SubGuiTrapPresetSelector.java", + "noppes/npcs/client/gui/SubGuiZonePresetSelector.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCAdvancedLinkedNpc.java", + "noppes/npcs/client/gui/advanced/GuiNPCDialogNpcOptions.java", + "noppes/npcs/client/gui/advanced/GuiNPCFactionSetup.java", + "noppes/npcs/client/gui/advanced/GuiNPCLinesMenu.java", + "noppes/npcs/client/gui/advanced/GuiNPCMagic.java", + "noppes/npcs/client/gui/advanced/GuiNPCMarks.java", + "noppes/npcs/client/gui/advanced/GuiNPCNightSetup.java", + "noppes/npcs/client/gui/advanced/GuiNPCSoundsMenu.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityConfig.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityDeleteConfirm.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityEditMode.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityLoad.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityLoadMode.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityMagic.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilitySaveConfirm.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilitySelect.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityTypeSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityVariantSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiChainedAbilityConfig.java", + "noppes/npcs/client/gui/advanced/SubGuiChainedEntrySource.java", + "noppes/npcs/client/gui/advanced/SubGuiChainSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiConditionEdit.java", + "noppes/npcs/client/gui/advanced/SubGuiCustomEffectSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiDuplicateNameConfirm.java", + "noppes/npcs/client/gui/advanced/SubGuiLoadTypeChoice.java", + "noppes/npcs/client/gui/advanced/SubGuiNpcSlotPicker.java", + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCEditAnimation.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/global/GuiNPCManageBanks.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/global/GuiNpcManageRecipes.java", + "noppes/npcs/client/gui/global/GuiNPCManageTags.java", + "noppes/npcs/client/gui/global/GuiNPCManageTransporters.java", + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "noppes/npcs/client/gui/global/GuiNpcQuestReward.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/hud/HudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/item/GuiNpcMagicBook.java", + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcAdvanced.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcAI.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCGlobalMainMenu.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcStats.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiModelArms.java", + "noppes/npcs/client/gui/model/GuiModelBody.java", + "noppes/npcs/client/gui/model/GuiModelColor.java", + "noppes/npcs/client/gui/model/GuiModelHead.java", + "noppes/npcs/client/gui/model/GuiModelLegs.java", + "noppes/npcs/client/gui/model/GuiModelRotate.java", + "noppes/npcs/client/gui/model/GuiModelScale.java", + "noppes/npcs/client/gui/model/GuiPresetSave.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiNpcAnvil.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiQuestCompletion.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/GuiTransportSelection.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBid.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBuyNow.java", + "noppes/npcs/client/gui/player/SubGuiAuctionSearch.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionInv.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeDialog.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeItem.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeKill.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeLocation.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeManual.java", + "noppes/npcs/client/gui/roles/GuiNpcBankSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcBard.java", + "noppes/npcs/client/gui/roles/GuiNpcCompanion.java", + "noppes/npcs/client/gui/roles/GuiNpcConversation.java", + "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcGuard.java", + "noppes/npcs/client/gui/roles/GuiNpcItemGiver.java", + "noppes/npcs/client/gui/roles/GuiNpcMount.java", + "noppes/npcs/client/gui/roles/GuiNpcSpawner.java", + "noppes/npcs/client/gui/roles/GuiNpcTraderSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcTransporter.java", + "noppes/npcs/client/gui/roles/SubGuiNpcConversationLine.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderCooldownReset.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderSettings.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStock.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStockReset.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStockSlots.java", + "noppes/npcs/client/gui/script/EventGuiScriptList.java", + "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/script/SubGuiSelectList.java", + "noppes/npcs/client/gui/select/GuiAnimationSelection.java", + "noppes/npcs/client/gui/select/GuiDialogSelection.java", + "noppes/npcs/client/gui/select/GuiQuestSelection.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcSlider.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "noppes/npcs/client/gui/util/IButtonListener.java", + "noppes/npcs/client/gui/util/SubGuiAPISelect.java", + "noppes/npcs/client/gui/util/SubGuiCategoryMoveConfirm.java", + "noppes/npcs/client/gui/util/SubGuiConfirmLink.java", + "noppes/npcs/client/gui/util/SubGuiNpcCooldownPicker.java", + "tconstruct/client/tabs/AbstractTab.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "class": "MerchantButton" + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "class": "CustomGuiButton" + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "class": "NextPageButton" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcButton.java", + "class": "GuiNpcButton" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcSlider.java", + "class": "GuiNpcSlider" + }, + { + "file": "tconstruct/client/tabs/AbstractTab.java", + "class": "AbstractTab" + } + ], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 95 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 96 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 121 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 124 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 129 + }, + { + "file": "noppes/npcs/client/gui/hud/HudComponent.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "line": 205 + }, + { + "file": "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "line": 206 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 460 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 463 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 465 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 466 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 467 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 468 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 112 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 113 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 114 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 115 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 117 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 109 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "line": 227 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "line": 293 + }, + { + "file": "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "line": 124 + } + ], + "instanceof": [] + }, + "methodCalls": { + "mousePressed": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "id": { + "count": 380, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/gui/GuiBorderBlock.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/GuiNpcDimension.java", + "noppes/npcs/client/gui/GuiNPCFactionSelection.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/GuiNpcPather.java", + "noppes/npcs/client/gui/GuiNpcRedstoneBlock.java", + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "noppes/npcs/client/gui/GuiNpcSelectionInterface.java", + "noppes/npcs/client/gui/GuiNPCTransportCategoryEdit.java", + "noppes/npcs/client/gui/GuiNpcWaypoint.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/client/gui/SubGuiAnimationFrame.java", + "noppes/npcs/client/gui/SubGuiAnimationOptions.java", + "noppes/npcs/client/gui/SubGuiCloneFolderName.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/SubGuiClonerQuickTags.java", + "noppes/npcs/client/gui/SubGuiColorSelector.java", + "noppes/npcs/client/gui/SubGuiCustomHitbox.java", + "noppes/npcs/client/gui/SubGuiEditText.java", + "noppes/npcs/client/gui/SubGuiEffectGeneral.java", + "noppes/npcs/client/gui/SubGuiFolderSelect.java", + "noppes/npcs/client/gui/SubGuiMagic.java", + "noppes/npcs/client/gui/SubGuiMagicCycle.java", + "noppes/npcs/client/gui/SubGuiMailmanSendSetup.java", + "noppes/npcs/client/gui/SubGuiMoveConfirm.java", + "noppes/npcs/client/gui/SubGuiNpcCommand.java", + "noppes/npcs/client/gui/SubGuiNpcDialog.java", + "noppes/npcs/client/gui/SubGuiNpcDialogOptions.java", + "noppes/npcs/client/gui/SubGuiNpcFactionOptions.java", + "noppes/npcs/client/gui/SubGuiNpcFactionPoints.java", + "noppes/npcs/client/gui/SubGuiNpcPartyOptions.java", + "noppes/npcs/client/gui/SubGuiNpcProfileOptions.java", + "noppes/npcs/client/gui/SubGuiNpcRangeProperties.java", + "noppes/npcs/client/gui/SubGuiNpcResistanceProperties.java", + "noppes/npcs/client/gui/SubGuiNpcRespawn.java", + "noppes/npcs/client/gui/SubGuiNpcTextArea.java", + "noppes/npcs/client/gui/SubGuiNpcTint.java", + "noppes/npcs/client/gui/SubGuiPlayerData.java", + "noppes/npcs/client/gui/SubGuiScriptParticle.java", + "noppes/npcs/client/gui/SubGuiTagSelect.java", + "noppes/npcs/client/gui/SubGuiTrapPresetSelector.java", + "noppes/npcs/client/gui/SubGuiZonePresetSelector.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCAdvancedLinkedNpc.java", + "noppes/npcs/client/gui/advanced/GuiNPCDialogNpcOptions.java", + "noppes/npcs/client/gui/advanced/GuiNPCLinesMenu.java", + "noppes/npcs/client/gui/advanced/GuiNPCMagic.java", + "noppes/npcs/client/gui/advanced/GuiNPCMarks.java", + "noppes/npcs/client/gui/advanced/GuiNPCSoundsMenu.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityConfig.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityDeleteConfirm.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityEditMode.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityLoad.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityLoadMode.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityMagic.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilitySaveConfirm.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilitySelect.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityTypeSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityVariantSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiChainedAbilityConfig.java", + "noppes/npcs/client/gui/advanced/SubGuiChainedEntrySource.java", + "noppes/npcs/client/gui/advanced/SubGuiChainSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiConditionEdit.java", + "noppes/npcs/client/gui/advanced/SubGuiCustomEffectSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiDuplicateNameConfirm.java", + "noppes/npcs/client/gui/advanced/SubGuiLoadTypeChoice.java", + "noppes/npcs/client/gui/advanced/SubGuiNpcSlotPicker.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCEditAnimation.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/global/GuiNPCManageTransporters.java", + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "noppes/npcs/client/gui/global/GuiNpcQuestReward.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/hud/HudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCGlobalMainMenu.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiModelRotate.java", + "noppes/npcs/client/gui/model/GuiModelScale.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiQuestCompletion.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBid.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBuyNow.java", + "noppes/npcs/client/gui/player/SubGuiAuctionSearch.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionInv.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeItem.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeKill.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeLocation.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeManual.java", + "noppes/npcs/client/gui/roles/GuiNpcCompanion.java", + "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcMount.java", + "noppes/npcs/client/gui/roles/GuiNpcTraderSetup.java", + "noppes/npcs/client/gui/roles/SubGuiNpcConversationLine.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderCooldownReset.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderSettings.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStock.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStockReset.java", + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStockSlots.java", + "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/select/GuiAnimationSelection.java", + "noppes/npcs/client/gui/select/GuiDialogSelection.java", + "noppes/npcs/client/gui/select/GuiQuestSelection.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/SubGuiAPISelect.java", + "noppes/npcs/client/gui/util/SubGuiCategoryMoveConfirm.java", + "noppes/npcs/client/gui/util/SubGuiConfirmLink.java", + "noppes/npcs/client/gui/util/SubGuiNpcCooldownPicker.java" + ] + }, + "displayString": { + "count": 17, + "files": [ + "noppes/npcs/client/gui/SubGuiNpcPartyOptions.java", + "noppes/npcs/client/gui/SubGuiNpcProfileOptions.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/hud/HudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java" + ] + }, + "enabled": { + "count": 10, + "files": [ + "noppes/npcs/client/gui/global/GuiNpcManageMagic.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiRecipes.java" + ] + }, + "xPosition": { + "count": 7, + "files": [ + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java" + ] + }, + "yPosition": { + "count": 7, + "files": [ + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java" + ] + }, + "height": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java" + ] + }, + "width": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java" + ] + }, + "visible": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/util/GuiNPCInterface.java" + ] + } + } + }, + "net.minecraft.entity.EntityLivingBase": { + "shortName": "EntityLivingBase", + "package": "net.minecraft.entity", + "importCount": 201, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/addon/DBCAddon.java", + "kamkeel/npcs/addon/GeckoAddon.java", + "kamkeel/npcs/addon/client/DBCClient.java", + "kamkeel/npcs/addon/client/GeckoAddonClient.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/controllers/EnergyController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/ConcurrentSlot.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHPThreshold.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/data/IAbilityAction.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java", + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "kamkeel/npcs/controllers/data/ability/data/effect/IEffectAction.java", + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java", + "kamkeel/npcs/controllers/data/ability/extender/IAbilityExtender.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "kamkeel/npcs/controllers/data/energy/IEnergyExtender.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityOrb.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "kamkeel/npcs/util/AttributeAttackUtil.java", + "net/minecraft/client/renderer/entity/NPCRendererHelper.java", + "noppes/npcs/AbstractDataAbilities.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/CombatHandler.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIDodgeShoot.java", + "noppes/npcs/ai/EntityAIFollow.java", + "noppes/npcs/ai/EntityAILeapAtTargetNpc.java", + "noppes/npcs/ai/EntityAILook.java", + "noppes/npcs/ai/EntityAIOrbitTarget.java", + "noppes/npcs/ai/EntityAIPounceTarget.java", + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/ai/EntityAISprintToTarget.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/selector/NPCAttackSelector.java", + "noppes/npcs/ai/target/EntityAIClearTarget.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/ai/target/EntityAIOwnerHurtByTarget.java", + "noppes/npcs/ai/target/EntityAIOwnerHurtTarget.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeKill.java", + "noppes/npcs/client/gui/roles/GuiNpcGuard.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/util/ModelPartInterface.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "noppes/npcs/client/renderer/MarkRenderer.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderNpcSlime.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelData.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemGunChainsaw.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/mixin/MixinRendererLivingEntity.java", + "noppes/npcs/roles/JobHealer.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptEnergyBeam.java", + "noppes/npcs/scripted/entity/ScriptEnergyDisc.java", + "noppes/npcs/scripted/entity/ScriptEnergyLaser.java", + "noppes/npcs/scripted/entity/ScriptEnergyOrb.java", + "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java", + "noppes/npcs/scripted/entity/ScriptEnergySlicer.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "noppes/npcs/scripted/event/AbilityEvent.java", + "noppes/npcs/scripted/event/ChainEvent.java", + "noppes/npcs/scripted/event/CustomNPCsEvent.java", + "noppes/npcs/scripted/event/NpcEvent.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java", + "noppes/npcs/scripted/roles/ScriptJobSpawner.java", + "noppes/npcs/scripted/wrapper/ScriptDataAbilities.java", + "noppes/npcs/util/IProjectileCallback.java", + "noppes/npcs/util/NPCMountUtil.java", + "noppes/npcs/wrapper/MC1710PlatformService.java" + ], + "paAbstraction": "IEntityLivingBase", + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 2657 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 2770 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "line": 147 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "line": 238 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "line": 115 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "line": 147 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "line": 178 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 558 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "line": 399 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "line": 293 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityBeam.java", + "line": 339 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityDisc.java", + "line": 342 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityLaser.java", + "line": 229 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityLaser.java", + "line": 269 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 408 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 443 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 517 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 558 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 566 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 576 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 597 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 599 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 163 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 175 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 183 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyPanel.java", + "line": 229 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyPanel.java", + "line": 237 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 905 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1026 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1035 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1047 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1056 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1441 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1442 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1540 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1652 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1854 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySlicer.java", + "line": 146 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 237 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 239 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 325 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 333 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 343 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 220 + }, + { + "file": "noppes/npcs/DataInventory.java", + "line": 137 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 653 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 703 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 93 + }, + { + "file": "noppes/npcs/ai/CombatHandler.java", + "line": 65 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 32 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 37 + }, + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 96 + }, + { + "file": "noppes/npcs/client/renderer/NpcItemRenderer.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 224 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 253 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "line": 136 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "line": 183 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "line": 101 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 363 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 380 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 396 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 695 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1520 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1523 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 2301 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 450 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 469 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 631 + }, + { + "file": "noppes/npcs/roles/JobHealer.java", + "line": 42 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 391 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 445 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java", + "line": 303 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java", + "line": 336 + }, + { + "file": "noppes/npcs/scripted/wrapper/ScriptDataAbilities.java", + "line": 229 + }, + { + "file": "noppes/npcs/scripted/wrapper/ScriptDataAbilities.java", + "line": 235 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 2656 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 2769 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "line": 142 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "line": 237 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "line": 114 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "line": 131 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "line": 177 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 557 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "line": 395 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "line": 292 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "line": 100 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityBeam.java", + "line": 338 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityDisc.java", + "line": 341 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityLaser.java", + "line": 223 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityLaser.java", + "line": 268 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 408 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 443 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 517 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 554 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 562 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 575 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "line": 595 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 159 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 173 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "line": 182 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyPanel.java", + "line": 225 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyPanel.java", + "line": 233 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 903 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1021 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1030 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1045 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1055 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1441 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1516 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1537 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1648 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1853 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySlicer.java", + "line": 145 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 234 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 321 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 329 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergySweeper.java", + "line": 342 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 219 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1054 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 653 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 703 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 92 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 543 + }, + { + "file": "noppes/npcs/ai/CombatHandler.java", + "line": 64 + }, + { + "file": "noppes/npcs/ai/EntityAIRangedAttack.java", + "line": 37 + }, + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 252 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 362 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 694 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1519 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1522 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 2300 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 450 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 469 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 388 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 444 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java", + "line": 335 + }, + { + "file": "noppes/npcs/scripted/roles/ScriptJobSpawner.java", + "line": 54 + }, + { + "file": "noppes/npcs/scripted/wrapper/ScriptDataAbilities.java", + "line": 228 + }, + { + "file": "noppes/npcs/scripted/wrapper/ScriptDataAbilities.java", + "line": 234 + } + ] + }, + "methodCalls": { + "attackEntityFrom": { + "count": 22, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java" + ] + }, + "addVelocity": { + "count": 6, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java" + ] + }, + "getEntityId": { + "count": 51, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java" + ] + }, + "getEyeHeight": { + "count": 29, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java" + ] + }, + "getHealth": { + "count": 8, + "files": [ + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHPThreshold.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/items/ItemGunChainsaw.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "getMaxHealth": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHPThreshold.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "noppes/npcs/roles/JobHealer.java" + ] + }, + "getHeldItem": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java" + ] + }, + "getEquipmentInSlot": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "noppes/npcs/client/EntityUtil.java" + ] + }, + "setFire": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java" + ] + }, + "addPotionEffect": { + "count": 7, + "files": [ + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemStaff.java" + ] + }, + "isEntityAlive": { + "count": 10, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "noppes/npcs/ai/CombatHandler.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIDodgeShoot.java", + "noppes/npcs/ai/EntityAIOrbitTarget.java", + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "heal": { + "count": 3, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "noppes/npcs/roles/JobHealer.java" + ] + }, + "getDistanceToEntity": { + "count": 9, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "noppes/npcs/ai/EntityAIOrbitTarget.java" + ] + }, + "getLookVec": { + "count": 5, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/util/AnchorPointHelper.java" + ] + }, + "setPosition": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "setPositionAndUpdate": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "moveEntity": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java" + ] + }, + "getItemIcon": { + "count": 4, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "getCommandSenderName": { + "count": 8, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java" + ] + }, + "getDistanceSqToEntity": { + "count": 9, + "files": [ + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAILook.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java" + ] + }, + "getClass": { + "count": 9, + "files": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/compat/PixelmonHelper.java" + ] + }, + "getDistanceSq": { + "count": 4, + "files": [ + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java" + ] + }, + "getLook": { + "count": 2, + "files": [ + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "getAITarget": { + "count": 3, + "files": [ + "noppes/npcs/ai/target/EntityAIOwnerHurtByTarget.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "func_142015_aE": { + "count": 2, + "files": [ + "noppes/npcs/ai/target/EntityAIOwnerHurtByTarget.java" + ] + }, + "getLastAttacker": { + "count": 1, + "files": [ + "noppes/npcs/ai/target/EntityAIOwnerHurtTarget.java" + ] + }, + "getLastAttackerTime": { + "count": 2, + "files": [ + "noppes/npcs/ai/target/EntityAIOwnerHurtTarget.java" + ] + }, + "setCurrentItemOrArmor": { + "count": 1, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "isChild": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/model/GuiCreationScreen.java" + ] + }, + "writeEntityToNBT": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/model/GuiCreationScreen.java" + ] + }, + "equals": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/model/GuiCreationScreen.java" + ] + }, + "isInvisible": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "getExtendedProperties": { + "count": 1, + "files": [ + "noppes/npcs/controllers/data/MarkData.java" + ] + }, + "getEntityData": { + "count": 5, + "files": [ + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "onUpdate": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityCustomNpc.java" + ] + }, + "getUniqueID": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "setArrowCountInEntity": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "getArrowCountInEntity": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "getRNG": { + "count": 4, + "files": [ + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemStaff.java" + ] + }, + "writeToNBTOptional": { + "count": 1, + "files": [ + "noppes/npcs/items/ItemSoulstoneEmpty.java" + ] + }, + "setRevengeTarget": { + "count": 2, + "files": [ + "noppes/npcs/roles/JobSpawner.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "posX": { + "count": 177, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/AbstractDataAbilities.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemGunChainsaw.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java" + ] + }, + "posZ": { + "count": 177, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/AbstractDataAbilities.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemGunChainsaw.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java" + ] + }, + "hurtResistantTime": { + "count": 6, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "motionX": { + "count": 26, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/client/EntityUtil.java" + ] + }, + "motionY": { + "count": 19, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/client/EntityUtil.java" + ] + }, + "motionZ": { + "count": 26, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/client/EntityUtil.java" + ] + }, + "velocityChanged": { + "count": 22, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java" + ] + }, + "rotationYaw": { + "count": 88, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "worldObj": { + "count": 96, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemGunChainsaw.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "posY": { + "count": 122, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/CustomAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/AbstractDataAbilities.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemGunChainsaw.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java" + ] + }, + "stepHeight": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java" + ] + }, + "height": { + "count": 28, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/renderer/MarkRenderer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/items/ItemGunChainsaw.java" + ] + }, + "prevRenderYawOffset": { + "count": 18, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "renderYawOffset": { + "count": 37, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "prevRotationYaw": { + "count": 19, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "prevRotationYawHead": { + "count": 16, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "rotationYawHead": { + "count": 34, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/renderer/MarkRenderer.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "rotationPitch": { + "count": 37, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "yOffset": { + "count": 10, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "isDead": { + "count": 24, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "noppes/npcs/AbstractDataAbilities.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/scripted/roles/ScriptJobSpawner.java" + ] + }, + "width": { + "count": 13, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/client/ClientProxy.java" + ] + }, + "fallDistance": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java" + ] + }, + "onGround": { + "count": 6, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/client/EntityUtil.java" + ] + }, + "isCollidedHorizontally": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java" + ] + }, + "prevPosX": { + "count": 7, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "prevPosY": { + "count": 6, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "prevPosZ": { + "count": 7, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "boundingBox": { + "count": 22, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "deathTime": { + "count": 5, + "files": [ + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "distanceWalkedModified": { + "count": 3, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "prevDistanceWalkedModified": { + "count": 1, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "distanceWalkedOnStepModified": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "moveForward": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "moveStrafing": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "prevRotationPitch": { + "count": 6, + "files": [ + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "cameraPitch": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "prevCameraPitch": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "lastTickPosX": { + "count": 4, + "files": [ + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java" + ] + }, + "lastTickPosY": { + "count": 4, + "files": [ + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java" + ] + }, + "lastTickPosZ": { + "count": 4, + "files": [ + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java" + ] + }, + "limbSwingAmount": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "prevLimbSwingAmount": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "limbSwing": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "swingProgress": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "prevSwingProgress": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "isSwingInProgress": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "swingProgressInt": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "ticksExisted": { + "count": 2, + "files": [ + "noppes/npcs/client/EntityUtil.java" + ] + }, + "textureLocation": { + "count": 1, + "files": [ + "noppes/npcs/client/model/part/ModelTail.java" + ] + }, + "display": { + "count": 1, + "files": [ + "noppes/npcs/client/model/part/ModelTail.java" + ] + }, + "hurtTime": { + "count": 2, + "files": [ + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "maxHurtTime": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "attackedAtYaw": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "dimension": { + "count": 3, + "files": [ + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/roles/JobHealer.java" + ] + }, + "isJumping": { + "count": 2, + "files": [ + "noppes/npcs/util/NPCMountUtil.java" + ] + } + } + }, + "net.minecraft.client.Minecraft": { + "shortName": "Minecraft", + "package": "net.minecraft.client", + "importCount": 180, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/ParticlePacket.java", + "kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java", + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java", + "kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/CustomNpcResourceListener.java", + "noppes/npcs/client/ImageDownloadAlt.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/TextBlockClient.java", + "noppes/npcs/client/VersionChecker.java", + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/controllers/ScriptSoundController.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLine.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/custom/interfaces/IGuiComponent.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/interfaces/IOverlayComponent.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiButtonBiDirectional.java", + "noppes/npcs/client/gui/util/GuiButtonNextPage.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/gui/util/GuiNpcSlider.java", + "noppes/npcs/client/gui/util/GuiNpcSquareButton.java", + "noppes/npcs/client/gui/util/GuiNPCStringSlot.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiToggleButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/GutterIconRenderer.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "noppes/npcs/client/gui/util/script/interpreter/js_parser/JSTypeRegistry.java", + "noppes/npcs/client/key/KeyPreset.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/renderer/AnimationHelper.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/MarkRenderer.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/config/GlyphCache.java", + "noppes/npcs/config/StringCache.java", + "noppes/npcs/config/legacy/LegacyConfig.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/mixin/MixinEntityRenderer.java", + "noppes/npcs/mixin/MixinItemRenderer.java", + "noppes/npcs/mixin/MixinItemStack.java", + "noppes/npcs/roles/JobBard.java", + "somehussar/gui/ImmediateTextField.java", + "tconstruct/client/tabs/AbstractTab.java", + "tconstruct/client/tabs/InventoryTabCustomNpc.java", + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getTextureManager": { + "count": 94, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiButtonBiDirectional.java", + "noppes/npcs/client/gui/util/GuiButtonNextPage.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcSlider.java", + "noppes/npcs/client/gui/util/GuiNpcSquareButton.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiToggleButton.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "displayGuiScreen": { + "count": 19, + "files": [ + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "tconstruct/client/tabs/InventoryTabCustomNpc.java", + "tconstruct/client/tabs/TabRegistry.java" + ] + }, + "isGamePaused": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientTickHandler.java" + ] + }, + "setIngameFocus": { + "count": 2, + "files": [ + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java" + ] + }, + "getNetHandler": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "getResourceManager": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ] + }, + "getFramebuffer": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ] + }, + "func_152342_ad": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ] + } + }, + "staticCalls": { + "getMinecraft": { + "count": 387, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/ParticlePacket.java", + "kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java", + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java", + "kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java", + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java", + "kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/RolePacket.java", + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java", + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/CustomNpcResourceListener.java", + "noppes/npcs/client/ImageDownloadAlt.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/TextBlockClient.java", + "noppes/npcs/client/VersionChecker.java", + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/controllers/ScriptSoundController.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/gui/util/GuiNPCStringSlot.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/GutterIconRenderer.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "noppes/npcs/client/gui/util/script/interpreter/js_parser/JSTypeRegistry.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/MarkRenderer.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/config/GlyphCache.java", + "noppes/npcs/config/StringCache.java", + "noppes/npcs/config/legacy/LegacyConfig.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/mixin/MixinEntityRenderer.java", + "noppes/npcs/mixin/MixinItemRenderer.java", + "noppes/npcs/mixin/MixinItemStack.java", + "noppes/npcs/roles/JobBard.java", + "somehussar/gui/ImmediateTextField.java", + "tconstruct/client/tabs/InventoryTabCustomNpc.java" + ] + }, + "getSystemTime": { + "count": 33, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/renderer/AnimationHelper.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + } + }, + "fieldAccesses": { + "thePlayer": { + "count": 72, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "tconstruct/client/tabs/TabRegistry.java" + ] + }, + "currentScreen": { + "count": 11, + "files": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java" + ] + }, + "theWorld": { + "count": 14, + "files": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "gameSettings": { + "count": 29, + "files": [ + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "displayWidth": { + "count": 36, + "files": [ + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/config/GlyphCache.java" + ] + }, + "displayHeight": { + "count": 40, + "files": [ + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/config/GlyphCache.java" + ] + }, + "fontRenderer": { + "count": 33, + "files": [ + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiButtonBiDirectional.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiToggleButton.java", + "tconstruct/client/tabs/AbstractTab.java" + ] + }, + "renderEngine": { + "count": 12, + "files": [ + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "tconstruct/client/tabs/AbstractTab.java" + ] + }, + "entityRenderer": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "renderViewEntity": { + "count": 7, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java" + ] + } + } + }, + "net.minecraft.world.World": { + "shortName": "World", + "package": "net.minecraft.world", + "importCount": 172, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNpc.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/utils/Utils.java", + "kamkeel/npcs/client/renderer/lightning/LightningBolt.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/controllers/EnergyController.java", + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/energycharge/EnergyChargePreviewManager.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphManager.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityOrb.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "kamkeel/npcs/network/packets/data/ParticlePacket.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIFollow.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockTrigger.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityRainbowFX.java", + "noppes/npcs/client/fx/ZoneParticleFX.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeKill.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/controllers/ScriptEntityData.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/entity/EntityChairMount.java", + "noppes/npcs/entity/EntityCustomNpc.java", + "noppes/npcs/entity/EntityDialogNpc.java", + "noppes/npcs/entity/EntityFakeLiving.java", + "noppes/npcs/entity/EntityMagicProjectile.java", + "noppes/npcs/entity/EntityNpcCrystal.java", + "noppes/npcs/entity/EntityNpcDragon.java", + "noppes/npcs/entity/EntityNPCFlying.java", + "noppes/npcs/entity/EntityNPCGolem.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityNpcPony.java", + "noppes/npcs/entity/EntityNpcSlime.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/ModelData.java", + "noppes/npcs/entity/old/EntityNPCDwarfFemale.java", + "noppes/npcs/entity/old/EntityNPCDwarfMale.java", + "noppes/npcs/entity/old/EntityNPCElfFemale.java", + "noppes/npcs/entity/old/EntityNPCElfMale.java", + "noppes/npcs/entity/old/EntityNpcEnderchibi.java", + "noppes/npcs/entity/old/EntityNPCEnderman.java", + "noppes/npcs/entity/old/EntityNPCFurryFemale.java", + "noppes/npcs/entity/old/EntityNPCFurryMale.java", + "noppes/npcs/entity/old/EntityNPCHumanFemale.java", + "noppes/npcs/entity/old/EntityNPCHumanMale.java", + "noppes/npcs/entity/old/EntityNpcMonsterFemale.java", + "noppes/npcs/entity/old/EntityNpcMonsterMale.java", + "noppes/npcs/entity/old/EntityNpcNagaFemale.java", + "noppes/npcs/entity/old/EntityNpcNagaMale.java", + "noppes/npcs/entity/old/EntityNPCOrcFemale.java", + "noppes/npcs/entity/old/EntityNPCOrcMale.java", + "noppes/npcs/entity/old/EntityNpcSkeleton.java", + "noppes/npcs/entity/old/EntityNPCVillager.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemLinked.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMoneyBag.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemMusicClarinet.java", + "noppes/npcs/items/ItemMusicOracina.java", + "noppes/npcs/items/ItemMusicViolin.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemScripted.java", + "noppes/npcs/items/ItemShield.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/items/ItemThrowingWeapon.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptTelegraph.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java", + "noppes/npcs/wrapper/MC1710PlatformService.java" + ], + "paAbstraction": "IWorld", + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 158 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 164 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 170 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 176 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 182 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 188 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 194 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 200 + }, + { + "file": "kamkeel/npcs/controllers/EnergyController.java", + "line": 206 + }, + { + "file": "kamkeel/npcs/controllers/TelegraphController.java", + "line": 365 + }, + { + "file": "noppes/npcs/scripted/ScriptTelegraph.java", + "line": 193 + }, + { + "file": "noppes/npcs/wrapper/MC1710PlatformService.java", + "line": 136 + } + ], + "instanceof": [] + }, + "methodCalls": { + "spawnEntityInWorld": { + "count": 18, + "files": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemThrowingWeapon.java" + ] + }, + "getBlock": { + "count": 38, + "files": [ + "foxz/command/CmdClone.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/items/ItemNpcTool.java" + ] + }, + "getEntitiesWithinAABB": { + "count": 8, + "files": [ + "foxz/commandhelper/AbstractCommandHelper.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "noppes/npcs/blocks/BlockChair.java" + ] + }, + "rayTraceBlocks": { + "count": 3, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIStalkTarget.java" + ] + }, + "playSoundAtEntity": { + "count": 11, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemThrowingWeapon.java" + ] + }, + "spawnParticle": { + "count": 29, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/network/packets/data/ParticlePacket.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/items/ItemMusic.java" + ] + }, + "getEntitiesWithinAABBExcludingEntity": { + "count": 3, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java" + ] + }, + "getEntityByID": { + "count": 9, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java", + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java", + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/items/ItemNpcMovingPath.java" + ] + }, + "checkChunksExist": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "getChunkFromChunkCoords": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java" + ] + }, + "onEntityAdded": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "getActualHeight": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getWorldInfo": { + "count": 3, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getClosestPlayer": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getBiomeGenForCoords": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getTopSolidOrLiquidBlock": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "isDaytime": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIFindShade.java" + ] + }, + "canBlockSeeTheSky": { + "count": 6, + "files": [ + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "getLightBrightness": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIFindShade.java" + ] + }, + "getFullBlockLightValue": { + "count": 2, + "files": [ + "noppes/npcs/ai/EntityAIMoveIndoors.java" + ] + }, + "getTotalWorldTime": { + "count": 3, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/items/ItemLinked.java" + ] + }, + "getBlockMetadata": { + "count": 24, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/items/ItemNpcTool.java" + ] + }, + "getTileEntity": { + "count": 68, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + }, + "markBlockForUpdate": { + "count": 14, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "isAirBlock": { + "count": 4, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "setBlockToAir": { + "count": 9, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "setBlockMetadataWithNotify": { + "count": 24, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "setBlock": { + "count": 4, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "playSoundEffect": { + "count": 3, + "files": [ + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/items/ItemMusic.java" + ] + }, + "func_147453_f": { + "count": 4, + "files": [ + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "playSound": { + "count": 1, + "files": [ + "noppes/npcs/blocks/BlockCampfire.java" + ] + }, + "notifyBlockOfNeighborChange": { + "count": 1, + "files": [ + "noppes/npcs/blocks/BlockLightable.java" + ] + }, + "notifyBlocksOfNeighborChange": { + "count": 14, + "files": [ + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockTrigger.java" + ] + }, + "getIndirectPowerLevelTo": { + "count": 1, + "files": [ + "noppes/npcs/blocks/BlockScripted.java" + ] + }, + "updateLightByType": { + "count": 2, + "files": [ + "noppes/npcs/blocks/tiles/TileScripted.java" + ] + }, + "blockExists": { + "count": 1, + "files": [ + "noppes/npcs/client/fx/CustomFX.java" + ] + }, + "getLightBrightnessForSkyBlocks": { + "count": 1, + "files": [ + "noppes/npcs/client/fx/CustomFX.java" + ] + }, + "getMCWorld": { + "count": 1, + "files": [ + "noppes/npcs/scripted/BlockScriptedWrapper.java" + ] + } + }, + "staticCalls": { + "doesBlockHaveSolidTopSurface": { + "count": 2, + "files": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ai/EntityAIFollow.java" + ] + } + }, + "fieldAccesses": { + "provider": { + "count": 13, + "files": [ + "kamkeel/npcs/controllers/TelegraphController.java", + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/scripted/NpcAPI.java" + ] + }, + "isRemote": { + "count": 55, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemKunai.java", + "noppes/npcs/items/ItemLinked.java", + "noppes/npcs/items/ItemMoneyBag.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemScripted.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/items/ItemThrowingWeapon.java" + ] + }, + "rand": { + "count": 1, + "files": [ + "kamkeel/npcs/network/packets/data/ParticlePacket.java" + ] + }, + "loadedEntityList": { + "count": 3, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java" + ] + } + } + }, + "net.minecraft.util.ResourceLocation": { + "shortName": "ResourceLocation", + "package": "net.minecraft.util", + "importCount": 145, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClient.java", + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/command/ConfigCommand.java", + "net/minecraft/client/renderer/entity/NPCRendererHelper.java", + "nikedemos/markovnames/MarkovDictionary.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientCacheHandler.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/CustomNpcResourceListener.java", + "noppes/npcs/client/ImageDownloadAlt.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptClientSound.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/SubGuiColorSelector.java", + "noppes/npcs/client/gui/SubGuiEffectGeneral.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManageRecipes.java", + "noppes/npcs/client/gui/global/GuiNpcQuestReward.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiModelColor.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiNpcAnvil.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/GuiQuestCompletion.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/GuiTransportSelection.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionInv.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeItem.java", + "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java", + "noppes/npcs/client/gui/roles/GuiNpcTraderSetup.java", + "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiButtonBiDirectional.java", + "noppes/npcs/client/gui/util/GuiButtonNextPage.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java", + "noppes/npcs/client/gui/util/GuiCustomScroll.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiHoverText.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNPCInterface2.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiToggleButton.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/GutterIconRenderer.java", + "noppes/npcs/client/gui/util/script/interpreter/js_parser/JSTypeRegistry.java", + "noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java", + "noppes/npcs/client/model/part/ModelSkirt.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/util/ModelPartInterface.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/MarkRenderer.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/config/GlyphCache.java", + "noppes/npcs/config/StringCache.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityNpcPony.java", + "noppes/npcs/entity/data/ModelPartData.java", + "noppes/npcs/mixin/MixinItemRenderer.java", + "noppes/npcs/scripted/ScriptBlock.java", + "tconstruct/client/tabs/AbstractTab.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 128 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 147 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 183 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 189 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 195 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 201 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 216 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 222 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 228 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 234 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 240 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 247 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 255 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 261 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 299 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 320 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 326 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 332 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 338 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 365 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 390 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 396 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 402 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 408 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 414 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 420 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 426 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 432 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 438 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 445 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 453 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 459 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 498 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 524 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 530 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 536 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 542 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 563 + }, + { + "file": "kamkeel/npcs/client/renderer/RenderEnergy.java", + "line": 28 + }, + { + "file": "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "line": 27 + }, + { + "file": "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "line": 28 + }, + { + "file": "nikedemos/markovnames/MarkovDictionary.java", + "line": 216 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 913 + }, + { + "file": "noppes/npcs/client/CustomNpcResourceListener.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/NoppesUtil.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/controllers/MusicController.java", + "line": 161 + }, + { + "file": "noppes/npcs/client/controllers/ScriptClientSound.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/fx/CustomFX.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/fx/EntityEnderFX.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/fx/EntityEnderFX.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/gui/SubGuiColorSelector.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/SubGuiEffectGeneral.java", + "line": 148 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 642 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "line": 412 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "line": 518 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLine.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "line": 351 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "line": 457 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "line": 168 + }, + { + "file": "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "line": 206 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "line": 621 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "line": 193 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "line": 219 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 162 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 164 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 166 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 168 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 170 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 172 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "line": 533 + }, + { + "file": "noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/gui/model/GuiModelColor.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "line": 195 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/gui/player/GuiCrate.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/gui/player/GuiDialogImage.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/gui/player/GuiDialogImage.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "line": 363 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/gui/player/GuiNpcAnvil.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/gui/player/GuiQuestCompletion.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/gui/player/GuiRecipes.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/gui/player/GuiTransportSelection.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionInv.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionInv.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "line": 151 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeItem.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/gui/roles/GuiNpcTraderSetup.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "line": 152 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "line": 239 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "line": 151 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "line": 271 + }, + { + "file": "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/gui/util/GuiButtonBiDirectional.java", + "line": 8 + }, + { + "file": "noppes/npcs/client/gui/util/GuiButtonNextPage.java", + "line": 9 + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "line": 72 + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java", + "line": 10 + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java", + "line": 11 + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java", + "line": 12 + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/gui/util/GuiCustomScroll.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/gui/util/GuiHoverText.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "line": 13 + }, + { + "file": "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "line": 11 + }, + { + "file": "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "line": 101 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "line": 105 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "line": 110 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface2.java", + "line": 8 + }, + { + "file": "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/gui/util/script/interpreter/hover/GutterIconRenderer.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/gui/util/script/interpreter/js_parser/JSTypeRegistry.java", + "line": 265 + }, + { + "file": "noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/renderer/ImageData.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/renderer/ImageData.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/renderer/ImageData.java", + "line": 177 + }, + { + "file": "noppes/npcs/client/renderer/MarkRenderer.java", + "line": 13 + }, + { + "file": "noppes/npcs/client/renderer/MarkRenderer.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/renderer/MarkRenderer.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/renderer/MarkRenderer.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/renderer/MarkRenderer.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/renderer/MarkRenderer.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/renderer/NpcItemRenderer.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 314 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 562 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 564 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 590 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 638 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 640 + }, + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "line": 55 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "line": 30 + }, + { + "file": "noppes/npcs/entity/data/ModelPartData.java", + "line": 50 + }, + { + "file": "noppes/npcs/scripted/ScriptBlock.java", + "line": 104 + }, + { + "file": "tconstruct/client/tabs/AbstractTab.java", + "line": 13 + } + ], + "casts": [ + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 158 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 168 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 272 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 282 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 470 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 480 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 821 + }, + { + "file": "noppes/npcs/client/model/part/ModelSkirt.java", + "line": 71 + } + ], + "instanceof": [] + }, + "methodCalls": { + "toString": { + "count": 9, + "files": [ + "net/minecraft/client/renderer/entity/NPCRendererHelper.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ] + }, + "getResourceDomain": { + "count": 7, + "files": [ + "nikedemos/markovnames/MarkovDictionary.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/renderer/ImageData.java" + ] + }, + "getResourcePath": { + "count": 14, + "files": [ + "nikedemos/markovnames/MarkovDictionary.java", + "noppes/npcs/client/ClientCacheHandler.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/renderer/ImageData.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "length": { + "count": 1, + "files": [ + "noppes/npcs/client/fx/EntityBigSmokeFX.java" + ] + } + } + }, + "net.minecraft.client.model.ModelRenderer": { + "shortName": "ModelRenderer", + "package": "net.minecraft.client.model", + "importCount": 122, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClient.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCGolem.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelNpcSlime.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelBigSign.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelBodywear.java", + "noppes/npcs/client/model/part/ModelBreasts.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelEars.java", + "noppes/npcs/client/model/part/ModelHair.java", + "noppes/npcs/client/model/part/ModelHeadwear.java", + "noppes/npcs/client/model/part/ModelHorns.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelLimbWear.java", + "noppes/npcs/client/model/part/ModelSnout.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/model/util/ModelPartInterface.java", + "noppes/npcs/client/model/util/ModelPlane.java", + "noppes/npcs/client/model/util/ModelPlaneRenderer.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/mixin/MixinModelRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "class": "ModelDuckBeak" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "class": "ModelAntennasBack" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "class": "ModelAntennasFront" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "class": "ModelAntlerHorns" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "class": "ModelBullHorns" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "class": "ModelDigitigradeLegs" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "class": "ModelMermaidLegs" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "class": "ModelMermaidLegs2" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "class": "ModelNagaLegs" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "class": "ModelCanineTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "class": "ModelDragonTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "class": "ModelFeatherTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "class": "ModelMonkeyTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "class": "ModelRodentTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "class": "ModelSquirrelTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "class": "ModelTailFin" + }, + { + "file": "noppes/npcs/client/model/util/Model2DRenderer.java", + "class": "Model2DRenderer" + }, + { + "file": "noppes/npcs/client/model/util/ModelPartInterface.java", + "class": "ModelPartInterface" + }, + { + "file": "noppes/npcs/client/model/util/ModelPlaneRenderer.java", + "class": "ModelPlaneRenderer" + }, + { + "file": "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "class": "ModelScaleRenderer" + } + ], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/model/ModelMPM.java", + "line": 100 + }, + { + "file": "noppes/npcs/client/model/ModelMPM.java", + "line": 104 + }, + { + "file": "noppes/npcs/client/model/ModelMPM.java", + "line": 230 + }, + { + "file": "noppes/npcs/client/model/ModelMPM.java", + "line": 234 + }, + { + "file": "noppes/npcs/client/model/ModelNpcCrystal.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/ModelNpcCrystal.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/ModelNpcCrystal.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 82 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 85 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 93 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 96 + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "line": 100 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/ModelNPCGolem.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 80 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 84 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 93 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 106 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 110 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 113 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 117 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 120 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 123 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 126 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 130 + }, + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "line": 133 + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 68 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 74 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 83 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 127 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 130 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 134 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 137 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 141 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 189 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 193 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 197 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 202 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 205 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 208 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 215 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 219 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 223 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 227 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 231 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 235 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 239 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 247 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 251 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 255 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 259 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 263 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 267 + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "line": 271 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 74 + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 55 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 85 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 91 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 97 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 103 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 109 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 115 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelBeam.java", + "line": 11 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelBigSign.java", + "line": 7 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 68 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 68 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 91 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 96 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 101 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "line": 106 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelInk.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelInk.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelInk.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelInk.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelInk.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelPedestal.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelShelf.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelShelf.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelShelf.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelShelf.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelShelf.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelSign.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelSign.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelSign.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelSign.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "line": 12 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 74 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 82 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 90 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 95 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 99 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 104 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "line": 109 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 68 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 74 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 80 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 93 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 98 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 104 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 110 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 116 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 120 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 126 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 72 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "line": 12 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 85 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 93 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 97 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 102 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "line": 107 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 55 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 80 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 85 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "line": 93 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 80 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "line": 91 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 55 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "line": 13 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "line": 13 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 82 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 90 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 94 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 98 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "line": 103 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 74 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "line": 82 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 85 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 93 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "line": 97 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 55 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 85 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 93 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 97 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 101 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 105 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 109 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 113 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "line": 117 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "line": 12 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "line": 12 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "line": 12 + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/part/ModelBreasts.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/part/ModelBreasts.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/part/ModelEars.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/part/ModelEars.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/part/ModelEars.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/part/ModelEars.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 72 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 84 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 90 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 96 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 102 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 108 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 114 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 120 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 126 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 135 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 138 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 144 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 149 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 154 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 160 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 165 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 170 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 176 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 181 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 186 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 192 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 197 + }, + { + "file": "noppes/npcs/client/model/part/ModelLegs.java", + "line": 202 + }, + { + "file": "noppes/npcs/client/model/part/ModelSnout.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/part/ModelSnout.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/part/ModelSnout.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/part/ModelSnout.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/part/ModelSnout.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/part/ModelTail.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/part/ModelTail.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/part/ModelTail.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/part/ModelTail.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/model/part/ModelTail.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "line": 11 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "line": 11 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 70 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 96 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 100 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 103 + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "line": 108 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "line": 16 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 77 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 99 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 101 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 104 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 107 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "line": 110 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "line": 13 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "line": 35 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 351 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 352 + }, + { + "file": "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 395 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 396 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 397 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 398 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 399 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 400 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 402 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 403 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 404 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 405 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 406 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 407 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 408 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 409 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 410 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 411 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 412 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 413 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 437 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 438 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 439 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 440 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 441 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 442 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 444 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 445 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 446 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 447 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 448 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 449 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 450 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 451 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 452 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 453 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 454 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 455 + }, + { + "file": "noppes/npcs/mixin/MixinModelRenderer.java", + "line": 95 + }, + { + "file": "noppes/npcs/mixin/MixinModelRenderer.java", + "line": 109 + }, + { + "file": "noppes/npcs/mixin/MixinModelRenderer.java", + "line": 120 + }, + { + "file": "noppes/npcs/mixin/MixinModelRenderer.java", + "line": 148 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 351 + }, + { + "file": "noppes/npcs/mixin/MixinModelRenderer.java", + "line": 108 + }, + { + "file": "noppes/npcs/mixin/MixinModelRenderer.java", + "line": 119 + }, + { + "file": "noppes/npcs/mixin/MixinModelRenderer.java", + "line": 147 + } + ] + }, + "methodCalls": { + "addBox": { + "count": 545, + "files": [ + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNpcSlime.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelBigSign.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelEars.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelSnout.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java" + ] + }, + "setTextureOffset": { + "count": 5, + "files": [ + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNPCGolem.java" + ] + }, + "render": { + "count": 469, + "files": [ + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCGolem.java", + "noppes/npcs/client/model/ModelNpcSlime.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelBigSign.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java" + ] + }, + "setRotationPoint": { + "count": 672, + "files": [ + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCGolem.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelEars.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelSnout.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java" + ] + }, + "addChild": { + "count": 210, + "files": [ + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/part/ModelBreasts.java", + "noppes/npcs/client/model/part/ModelEars.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelSnout.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java" + ] + }, + "setTextureSize": { + "count": 113, + "files": [ + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "noppes/npcs/client/model/part/ModelBreasts.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelSnout.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java" + ] + }, + "postRender": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCPony.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "rotationPointX": { + "count": 32, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java" + ] + }, + "rotationPointY": { + "count": 101, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java" + ] + }, + "rotationPointZ": { + "count": 101, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java" + ] + }, + "rotateAngleX": { + "count": 256, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelBodywear.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelHair.java", + "noppes/npcs/client/model/part/ModelHeadwear.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelLimbWear.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "noppes/npcs/client/model/util/ModelPartInterface.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java" + ] + }, + "rotateAngleY": { + "count": 208, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelBodywear.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelHeadwear.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelLimbWear.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "noppes/npcs/client/model/util/ModelPartInterface.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java" + ] + }, + "rotateAngleZ": { + "count": 131, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelBodywear.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelHeadwear.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelLimbWear.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "noppes/npcs/client/model/util/ModelPartInterface.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java" + ] + }, + "baseModel": { + "count": 25, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "length": { + "count": 17, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java" + ] + }, + "mirror": { + "count": 71, + "files": [ + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelDuckBeak.java", + "noppes/npcs/client/model/part/ModelEars.java", + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "noppes/npcs/client/model/util/ModelPlane.java" + ] + }, + "isHidden": { + "count": 62, + "files": [ + "noppes/npcs/client/model/part/ModelBreasts.java", + "noppes/npcs/client/model/part/ModelEars.java", + "noppes/npcs/client/model/part/ModelHorns.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelSnout.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "childModels": { + "count": 4, + "files": [ + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java" + ] + }, + "textureWidth": { + "count": 3, + "files": [ + "noppes/npcs/client/model/util/ModelPlane.java" + ] + }, + "textureHeight": { + "count": 3, + "files": [ + "noppes/npcs/client/model/util/ModelPlane.java" + ] + } + } + }, + "net.minecraft.nbt.NBTTagList": { + "shortName": "NBTTagList", + "package": "net.minecraft.nbt", + "importCount": 111, + "importedBy": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/controllers/ClientCloneController.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/CustomGuiController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ProfileConfigSync.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerBankData.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerMailData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java" + ], + "paAbstraction": "INbtList", + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 233 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 244 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 255 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 265 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 278 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 281 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 296 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 300 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 314 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 324 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 336 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 348 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 369 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 804 + }, + { + "file": "kamkeel/npcs/controllers/SyncController.java", + "line": 816 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1547 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1562 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1567 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "line": 125 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "line": 138 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "line": 437 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "line": 444 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "line": 338 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "line": 345 + }, + { + "file": "kamkeel/npcs/controllers/data/profile/Profile.java", + "line": 102 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityBeam.java", + "line": 854 + }, + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "line": 891 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 2498 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 361 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 369 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 377 + }, + { + "file": "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "line": 431 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 247 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 322 + }, + { + "file": "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "line": 328 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "line": 54 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "line": 104 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "line": 52 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 74 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 86 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "line": 94 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "line": 56 + }, + { + "file": "noppes/npcs/DataAbilities.java", + "line": 1115 + }, + { + "file": "noppes/npcs/DataAbilities.java", + "line": 1122 + }, + { + "file": "noppes/npcs/DataAdvanced.java", + "line": 102 + }, + { + "file": "noppes/npcs/DataAdvanced.java", + "line": 167 + }, + { + "file": "noppes/npcs/DataDisplay.java", + "line": 126 + }, + { + "file": "noppes/npcs/DataDisplay.java", + "line": 181 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 139 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 152 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 173 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 275 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 287 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 305 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 322 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 337 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 350 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 363 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 376 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 389 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 395 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 408 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 422 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 436 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 450 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 464 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 479 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 489 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 525 + }, + { + "file": "noppes/npcs/NBTTags.java", + "line": 568 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 416 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 437 + }, + { + "file": "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/controllers/PresetController.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 344 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "line": 209 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "line": 189 + }, + { + "file": "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "line": 141 + }, + { + "file": "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "line": 142 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "line": 806 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "line": 123 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 483 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "line": 94 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 85 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 85 + }, + { + "file": "noppes/npcs/controllers/AnimationController.java", + "line": 517 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1627 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1633 + }, + { + "file": "noppes/npcs/controllers/BankController.java", + "line": 103 + }, + { + "file": "noppes/npcs/controllers/CustomEffectController.java", + "line": 415 + }, + { + "file": "noppes/npcs/controllers/FactionController.java", + "line": 101 + }, + { + "file": "noppes/npcs/controllers/LinkedItemController.java", + "line": 328 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 223 + }, + { + "file": "noppes/npcs/controllers/MagicController.java", + "line": 229 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 162 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 192 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 427 + }, + { + "file": "noppes/npcs/controllers/ProfileConfigSync.java", + "line": 24 + }, + { + "file": "noppes/npcs/controllers/RecipeController.java", + "line": 144 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 356 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 359 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 468 + }, + { + "file": "noppes/npcs/controllers/SpawnController.java", + "line": 88 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 105 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 251 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 291 + }, + { + "file": "noppes/npcs/controllers/TransportController.java", + "line": 94 + }, + { + "file": "noppes/npcs/controllers/data/Animation.java", + "line": 250 + }, + { + "file": "noppes/npcs/controllers/data/BankData.java", + "line": 63 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 133 + }, + { + "file": "noppes/npcs/controllers/data/Dialog.java", + "line": 202 + }, + { + "file": "noppes/npcs/controllers/data/Dialog.java", + "line": 238 + }, + { + "file": "noppes/npcs/controllers/data/DialogCategory.java", + "line": 42 + }, + { + "file": "noppes/npcs/controllers/data/Magic.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/data/MarkData.java", + "line": 42 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 433 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 489 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1034 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1043 + }, + { + "file": "noppes/npcs/controllers/data/PlayerBankData.java", + "line": 35 + }, + { + "file": "noppes/npcs/controllers/data/PlayerFactionData.java", + "line": 45 + }, + { + "file": "noppes/npcs/controllers/data/PlayerFactionData.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 66 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 199 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 208 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 228 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMailData.java", + "line": 37 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 76 + }, + { + "file": "noppes/npcs/controllers/data/PlayerQuestData.java", + "line": 86 + }, + { + "file": "noppes/npcs/controllers/data/PlayerTradeData.java", + "line": 410 + }, + { + "file": "noppes/npcs/controllers/data/QuestCategory.java", + "line": 46 + }, + { + "file": "noppes/npcs/controllers/data/QuestCategory.java", + "line": 52 + }, + { + "file": "noppes/npcs/entity/data/DataSkinOverlays.java", + "line": 41 + }, + { + "file": "noppes/npcs/entity/data/DataTimers.java", + "line": 104 + }, + { + "file": "noppes/npcs/entity/data/ModelDataShared.java", + "line": 77 + }, + { + "file": "noppes/npcs/roles/JobConversation.java", + "line": 50 + }, + { + "file": "noppes/npcs/roles/JobItemGiver.java", + "line": 77 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 267 + }, + { + "file": "noppes/npcs/roles/RoleInnkeeper.java", + "line": 30 + }, + { + "file": "noppes/npcs/roles/RoleTrader.java", + "line": 85 + }, + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 94 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "line": 460 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGui.java", + "line": 305 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGui.java", + "line": 313 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "line": 96 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "line": 77 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemBook.java", + "line": 30 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 211 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 298 + }, + { + "file": "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "line": 142 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 87 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 360 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 187 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java", + "line": 21 + } + ], + "casts": [ + { + "file": "noppes/npcs/DataDisplay.java", + "line": 208 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 78 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 214 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 235 + }, + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 89 + }, + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 206 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 188 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 97 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 214 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java", + "line": 41 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 67 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java", + "line": 36 + } + ] + }, + "methodCalls": { + "appendTag": { + "count": 183, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ProfileConfigSync.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerBankData.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerMailData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "tagCount": { + "count": 198, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/controllers/ClientCloneController.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/CustomGuiController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerBankData.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerMailData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getCompoundTagAt": { + "count": 139, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java", + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/profile/Profile.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/NBTTags.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/ProfileClientConfig.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/containers/ContainerAuctionTrades.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/Animation.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerBankData.java", + "noppes/npcs/controllers/data/PlayerFactionData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/controllers/data/PlayerMailData.java", + "noppes/npcs/controllers/data/PlayerQuestData.java", + "noppes/npcs/controllers/data/PlayerTradeData.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/entity/data/DataSkinOverlays.java", + "noppes/npcs/entity/data/DataTimers.java", + "noppes/npcs/entity/data/ModelDataShared.java", + "noppes/npcs/roles/JobConversation.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RoleTrader.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "getStringTagAt": { + "count": 43, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/client/controllers/ClientCloneController.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/controllers/CustomGuiController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "removeTag": { + "count": 7, + "files": [ + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java" + ] + }, + "func_150304_a": { + "count": 3, + "files": [ + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java" + ] + }, + "copy": { + "count": 4, + "files": [ + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/controllers/data/PlayerMail.java" + ] + }, + "keySet": { + "count": 4, + "files": [ + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/QuestCategory.java" + ] + }, + "get": { + "count": 5, + "files": [ + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "values": { + "count": 5, + "files": [ + "noppes/npcs/controllers/data/Dialog.java", + "noppes/npcs/controllers/data/DialogCategory.java", + "noppes/npcs/controllers/data/QuestCategory.java" + ] + }, + "func_150309_d": { + "count": 6, + "files": [ + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "isEmpty": { + "count": 1, + "files": [ + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "entrySet": { + "count": 1, + "files": [ + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "size": { + "count": 2, + "files": [ + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "put": { + "count": 1, + "files": [ + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "containsKey": { + "count": 1, + "files": [ + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "remove": { + "count": 1, + "files": [ + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "clear": { + "count": 1, + "files": [ + "noppes/npcs/entity/data/DataSkinOverlays.java" + ] + }, + "func_150303_d": { + "count": 5, + "files": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "func_150308_e": { + "count": 3, + "files": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "func_150306_c": { + "count": 3, + "files": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.StatCollector": { + "shortName": "StatCollector", + "package": "net.minecraft.util", + "importCount": 106, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/NoppesStringUtils.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/CustomNpcResourceListener.java", + "noppes/npcs/client/gui/GuiNpcDimension.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcRedstoneBlock.java", + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "noppes/npcs/client/gui/GuiNpcSelectionInterface.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/SubGuiClonerQuickTags.java", + "noppes/npcs/client/gui/SubGuiNpcFactionOptions.java", + "noppes/npcs/client/gui/SubGuiNpcFactionPoints.java", + "noppes/npcs/client/gui/SubGuiTagSelect.java", + "noppes/npcs/client/gui/SubGuiTrapPresetSelector.java", + "noppes/npcs/client/gui/SubGuiZonePresetSelector.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityConfig.java", + "noppes/npcs/client/gui/advanced/SubGuiChainedAbilityConfig.java", + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/global/GuiNpcManageRecipes.java", + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiNpcAnvil.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/GuiQuestCompletion.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/GuiTransportSelection.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBid.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBuyNow.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/roles/GuiNpcSpawner.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiCustomScroll.java", + "noppes/npcs/client/gui/util/GuiCustomScrollCloner.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiCustomScrollTagged.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiHoverText.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/SubGuiCategoryMoveConfirm.java", + "noppes/npcs/constants/EnumAuctionStatus.java", + "noppes/npcs/constants/EnumClaimType.java", + "noppes/npcs/constants/EnumNotificationType.java", + "noppes/npcs/constants/EnumStockReset.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/entity/EntityMagicProjectile.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/quests/QuestLocation.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/util/AuctionFormatUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "translateToLocal": { + "count": 473, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java", + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java", + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/NoppesStringUtils.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/CustomNpcResourceListener.java", + "noppes/npcs/client/gui/GuiNpcDimension.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcRedstoneBlock.java", + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "noppes/npcs/client/gui/GuiNpcSelectionInterface.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/SubGuiClonerQuickTags.java", + "noppes/npcs/client/gui/SubGuiNpcFactionOptions.java", + "noppes/npcs/client/gui/SubGuiNpcFactionPoints.java", + "noppes/npcs/client/gui/SubGuiTagSelect.java", + "noppes/npcs/client/gui/SubGuiTrapPresetSelector.java", + "noppes/npcs/client/gui/SubGuiZonePresetSelector.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityConfig.java", + "noppes/npcs/client/gui/advanced/SubGuiChainedAbilityConfig.java", + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/global/GuiNpcManageRecipes.java", + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/GuiNpcAnvil.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/GuiQuestCompletion.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/GuiTransportSelection.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBid.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBuyNow.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiFaction.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/roles/GuiNpcSpawner.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiCustomScroll.java", + "noppes/npcs/client/gui/util/GuiCustomScrollCloner.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiCustomScrollTagged.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiHoverText.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/SubGuiCategoryMoveConfirm.java", + "noppes/npcs/constants/EnumAuctionStatus.java", + "noppes/npcs/constants/EnumClaimType.java", + "noppes/npcs/constants/EnumNotificationType.java", + "noppes/npcs/constants/EnumStockReset.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/entity/EntityMagicProjectile.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/quests/QuestLocation.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/util/AuctionFormatUtil.java" + ] + }, + "canTranslate": { + "count": 1, + "files": [ + "kamkeel/npcs/util/AttributeItemUtil.java" + ] + }, + "translateToLocalFormatted": { + "count": 15, + "files": [ + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/items/ItemMachineGun.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.model.ModelBase": { + "shortName": "ModelBase", + "package": "net.minecraft.client.model", + "importCount": 102, + "importedBy": [ + "kamkeel/npcs/addon/client/GeckoAddonClient.java", + "net/minecraft/client/renderer/entity/NPCRendererHelper.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNpcSlime.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelBeam.java", + "noppes/npcs/client/model/blocks/ModelBigSign.java", + "noppes/npcs/client/model/blocks/ModelCampfire.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelCrate.java", + "noppes/npcs/client/model/blocks/ModelInk.java", + "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelShelf.java", + "noppes/npcs/client/model/blocks/ModelSign.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "noppes/npcs/client/model/part/ModelBodywear.java", + "noppes/npcs/client/model/part/ModelHeadwear.java", + "noppes/npcs/client/model/part/ModelLimbWear.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/model/util/ModelPlaneRenderer.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/client/renderer/RenderNpcDragon.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNpcSlime.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/mixin/MixinModelRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/model/ModelNpcCrystal.java", + "class": "ModelNpcCrystal" + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "class": "ModelNpcDragon" + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "class": "ModelNpcSlime" + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "class": "ModelPony" + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "class": "ModelPonyArmor" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "class": "ModelAnvil" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelBeam.java", + "class": "ModelBeam" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelBigSign.java", + "class": "ModelBigSign" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "class": "ModelCampfire" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "class": "ModelCarpentryBench" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "class": "ModelCrate" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelInk.java", + "class": "ModelInk" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "class": "ModelLongCrate" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "class": "ModelMailbox" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "class": "ModelMailboxWow" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelPedestal.java", + "class": "ModelPedestal" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelShelf.java", + "class": "ModelShelf" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelSign.java", + "class": "ModelSign" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "class": "ModelStool" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "class": "ModelTable" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "class": "ModelTombstone1" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "class": "ModelTombstone2" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "class": "ModelTombstone3" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "class": "ModelWeaponRack" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "class": "ModelBannerFloor" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "class": "ModelBannerFloorFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "class": "ModelBannerWall" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "class": "ModelBannerWallFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "class": "ModelBarrel" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "class": "ModelCampfireCoals" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "class": "ModelCampfireFlame" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "class": "ModelCampfireLog" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "class": "ModelCampfireStone" + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "class": "ModelCandle" + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "class": "ModelCandleCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "class": "ModelCandleWall" + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "class": "ModelChair" + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "class": "ModelChairSpoof" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "class": "ModelCouchCorner" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "class": "ModelCouchLeft" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "class": "ModelCouchMiddle" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "class": "ModelCouchRight" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "class": "ModelCouchSingle" + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "class": "ModelShortLamp" + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "class": "ModelTallLamp" + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "class": "LanternCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "class": "LanternFloor" + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "class": "LanternWall" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "class": "ModelLegacyAnvil" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "class": "ModelLegacyBanner" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "class": "ModelLegacyBannerFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "class": "ModelLegacyBarrel" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "class": "ModelLegacyBarrelLid" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "class": "ModelLegacyCandle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "class": "ModelLegacyCandleCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "class": "ModelLegacyCandleWall" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "class": "ModelLegacyCarpentryBench" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "class": "ModelLegacyCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "class": "ModelLegacyChair" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "class": "ModelLegacyLantern" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "class": "ModelLegacyMailboxUS" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "class": "ModelLegacyPedestal" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "class": "ModelLegacyStool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "class": "ModelLegacyTable" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "class": "ModelLegacyTallLamp" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "class": "ModelLegacyTallLampTop" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "class": "ModelLegacyWall" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "class": "ModelLegacyWallBanner" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "class": "ModelLegacyWallBannerFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "class": "ModelCouchWoodLeft" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "class": "ModelCouchWoodMiddle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "class": "ModelCouchWoodRight" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "class": "ModelCouchWoodSingle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "class": "ModelLegacyCouchCorner" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "class": "ModelLegacyCouchCornerWool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "class": "ModelLegacyCouchLeft" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "class": "ModelLegacyCouchLeftWool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "class": "ModelLegacyCouchMiddle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "class": "ModelLegacyCouchMiddleWool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "class": "ModelLegacyCouchRight" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "class": "ModelLegacyCouchRightWool" + }, + { + "file": "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "class": "ModelRenderPassHelper" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 325 + }, + { + "file": "noppes/npcs/client/renderer/RenderCustomNpc.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/renderer/RenderCustomNpc.java", + "line": 54 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 324 + } + ] + }, + "methodCalls": { + "getClass": { + "count": 2, + "files": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java" + ] + }, + "render": { + "count": 19, + "files": [ + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java" + ] + }, + "setLivingAnimations": { + "count": 2, + "files": [ + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "isChild": { + "count": 3, + "files": [ + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java" + ] + }, + "onGround": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelMPM.java" + ] + }, + "isRiding": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelMPM.java" + ] + } + } + }, + "net.minecraft.util.MathHelper": { + "shortName": "MathHelper", + "package": "net.minecraft.util", + "importCount": 98, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIFollow.java", + "noppes/npcs/ai/EntityAILeapAtTargetNpc.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIOrbitTarget.java", + "noppes/npcs/ai/EntityAIPounceTarget.java", + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/NPCPathPoint.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCGolem.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/animation/AniCrawling.java", + "noppes/npcs/client/model/animation/AniHug.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelSkirt.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/ModelWings.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/controllers/data/Availability.java", + "noppes/npcs/entity/EntityNpcDragon.java", + "noppes/npcs/entity/EntityNPCFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/JobChunkLoader.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "noppes/npcs/scripted/entity/ScriptProjectile.java", + "noppes/npcs/util/NPCMountUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "floor_double": { + "count": 207, + "files": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIFollow.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/roles/JobChunkLoader.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + }, + "clamp_float": { + "count": 3, + "files": [ + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java" + ] + }, + "sin": { + "count": 94, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/ai/EntityAIOrbitTarget.java", + "noppes/npcs/ai/EntityAIPounceTarget.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcCrystal.java", + "noppes/npcs/client/model/ModelNPCGolem.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/animation/AniHug.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/ModelWings.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptProjectile.java" + ] + }, + "cos": { + "count": 97, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/ai/EntityAIOrbitTarget.java", + "noppes/npcs/ai/EntityAIPounceTarget.java", + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNpcDragon.java", + "noppes/npcs/client/model/ModelNPCGolem.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/animation/AniCrawling.java", + "noppes/npcs/client/model/animation/AniHug.java", + "noppes/npcs/client/model/part/ModelLegs.java", + "noppes/npcs/client/model/part/ModelSkirt.java", + "noppes/npcs/client/model/part/ModelTail.java", + "noppes/npcs/client/model/part/ModelWings.java", + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptProjectile.java" + ] + }, + "sqrt_double": { + "count": 22, + "files": [ + "noppes/npcs/ai/EntityAILeapAtTargetNpc.java", + "noppes/npcs/ai/EntityAIPounceTarget.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java", + "noppes/npcs/entity/EntityNpcDragon.java", + "noppes/npcs/entity/EntityNPCFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java" + ] + }, + "ceiling_double_int": { + "count": 16, + "files": [ + "noppes/npcs/ai/EntityAIOrbitTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/roles/JobChunkLoader.java" + ] + }, + "floor_float": { + "count": 2, + "files": [ + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "wrapAngleTo180_float": { + "count": 2, + "files": [ + "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ] + }, + "sqrt_float": { + "count": 7, + "files": [ + "noppes/npcs/ai/pathfinder/NPCPathPoint.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/ModelPonyArmor.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "abs": { + "count": 2, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "ceiling_float_int": { + "count": 7, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java" + ] + }, + "clamp_int": { + "count": 6, + "files": [ + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/controllers/data/Availability.java" + ] + }, + "abs_max": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "clamp_double": { + "count": 5, + "files": [ + "noppes/npcs/util/NPCMountUtil.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.block.Block": { + "shortName": "Block", + "package": "net.minecraft.block", + "importCount": 84, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdConfig.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/ConfigCommand.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/EntityAIBustDoor.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockTrigger.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileCampfire.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/RecipesDefault.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemNpcBlock.java", + "noppes/npcs/items/ItemNpcColored.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemPlaceholder.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptContainer.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/item/ScriptItemBlock.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/blocks/BlockBlood.java", + "class": "BlockBlood" + }, + { + "file": "noppes/npcs/blocks/BlockPlaceholder.java", + "class": "BlockPlaceholder" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "foxz/command/CmdConfig.java", + "line": 52 + }, + { + "file": "foxz/command/CmdConfig.java", + "line": 79 + }, + { + "file": "foxz/command/CmdConfig.java", + "line": 106 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 81 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 106 + }, + { + "file": "noppes/npcs/CustomNpcs.java", + "line": 407 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 177 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 18 + }, + { + "file": "noppes/npcs/scripted/ScriptBlock.java", + "line": 104 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 176 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 17 + } + ] + }, + "methodCalls": { + "getCollisionBoundingBoxFromPool": { + "count": 9, + "files": [ + "foxz/command/CmdClone.java", + "kamkeel/npcs/command/CloneCommand.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "setTickRandomly": { + "count": 9, + "files": [ + "foxz/command/CmdConfig.java", + "kamkeel/npcs/command/ConfigCommand.java", + "noppes/npcs/CustomNpcs.java" + ] + }, + "getMaterial": { + "count": 14, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "addCollisionBoxesToList": { + "count": 1, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java" + ] + }, + "isOpaqueCube": { + "count": 3, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "getExplosionResistance": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java" + ] + }, + "onBlockExploded": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java" + ] + }, + "getRenderBlockPass": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "getRenderType": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderProjectile.java" + ] + }, + "canCreatureSpawn": { + "count": 2, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getBlocksMovement": { + "count": 2, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "canCollideCheck": { + "count": 6, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "collisionRayTrace": { + "count": 6, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "renderAsNormalBlock": { + "count": 1, + "files": [ + "noppes/npcs/blocks/BlockBlood.java" + ] + }, + "getLightValue": { + "count": 1, + "files": [ + "noppes/npcs/blocks/BlockCarpentryBench.java" + ] + }, + "getIcon": { + "count": 4, + "files": [ + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java" + ] + }, + "onBlockAdded": { + "count": 1, + "files": [ + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java" + ] + }, + "shouldSideBeRendered": { + "count": 6, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java" + ] + }, + "getTickRandomly": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "randomDisplayTick": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "setBlockBoundsForItemRender": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "setBlockBoundsBasedOnState": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "onEntityCollidedWithBlock": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "isAir": { + "count": 2, + "files": [ + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + } + }, + "staticCalls": { + "getIdFromBlock": { + "count": 3, + "files": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/EntityAIBustDoor.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "getBlockFromItem": { + "count": 14, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/item/ScriptItemBlock.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getBlockFromName": { + "count": 2, + "files": [ + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java" + ] + }, + "getBlockById": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/ScriptContainer.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.tileentity.TileEntity": { + "shortName": "TileEntity", + "package": "net.minecraft.tileentity", + "importCount": 78, + "importedBy": [ + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/player/SaveSignPacket.java", + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java", + "kamkeel/npcs/network/packets/request/item/HammerPacket.java", + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBlockAnvil.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileMailbox.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptTileEntity.java", + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/blocks/tiles/TileBigSign.java", + "class": "TileBigSign" + }, + { + "file": "noppes/npcs/blocks/tiles/TileBlockAnvil.java", + "class": "TileBlockAnvil" + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "class": "TileBorder" + }, + { + "file": "noppes/npcs/blocks/tiles/TileMailbox.java", + "class": "TileMailbox" + }, + { + "file": "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "class": "TileRedstoneBlock" + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "class": "TileScripted" + }, + { + "file": "noppes/npcs/blocks/tiles/TileVariant.java", + "class": "TileVariant" + }, + { + "file": "noppes/npcs/blocks/tiles/TileWaypoint.java", + "class": "TileWaypoint" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "writeToNBT": { + "count": 10, + "files": [ + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java" + ] + }, + "readFromNBT": { + "count": 4, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/client/NoppesUtil.java" + ] + }, + "markDirty": { + "count": 2, + "files": [ + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/tiles/TileVariant.java" + ] + }, + "getBlockMetadata": { + "count": 29, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java" + ] + }, + "getBlockType": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java" + ] + }, + "getWorldObj": { + "count": 17, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "xCoord": { + "count": 17, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java" + ] + }, + "yCoord": { + "count": 17, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java" + ] + }, + "zCoord": { + "count": 17, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java" + ] + } + } + }, + "net.minecraft.item.Item": { + "shortName": "Item", + "package": "net.minecraft.item", + "importCount": 72, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/network/PacketUtil.java", + "net/minecraft/entity/NPCEntityHelper.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/CreativeTabNpcs.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/MessageAchievement.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/constants/EnumCompanionTalent.java", + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/RecipesDefault.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemElementalStaff.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemMoneyBag.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemMusic.java", + "noppes/npcs/items/ItemNpcArmor.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemNpcWeaponInterface.java", + "noppes/npcs/items/ItemOrb.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/JobItemGiver.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/items/ItemCustomizable.java", + "class": "ItemCustomizable" + }, + { + "file": "noppes/npcs/items/ItemMoneyBag.java", + "class": "ItemMoneyBag" + }, + { + "file": "noppes/npcs/items/ItemMounter.java", + "class": "ItemMounter" + }, + { + "file": "noppes/npcs/items/ItemNpcCloner.java", + "class": "ItemNpcCloner" + }, + { + "file": "noppes/npcs/items/ItemNpcInterface.java", + "class": "ItemNpcInterface" + }, + { + "file": "noppes/npcs/items/ItemNpcMovingPath.java", + "class": "ItemNpcMovingPath" + }, + { + "file": "noppes/npcs/items/ItemNpcScripter.java", + "class": "ItemNpcScripter" + }, + { + "file": "noppes/npcs/items/ItemNpcTool.java", + "class": "ItemNpcTool" + }, + { + "file": "noppes/npcs/items/ItemNpcWand.java", + "class": "ItemNpcWand" + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "class": "ItemSoulstoneEmpty" + }, + { + "file": "noppes/npcs/items/ItemSoulstoneFilled.java", + "class": "ItemSoulstoneFilled" + }, + { + "file": "noppes/npcs/items/ItemTeleporter.java", + "class": "ItemTeleporter" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 236 + }, + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 175 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 16 + }, + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 48 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 670 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 511 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 592 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "line": 174 + }, + { + "file": "noppes/npcs/controllers/data/RecipesDefault.java", + "line": 15 + } + ] + }, + "methodCalls": { + "onEntitySwing": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + } + }, + "staticCalls": { + "getItemFromBlock": { + "count": 43, + "files": [ + "kamkeel/npcs/network/PacketUtil.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockLightable.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java" + ] + }, + "getItemById": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "getIdFromItem": { + "count": 5, + "files": [ + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/roles/RoleCompanion.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.GuiScreen": { + "shortName": "GuiScreen", + "package": "net.minecraft.client.gui", + "importCount": 70, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java", + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java", + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java", + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/gui/GuiNPCFactionSelection.java", + "noppes/npcs/client/gui/GuiNpcSelectionInterface.java", + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java", + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java", + "noppes/npcs/client/gui/GuiNPCTransportCategoryEdit.java", + "noppes/npcs/client/gui/SubGuiEffectGeneral.java", + "noppes/npcs/client/gui/SubGuiMailmanSendSetup.java", + "noppes/npcs/client/gui/advanced/GuiNPCAdvancedLinkedNpc.java", + "noppes/npcs/client/gui/advanced/GuiNPCDialogNpcOptions.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCEditAnimation.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiModelArms.java", + "noppes/npcs/client/gui/model/GuiModelBody.java", + "noppes/npcs/client/gui/model/GuiModelColor.java", + "noppes/npcs/client/gui/model/GuiModelHead.java", + "noppes/npcs/client/gui/model/GuiModelLegs.java", + "noppes/npcs/client/gui/model/GuiModelRotate.java", + "noppes/npcs/client/gui/model/GuiModelScale.java", + "noppes/npcs/client/gui/model/GuiPresetSave.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeDialog.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeKill.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeLocation.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeManual.java", + "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiCustomScroll.java", + "noppes/npcs/client/gui/util/GuiCustomScrollCloner.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiCustomScrollTagged.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiHoverText.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/gui/util/GuiNpcSlider.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "noppes/npcs/client/gui/util/SubGuiInterface.java", + "noppes/npcs/client/gui/util/script/RenameRefactorHandler.java", + "noppes/npcs/items/ItemMoneyBag.java", + "somehussar/gui/AnnotatedGui.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "class": "GuiCustom" + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "class": "GuiHudEditor" + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "class": "GuiBook" + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "class": "GuiTalent" + }, + { + "file": "noppes/npcs/client/gui/util/GuiCustomScroll.java", + "class": "GuiCustomScroll" + }, + { + "file": "noppes/npcs/client/gui/util/GuiEffectBar.java", + "class": "GuiEffectBar" + }, + { + "file": "noppes/npcs/client/gui/util/GuiHoverText.java", + "class": "GuiHoverText" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "class": "GuiNPCInterface" + }, + { + "file": "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "class": "GuiScrollWindow" + } + ], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/items/ItemMoneyBag.java", + "line": 30 + } + ], + "casts": [ + { + "file": "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "line": 397 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 724 + }, + { + "file": "noppes/npcs/client/NoppesUtil.java", + "line": 177 + }, + { + "file": "noppes/npcs/client/NoppesUtil.java", + "line": 180 + }, + { + "file": "noppes/npcs/client/NoppesUtil.java", + "line": 271 + }, + { + "file": "noppes/npcs/client/NoppesUtil.java", + "line": 275 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 557 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 182 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 202 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 277 + }, + { + "file": "noppes/npcs/client/gui/script/GuiScriptGlobal.java", + "line": 82 + }, + { + "file": "noppes/npcs/client/gui/util/GuiCustomScrollCloner.java", + "line": 14 + }, + { + "file": "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "line": 162 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 720 + } + ] + }, + "methodCalls": { + "setWorldAndResolution": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/script/GuiScriptInterface.java" + ] + }, + "initGui": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/script/GuiScriptInterface.java" + ] + }, + "drawScreen": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/util/GuiNPCInterface.java" + ] + } + }, + "staticCalls": { + "isCtrlKeyDown": { + "count": 4, + "files": [ + "noppes/npcs/client/gui/global/GuiNPCEditAnimation.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/script/RenameRefactorHandler.java" + ] + }, + "getClipboardString": { + "count": 4, + "files": [ + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java" + ] + }, + "isShiftKeyDown": { + "count": 8, + "files": [ + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.util.AxisAlignedBB": { + "shortName": "AxisAlignedBB", + "package": "net.minecraft.util", + "importCount": 59, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/utils/Utils.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityOrb.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileChair.java", + "noppes/npcs/blocks/tiles/TilePedestal.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileShortLamp.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/blocks/tiles/TileTallLamp.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWallBanner.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "expand": { + "count": 1, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java" + ] + }, + "calculateIntercept": { + "count": 3, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "isVecInside": { + "count": 4, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "getOffsetBoundingBox": { + "count": 2, + "files": [ + "noppes/npcs/blocks/BlockScripted.java" + ] + } + }, + "staticCalls": { + "getBoundingBox": { + "count": 58, + "files": [ + "foxz/commandhelper/AbstractCommandHelper.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityAbilityOrb.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/tiles/TileBanner.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileChair.java", + "noppes/npcs/blocks/tiles/TilePedestal.java", + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileShortLamp.java", + "noppes/npcs/blocks/tiles/TileSign.java", + "noppes/npcs/blocks/tiles/TileTallLamp.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWallBanner.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "noppes/npcs/controllers/data/AnimationData.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + } + }, + "fieldAccesses": { + "minY": { + "count": 5, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + }, + "minX": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + }, + "maxX": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + }, + "maxY": { + "count": 7, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + }, + "minZ": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + }, + "maxZ": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/scripted/ScriptBlock.java" + ] + } + } + }, + "net.minecraft.command.ICommandSender": { + "shortName": "ICommandSender", + "package": "net.minecraft.command", + "importCount": 47, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "foxz/command/CmdNpc.java", + "foxz/command/CommandNoppes.java", + "foxz/command/ScriptedCommand.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/commandhelper/ChMcLogger.java", + "foxz/commandhelper/CommandHelper.java", + "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "kamkeel/npcs/command/AbilityCommand.java", + "kamkeel/npcs/command/AnimationCommand.java", + "kamkeel/npcs/command/AttributeCommand.java", + "kamkeel/npcs/command/AuctionCommand.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/CommandKamkeelBase.java", + "kamkeel/npcs/command/ConfigCommand.java", + "kamkeel/npcs/command/DebugCommand.java", + "kamkeel/npcs/command/DialogCategoryCommand.java", + "kamkeel/npcs/command/DialogCommand.java", + "kamkeel/npcs/command/EffectCommand.java", + "kamkeel/npcs/command/FactionCommand.java", + "kamkeel/npcs/command/HelpCommand.java", + "kamkeel/npcs/command/MoneyCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/OverlayCommand.java", + "kamkeel/npcs/command/QuestCategoryCommand.java", + "kamkeel/npcs/command/QuestCommand.java", + "kamkeel/npcs/command/ScriptCommand.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "kamkeel/npcs/command/profile/CommandProfile.java", + "kamkeel/npcs/command/profile/CommandProfileAdmin.java", + "kamkeel/npcs/command/profile/CommandProfileBase.java", + "kamkeel/npcs/command/profile/CommandProfileChange.java", + "kamkeel/npcs/command/profile/CommandProfileCreate.java", + "kamkeel/npcs/command/profile/CommandProfileList.java", + "kamkeel/npcs/command/profile/CommandProfileRegion.java", + "kamkeel/npcs/command/profile/CommandProfileRemove.java", + "kamkeel/npcs/command/profile/CommandProfileRename.java", + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/client/TextBlockClient.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "constructors": [], + "casts": [ + { + "file": "foxz/commandhelper/AbstractCommandHelper.java", + "line": 132 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 599 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 649 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 660 + } + ], + "instanceof": [] + }, + "methodCalls": { + "addChatMessage": { + "count": 14, + "files": [ + "foxz/command/CommandNoppes.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/commandhelper/ChMcLogger.java", + "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/controllers/ServerCloneController.java" + ] + }, + "getPlayerCoordinates": { + "count": 16, + "files": [ + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/command/NpcCommand.java" + ] + }, + "getEntityWorld": { + "count": 11, + "files": [ + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/command/DialogCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/QuestCategoryCommand.java", + "kamkeel/npcs/command/QuestCommand.java", + "kamkeel/npcs/command/SlayCommand.java" + ] + }, + "getCommandSenderName": { + "count": 2, + "files": [ + "kamkeel/npcs/command/CommandCommand.java", + "noppes/npcs/client/TextBlockClient.java" + ] + }, + "canCommandSenderUseCommand": { + "count": 10, + "files": [ + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/CommandKamkeelBase.java", + "kamkeel/npcs/command/profile/CommandProfile.java", + "kamkeel/npcs/command/profile/CommandProfileBase.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.init.Blocks": { + "shortName": "Blocks", + "package": "net.minecraft.init", + "importCount": 47, + "importedBy": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ai/EntityAIBustDoor.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/controllers/data/RecipesDefault.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "tconstruct/client/tabs/InventoryTabVanilla.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.Tessellator": { + "shortName": "Tessellator", + "package": "net.minecraft.client.renderer", + "importCount": 46, + "importedBy": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/AttachedLightningRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java", + "noppes/npcs/client/fx/EntityRainbowFX.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiNPCStringSlot.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/model/util/ModelPlane.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "noppes/npcs/config/StringCache.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "startDrawingQuads": { + "count": 88, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/AttachedLightningRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "noppes/npcs/config/StringCache.java" + ] + }, + "setColorRGBA_F": { + "count": 85, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "draw": { + "count": 110, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/AttachedLightningRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "noppes/npcs/config/StringCache.java" + ] + }, + "setNormal": { + "count": 50, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "addVertex": { + "count": 301, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDome.java", + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java", + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java", + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/AttachedLightningRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/config/StringCache.java" + ] + }, + "startDrawing": { + "count": 24, + "files": [ + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java" + ] + }, + "setBrightness": { + "count": 9, + "files": [ + "kamkeel/npcs/client/renderer/lightning/AttachedLightningRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java" + ] + }, + "setColorRGBA": { + "count": 8, + "files": [ + "kamkeel/npcs/client/renderer/lightning/AttachedLightningRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/config/StringCache.java" + ] + }, + "setColorOpaque_F": { + "count": 8, + "files": [ + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java" + ] + }, + "addVertexWithUV": { + "count": 192, + "files": [ + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java", + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/config/StringCache.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.Vec3": { + "shortName": "Vec3", + "package": "net.minecraft.util", + "importCount": 43, + "importedBy": [ + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIDodgeShoot.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIReturn.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/NPCPath.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityNPCFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "noppes/npcs/util/MathUtil.java", + "noppes/npcs/util/Vec3NPC.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/util/Vec3NPC.java", + "class": "Vec3NPC" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "line": 24 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 589 + } + ], + "instanceof": [] + }, + "methodCalls": { + "lengthVector": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIStalkTarget.java" + ] + }, + "normalize": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIStalkTarget.java" + ] + }, + "dotProduct": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIStalkTarget.java" + ] + }, + "squareDistanceTo": { + "count": 2, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "distanceTo": { + "count": 3, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "equals": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "rotateAroundY": { + "count": 3, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/RoleCompanion.java" + ] + }, + "addVector": { + "count": 5, + "files": [ + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "rotateAroundX": { + "count": 2, + "files": [ + "noppes/npcs/roles/RoleCompanion.java" + ] + } + }, + "staticCalls": { + "createVectorHelper": { + "count": 87, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java", + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIReturn.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/NPCPath.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityNPCFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + } + }, + "fieldAccesses": { + "xCoord": { + "count": 159, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIDodgeShoot.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIReturn.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/NPCPath.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "noppes/npcs/util/MathUtil.java" + ] + }, + "yCoord": { + "count": 149, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIDodgeShoot.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIReturn.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "noppes/npcs/util/MathUtil.java" + ] + }, + "zCoord": { + "count": 159, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/client/renderer/lightning/Vec3d.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java", + "kamkeel/npcs/entity/EntityAbilityBeam.java", + "kamkeel/npcs/entity/EntityAbilityDisc.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySlicer.java", + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIDodgeShoot.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIReturn.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/pathfinder/NPCPath.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "noppes/npcs/util/MathUtil.java" + ] + } + } + }, + "net.minecraft.inventory.Slot": { + "shortName": "Slot", + "package": "net.minecraft.inventory", + "importCount": 42, + "importedBy": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerAuction.java", + "noppes/npcs/containers/ContainerAuctionBidding.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerManageBanks.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCCompanion.java", + "noppes/npcs/containers/ContainerNPCFollower.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNPCInv.java", + "noppes/npcs/containers/ContainerNpcItemGiver.java", + "noppes/npcs/containers/ContainerNpcQuestReward.java", + "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "noppes/npcs/containers/ContainerNPCTrader.java", + "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "noppes/npcs/containers/SlotAuctionDisplay.java", + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotCompanionWeapon.java", + "noppes/npcs/containers/SlotNPCArmor.java", + "noppes/npcs/containers/SlotNpcBankCurrency.java", + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "noppes/npcs/containers/SlotNpcTraderItems.java", + "noppes/npcs/containers/SlotValid.java", + "noppes/npcs/scripted/gui/ScriptGuiItemSlot.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java", + "class": "CustomGuiSlot" + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "class": "SlotAnvilOutput" + }, + { + "file": "noppes/npcs/containers/SlotAuctionDisplay.java", + "class": "SlotAuctionDisplay" + }, + { + "file": "noppes/npcs/containers/SlotCompanionArmor.java", + "class": "SlotCompanionArmor" + }, + { + "file": "noppes/npcs/containers/SlotCompanionWeapon.java", + "class": "SlotCompanionWeapon" + }, + { + "file": "noppes/npcs/containers/SlotNPCArmor.java", + "class": "SlotNPCArmor" + }, + { + "file": "noppes/npcs/containers/SlotNpcBankCurrency.java", + "class": "SlotNpcBankCurrency" + }, + { + "file": "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "class": "SlotNpcMercenaryCurrency" + }, + { + "file": "noppes/npcs/containers/SlotNpcTraderItems.java", + "class": "SlotNpcTraderItems" + }, + { + "file": "noppes/npcs/containers/SlotValid.java", + "class": "SlotValid" + } + ], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 51 + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 58 + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 69 + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 73 + }, + { + "file": "noppes/npcs/containers/ContainerAuction.java", + "line": 41 + }, + { + "file": "noppes/npcs/containers/ContainerAuction.java", + "line": 48 + }, + { + "file": "noppes/npcs/containers/ContainerAuctionBidding.java", + "line": 29 + }, + { + "file": "noppes/npcs/containers/ContainerAuctionSell.java", + "line": 28 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 48 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 54 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 59 + }, + { + "file": "noppes/npcs/containers/ContainerCrate.java", + "line": 27 + }, + { + "file": "noppes/npcs/containers/ContainerCrate.java", + "line": 33 + }, + { + "file": "noppes/npcs/containers/ContainerCrate.java", + "line": 38 + }, + { + "file": "noppes/npcs/containers/ContainerCustomGui.java", + "line": 87 + }, + { + "file": "noppes/npcs/containers/ContainerCustomGui.java", + "line": 92 + }, + { + "file": "noppes/npcs/containers/ContainerMail.java", + "line": 34 + }, + { + "file": "noppes/npcs/containers/ContainerMail.java", + "line": 39 + }, + { + "file": "noppes/npcs/containers/ContainerManageAuction.java", + "line": 84 + }, + { + "file": "noppes/npcs/containers/ContainerManageAuction.java", + "line": 89 + }, + { + "file": "noppes/npcs/containers/ContainerManageAuction.java", + "line": 97 + }, + { + "file": "noppes/npcs/containers/ContainerManageBanks.java", + "line": 19 + }, + { + "file": "noppes/npcs/containers/ContainerManageBanks.java", + "line": 26 + }, + { + "file": "noppes/npcs/containers/ContainerManageBanks.java", + "line": 30 + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "line": 32 + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "line": 34 + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "line": 39 + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "line": 45 + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "line": 51 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 31 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 32 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 33 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 38 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 43 + }, + { + "file": "noppes/npcs/containers/ContainerNPCBankInterface.java", + "line": 41 + }, + { + "file": "noppes/npcs/containers/ContainerNPCBankInterface.java", + "line": 49 + }, + { + "file": "noppes/npcs/containers/ContainerNPCBankInterface.java", + "line": 54 + }, + { + "file": "noppes/npcs/containers/ContainerNPCCompanion.java", + "line": 19 + }, + { + "file": "noppes/npcs/containers/ContainerNPCCompanion.java", + "line": 24 + }, + { + "file": "noppes/npcs/containers/ContainerNPCCompanion.java", + "line": 30 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollower.java", + "line": 21 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "line": 32 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "line": 38 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "line": 17 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "line": 21 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "line": 27 + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "line": 15 + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "line": 16 + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "line": 17 + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "line": 21 + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "line": 27 + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "line": 32 + }, + { + "file": "noppes/npcs/containers/ContainerNpcItemGiver.java", + "line": 16 + }, + { + "file": "noppes/npcs/containers/ContainerNpcItemGiver.java", + "line": 21 + }, + { + "file": "noppes/npcs/containers/ContainerNpcItemGiver.java", + "line": 27 + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestReward.java", + "line": 18 + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestReward.java", + "line": 24 + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestReward.java", + "line": 29 + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "line": 19 + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "line": 23 + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "line": 29 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 48 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 53 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 59 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "line": 24 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "line": 26 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "line": 28 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "line": 33 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "line": 39 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 197 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 371 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 541 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 697 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 759 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 763 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 767 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 792 + }, + { + "file": "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "line": 66 + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 252 + }, + { + "file": "noppes/npcs/containers/ContainerAuction.java", + "line": 79 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 136 + }, + { + "file": "noppes/npcs/containers/ContainerCrate.java", + "line": 52 + }, + { + "file": "noppes/npcs/containers/ContainerCustomGui.java", + "line": 49 + }, + { + "file": "noppes/npcs/containers/ContainerMail.java", + "line": 48 + }, + { + "file": "noppes/npcs/containers/ContainerManageAuction.java", + "line": 321 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 80 + }, + { + "file": "noppes/npcs/containers/ContainerNPCBankInterface.java", + "line": 90 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "line": 34 + }, + { + "file": "noppes/npcs/containers/ContainerNPCTrader.java", + "line": 85 + } + ], + "instanceof": [] + }, + "methodCalls": { + "func_111238_b": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "getHasStack": { + "count": 16, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java" + ] + }, + "getStack": { + "count": 25, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerAuction.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNPCTrader.java" + ] + }, + "getSlotStackLimit": { + "count": 5, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "getBackgroundIconIndex": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "equals": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "canTakeStack": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "isItemValid": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "getSlotIndex": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java" + ] + }, + "onSlotChange": { + "count": 2, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ] + }, + "putStack": { + "count": 8, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java" + ] + }, + "onSlotChanged": { + "count": 8, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerMail.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java" + ] + }, + "onPickupFromSlot": { + "count": 4, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "xDisplayPosition": { + "count": 6, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/containers/ContainerManageAuction.java" + ] + }, + "yDisplayPosition": { + "count": 6, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/containers/ContainerManageAuction.java" + ] + }, + "slotNumber": { + "count": 16, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java" + ] + }, + "inventory": { + "count": 5, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ] + } + } + }, + "net.minecraft.client.renderer.RenderHelper": { + "shortName": "RenderHelper", + "package": "net.minecraft.client.renderer", + "importCount": 40, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java", + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcSquareButton.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "tconstruct/client/tabs/AbstractTab.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "enableStandardItemLighting": { + "count": 29, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java", + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "disableStandardItemLighting": { + "count": 41, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java", + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcSquareButton.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "tconstruct/client/tabs/AbstractTab.java" + ] + }, + "enableGUIStandardItemLighting": { + "count": 18, + "files": [ + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/player/GuiNPCBankChest.java", + "noppes/npcs/client/gui/player/GuiNpcFollower.java", + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java", + "noppes/npcs/client/gui/player/GuiNPCTrader.java", + "noppes/npcs/client/gui/player/GuiRecipes.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "tconstruct/client/tabs/AbstractTab.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.OpenGlHelper": { + "shortName": "OpenGlHelper", + "package": "net.minecraft.client.renderer", + "importCount": 39, + "importedBy": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java", + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiToggleButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "setLightmapTextureCoords": { + "count": 14, + "files": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java" + ] + }, + "setActiveTexture": { + "count": 38, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java", + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ] + }, + "glBlendFunc": { + "count": 27, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiToggleButton.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.texture.TextureManager": { + "shortName": "TextureManager", + "package": "net.minecraft.client.renderer.texture", + "importCount": 38, + "importedBy": [ + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/SubGuiEffectGeneral.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "bindTexture": { + "count": 119, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/SubGuiEffectGeneral.java", + "noppes/npcs/client/gui/global/GuiEffectDirectory.java", + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "getResourceLocation": { + "count": 9, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java" + ] + }, + "loadTexture": { + "count": 6, + "files": [ + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ] + }, + "deleteTexture": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ] + }, + "getTexture": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderProjectile.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.FontRenderer": { + "shortName": "FontRenderer", + "package": "net.minecraft.client.gui", + "importCount": 38, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldBuilder.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/TextBlockClient.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/gui/util/GuiNpcTextArea.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/GuiToggleButton.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "somehussar/gui/ImmediateTextField.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "drawString": { + "count": 42, + "files": [ + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java" + ] + }, + "getStringWidth": { + "count": 91, + "files": [ + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/TextBlockClient.java", + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java" + ] + }, + "drawStringWithShadow": { + "count": 20, + "files": [ + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java" + ] + }, + "listFormattedStringToWidth": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java" + ] + }, + "trimStringToWidth": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/util/GuiNpcButton.java" + ] + }, + "drawSplitString": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java" + ] + }, + "getCharWidth": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "FONT_HEIGHT": { + "count": 39, + "files": [ + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java" + ] + } + } + }, + "net.minecraft.util.DamageSource": { + "shortName": "DamageSource", + "package": "net.minecraft.util", + "importCount": 36, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java", + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java", + "noppes/npcs/AbstractDataAbilities.java", + "noppes/npcs/DataAbilities.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/Resistances.java", + "noppes/npcs/ai/CombatHandler.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptDamageSource.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "noppes/npcs/scripted/event/AbilityEvent.java", + "noppes/npcs/scripted/event/ChainEvent.java", + "noppes/npcs/scripted/event/NpcEvent.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java", + "noppes/npcs/wrapper/MC1710PlatformService.java" + ], + "paAbstraction": "IDamageSource", + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/wrapper/MC1710PlatformService.java", + "line": 141 + } + ], + "instanceof": [] + }, + "methodCalls": { + "isMagicDamage": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java" + ] + }, + "isFireDamage": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java" + ] + }, + "isExplosion": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java" + ] + }, + "getEntity": { + "count": 10, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityEnergyBarrier.java", + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/ScriptDamageSource.java" + ] + }, + "isProjectile": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java", + "noppes/npcs/scripted/ScriptDamageSource.java" + ] + }, + "getSourceOfDamage": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/scripted/ScriptDamageSource.java" + ] + }, + "isUnblockable": { + "count": 2, + "files": [ + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/ScriptDamageSource.java" + ] + }, + "getDamageType": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptDamageSource.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java" + ] + } + }, + "staticCalls": { + "causePlayerDamage": { + "count": 6, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyPanel.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java" + ] + }, + "causeMobDamage": { + "count": 5, + "files": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyExplosion.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/entity/EntityEnergySweeper.java" + ] + }, + "causeThrownDamage": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + } + }, + "fieldAccesses": { + "damageType": { + "count": 4, + "files": [ + "kamkeel/npcs/entity/EntityEnergyDome.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/event/NpcEvent.java" + ] + } + } + }, + "net.minecraft.client.renderer.RenderBlocks": { + "shortName": "RenderBlocks", + "package": "net.minecraft.client.renderer", + "importCount": 35, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClient.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "noppes/npcs/mixin/MixinItemRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "line": 30 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "line": 25 + } + ], + "instanceof": [] + }, + "methodCalls": { + "renderBlockAsItem": { + "count": 4, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "renderStandardBlock": { + "count": 6, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "setRenderFromInside": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java" + ] + }, + "renderBlockByRenderType": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "setRenderBoundsFromBlock": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "renderFaceYNeg": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "getBlockIconFromSideAndMetadata": { + "count": 6, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "renderFaceYPos": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "renderFaceZNeg": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "renderFaceZPos": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "renderFaceXNeg": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + }, + "renderFaceXPos": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ] + } + }, + "staticCalls": { + "renderItemIn3d": { + "count": 7, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + } + }, + "fieldAccesses": { + "uvRotateTop": { + "count": 4, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java" + ] + } + } + }, + "net.minecraft.nbt.NBTTagString": { + "shortName": "NBTTagString", + "package": "net.minecraft.nbt", + "importCount": 35, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "noppes/npcs/DataAdvanced.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/controllers/PartyController.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/data/PlayerAbilityData.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "noppes/npcs/scripted/item/ScriptItemBook.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/controllers/data/ability/Ability.java", + "line": 1549 + }, + { + "file": "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 78 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 83 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java", + "line": 85 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 91 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 93 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 97 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java", + "line": 99 + }, + { + "file": "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java", + "line": 87 + }, + { + "file": "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java", + "line": 60 + }, + { + "file": "noppes/npcs/DataAdvanced.java", + "line": 104 + }, + { + "file": "noppes/npcs/DataDisplay.java", + "line": 133 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 418 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 439 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 441 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 347 + }, + { + "file": "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "line": 144 + }, + { + "file": "noppes/npcs/client/gui/SubGuiClonerNPCTags.java", + "line": 146 + }, + { + "file": "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java", + "line": 125 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 489 + }, + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 492 + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java", + "line": 99 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 168 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 169 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 213 + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "line": 296 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 208 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 263 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 164 + }, + { + "file": "noppes/npcs/controllers/PartyController.java", + "line": 195 + }, + { + "file": "noppes/npcs/controllers/ScriptController.java", + "line": 361 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 470 + }, + { + "file": "noppes/npcs/controllers/TagController.java", + "line": 253 + }, + { + "file": "noppes/npcs/controllers/data/PlayerAbilityData.java", + "line": 1036 + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "line": 201 + }, + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 99 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGuiComponent.java", + "line": 103 + }, + { + "file": "noppes/npcs/scripted/gui/ScriptGuiScroll.java", + "line": 83 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemBook.java", + "line": 37 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 300 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 63 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 126 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 361 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 362 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "line": 82 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 192 + } + ], + "casts": [ + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 256 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 209 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 625 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 164 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 552 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 168 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptParticle.java", + "line": 115 + }, + { + "file": "noppes/npcs/scripted/ScriptSound.java", + "line": 82 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 163 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 551 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.IIcon": { + "shortName": "IIcon", + "package": "net.minecraft.util", + "importCount": 35, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotNPCArmor.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemPlaceholder.java", + "noppes/npcs/items/ItemSkirt.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "line": 237 + }, + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "line": 237 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 204 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "line": 102 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "line": 210 + } + ], + "instanceof": [] + }, + "methodCalls": { + "getMinU": { + "count": 5, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "getMaxU": { + "count": 5, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "getMinV": { + "count": 5, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "getMaxV": { + "count": 5, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "getIconWidth": { + "count": 3, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + }, + "getIconHeight": { + "count": 3, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "length": { + "count": 1, + "files": [ + "noppes/npcs/blocks/BlockPlaceholder.java" + ] + } + } + }, + "net.minecraft.client.renderer.entity.RenderManager": { + "shortName": "RenderManager", + "package": "net.minecraft.client.renderer.entity", + "importCount": 33, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java", + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java", + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/model/GuiPresetSelection.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface.java", + "noppes/npcs/client/gui/util/GuiModelInterface2.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/mixin/MixinItemRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "playerViewY": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelPony.java" + ] + }, + "playerViewX": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelPony.java" + ] + } + } + }, + "net.minecraft.client.model.ModelBox": { + "shortName": "ModelBox", + "package": "net.minecraft.client.model", + "importCount": 32, + "importedBy": [ + "noppes/npcs/client/model/blocks/ModelAnvil.java", + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "noppes/npcs/client/model/blocks/ModelMailbox.java", + "noppes/npcs/client/model/blocks/ModelPedestal.java", + "noppes/npcs/client/model/blocks/ModelStool.java", + "noppes/npcs/client/model/blocks/ModelTable.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "noppes/npcs/client/model/util/ModelPlane.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "class": "ModelPlane" + } + ], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 46 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 75 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 76 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 81 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 82 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 83 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 95 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 101 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 107 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 113 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "line": 119 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 64 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 72 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 73 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 79 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "line": 80 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelPedestal.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelPedestal.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "line": 69 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "line": 56 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 47 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "line": 59 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 48 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 72 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 84 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 88 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 90 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 91 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 95 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 96 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 102 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 108 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 114 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 124 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "line": 130 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "line": 55 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 17 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 19 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 33 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 35 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 49 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 50 + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 32 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 43 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 44 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 57 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 63 + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "line": 67 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 22 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 23 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 24 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "line": 28 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 21 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 25 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 26 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 29 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 31 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "line": 47 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "line": 73 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.command.CommandException": { + "shortName": "CommandException", + "package": "net.minecraft.command", + "importCount": 31, + "importedBy": [ + "kamkeel/npcs/command/AnimationCommand.java", + "kamkeel/npcs/command/AttributeCommand.java", + "kamkeel/npcs/command/AuctionCommand.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/CommandKamkeelBase.java", + "kamkeel/npcs/command/ConfigCommand.java", + "kamkeel/npcs/command/DebugCommand.java", + "kamkeel/npcs/command/DialogCategoryCommand.java", + "kamkeel/npcs/command/DialogCommand.java", + "kamkeel/npcs/command/EffectCommand.java", + "kamkeel/npcs/command/FactionCommand.java", + "kamkeel/npcs/command/HelpCommand.java", + "kamkeel/npcs/command/MoneyCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/OverlayCommand.java", + "kamkeel/npcs/command/QuestCategoryCommand.java", + "kamkeel/npcs/command/QuestCommand.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/command/auction/BlacklistSubCommand.java", + "kamkeel/npcs/command/profile/CommandHelpProfile.java", + "kamkeel/npcs/command/profile/CommandProfile.java", + "kamkeel/npcs/command/profile/CommandProfileAdmin.java", + "kamkeel/npcs/command/profile/CommandProfileBase.java", + "kamkeel/npcs/command/profile/CommandProfileChange.java", + "kamkeel/npcs/command/profile/CommandProfileCreate.java", + "kamkeel/npcs/command/profile/CommandProfileList.java", + "kamkeel/npcs/command/profile/CommandProfileRegion.java", + "kamkeel/npcs/command/profile/CommandProfileRemove.java", + "kamkeel/npcs/command/profile/CommandProfileRename.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/command/AuctionCommand.java", + "line": 104 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeel.java", + "line": 89 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeel.java", + "line": 94 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 90 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 104 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 108 + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "line": 132 + }, + { + "file": "kamkeel/npcs/command/DebugCommand.java", + "line": 34 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfile.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfile.java", + "line": 70 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileBase.java", + "line": 76 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileBase.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileBase.java", + "line": 104 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.inventory.IInventory": { + "shortName": "IInventory", + "package": "net.minecraft.inventory", + "importCount": 30, + "importedBy": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NpcMiscInventory.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerAuctionBidding.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCBankInterface.java", + "noppes/npcs/containers/InventoryAuctionDisplay.java", + "noppes/npcs/containers/InventoryNPC.java", + "noppes/npcs/containers/InventoryNpcTrader.java", + "noppes/npcs/containers/SlotAuctionDisplay.java", + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotCompanionWeapon.java", + "noppes/npcs/containers/SlotNPCArmor.java", + "noppes/npcs/containers/SlotNpcBankCurrency.java", + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "noppes/npcs/containers/SlotNpcTraderItems.java", + "noppes/npcs/containers/SlotValid.java", + "noppes/npcs/controllers/data/PlayerMail.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptContainer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/DataInventory.java", + "class": "DataInventory" + }, + { + "file": "noppes/npcs/NpcMiscInventory.java", + "class": "NpcMiscInventory" + }, + { + "file": "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "class": "TileNpcContainer" + }, + { + "file": "noppes/npcs/containers/InventoryAuctionDisplay.java", + "class": "InventoryAuctionDisplay" + }, + { + "file": "noppes/npcs/containers/InventoryNPC.java", + "class": "InventoryNPC" + }, + { + "file": "noppes/npcs/containers/InventoryNpcTrader.java", + "class": "InventoryNpcTrader" + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "class": "PlayerMail" + } + ], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/ScriptBlock.java", + "line": 119 + }, + { + "file": "noppes/npcs/scripted/ScriptBlock.java", + "line": 126 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptBlock.java", + "line": 119 + } + ] + }, + "methodCalls": { + "getStackInSlot": { + "count": 10, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/containers/ContainerAuctionBidding.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/scripted/ScriptContainer.java" + ] + }, + "setInventorySlotContents": { + "count": 16, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/containers/ContainerAuctionBidding.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/scripted/ScriptContainer.java" + ] + }, + "getSizeInventory": { + "count": 7, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/scripted/ScriptContainer.java" + ] + }, + "hasCustomInventoryName": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/player/GuiCrate.java" + ] + }, + "getInventoryName": { + "count": 4, + "files": [ + "noppes/npcs/client/gui/player/GuiCrate.java" + ] + }, + "openInventory": { + "count": 1, + "files": [ + "noppes/npcs/containers/ContainerCrate.java" + ] + }, + "isUseableByPlayer": { + "count": 1, + "files": [ + "noppes/npcs/containers/ContainerCrate.java" + ] + }, + "closeInventory": { + "count": 1, + "files": [ + "noppes/npcs/containers/ContainerCrate.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.IBlockAccess": { + "shortName": "IBlockAccess", + "package": "net.minecraft.world", + "importCount": 30, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockTrigger.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getBlock": { + "count": 8, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockCarpentryBench.java" + ] + }, + "getBlockMetadata": { + "count": 6, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWeaponRack.java" + ] + }, + "getTileEntity": { + "count": 18, + "files": [ + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockTrigger.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.init.Items": { + "shortName": "Items", + "package": "net.minecraft.init", + "importCount": 29, + "importedBy": [ + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CreativeTabNpcs.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/blocks/BlockBook.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/tiles/TileBook.java", + "noppes/npcs/blocks/tiles/TileColorable.java", + "noppes/npcs/client/MessageAchievement.java", + "noppes/npcs/client/gui/GuiMagicCycleMap.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/constants/EnumCompanionTalent.java", + "noppes/npcs/controllers/data/RecipesDefault.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "tconstruct/client/tabs/InventoryTabCustomNpc.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.client.registry.RenderingRegistry": { + "shortName": "RenderingRegistry", + "package": "cpw.mods.fml.client.registry", + "importCount": 28, + "importedBy": [ + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getNextAvailableRenderId": { + "count": 27, + "files": [ + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java" + ] + }, + "registerEntityRenderingHandler": { + "count": 17, + "files": [ + "noppes/npcs/client/ClientProxy.java" + ] + }, + "registerBlockHandler": { + "count": 27, + "files": [ + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAIBase": { + "shortName": "EntityAIBase", + "package": "net.minecraft.entity.ai", + "importCount": 27, + "importedBy": [ + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIAnimation.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIDodgeShoot.java", + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIFollow.java", + "noppes/npcs/ai/EntityAIJob.java", + "noppes/npcs/ai/EntityAILeapAtTargetNpc.java", + "noppes/npcs/ai/EntityAILook.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIMovingPath.java", + "noppes/npcs/ai/EntityAIOrbitTarget.java", + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIPounceTarget.java", + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/ai/EntityAIReturn.java", + "noppes/npcs/ai/EntityAIRole.java", + "noppes/npcs/ai/EntityAISprintToTarget.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/EntityAITransform.java", + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/EntityAIWatchClosest.java", + "noppes/npcs/ai/EntityAIWaterNav.java", + "noppes/npcs/ai/EntityAIWorldLines.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/EntityAIAmbushTarget.java", + "class": "EntityAIAmbushTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIAnimation.java", + "class": "EntityAIAnimation" + }, + { + "file": "noppes/npcs/ai/EntityAIAttackTarget.java", + "class": "EntityAIAttackTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIAvoidTarget.java", + "class": "EntityAIAvoidTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIDodgeShoot.java", + "class": "EntityAIDodgeShoot" + }, + { + "file": "noppes/npcs/ai/EntityAIFindShade.java", + "class": "EntityAIFindShade" + }, + { + "file": "noppes/npcs/ai/EntityAIFollow.java", + "class": "EntityAIFollow" + }, + { + "file": "noppes/npcs/ai/EntityAIJob.java", + "class": "EntityAIJob" + }, + { + "file": "noppes/npcs/ai/EntityAILeapAtTargetNpc.java", + "class": "EntityAILeapAtTargetNpc" + }, + { + "file": "noppes/npcs/ai/EntityAILook.java", + "class": "EntityAILook" + }, + { + "file": "noppes/npcs/ai/EntityAIMoveIndoors.java", + "class": "EntityAIMoveIndoors" + }, + { + "file": "noppes/npcs/ai/EntityAIMovingPath.java", + "class": "EntityAIMovingPath" + }, + { + "file": "noppes/npcs/ai/EntityAIOrbitTarget.java", + "class": "EntityAIOrbitTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIPanic.java", + "class": "EntityAIPanic" + }, + { + "file": "noppes/npcs/ai/EntityAIPounceTarget.java", + "class": "EntityAIPounceTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIRangedAttack.java", + "class": "EntityAIRangedAttack" + }, + { + "file": "noppes/npcs/ai/EntityAIReturn.java", + "class": "EntityAIReturn" + }, + { + "file": "noppes/npcs/ai/EntityAIRole.java", + "class": "EntityAIRole" + }, + { + "file": "noppes/npcs/ai/EntityAISprintToTarget.java", + "class": "EntityAISprintToTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIStalkTarget.java", + "class": "EntityAIStalkTarget" + }, + { + "file": "noppes/npcs/ai/EntityAITransform.java", + "class": "EntityAITransform" + }, + { + "file": "noppes/npcs/ai/EntityAIWander.java", + "class": "EntityAIWander" + }, + { + "file": "noppes/npcs/ai/EntityAIWatchClosest.java", + "class": "EntityAIWatchClosest" + }, + { + "file": "noppes/npcs/ai/EntityAIWaterNav.java", + "class": "EntityAIWaterNav" + }, + { + "file": "noppes/npcs/ai/EntityAIWorldLines.java", + "class": "EntityAIWorldLines" + }, + { + "file": "noppes/npcs/ai/EntityAIZigZagTarget.java", + "class": "EntityAIZigZagTarget" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.server.MinecraftServer": { + "shortName": "MinecraftServer", + "package": "net.minecraft.server", + "importCount": 26, + "importedBy": [ + "foxz/command/CmdNpc.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/commandhelper/permissions/OpOnly.java", + "foxz/utils/Utils.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/profile/CommandProfile.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/config/ConfigScript.java", + "noppes/npcs/config/legacy/LegacyConfig.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java", + "noppes/npcs/wrapper/MC1710PlatformService.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isDedicatedServer": { + "count": 2, + "files": [ + "kamkeel/npcs/controllers/SyncController.java", + "noppes/npcs/CustomNpcs.java" + ] + }, + "getFolderName": { + "count": 1, + "files": [ + "noppes/npcs/CustomNpcs.java" + ] + }, + "worldServerForDimension": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "getConfigurationManager": { + "count": 3, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/controllers/PlayerDataController.java" + ] + } + }, + "staticCalls": { + "getServer": { + "count": 60, + "files": [ + "foxz/command/CmdNpc.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/commandhelper/permissions/OpOnly.java", + "foxz/utils/Utils.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/profile/CommandProfile.java", + "kamkeel/npcs/controllers/SyncController.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/config/ConfigScript.java", + "noppes/npcs/config/legacy/LegacyConfig.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java", + "noppes/npcs/wrapper/MC1710PlatformService.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.ScaledResolution": { + "shortName": "ScaledResolution", + "package": "net.minecraft.client.gui", + "importCount": 26, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/hud/HudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "noppes/npcs/config/GlyphCache.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "line": 320 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "line": 76 + }, + { + "file": "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "line": 908 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 103 + }, + { + "file": "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "line": 234 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 149 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 172 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 213 + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "line": 263 + }, + { + "file": "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "line": 137 + }, + { + "file": "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "line": 171 + }, + { + "file": "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "line": 215 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 181 + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "line": 336 + }, + { + "file": "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "line": 108 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "line": 377 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "line": 498 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "line": 150 + }, + { + "file": "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "line": 89 + }, + { + "file": "noppes/npcs/client/gui/util/GuiDiagram.java", + "line": 1015 + }, + { + "file": "noppes/npcs/client/gui/util/GuiDiagram.java", + "line": 1231 + }, + { + "file": "noppes/npcs/client/gui/util/GuiEffectBar.java", + "line": 51 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcButton.java", + "line": 303 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "line": 125 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "line": 399 + }, + { + "file": "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "line": 579 + }, + { + "file": "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "line": 1126 + }, + { + "file": "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "line": 877 + }, + { + "file": "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/gui/util/GuiUtil.java", + "line": 18 + }, + { + "file": "noppes/npcs/client/gui/util/GuiUtil.java", + "line": 198 + }, + { + "file": "noppes/npcs/client/gui/util/GuiUtil.java", + "line": 207 + }, + { + "file": "noppes/npcs/client/gui/util/GuiUtil.java", + "line": 215 + }, + { + "file": "noppes/npcs/client/gui/util/GuiUtil.java", + "line": 223 + }, + { + "file": "noppes/npcs/client/gui/util/GuiUtil.java", + "line": 231 + }, + { + "file": "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "line": 921 + }, + { + "file": "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "line": 99 + }, + { + "file": "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "line": 251 + }, + { + "file": "noppes/npcs/config/GlyphCache.java", + "line": 364 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getScaleFactor": { + "count": 18, + "files": [ + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java", + "noppes/npcs/config/GlyphCache.java" + ] + }, + "getScaledWidth": { + "count": 25, + "files": [ + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/hud/HudComponent.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java" + ] + }, + "getScaledHeight": { + "count": 34, + "files": [ + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/hud/CompassHudComponent.java", + "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiEffectBar.java", + "noppes/npcs/client/gui/util/GuiNpcButton.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/GuiUtil.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.texture.IIconRegister": { + "shortName": "IIconRegister", + "package": "net.minecraft.client.renderer.texture", + "importCount": 26, + "importedBy": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemDaggerReversed.java", + "noppes/npcs/items/ItemKunaiReversed.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemTeleporter.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "registerIcon": { + "count": 8, + "files": [ + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockCampfire.java", + "noppes/npcs/blocks/BlockCandle.java", + "noppes/npcs/blocks/BlockLantern.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/items/ItemNpcArmorColorable.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.EntityList": { + "shortName": "EntityList", + "package": "net.minecraft.entity", + "importCount": 25, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/command/SlayCommand.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeKill.java", + "noppes/npcs/client/gui/roles/GuiNpcGuard.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "createEntityFromNBT": { + "count": 15, + "files": [ + "foxz/command/CmdClone.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/network/packets/request/MountPacket.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/data/SpawnData.java", + "noppes/npcs/items/ItemSoulstoneFilled.java" + ] + }, + "getEntityString": { + "count": 9, + "files": [ + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + }, + "createEntityByName": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java" + ] + } + }, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.FMLCommonHandler": { + "shortName": "FMLCommonHandler", + "package": "cpw.mods.fml.common", + "importCount": 25, + "importedBy": [ + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcClosePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/IScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemSoulstoneFilled.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "instance": { + "count": 44, + "files": [ + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcClosePacket.java", + "kamkeel/npcs/network/packets/request/npc/NpcDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java", + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java", + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java", + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java", + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/CustomNpcsPermissions.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/IScriptHandler.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemSoulstoneFilled.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.inventory.Container": { + "shortName": "Container", + "package": "net.minecraft.inventory", + "importCount": 25, + "importedBy": [ + "noppes/npcs/CommonProxy.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerCrate.java", + "noppes/npcs/containers/ContainerCustomGui.java", + "noppes/npcs/containers/ContainerEmpty.java", + "noppes/npcs/containers/ContainerManageBanks.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "noppes/npcs/containers/ContainerNpcInterface.java", + "noppes/npcs/containers/ContainerNPCInv.java", + "noppes/npcs/containers/ContainerNpcItemGiver.java", + "noppes/npcs/containers/ContainerNpcQuestReward.java", + "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "noppes/npcs/containers/InventoryNPC.java", + "noppes/npcs/controllers/data/BankData.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptContainer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "class": "ContainerAnvilRepair" + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "class": "ContainerCarpentryBench" + }, + { + "file": "noppes/npcs/containers/ContainerCrate.java", + "class": "ContainerCrate" + }, + { + "file": "noppes/npcs/containers/ContainerCustomGui.java", + "class": "ContainerCustomGui" + }, + { + "file": "noppes/npcs/containers/ContainerEmpty.java", + "class": "ContainerEmpty" + }, + { + "file": "noppes/npcs/containers/ContainerManageBanks.java", + "class": "ContainerManageBanks" + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "class": "ContainerManageRecipes" + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "class": "ContainerNPCFollowerSetup" + }, + { + "file": "noppes/npcs/containers/ContainerNpcInterface.java", + "class": "ContainerNpcInterface" + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "class": "ContainerNPCInv" + }, + { + "file": "noppes/npcs/containers/ContainerNpcItemGiver.java", + "class": "ContainerNpcItemGiver" + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestReward.java", + "class": "ContainerNpcQuestReward" + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "class": "ContainerNpcQuestTypeItem" + }, + { + "file": "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "class": "ContainerNPCTraderSetup" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "canDragIntoSlot": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "onContainerClosed": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "func_94530_a": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "onCraftMatrixChanged": { + "count": 1, + "files": [ + "noppes/npcs/containers/InventoryNPC.java" + ] + }, + "getSlot": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptContainer.java" + ] + }, + "putStackInSlot": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptContainer.java" + ] + }, + "detectAndSendChanges": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptContainer.java" + ] + }, + "isPlayerNotUsingContainer": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptContainer.java" + ] + } + }, + "staticCalls": { + "func_94527_a": { + "count": 5, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "func_94525_a": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + }, + "func_94534_d": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.creativetab.CreativeTabs": { + "shortName": "CreativeTabs", + "package": "net.minecraft.creativetab", + "importCount": 25, + "importedBy": [ + "noppes/npcs/CreativeTabNpcs.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBarrel.java", + "noppes/npcs/blocks/BlockBeam.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockChair.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrate.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockShelf.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTable.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/items/ItemElementalStaff.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemOrb.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/CreativeTabNpcs.java", + "class": "CreativeTabNpcs" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.ChatComponentTranslation": { + "shortName": "ChatComponentTranslation", + "package": "net.minecraft.util", + "importCount": 24, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockSign.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileWaypoint.java", + "noppes/npcs/client/VersionChecker.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/controllers/PlayerQuestController.java", + "noppes/npcs/controllers/data/FactionOptions.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/roles/RoleFollower.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/roles/RolePostman.java", + "noppes/npcs/roles/RoleTransporter.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "foxz/command/CmdNoppes.java", + "line": 198 + }, + { + "file": "kamkeel/npcs/network/packets/data/ChatBubblePacket.java", + "line": 68 + }, + { + "file": "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java", + "line": 72 + }, + { + "file": "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java", + "line": 74 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 488 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 802 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 287 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 363 + }, + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "line": 114 + }, + { + "file": "noppes/npcs/blocks/BlockSign.java", + "line": 34 + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "line": 81 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 85 + }, + { + "file": "noppes/npcs/blocks/tiles/TileWaypoint.java", + "line": 59 + }, + { + "file": "noppes/npcs/blocks/tiles/TileWaypoint.java", + "line": 78 + }, + { + "file": "noppes/npcs/client/VersionChecker.java", + "line": 34 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 355 + }, + { + "file": "noppes/npcs/controllers/PlayerQuestController.java", + "line": 61 + }, + { + "file": "noppes/npcs/controllers/data/FactionOptions.java", + "line": 64 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 559 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1170 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 905 + }, + { + "file": "noppes/npcs/items/ItemNpcScripter.java", + "line": 40 + }, + { + "file": "noppes/npcs/items/ItemNpcWand.java", + "line": 36 + }, + { + "file": "noppes/npcs/items/ItemNpcWand.java", + "line": 45 + }, + { + "file": "noppes/npcs/items/ItemNpcWand.java", + "line": 59 + }, + { + "file": "noppes/npcs/roles/RoleFollower.java", + "line": 76 + }, + { + "file": "noppes/npcs/roles/RoleInnkeeper.java", + "line": 74 + }, + { + "file": "noppes/npcs/roles/RolePostman.java", + "line": 38 + }, + { + "file": "noppes/npcs/roles/RoleTransporter.java", + "line": 89 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 392 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 405 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "appendSibling": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "getChatStyle": { + "count": 1, + "files": [ + "noppes/npcs/client/VersionChecker.java" + ] + }, + "setChatStyle": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.CompressedStreamTools": { + "shortName": "CompressedStreamTools", + "package": "net.minecraft.nbt", + "importCount": 24, + "importedBy": [ + "foxz/utils/Market.java", + "kamkeel/npcs/controllers/ProfileController.java", + "kamkeel/npcs/util/ByteBufUtils.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/GlobalDataController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/ServerTagMapController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapperIO.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "writeCompressed": { + "count": 25, + "files": [ + "foxz/utils/Market.java", + "kamkeel/npcs/controllers/ProfileController.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/GlobalDataController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ServerTagMapController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/controllers/data/PlayerData.java", + "noppes/npcs/wrapper/nbt/NBTWrapperIO.java" + ] + }, + "readCompressed": { + "count": 15, + "files": [ + "kamkeel/npcs/controllers/ProfileController.java", + "noppes/npcs/client/controllers/PresetController.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/BankController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/controllers/GlobalDataController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/TransportController.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapperIO.java" + ] + }, + "compress": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ByteBufUtils.java" + ] + }, + "func_152457_a": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ByteBufUtils.java" + ] + }, + "read": { + "count": 10, + "files": [ + "noppes/npcs/controllers/AnimationController.java", + "noppes/npcs/controllers/CustomEffectController.java", + "noppes/npcs/controllers/FactionController.java", + "noppes/npcs/controllers/LinkedItemController.java", + "noppes/npcs/controllers/MagicController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ServerTagMapController.java", + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/TagController.java", + "noppes/npcs/wrapper/nbt/NBTWrapperIO.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.block.material.Material": { + "shortName": "Material", + "package": "net.minecraft.block.material", + "importCount": 24, + "importedBy": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBlood.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockCrystal.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockPlaceholder.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.GuiYesNo": { + "shortName": "GuiYesNo", + "package": "net.minecraft.client.gui", + "importCount": 22, + "importedBy": [ + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "noppes/npcs/client/gui/GuiScript.java", + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 190 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "line": 297 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "line": 105 + }, + { + "file": "noppes/npcs/client/gui/GuiScript.java", + "line": 339 + }, + { + "file": "noppes/npcs/client/gui/GuiScript.java", + "line": 343 + }, + { + "file": "noppes/npcs/client/gui/global/GuiAbilityDirectory.java", + "line": 509 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "line": 390 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "line": 403 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "line": 243 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 298 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "line": 319 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "line": 106 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "line": 138 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "line": 257 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "line": 262 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "line": 108 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "line": 117 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 294 + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "line": 314 + }, + { + "file": "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "line": 347 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailbox.java", + "line": 106 + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "line": 184 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "line": 272 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "line": 279 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "line": 297 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "line": 300 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "line": 312 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "line": 99 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "line": 107 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "line": 114 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "line": 320 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "line": 211 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "line": 126 + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "line": 130 + }, + { + "file": "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "line": 722 + }, + { + "file": "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "line": 727 + }, + { + "file": "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "line": 740 + }, + { + "file": "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "line": 557 + }, + { + "file": "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "line": 599 + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "line": 66 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.Gui": { + "shortName": "Gui", + "package": "net.minecraft.client.gui", + "importCount": 22, + "importedBy": [ + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "noppes/npcs/client/gui/custom/components/CustomGuiLine.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "noppes/npcs/client/gui/util/GuiNpcSquareButton.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/GutterIconRenderer.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "class": "CustomGuiLabel" + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLine.java", + "class": "CustomGuiLine" + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "class": "CustomGuiTexturedRect" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "class": "OverlayCustom" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "class": "CustomOverlayLabel" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "class": "CustomOverlayLine" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "class": "CustomOverlayTexturedRect" + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "class": "AbilityHotbarSlotRenderer" + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "class": "AbilityIcon" + }, + { + "file": "noppes/npcs/client/gui/player/GuiDialogImage.java", + "class": "GuiDialogImage" + }, + { + "file": "noppes/npcs/client/gui/util/GuiDiagram.java", + "class": "GuiDiagram" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "class": "GuiNpcLabel" + }, + { + "file": "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "class": "AutocompleteMenu" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "drawRect": { + "count": 70, + "files": [ + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/util/GuiNpcSquareButton.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/GutterIconRenderer.java", + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java" + ] + }, + "func_146110_a": { + "count": 6, + "files": [ + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/player/GuiAuctionInterface.java", + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.GuiYesNoCallback": { + "shortName": "GuiYesNoCallback", + "package": "net.minecraft.client.gui", + "importCount": 21, + "importedBy": [ + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "noppes/npcs/client/gui/player/GuiMailbox.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "class": "GuiNpcMobSpawnerAdd" + }, + { + "file": "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "class": "GuiNpcRemoteEditor" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "class": "GuiNpcManageAbilities" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "class": "GuiNPCManageAnimations" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "class": "GuiNPCManageDialogs" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "class": "GuiNPCManageEffects" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "class": "GuiNPCManageFactions" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "class": "GuiNPCManageLinked" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "class": "GuiNpcManagePlayerData" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "class": "GuiNPCManageQuest" + }, + { + "file": "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "class": "SubGuiLinkedItem" + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailbox.java", + "class": "GuiMailbox" + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "class": "GuiMailmanWrite" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "class": "GuiParty" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "class": "GuiProfiles" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "class": "GuiQuestLog" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "class": "GuiSettings" + }, + { + "file": "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "class": "GuiScriptInterface" + }, + { + "file": "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "class": "GuiDirectoryCategorized" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "class": "GuiNpcMenu" + }, + { + "file": "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "class": "GuiScrollWindow" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.ChatComponentText": { + "shortName": "ChatComponentText", + "package": "net.minecraft.util", + "importCount": 20, + "importedBy": [ + "foxz/command/CommandNoppes.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "foxz/commandhelper/ChMcLogger.java", + "foxz/utils/Market.java", + "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "kamkeel/npcs/network/packets/request/GuiRequestPacket.java", + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/MessageAchievement.java", + "noppes/npcs/client/TextBlockClient.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/controllers/PlayerDataController.java", + "noppes/npcs/controllers/ServerCloneController.java", + "noppes/npcs/controllers/data/Party.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "foxz/command/CommandNoppes.java", + "line": 32 + }, + { + "file": "foxz/command/CommandNoppes.java", + "line": 34 + }, + { + "file": "foxz/command/CommandNoppes.java", + "line": 36 + }, + { + "file": "foxz/commandhelper/AbstractCommandHelper.java", + "line": 133 + }, + { + "file": "foxz/commandhelper/ChMcLogger.java", + "line": 14 + }, + { + "file": "foxz/utils/Market.java", + "line": 161 + }, + { + "file": "foxz/utils/Market.java", + "line": 178 + }, + { + "file": "foxz/utils/Market.java", + "line": 241 + }, + { + "file": "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "line": 33 + }, + { + "file": "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "line": 40 + }, + { + "file": "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "line": 66 + }, + { + "file": "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "line": 69 + }, + { + "file": "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java", + "line": 73 + }, + { + "file": "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java", + "line": 152 + }, + { + "file": "kamkeel/npcs/util/ColorUtil.java", + "line": 63 + }, + { + "file": "kamkeel/npcs/util/ColorUtil.java", + "line": 65 + }, + { + "file": "kamkeel/npcs/util/ColorUtil.java", + "line": 77 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 135 + }, + { + "file": "noppes/npcs/NoppesUtilPlayer.java", + "line": 160 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 473 + }, + { + "file": "noppes/npcs/client/MessageAchievement.java", + "line": 27 + }, + { + "file": "noppes/npcs/client/TextBlockClient.java", + "line": 79 + }, + { + "file": "noppes/npcs/compat/PixelmonHelper.java", + "line": 144 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1375 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1425 + }, + { + "file": "noppes/npcs/controllers/AuctionController.java", + "line": 1448 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 444 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 495 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 514 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 531 + }, + { + "file": "noppes/npcs/controllers/PlayerDataController.java", + "line": 594 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 117 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 125 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 339 + }, + { + "file": "noppes/npcs/controllers/ServerCloneController.java", + "line": 347 + }, + { + "file": "noppes/npcs/controllers/data/Party.java", + "line": 369 + }, + { + "file": "noppes/npcs/items/ItemNpcMovingPath.java", + "line": 57 + }, + { + "file": "noppes/npcs/items/ItemNpcMovingPath.java", + "line": 59 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 1297 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getUnformattedText": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java" + ] + }, + "setChatStyle": { + "count": 3, + "files": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/client/TextBlockClient.java" + ] + }, + "appendSibling": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java" + ] + }, + "appendText": { + "count": 1, + "files": [ + "kamkeel/npcs/util/ColorUtil.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.EnumChatFormatting": { + "shortName": "EnumChatFormatting", + "package": "net.minecraft.util", + "importCount": 19, + "importedBy": [ + "foxz/command/CommandNoppes.java", + "kamkeel/npcs/network/packets/request/GuiRequestPacket.java", + "kamkeel/npcs/util/AttributeItemUtil.java", + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiAuctionBidding.java", + "noppes/npcs/client/gui/player/GuiAuctionListing.java", + "noppes/npcs/client/gui/player/GuiAuctionSell.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBid.java", + "noppes/npcs/client/gui/player/SubGuiAuctionBuyNow.java", + "noppes/npcs/controllers/AuctionController.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getFormattingCode": { + "count": 1, + "files": [ + "kamkeel/npcs/util/ColorUtil.java" + ] + }, + "isFancyStyling": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "toString": { + "count": 2, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "getFriendlyName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + } + }, + "staticCalls": { + "values": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "getValueByName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemBlock": { + "shortName": "ItemBlock", + "package": "net.minecraft.item", + "importCount": 19, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/blocks/BlockPedestal.java", + "noppes/npcs/blocks/BlockWeaponRack.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotNPCArmor.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemNpcBlock.java", + "noppes/npcs/items/ItemPlaceholder.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/items/ItemNpcBlock.java", + "class": "ItemNpcBlock" + }, + { + "file": "noppes/npcs/items/ItemPlaceholder.java", + "class": "ItemPlaceholder" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "line": 186 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 390 + }, + { + "file": "noppes/npcs/blocks/BlockPedestal.java", + "line": 43 + }, + { + "file": "noppes/npcs/blocks/BlockWeaponRack.java", + "line": 52 + }, + { + "file": "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "line": 15 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 187 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 226 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 320 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCPony.java", + "line": 199 + }, + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "line": 98 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java", + "line": 74 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "line": 145 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "line": 150 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "line": 185 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java", + "line": 50 + }, + { + "file": "noppes/npcs/containers/SlotCompanionArmor.java", + "line": 37 + }, + { + "file": "noppes/npcs/containers/SlotNPCArmor.java", + "line": 34 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 420 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 654 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 338 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.eventhandler.Cancelable": { + "shortName": "Cancelable", + "package": "cpw.mods.fml.common.eventhandler", + "importCount": 19, + "importedBy": [ + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/controllers/HookDefinition.java", + "noppes/npcs/scripted/event/AbilityEvent.java", + "noppes/npcs/scripted/event/AnimationEvent.java", + "noppes/npcs/scripted/event/BlockEvent.java", + "noppes/npcs/scripted/event/CustomNPCsEvent.java", + "noppes/npcs/scripted/event/EnergyBarrierEvent.java", + "noppes/npcs/scripted/event/EnergyProjectileEvent.java", + "noppes/npcs/scripted/event/ForgeEvent.java", + "noppes/npcs/scripted/event/ItemEvent.java", + "noppes/npcs/scripted/event/NpcEvent.java", + "noppes/npcs/scripted/event/PartyEvent.java", + "noppes/npcs/scripted/event/RecipeScriptEvent.java", + "noppes/npcs/scripted/event/player/AuctionEvent.java", + "noppes/npcs/scripted/event/player/CustomGuiEvent.java", + "noppes/npcs/scripted/event/player/DialogEvent.java", + "noppes/npcs/scripted/event/player/FactionEvent.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java", + "noppes/npcs/scripted/event/player/QuestEvent.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.WorldServer": { + "shortName": "WorldServer", + "package": "net.minecraft.world", + "importCount": 18, + "importedBy": [ + "foxz/utils/Utils.java", + "kamkeel/npcs/command/CloneCommand.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "noppes/npcs/CustomTeleporter.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerTickHandler.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ], + "paAbstraction": "IWorld", + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1251 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1269 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 1046 + }, + { + "file": "noppes/npcs/ServerTickHandler.java", + "line": 34 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 79 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 351 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 422 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1158 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 60 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 110 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 458 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1250 + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1268 + }, + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 49 + }, + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 54 + }, + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 60 + }, + { + "file": "noppes/npcs/ScriptItemEventHandler.java", + "line": 284 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 197 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 247 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 260 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 278 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 292 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 304 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 316 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 328 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 340 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 352 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 364 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 397 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 409 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 421 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 433 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 445 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 457 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 469 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 481 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 493 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 505 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 519 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 540 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 554 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 568 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 602 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 671 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 734 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 754 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 779 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 794 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 78 + }, + { + "file": "noppes/npcs/controllers/data/DataScript.java", + "line": 350 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 415 + } + ] + }, + "methodCalls": { + "getEntrancePortalLocation": { + "count": 1, + "files": [ + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java" + ] + }, + "getSpawnPoint": { + "count": 1, + "files": [ + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java" + ] + }, + "isAirBlock": { + "count": 2, + "files": [ + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java" + ] + }, + "getTopSolidOrLiquidBlock": { + "count": 3, + "files": [ + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "spawnEntityInWorld": { + "count": 4, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java", + "noppes/npcs/scripted/ScriptWorld.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + }, + "getWorldInfo": { + "count": 3, + "files": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getBiomeGenForCoords": { + "count": 2, + "files": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getWorldTime": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getTotalWorldTime": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "areAllPlayersAsleep": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "isBlockFreezable": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "isBlockFreezableNaturally": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "canBlockFreeze": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "canBlockFreezeBody": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "func_147478_e": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "canSnowAtBody": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getHeightValue": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getChunkHeightMapMinimum": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getBlockMetadata": { + "count": 5, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "setBlockMetadataWithNotify": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "canBlockSeeTheSky": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getFullBlockLightValue": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getBlockLightValue": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "playSoundAtEntity": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "playSoundToNearExcept": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getEntityByID": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getClosestPlayerToEntity": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getClosestPlayer": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getClosestVulnerablePlayerToEntity": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getClosestVulnerablePlayer": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "countEntities": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getEntitiesWithinAABB": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "setTileEntity": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "removeTileEntity": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "func_147469_q": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getSeed": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "setSpawnLocation": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "canLightningStrikeAt": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "isBlockHighHumidity": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getTileEntity": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "setBlock": { + "count": 3, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getBlock": { + "count": 4, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "getPlayerEntityByName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "func_152378_a": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "setWorldTime": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "addWeatherEffect": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "func_147487_a": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "newExplosion": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "func_73046_m": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "unloadEntities": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + }, + "resetUpdateEntityTick": { + "count": 2, + "files": [ + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + }, + "onEntityRemoved": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + }, + "addLoadedEntities": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + }, + "updateEntityWithOptionalForce": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptEntity.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "provider": { + "count": 6, + "files": [ + "foxz/utils/Utils.java", + "kamkeel/npcs/command/CloneCommand.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "rand": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "loadedEntityList": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + } + } + }, + "cpw.mods.fml.common.registry.GameRegistry": { + "shortName": "GameRegistry", + "package": "cpw.mods.fml.common.registry", + "importCount": 18, + "importedBy": [ + "noppes/npcs/CustomItems.java", + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/Magic.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemNpcArmor.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemNpcWeaponInterface.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemTeleporter.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "registerTileEntity": { + "count": 28, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "registerBlock": { + "count": 34, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "findUniqueIdentifierFor": { + "count": 3, + "files": [ + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/Magic.java" + ] + }, + "findItem": { + "count": 2, + "files": [ + "noppes/npcs/controllers/data/Magic.java" + ] + }, + "registerItem": { + "count": 15, + "files": [ + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemMounter.java", + "noppes/npcs/items/ItemNpcArmor.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemNpcCloner.java", + "noppes/npcs/items/ItemNpcInterface.java", + "noppes/npcs/items/ItemNpcMovingPath.java", + "noppes/npcs/items/ItemNpcScripter.java", + "noppes/npcs/items/ItemNpcTool.java", + "noppes/npcs/items/ItemNpcWand.java", + "noppes/npcs/items/ItemNpcWeaponInterface.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/items/ItemSoulstoneFilled.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + } + }, + "fieldAccesses": { + "modId": { + "count": 3, + "files": [ + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/Magic.java" + ] + }, + "name": { + "count": 3, + "files": [ + "noppes/npcs/controllers/data/AuctionBlacklist.java", + "noppes/npcs/controllers/data/Magic.java" + ] + } + } + }, + "net.minecraft.entity.EntityLiving": { + "shortName": "EntityLiving", + "package": "net.minecraft.entity", + "importCount": 18, + "importedBy": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ai/EntityAIBustDoor.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/client/gui/GuiNpcMobSpawner.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/entity/EntityFakeLiving.java", + "noppes/npcs/entity/data/ModelData.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/roles/JobSpawner.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptLiving.java" + ], + "paAbstraction": "IEntityLiving", + "usage": { + "extends": [ + { + "file": "noppes/npcs/entity/EntityFakeLiving.java", + "class": "EntityFakeLiving" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 382 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 115 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 125 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 410 + }, + { + "file": "noppes/npcs/client/renderer/RenderCustomNpc.java", + "line": 90 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 108 + }, + { + "file": "noppes/npcs/entity/data/ModelData.java", + "line": 21 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 59 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 60 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 208 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 236 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 278 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 443 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 378 + }, + { + "file": "noppes/npcs/entity/data/ModelData.java", + "line": 20 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 59 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 207 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 235 + }, + { + "file": "noppes/npcs/roles/JobSpawner.java", + "line": 277 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 442 + } + ] + }, + "methodCalls": { + "getEntityData": { + "count": 3, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "setPosition": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getCanSpawnHere": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "getEntityAttribute": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "func_130225_q": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "setCurrentItemOrArmor": { + "count": 5, + "files": [ + "noppes/npcs/entity/data/ModelData.java" + ] + }, + "getAttackTarget": { + "count": 1, + "files": [ + "noppes/npcs/roles/JobSpawner.java" + ] + }, + "setAttackTarget": { + "count": 1, + "files": [ + "noppes/npcs/roles/JobSpawner.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "boundingBox": { + "count": 2, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + } + } + }, + "cpw.mods.fml.common.eventhandler.Event": { + "shortName": "Event", + "package": "cpw.mods.fml.common.eventhandler", + "importCount": 17, + "importedBy": [ + "noppes/npcs/EventHooks.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/controllers/ScriptContainer.java", + "noppes/npcs/controllers/data/DataScript.java", + "noppes/npcs/controllers/data/ForgeDataScript.java", + "noppes/npcs/controllers/data/IScriptHandler.java", + "noppes/npcs/controllers/data/IScriptUnit.java", + "noppes/npcs/controllers/data/JaninoScriptHandler.java", + "noppes/npcs/controllers/data/MultiScriptHandler.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/controllers/data/ScriptHandler.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/janino/JaninoScript.java", + "noppes/npcs/scripted/event/CustomNPCsEvent.java", + "noppes/npcs/scripted/event/ForgeEvent.java", + "noppes/npcs/scripted/item/ScriptCustomItem.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/scripted/event/CustomNPCsEvent.java", + "class": "CustomNPCsEvent" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/EventHooks.java", + "line": 1361 + }, + { + "file": "noppes/npcs/EventHooks.java", + "line": 1362 + }, + { + "file": "noppes/npcs/scripted/event/ForgeEvent.java", + "line": 64 + } + ], + "instanceof": [] + }, + "methodCalls": { + "isCancelable": { + "count": 6, + "files": [ + "noppes/npcs/EventHooks.java" + ] + }, + "isCanceled": { + "count": 6, + "files": [ + "noppes/npcs/EventHooks.java", + "noppes/npcs/controllers/data/DataScript.java" + ] + }, + "getClass": { + "count": 1, + "files": [ + "noppes/npcs/EventHooks.java" + ] + }, + "setCanceled": { + "count": 1, + "files": [ + "noppes/npcs/EventHooks.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.model.ModelBiped": { + "shortName": "ModelBiped", + "package": "net.minecraft.client.model", + "importCount": 16, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClient.java", + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/model/ModelMPM.java", + "noppes/npcs/client/model/ModelNPCMale.java", + "noppes/npcs/client/model/ModelSkirtArmor.java", + "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/mixin/MixinItemRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "class": "ModelNPCMale" + }, + { + "file": "noppes/npcs/client/model/ModelSkirtArmor.java", + "class": "ModelSkirtArmor" + } + ], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 45 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 46 + } + ], + "casts": [ + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 42 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 120 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 121 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 124 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 127 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 130 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 133 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 136 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 145 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 146 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 147 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 148 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 149 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 150 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 366 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 367 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 370 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 373 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 376 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 379 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 382 + }, + { + "file": "noppes/npcs/client/model/ModelMPM.java", + "line": 387 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 44 + }, + { + "file": "noppes/npcs/mixin/MixinItemRenderer.java", + "line": 43 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 119 + }, + { + "file": "noppes/npcs/AnimationMixinFunctions.java", + "line": 144 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 365 + }, + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 390 + }, + { + "file": "noppes/npcs/client/model/ModelMPM.java", + "line": 386 + }, + { + "file": "noppes/npcs/mixin/MixinItemRenderer.java", + "line": 32 + } + ] + }, + "methodCalls": { + "setRotationAngles": { + "count": 41, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "textureHeight": { + "count": 3, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java" + ] + }, + "textureWidth": { + "count": 3, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java" + ] + }, + "bipedRightArm": { + "count": 8, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "bipedLeftArm": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "bipedRightLeg": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "bipedLeftLeg": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "aimedBow": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelMPM.java" + ] + }, + "heldItemLeft": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelMPM.java" + ] + }, + "heldItemRight": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelMPM.java" + ] + }, + "isSneak": { + "count": 1, + "files": [ + "noppes/npcs/client/model/ModelMPM.java" + ] + }, + "bipedHead": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "bipedHeadwear": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "bipedBody": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "onGround": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "isRiding": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "isChild": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + } + } + }, + "net.minecraft.block.BlockContainer": { + "shortName": "BlockContainer", + "package": "net.minecraft.block", + "importCount": 16, + "importedBy": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockBigSign.java", + "noppes/npcs/blocks/BlockBorder.java", + "noppes/npcs/blocks/BlockCarpentryBench.java", + "noppes/npcs/blocks/BlockCouchWood.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockMailbox.java", + "noppes/npcs/blocks/BlockNpcRedstone.java", + "noppes/npcs/blocks/BlockRotated.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockStool.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockTombstone.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/blocks/BlockWaypoint.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "class": "BlockBanner" + }, + { + "file": "noppes/npcs/blocks/BlockBigSign.java", + "class": "BlockBigSign" + }, + { + "file": "noppes/npcs/blocks/BlockBorder.java", + "class": "BlockBorder" + }, + { + "file": "noppes/npcs/blocks/BlockCarpentryBench.java", + "class": "BlockCarpentryBench" + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "class": "BlockCouchWood" + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "class": "BlockCouchWool" + }, + { + "file": "noppes/npcs/blocks/BlockMailbox.java", + "class": "BlockMailbox" + }, + { + "file": "noppes/npcs/blocks/BlockNpcRedstone.java", + "class": "BlockNpcRedstone" + }, + { + "file": "noppes/npcs/blocks/BlockRotated.java", + "class": "BlockRotated" + }, + { + "file": "noppes/npcs/blocks/BlockScripted.java", + "class": "BlockScripted" + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "class": "BlockShortLamp" + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "class": "BlockStool" + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "class": "BlockTallLamp" + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "class": "BlockTombstone" + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "class": "BlockWallBanner" + }, + { + "file": "noppes/npcs/blocks/BlockWaypoint.java", + "class": "BlockWaypoint" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.item.EntityItem": { + "shortName": "EntityItem", + "package": "net.minecraft.entity.item", + "importCount": 15, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptEntityItem.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/DataInventory.java", + "line": 205 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1005 + }, + { + "file": "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "line": 183 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "line": 148 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1668 + } + ], + "casts": [ + { + "file": "noppes/npcs/ScriptItemEventHandler.java", + "line": 97 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "line": 71 + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "line": 59 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 449 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 908 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ScriptItemEventHandler.java", + "line": 94 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 448 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 907 + } + ] + }, + "methodCalls": { + "getEntityItem": { + "count": 7, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java" + ] + }, + "setDead": { + "count": 3, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "moveEntity": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "delayBeforeCanPickup": { + "count": 4, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "motionX": { + "count": 2, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java" + ] + }, + "motionZ": { + "count": 2, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java" + ] + }, + "motionY": { + "count": 2, + "files": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/blocks/tiles/TileNpcContainer.java" + ] + }, + "ignoreFrustumCheck": { + "count": 4, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "boundingBox": { + "count": 36, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "age": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java" + ] + }, + "hoverStart": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java" + ] + }, + "width": { + "count": 16, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "height": { + "count": 6, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "firstUpdate": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "worldObj": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + }, + "myEntitySize": { + "count": 12, + "files": [ + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + } + } + }, + "cpw.mods.fml.common.eventhandler.SubscribeEvent": { + "shortName": "SubscribeEvent", + "package": "cpw.mods.fml.common.eventhandler", + "importCount": 15, + "importedBy": [ + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java", + "kamkeel/npcs/network/PacketHandler.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/ServerTickHandler.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/controllers/ScriptController.java", + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.MovingObjectPosition": { + "shortName": "MovingObjectPosition", + "package": "net.minecraft.util", + "importCount": 15, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/Ability.java", + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/EntityAIAmbushTarget.java", + "noppes/npcs/ai/EntityAIStalkTarget.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java", + "noppes/npcs/entity/EntityNPCFlying.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "line": 576 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 319 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "typeOfHit": { + "count": 10, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityNPCFlying.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java" + ] + }, + "hitVec": { + "count": 26, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "blockX": { + "count": 8, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "blockY": { + "count": 8, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "blockZ": { + "count": 8, + "files": [ + "kamkeel/npcs/entity/EntityAbilityLaser.java", + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemTeleporter.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + }, + "entityHit": { + "count": 18, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "sideHit": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + } + } + }, + "net.minecraft.command.CommandBase": { + "shortName": "CommandBase", + "package": "net.minecraft.command", + "importCount": 14, + "importedBy": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdDialog.java", + "foxz/command/CmdNoppes.java", + "foxz/command/CmdNpc.java", + "foxz/command/CommandNoppes.java", + "foxz/command/ScriptedCommand.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/CommandKamkeelBase.java", + "kamkeel/npcs/command/DialogCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/profile/CommandProfile.java", + "kamkeel/npcs/command/profile/CommandProfileBase.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "foxz/command/CommandNoppes.java", + "class": "CommandNoppes" + }, + { + "file": "foxz/command/ScriptedCommand.java", + "class": "ScriptedCommand" + }, + { + "file": "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "class": "CommandCNPCDebugger" + }, + { + "file": "kamkeel/npcs/command/CommandKamkeel.java", + "class": "CommandKamkeel" + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "class": "CommandKamkeelBase" + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfile.java", + "class": "CommandProfile" + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileBase.java", + "class": "CommandProfileBase" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_110666_a": { + "count": 8, + "files": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/NpcCommand.java" + ] + }, + "func_110665_a": { + "count": 4, + "files": [ + "foxz/command/CmdClone.java", + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/NpcCommand.java" + ] + }, + "getPlayer": { + "count": 6, + "files": [ + "foxz/command/CmdDialog.java", + "foxz/command/CmdNpc.java", + "kamkeel/npcs/command/CommandKamkeelBase.java", + "kamkeel/npcs/command/DialogCommand.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/profile/CommandProfileBase.java" + ] + }, + "getListOfStringsMatchingLastWord": { + "count": 18, + "files": [ + "foxz/command/CmdNoppes.java", + "foxz/command/CmdNpc.java", + "foxz/commandhelper/AbstractCommandHelper.java", + "kamkeel/npcs/command/CommandKamkeel.java", + "kamkeel/npcs/command/NpcCommand.java", + "kamkeel/npcs/command/profile/CommandProfile.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemArmor": { + "shortName": "ItemArmor", + "package": "net.minecraft.item", + "importCount": 13, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/CustomItems.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotNPCArmor.java", + "noppes/npcs/items/ItemNpcArmor.java", + "noppes/npcs/items/ItemNpcArmorColorable.java", + "noppes/npcs/items/ItemSkirt.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/item/ScriptItemArmor.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/items/ItemNpcArmor.java", + "class": "ItemNpcArmor" + }, + { + "file": "noppes/npcs/items/ItemNpcArmorColorable.java", + "class": "ItemNpcArmorColorable" + }, + { + "file": "noppes/npcs/items/ItemSkirt.java", + "class": "ItemSkirt" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 357 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 555 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 61 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCPony.java", + "line": 51 + }, + { + "file": "noppes/npcs/containers/SlotCompanionArmor.java", + "line": 35 + }, + { + "file": "noppes/npcs/containers/SlotNPCArmor.java", + "line": 32 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 478 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 603 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemArmor.java", + "line": 12 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 356 + }, + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 554 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCPony.java", + "line": 50 + }, + { + "file": "noppes/npcs/containers/SlotCompanionArmor.java", + "line": 34 + }, + { + "file": "noppes/npcs/containers/SlotNPCArmor.java", + "line": 31 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 472 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 589 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 602 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 650 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 336 + } + ] + }, + "methodCalls": { + "getArmorTexture": { + "count": 2, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java" + ] + }, + "getColor": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java" + ] + }, + "getArmorMaterial": { + "count": 3, + "files": [ + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/item/ScriptItemArmor.java" + ] + } + }, + "staticCalls": { + "func_94602_b": { + "count": 2, + "files": [ + "noppes/npcs/containers/SlotCompanionArmor.java", + "noppes/npcs/containers/SlotNPCArmor.java" + ] + } + }, + "fieldAccesses": { + "customCraftingMaterial": { + "count": 1, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "armorType": { + "count": 1, + "files": [ + "noppes/npcs/scripted/item/ScriptItemArmor.java" + ] + } + } + }, + "net.minecraft.nbt.NBTBase": { + "shortName": "NBTBase", + "package": "net.minecraft.nbt", + "importCount": 13, + "importedBy": [ + "noppes/npcs/NBTTags.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/roles/RoleInnkeeper.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/gui/ScriptGui.java", + "noppes/npcs/scripted/item/ScriptItemStack.java", + "noppes/npcs/scripted/overlay/ScriptOverlay.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 255 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 208 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 254 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 207 + } + ] + }, + "methodCalls": { + "getId": { + "count": 10, + "files": [ + "noppes/npcs/NBTTags.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ] + }, + "toString": { + "count": 1, + "files": [ + "noppes/npcs/util/NBTJsonUtil.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.Loader": { + "shortName": "Loader", + "package": "cpw.mods.fml.common", + "importCount": 11, + "importedBy": [ + "kamkeel/npcs/addon/DBCAddon.java", + "nikedemos/markovnames/MarkovDictionary.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/script/interpreter/js_parser/DtsModScanner.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/scripted/NpcAPI.java", + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "isModLoaded": { + "count": 5, + "files": [ + "kamkeel/npcs/addon/DBCAddon.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/scripted/NpcAPI.java", + "tconstruct/client/tabs/TabRegistry.java" + ] + }, + "instance": { + "count": 6, + "files": [ + "nikedemos/markovnames/MarkovDictionary.java", + "noppes/npcs/DataDisplay.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/script/interpreter/js_parser/DtsModScanner.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.client.IItemRenderer": { + "shortName": "IItemRenderer", + "package": "net.minecraftforge.client", + "importCount": 11, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/client/renderer/NpcItemRenderer.java", + "class": "NpcItemRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "class": "ItemBannerRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "class": "ItemBannerWallRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "class": "ItemCouchWoolRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "class": "ItemCustomRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java", + "class": "ItemShortLampRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "class": "ItemTallLampRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "class": "ItemToolRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "class": "ScriptedBlockItemRenderer" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "shouldUseRenderHelper": { + "count": 3, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.IResource": { + "shortName": "IResource", + "package": "net.minecraft.client.resources", + "importCount": 11, + "importedBy": [ + "noppes/npcs/client/gui/SubGuiColorSelector.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "noppes/npcs/client/gui/model/GuiModelColor.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getInputStream": { + "count": 13, + "files": [ + "noppes/npcs/client/gui/SubGuiColorSelector.java", + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java", + "noppes/npcs/client/gui/model/GuiModelColor.java", + "noppes/npcs/client/gui/player/GuiDialogImage.java", + "noppes/npcs/client/gui/util/GuiTexturedButton.java", + "noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java", + "noppes/npcs/client/model/ModelPony.java", + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/client/renderer/RenderNPCPony.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.item.EnumAction": { + "shortName": "EnumAction", + "package": "net.minecraft.item", + "importCount": 11, + "importedBy": [ + "noppes/npcs/items/ItemCrossbow.java", + "noppes/npcs/items/ItemCustomizable.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemMachineGun.java", + "noppes/npcs/items/ItemMusicClarinet.java", + "noppes/npcs/items/ItemMusicOracina.java", + "noppes/npcs/items/ItemMusicViolin.java", + "noppes/npcs/items/ItemMusket.java", + "noppes/npcs/items/ItemShield.java", + "noppes/npcs/items/ItemSlingshot.java", + "noppes/npcs/items/ItemStaff.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.math.BlockPos": { + "shortName": "BlockPos", + "package": "net.minecraft.util.math", + "importCount": 10, + "importedBy": [ + "kamkeel/npcs/command/CommandCommand.java", + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/controllers/data/GlobalNPCDataScript.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/scripted/BlockScriptedWrapper.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/command/CommandCommand.java", + "line": 43 + }, + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 414 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 104 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 114 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 119 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 120 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 121 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 122 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 410 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 483 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 599 + }, + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "line": 156 + }, + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "line": 182 + }, + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "line": 644 + }, + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "line": 656 + }, + { + "file": "noppes/npcs/controllers/data/GlobalNPCDataScript.java", + "line": 76 + }, + { + "file": "noppes/npcs/controllers/data/PlayerDataScript.java", + "line": 181 + }, + { + "file": "noppes/npcs/scripted/BlockScriptedWrapper.java", + "line": 26 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 515 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 545 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getX": { + "count": 18, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/controllers/data/GlobalNPCDataScript.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "getY": { + "count": 16, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/controllers/data/GlobalNPCDataScript.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "getZ": { + "count": 18, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/controllers/data/GlobalNPCDataScript.java", + "noppes/npcs/controllers/data/PlayerDataScript.java", + "noppes/npcs/scripted/ScriptBlock.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "setPos": { + "count": 2, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + }, + "down": { + "count": 5, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "release": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + }, + "equals": { + "count": 2, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "add": { + "count": 8, + "files": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "distanceTo": { + "count": 1, + "files": [ + "noppes/npcs/scripted/NpcAPI.java" + ] + }, + "getXD": { + "count": 5, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "getYD": { + "count": 5, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "getZD": { + "count": 5, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "up": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "north": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "east": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "south": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "west": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "offset": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "crossProduct": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "toLong": { + "count": 1, + "files": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + } + }, + "staticCalls": { + "fromLong": { + "count": 2, + "files": [ + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + }, + "getAllInBox": { + "count": 1, + "files": [ + "noppes/npcs/scripted/NpcAPI.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.entity.SharedMonsterAttributes": { + "shortName": "SharedMonsterAttributes", + "package": "net.minecraft.entity", + "importCount": 10, + "importedBy": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "noppes/npcs/DataAI.java", + "noppes/npcs/DataStats.java", + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.IChatComponent": { + "shortName": "IChatComponent", + "package": "net.minecraft.util", + "importCount": 10, + "importedBy": [ + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java", + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/TextBlock.java", + "noppes/npcs/client/MessageAchievement.java", + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "line": 426 + }, + { + "file": "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "line": 395 + }, + { + "file": "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java", + "line": 406 + } + ], + "instanceof": [] + }, + "methodCalls": { + "getFormattedText": { + "count": 12, + "files": [ + "noppes/npcs/client/RenderChatMessages.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java", + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.util.Constants": { + "shortName": "Constants", + "package": "net.minecraftforge.common.util", + "importCount": 9, + "importedBy": [ + "kamkeel/npcs/controllers/AbilityController.java", + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java", + "noppes/npcs/controllers/data/CustomEffect.java", + "noppes/npcs/controllers/data/LinkedItem.java", + "noppes/npcs/controllers/data/QuestCategory.java", + "noppes/npcs/controllers/data/RecipeAnvil.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java", + "noppes/npcs/controllers/data/SingleScriptHandler.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagDouble": { + "shortName": "NBTTagDouble", + "package": "net.minecraft.nbt", + "importCount": 9, + "importedBy": [ + "noppes/npcs/NBTTags.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/NBTTags.java", + "line": 495 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java", + "line": 215 + }, + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java", + "line": 195 + }, + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 101 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 137 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 152 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "line": 92 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 194 + } + ], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptParticle.java", + "line": 109 + }, + { + "file": "noppes/npcs/scripted/ScriptSound.java", + "line": 76 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.I18n": { + "shortName": "I18n", + "package": "net.minecraft.client.resources", + "importCount": 9, + "importedBy": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityTypeSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiConditionEdit.java", + "noppes/npcs/client/gui/advanced/SubGuiNpcSlotPicker.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/util/SubGuiConfirmLink.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "format": { + "count": 20, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java", + "noppes/npcs/client/gui/advanced/SubGuiAbilityTypeSelect.java", + "noppes/npcs/client/gui/advanced/SubGuiConditionEdit.java", + "noppes/npcs/client/gui/advanced/SubGuiNpcSlotPicker.java", + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/util/SubGuiConfirmLink.java" + ] + } + }, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.FMLLog": { + "shortName": "FMLLog", + "package": "cpw.mods.fml.common", + "importCount": 9, + "importedBy": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigEnergy.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "log": { + "count": 9, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigEnergy.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.common.config.Configuration": { + "shortName": "Configuration", + "package": "net.minecraftforge.common.config", + "importCount": 9, + "importedBy": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigEnergy.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/config/ConfigClient.java", + "line": 173 + }, + { + "file": "noppes/npcs/config/ConfigDebug.java", + "line": 39 + }, + { + "file": "noppes/npcs/config/ConfigEnergy.java", + "line": 23 + }, + { + "file": "noppes/npcs/config/ConfigExperimental.java", + "line": 20 + }, + { + "file": "noppes/npcs/config/ConfigItem.java", + "line": 35 + }, + { + "file": "noppes/npcs/config/ConfigMain.java", + "line": 138 + }, + { + "file": "noppes/npcs/config/ConfigMarket.java", + "line": 66 + }, + { + "file": "noppes/npcs/config/ConfigMixin.java", + "line": 33 + }, + { + "file": "noppes/npcs/config/ConfigScript.java", + "line": 75 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "load": { + "count": 9, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigEnergy.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "get": { + "count": 143, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "hasChanged": { + "count": 9, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigEnergy.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "save": { + "count": 9, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigEnergy.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "getStringList": { + "count": 1, + "files": [ + "noppes/npcs/config/ConfigEnergy.java" + ] + }, + "getBoolean": { + "count": 1, + "files": [ + "noppes/npcs/config/ConfigEnergy.java" + ] + }, + "setCategoryPropertyOrder": { + "count": 5, + "files": [ + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMarket.java" + ] + }, + "setCategoryComment": { + "count": 4, + "files": [ + "noppes/npcs/config/ConfigMarket.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.entity.Render": { + "shortName": "Render", + "package": "net.minecraft.client.renderer.entity", + "importCount": 8, + "importedBy": [ + "kamkeel/npcs/client/renderer/RenderEnergy.java", + "kamkeel/npcs/client/renderer/RenderSweeper.java", + "kamkeel/npcs/client/renderer/RenderZone.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/mixin/MixinItemRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "kamkeel/npcs/client/renderer/RenderEnergy.java", + "class": "RenderEnergy" + }, + { + "file": "kamkeel/npcs/client/renderer/RenderSweeper.java", + "class": "RenderSweeper" + }, + { + "file": "kamkeel/npcs/client/renderer/RenderZone.java", + "class": "RenderZone" + }, + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "class": "RenderProjectile" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.ItemRenderer": { + "shortName": "ItemRenderer", + "package": "net.minecraft.client.renderer", + "importCount": 8, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "noppes/npcs/mixin/MixinItemRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "class": "RenderCNPCHand" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "renderItemIn2D": { + "count": 20, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/NpcItemRenderer.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java" + ] + } + }, + "fieldAccesses": { + "itemToRender": { + "count": 1, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + } + } + }, + "net.minecraftforge.common.MinecraftForge": { + "shortName": "MinecraftForge", + "package": "net.minecraftforge.common", + "importCount": 8, + "importedBy": [ + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagInt": { + "shortName": "NBTTagInt", + "package": "net.minecraft.nbt", + "importCount": 8, + "importedBy": [ + "noppes/npcs/NBTTags.java", + "noppes/npcs/VersionCompatibility.java", + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 105 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 154 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "line": 87 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 198 + } + ], + "casts": [ + { + "file": "noppes/npcs/NBTTags.java", + "line": 583 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 108 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 109 + }, + { + "file": "noppes/npcs/VersionCompatibility.java", + "line": 110 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 103 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptParticle.java", + "line": 106 + }, + { + "file": "noppes/npcs/scripted/ScriptSound.java", + "line": 73 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.entity.RenderItem": { + "shortName": "RenderItem", + "package": "net.minecraft.client.renderer.entity", + "importCount": 8, + "importedBy": [ + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiDiagram.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "tconstruct/client/tabs/AbstractTab.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/gui/util/GuiDiagram.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "line": 20 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "line": 33 + }, + { + "file": "tconstruct/client/tabs/AbstractTab.java", + "line": 16 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "renderItemAndEffectIntoGUI": { + "count": 4, + "files": [ + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "tconstruct/client/tabs/AbstractTab.java" + ] + }, + "renderItemOverlayIntoGUI": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java", + "tconstruct/client/tabs/AbstractTab.java" + ] + } + }, + "staticCalls": { + "getInstance": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java", + "noppes/npcs/client/gui/util/GuiMenuSideButton.java" + ] + } + }, + "fieldAccesses": { + "zLevel": { + "count": 6, + "files": [ + "noppes/npcs/client/gui/util/GuiMenuSideButton.java", + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java" + ] + } + } + }, + "net.minecraft.entity.monster.EntityMob": { + "shortName": "EntityMob", + "package": "net.minecraft.entity.monster", + "importCount": 7, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/entity/ScriptMonster.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "line": 72 + }, + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "line": 73 + }, + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "line": 74 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 439 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "line": 71 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 438 + } + ] + }, + "methodCalls": { + "getAttackTarget": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "getEntityData": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "setAttackTarget": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.passive.EntityAnimal": { + "shortName": "EntityAnimal", + "package": "net.minecraft.entity.passive", + "importCount": 7, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptAnimal.java", + "noppes/npcs/scripted/entity/ScriptEntity.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 437 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptAnimal.java", + "line": 56 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 101 + }, + { + "file": "noppes/npcs/roles/JobGuard.java", + "line": 58 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 436 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.passive.EntityTameable": { + "shortName": "EntityTameable", + "package": "net.minecraft.entity.passive", + "importCount": 7, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/compat/PixelmonHelper.java", + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/ScriptPixelmonPlayerData.java", + "noppes/npcs/scripted/entity/ScriptPixelmon.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "foxz/command/CmdNoppes.java", + "line": 176 + }, + { + "file": "kamkeel/npcs/command/SlayCommand.java", + "line": 101 + }, + { + "file": "noppes/npcs/compat/PixelmonHelper.java", + "line": 216 + }, + { + "file": "noppes/npcs/roles/JobGuard.java", + "line": 59 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 435 + } + ], + "instanceof": [ + { + "file": "foxz/command/CmdNoppes.java", + "line": 176 + }, + { + "file": "kamkeel/npcs/command/SlayCommand.java", + "line": 101 + }, + { + "file": "noppes/npcs/roles/JobGuard.java", + "line": 59 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.entity.EntityClientPlayerMP": { + "shortName": "EntityClientPlayerMP", + "package": "net.minecraft.client.entity", + "importCount": 7, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 179 + } + ] + }, + "methodCalls": { + "getCommandSenderName": { + "count": 1, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java" + ] + }, + "getLocationSkin": { + "count": 7, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "closeScreen": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java" + ] + }, + "isInvisible": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "getSwingProgress": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "posX": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "posY": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "posZ": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "prevRenderArmPitch": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "renderArmPitch": { + "count": 1, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "prevRenderArmYaw": { + "count": 2, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "renderArmYaw": { + "count": 1, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "rotationPitch": { + "count": 3, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "rotationYaw": { + "count": 3, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "yOffset": { + "count": 1, + "files": [ + "noppes/npcs/client/fx/CustomFX.java" + ] + }, + "prevRotationPitch": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "prevRotationYaw": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "inventory": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + } + } + }, + "net.minecraft.inventory.InventoryBasic": { + "shortName": "InventoryBasic", + "package": "net.minecraft.inventory", + "importCount": 7, + "importedBy": [ + "noppes/npcs/CommonProxy.java", + "noppes/npcs/containers/ContainerAuctionBidding.java", + "noppes/npcs/containers/ContainerAuctionSell.java", + "noppes/npcs/containers/ContainerManageAuction.java", + "noppes/npcs/containers/ContainerManageRecipes.java", + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/CommonProxy.java", + "line": 75 + }, + { + "file": "noppes/npcs/containers/ContainerAuctionBidding.java", + "line": 26 + }, + { + "file": "noppes/npcs/containers/ContainerAuctionSell.java", + "line": 25 + }, + { + "file": "noppes/npcs/containers/ContainerManageAuction.java", + "line": 65 + }, + { + "file": "noppes/npcs/containers/ContainerManageAuction.java", + "line": 66 + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "line": 27 + }, + { + "file": "noppes/npcs/containers/ContainerMerchantAdd.java", + "line": 30 + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerHire.java", + "line": 27 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setInventorySlotContents": { + "count": 7, + "files": [ + "noppes/npcs/containers/ContainerManageRecipes.java" + ] + }, + "getSizeInventory": { + "count": 1, + "files": [ + "noppes/npcs/containers/ContainerManageRecipes.java" + ] + }, + "getStackInSlot": { + "count": 5, + "files": [ + "noppes/npcs/containers/ContainerManageRecipes.java" + ] + }, + "getStackInSlotOnClosing": { + "count": 3, + "files": [ + "noppes/npcs/containers/ContainerMerchantAdd.java", + "noppes/npcs/containers/ContainerNPCFollowerHire.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.EntityCreature": { + "shortName": "EntityCreature", + "package": "net.minecraft.entity", + "importCount": 7, + "importedBy": [ + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getNavigator": { + "count": 9, + "files": [ + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java" + ] + }, + "getRNG": { + "count": 3, + "files": [ + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java", + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + }, + "getAttackTarget": { + "count": 3, + "files": [ + "noppes/npcs/ai/EntityAIPanic.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java" + ] + }, + "isBurning": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIPanic.java" + ] + }, + "getLookHelper": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIZigZagTarget.java" + ] + }, + "hasHome": { + "count": 1, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + }, + "getHomePosition": { + "count": 1, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + }, + "func_110174_bM": { + "count": 1, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + }, + "isWithinHomeDistance": { + "count": 1, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + }, + "getBlockPathWeight": { + "count": 1, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "worldObj": { + "count": 2, + "files": [ + "noppes/npcs/ai/EntityAIFindShade.java", + "noppes/npcs/ai/EntityAIMoveIndoors.java" + ] + }, + "posX": { + "count": 5, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + }, + "posY": { + "count": 5, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + }, + "posZ": { + "count": 5, + "files": [ + "noppes/npcs/ai/RandomPositionGeneratorAlt.java" + ] + } + } + }, + "net.minecraft.potion.Potion": { + "shortName": "Potion", + "package": "net.minecraft.potion", + "importCount": 7, + "importedBy": [ + "noppes/npcs/ai/selector/NPCAttackSelector.java", + "noppes/npcs/constants/EnumPotionType.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.Packet": { + "shortName": "Packet", + "package": "net.minecraft.network", + "importCount": 7, + "importedBy": [ + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TilePedestal.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.entity.RendererLivingEntity": { + "shortName": "RendererLivingEntity", + "package": "net.minecraft.client.renderer.entity", + "importCount": 7, + "importedBy": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java", + "noppes/npcs/mixin/MixinItemRenderer.java", + "noppes/npcs/mixin/MixinRendererLivingEntity.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 250 + }, + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 371 + }, + { + "file": "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "line": 137 + }, + { + "file": "noppes/npcs/client/renderer/RenderCustomNpc.java", + "line": 38 + }, + { + "file": "noppes/npcs/mixin/MixinItemRenderer.java", + "line": 32 + }, + { + "file": "noppes/npcs/mixin/MixinItemRenderer.java", + "line": 35 + }, + { + "file": "noppes/npcs/mixin/MixinItemRenderer.java", + "line": 43 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 63 + }, + { + "file": "noppes/npcs/mixin/MixinItemRenderer.java", + "line": 32 + }, + { + "file": "noppes/npcs/mixin/MixinItemRenderer.java", + "line": 34 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler": { + "shortName": "ISimpleBlockRenderingHandler", + "package": "cpw.mods.fml.client.registry", + "importCount": 7, + "importedBy": [ + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java", + "class": "BlockBloodRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "class": "BlockBorderRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "class": "BlockCandleRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "class": "BlockCarpentryBenchRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "class": "BlockLanternRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "class": "BlockMailboxRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "class": "BlockRendererInterface" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.config.Property": { + "shortName": "Property", + "package": "net.minecraftforge.common.config", + "importCount": 7, + "importedBy": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getDouble": { + "count": 8, + "files": [ + "noppes/npcs/config/ConfigClient.java" + ] + }, + "getInt": { + "count": 25, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "getBoolean": { + "count": 51, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigExperimental.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigMixin.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "getString": { + "count": 5, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "set": { + "count": 38, + "files": [ + "noppes/npcs/config/ConfigClient.java", + "noppes/npcs/config/ConfigDebug.java", + "noppes/npcs/config/ConfigItem.java", + "noppes/npcs/config/ConfigMain.java", + "noppes/npcs/config/ConfigScript.java" + ] + }, + "getStringList": { + "count": 1, + "files": [ + "noppes/npcs/config/ConfigMain.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.potion.PotionEffect": { + "shortName": "PotionEffect", + "package": "net.minecraft.potion", + "importCount": 6, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/items/ItemGun.java", + "noppes/npcs/items/ItemStaff.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java", + "line": 53 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 396 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 517 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 650 + }, + { + "file": "noppes/npcs/items/ItemGun.java", + "line": 136 + }, + { + "file": "noppes/npcs/items/ItemGun.java", + "line": 141 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 261 + }, + { + "file": "noppes/npcs/items/ItemStaff.java", + "line": 266 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "line": 271 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getPotionID": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "getAmplifier": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptLivingBase.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.ObfuscationReflectionHelper": { + "shortName": "ObfuscationReflectionHelper", + "package": "cpw.mods.fml.common", + "importCount": 6, + "importedBy": [ + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/util/NBTJsonUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "setPrivateValue": { + "count": 3, + "files": [ + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "noppes/npcs/client/ClientProxy.java" + ] + }, + "getPrivateValue": { + "count": 6, + "files": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/util/NBTJsonUtil.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.village.MerchantRecipeList": { + "shortName": "MerchantRecipeList", + "package": "net.minecraft.village", + "importCount": 6, + "importedBy": [ + "kamkeel/npcs/network/packets/data/VillagerListPacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "kamkeel/npcs/util/ByteBufUtils.java", + "noppes/npcs/Server.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/util/ByteBufUtils.java", + "line": 31 + }, + { + "file": "noppes/npcs/Server.java", + "line": 30 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/util/ByteBufUtils.java", + "line": 30 + }, + { + "file": "noppes/npcs/Server.java", + "line": 29 + } + ] + }, + "methodCalls": { + "size": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "remove": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "add": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "isEmpty": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "get": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + } + }, + "staticCalls": { + "func_151390_b": { + "count": 2, + "files": [ + "kamkeel/npcs/network/packets/data/VillagerListPacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.entity.passive.EntityVillager": { + "shortName": "EntityVillager", + "package": "net.minecraft.entity.passive", + "importCount": 6, + "importedBy": [ + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "noppes/npcs/ServerEventsHandler.java", + "noppes/npcs/entity/old/EntityNPCVillager.java", + "noppes/npcs/items/ItemSoulstoneEmpty.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptVillager.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "line": 72 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 143 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 441 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "line": 68 + }, + { + "file": "noppes/npcs/ServerEventsHandler.java", + "line": 139 + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "line": 102 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 440 + } + ] + }, + "methodCalls": { + "getRecipes": { + "count": 1, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.util.FakePlayer": { + "shortName": "FakePlayer", + "package": "net.minecraftforge.common.util", + "importCount": 6, + "importedBy": [ + "noppes/npcs/CommonProxy.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1158 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 501 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 527 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 398 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ScriptItemEventHandler.java", + "line": 286 + }, + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 382 + } + ] + }, + "methodCalls": { + "refreshDisplayName": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "setCurrentItemOrArmor": { + "count": 3, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/ScriptWorld.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.gameevent.TickEvent": { + "shortName": "TickEvent", + "package": "cpw.mods.fml.common.gameevent", + "importCount": 6, + "importedBy": [ + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerTickHandler.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 43 + }, + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 43 + }, + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 57 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 43 + }, + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 57 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "player": { + "count": 5, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "side": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/client/ClientTickHandler.java" + ] + }, + "phase": { + "count": 7, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerTickHandler.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java" + ] + }, + "world": { + "count": 1, + "files": [ + "noppes/npcs/ServerTickHandler.java" + ] + } + } + }, + "net.minecraft.command.IEntitySelector": { + "shortName": "IEntitySelector", + "package": "net.minecraft.command", + "importCount": 6, + "importedBy": [ + "noppes/npcs/ai/EntityAIWander.java", + "noppes/npcs/ai/selector/NPCAttackSelector.java", + "noppes/npcs/ai/selector/NPCInteractSelector.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "class": "NPCAttackSelector" + }, + { + "file": "noppes/npcs/ai/selector/NPCInteractSelector.java", + "class": "NPCInteractSelector" + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "class": "TileBorder" + } + ], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "line": 33 + } + ], + "instanceof": [] + }, + "methodCalls": { + "isEntityApplicable": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIWander.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.play.server.S35PacketUpdateTileEntity": { + "shortName": "S35PacketUpdateTileEntity", + "package": "net.minecraft.network.play.server", + "importCount": 6, + "importedBy": [ + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TilePedestal.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java", + "noppes/npcs/blocks/tiles/TileWeaponRack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/blocks/tiles/TileBigSign.java", + "line": 53 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 98 + }, + { + "file": "noppes/npcs/blocks/tiles/TilePedestal.java", + "line": 30 + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "line": 330 + }, + { + "file": "noppes/npcs/blocks/tiles/TileVariant.java", + "line": 55 + }, + { + "file": "noppes/npcs/blocks/tiles/TileWeaponRack.java", + "line": 39 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "func_148857_g": { + "count": 4, + "files": [ + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.texture.TextureMap": { + "shortName": "TextureMap", + "package": "net.minecraft.client.renderer.texture", + "importCount": 6, + "importedBy": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/renderer/RenderProjectile.java", + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "line": 217 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java", + "line": 188 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java", + "line": 86 + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java", + "line": 179 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.ChatAllowedCharacters": { + "shortName": "ChatAllowedCharacters", + "package": "net.minecraft.util", + "importCount": 6, + "importedBy": [ + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "isAllowedCharacter": { + "count": 7, + "files": [ + "noppes/npcs/client/gui/player/GuiBook.java", + "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea.java", + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java", + "noppes/npcs/client/gui/util/script/GoToLineDialog.java", + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagFloat": { + "shortName": "NBTTagFloat", + "package": "net.minecraft.nbt", + "importCount": 6, + "importedBy": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTListWrapper.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 103 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 140 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 196 + } + ], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptParticle.java", + "line": 112 + }, + { + "file": "noppes/npcs/scripted/ScriptSound.java", + "line": 79 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.item.EntityXPOrb": { + "shortName": "EntityXPOrb", + "package": "net.minecraft.entity.item", + "importCount": 5, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/DataInventory.java", + "noppes/npcs/EventHooks.java", + "noppes/npcs/scripted/event/player/PlayerEvent.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/DataInventory.java", + "line": 160 + }, + { + "file": "noppes/npcs/DataInventory.java", + "line": 162 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getXPSplit": { + "count": 1, + "files": [ + "noppes/npcs/DataInventory.java" + ] + } + }, + "fieldAccesses": { + "xpValue": { + "count": 1, + "files": [ + "noppes/npcs/scripted/event/player/PlayerEvent.java" + ] + } + } + }, + "cpw.mods.fml.common.network.internal.FMLProxyPacket": { + "shortName": "FMLProxyPacket", + "package": "cpw.mods.fml.common.network.internal", + "importCount": 5, + "importedBy": [ + "kamkeel/npcs/network/AbstractPacket.java", + "kamkeel/npcs/network/LargeAbstractPacket.java", + "kamkeel/npcs/network/PacketHandler.java", + "kamkeel/npcs/network/packets/data/large/SyncPacket.java", + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/network/AbstractPacket.java", + "line": 25 + }, + { + "file": "kamkeel/npcs/network/LargeAbstractPacket.java", + "line": 56 + }, + { + "file": "kamkeel/npcs/network/packets/data/large/SyncPacket.java", + "line": 122 + }, + { + "file": "noppes/npcs/mixin/MixinEntityTrackerEntry.java", + "line": 75 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "payload": { + "count": 1, + "files": [ + "kamkeel/npcs/network/PacketHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.stats.Achievement": { + "shortName": "Achievement", + "package": "net.minecraft.stats", + "importCount": 5, + "importedBy": [ + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "noppes/npcs/CommonProxy.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/MessageAchievement.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/MessageAchievement.java", + "class": "MessageAchievement" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 707 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 704 + } + ] + }, + "methodCalls": { + "getDescription": { + "count": 2, + "files": [ + "kamkeel/npcs/network/packets/data/AchievementPacket.java", + "noppes/npcs/client/ClientProxy.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.ModContainer": { + "shortName": "ModContainer", + "package": "cpw.mods.fml.common", + "importCount": 5, + "importedBy": [ + "nikedemos/markovnames/MarkovDictionary.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/script/interpreter/js_parser/DtsModScanner.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getMod": { + "count": 1, + "files": [ + "nikedemos/markovnames/MarkovDictionary.java" + ] + }, + "getSource": { + "count": 5, + "files": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/client/gui/util/script/interpreter/js_parser/DtsModScanner.java" + ] + }, + "getModId": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/util/script/interpreter/js_parser/DtsModScanner.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.projectile.EntityThrowable": { + "shortName": "EntityThrowable", + "package": "net.minecraft.entity.projectile", + "importCount": 5, + "importedBy": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptThrowable.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "class": "EntityProjectile" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1057 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1525 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 451 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1056 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1524 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 450 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.pathfinding.PathEntity": { + "shortName": "PathEntity", + "package": "net.minecraft.pathfinding", + "importCount": 5, + "importedBy": [ + "noppes/npcs/ai/EntityAIAttackTarget.java", + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/pathfinder/NPCPath.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/pathfinder/NPCPath.java", + "class": "NPCPath" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isDestinationSame": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java" + ] + }, + "getCurrentPathLength": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIZigZagTarget.java" + ] + }, + "getPathPointFromIndex": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIZigZagTarget.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockColored": { + "shortName": "BlockColored", + "package": "net.minecraft.block", + "importCount": 5, + "importedBy": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_150031_c": { + "count": 5, + "files": [ + "noppes/npcs/blocks/BlockBanner.java", + "noppes/npcs/blocks/BlockCouchWool.java", + "noppes/npcs/blocks/BlockShortLamp.java", + "noppes/npcs/blocks/BlockTallLamp.java", + "noppes/npcs/blocks/BlockWallBanner.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.particle.EntityFX": { + "shortName": "EntityFX", + "package": "net.minecraft.client.particle", + "importCount": 5, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/fx/CustomFX.java", + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/fx/EntityRainbowFX.java", + "noppes/npcs/client/fx/ZoneParticleFX.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/fx/CustomFX.java", + "class": "CustomFX" + }, + { + "file": "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "class": "EntityBigSmokeFX" + }, + { + "file": "noppes/npcs/client/fx/EntityRainbowFX.java", + "class": "EntityRainbowFX" + }, + { + "file": "noppes/npcs/client/fx/ZoneParticleFX.java", + "class": "ZoneParticleFX" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer": { + "shortName": "TileEntitySpecialRenderer", + "package": "net.minecraft.client.renderer.tileentity", + "importCount": 5, + "importedBy": [ + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "class": "BlockCandleRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "class": "BlockCarpentryBenchRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "class": "BlockLanternRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "class": "BlockMailboxRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "class": "BlockRendererInterface" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.boss.EntityDragon": { + "shortName": "EntityDragon", + "package": "net.minecraft.entity.boss", + "importCount": 4, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/client/EntityUtil.java", + "noppes/npcs/roles/JobGuard.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/client/EntityUtil.java", + "line": 78 + }, + { + "file": "noppes/npcs/roles/JobGuard.java", + "line": 64 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.ChunkCoordinates": { + "shortName": "ChunkCoordinates", + "package": "net.minecraft.util", + "importCount": 4, + "importedBy": [ + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1952 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 609 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "posX": { + "count": 6, + "files": [ + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java" + ] + }, + "posY": { + "count": 9, + "files": [ + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java" + ] + }, + "posZ": { + "count": 6, + "files": [ + "kamkeel/npcs/command/CommandCommand.java", + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java" + ] + } + } + }, + "net.minecraft.network.PacketBuffer": { + "shortName": "PacketBuffer", + "package": "net.minecraft.network", + "importCount": 4, + "importedBy": [ + "kamkeel/npcs/network/packets/data/VillagerListPacket.java", + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "kamkeel/npcs/util/ByteBufUtils.java", + "noppes/npcs/Server.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/network/packets/data/VillagerListPacket.java", + "line": 48 + }, + { + "file": "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java", + "line": 71 + }, + { + "file": "kamkeel/npcs/util/ByteBufUtils.java", + "line": 31 + }, + { + "file": "noppes/npcs/Server.java", + "line": 30 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.EnumCreatureAttribute": { + "shortName": "EnumCreatureAttribute", + "package": "net.minecraft.entity", + "importCount": 4, + "importedBy": [ + "noppes/npcs/DataStats.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcStats.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/entity/ScriptNpc.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "ordinal": { + "count": 1, + "files": [ + "noppes/npcs/DataStats.java" + ] + } + }, + "staticCalls": { + "values": { + "count": 4, + "files": [ + "noppes/npcs/DataStats.java", + "noppes/npcs/client/gui/mainmenu/GuiNpcStats.java", + "noppes/npcs/scripted/entity/ScriptNpc.java" + ] + } + }, + "fieldAccesses": { + "length": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptNpc.java" + ] + } + } + }, + "net.minecraftforge.event.world.WorldEvent": { + "shortName": "WorldEvent", + "package": "net.minecraftforge.event.world", + "importCount": 4, + "importedBy": [ + "noppes/npcs/EventHooks.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/controllers/ScriptController.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/EventHooks.java", + "line": 1047 + } + ], + "casts": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 53 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 52 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "world": { + "count": 4, + "files": [ + "noppes/npcs/EventHooks.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/controllers/ScriptController.java" + ] + } + } + }, + "net.minecraft.entity.projectile.EntityArrow": { + "shortName": "EntityArrow", + "package": "net.minecraft.entity.projectile", + "importCount": 4, + "importedBy": [ + "noppes/npcs/NoppesUtilServer.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptArrow.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1054 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1055 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1522 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1523 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 453 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 1054 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1522 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 452 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.gameevent.PlayerEvent": { + "shortName": "PlayerEvent", + "package": "cpw.mods.fml.common.gameevent", + "importCount": 4, + "importedBy": [ + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerTickHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 59 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 58 + } + ] + }, + "methodCalls": { + "isCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "player": { + "count": 49, + "files": [ + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerTickHandler.java" + ] + }, + "fromDim": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "toDim": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "pickedUp": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.ItemTooltipEvent": { + "shortName": "ItemTooltipEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 4, + "importedBy": [ + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "itemStack": { + "count": 5, + "files": [ + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java" + ] + }, + "toolTip": { + "count": 4, + "files": [ + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java" + ] + } + } + }, + "net.minecraft.entity.ai.EntityAITarget": { + "shortName": "EntityAITarget", + "package": "net.minecraft.entity.ai", + "importCount": 4, + "importedBy": [ + "noppes/npcs/ai/target/EntityAIClearTarget.java", + "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "noppes/npcs/ai/target/EntityAIOwnerHurtByTarget.java", + "noppes/npcs/ai/target/EntityAIOwnerHurtTarget.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/target/EntityAIClearTarget.java", + "class": "EntityAIClearTarget" + }, + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "class": "EntityAIClosestTarget" + }, + { + "file": "noppes/npcs/ai/target/EntityAIOwnerHurtByTarget.java", + "class": "EntityAIOwnerHurtByTarget" + }, + { + "file": "noppes/npcs/ai/target/EntityAIOwnerHurtTarget.java", + "class": "EntityAIOwnerHurtTarget" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.NetworkManager": { + "shortName": "NetworkManager", + "package": "net.minecraft.network", + "importCount": 4, + "importedBy": [ + "noppes/npcs/blocks/tiles/TileBigSign.java", + "noppes/npcs/blocks/tiles/TileBorder.java", + "noppes/npcs/blocks/tiles/TileScripted.java", + "noppes/npcs/blocks/tiles/TileVariant.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.IResourceManager": { + "shortName": "IResourceManager", + "package": "net.minecraft.client.resources", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/CustomNpcResourceListener.java", + "noppes/npcs/client/ImageDownloadAlt.java", + "noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getResource": { + "count": 1, + "files": [ + "noppes/npcs/client/CustomNpcResourceListener.java" + ] + }, + "getAllResources": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.audio.PositionedSoundRecord": { + "shortName": "PositionedSoundRecord", + "package": "net.minecraft.client.audio", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_147674_a": { + "count": 4, + "files": [ + "noppes/npcs/client/NoppesUtil.java", + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java", + "noppes/npcs/client/gui/player/GuiAuctionTrades.java", + "noppes/npcs/client/gui/player/GuiDialogInteract.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.entity.passive.EntitySheep": { + "shortName": "EntitySheep", + "package": "net.minecraft.entity.passive", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/items/ItemElementalStaff.java", + "noppes/npcs/items/ItemOrb.java", + "noppes/npcs/items/ItemStaff.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.inventory.GuiContainer": { + "shortName": "GuiContainer", + "package": "net.minecraft.client.gui.inventory", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java", + "noppes/npcs/client/gui/player/GuiCrate.java", + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "class": "GuiMerchantAdd" + }, + { + "file": "noppes/npcs/client/gui/player/GuiCrate.java", + "class": "GuiCrate" + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "class": "GuiContainerNPCInterface" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "inventorySlots": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java" + ] + } + } + }, + "net.minecraft.client.renderer.entity.NPCRendererHelper": { + "shortName": "NPCRendererHelper", + "package": "net.minecraft.client.renderer.entity", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java", + "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "noppes/npcs/client/renderer/RenderCustomNpc.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getTexture": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/client/gui/model/GuiEntitySelection.java" + ] + }, + "getPassModel": { + "count": 2, + "files": [ + "noppes/npcs/client/model/util/ModelRenderPassHelper.java" + ] + }, + "getMainModel": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCustomNpc.java" + ] + }, + "renderEquippedItems": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCustomNpc.java" + ] + }, + "shouldRenderPass": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCustomNpc.java" + ] + }, + "preRenderCallback": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCustomNpc.java" + ] + }, + "handleRotationFloat": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCustomNpc.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagByte": { + "shortName": "NBTTagByte", + "package": "net.minecraft.nbt", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "noppes/npcs/scripted/ScriptParticle.java", + "noppes/npcs/scripted/ScriptSound.java", + "noppes/npcs/util/NBTJsonUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 143 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/gui/model/GuiCreationScreen.java", + "line": 176 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 110 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptParticle.java", + "line": 103 + }, + { + "file": "noppes/npcs/scripted/ScriptSound.java", + "line": 70 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.GLAllocation": { + "shortName": "GLAllocation", + "package": "net.minecraft.client.renderer", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "noppes/npcs/client/renderer/MarkRenderer.java", + "noppes/npcs/config/GlyphCache.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "generateDisplayLists": { + "count": 3, + "files": [ + "noppes/npcs/client/model/util/Model2DRenderer.java", + "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "noppes/npcs/client/renderer/MarkRenderer.java" + ] + }, + "createDirectIntBuffer": { + "count": 1, + "files": [ + "noppes/npcs/config/GlyphCache.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemBow": { + "shortName": "ItemBow", + "package": "net.minecraft.item", + "importCount": 4, + "importedBy": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/entity/EntityNPCInterface.java", + "noppes/npcs/roles/RoleCompanion.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 234 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "line": 328 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCPony.java", + "line": 205 + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1617 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 450 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 461 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 525 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.inventory.InventoryCrafting": { + "shortName": "InventoryCrafting", + "package": "net.minecraft.inventory", + "importCount": 4, + "importedBy": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/controllers/RecipeController.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 22 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 23 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getStackInRowAndColumn": { + "count": 3, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/controllers/data/RecipeCarpentry.java" + ] + }, + "getSizeInventory": { + "count": 2, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ] + }, + "getStackInSlotOnClosing": { + "count": 2, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ] + }, + "getStackInSlot": { + "count": 1, + "files": [ + "noppes/npcs/containers/ContainerCarpentryBench.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagIntArray": { + "shortName": "NBTTagIntArray", + "package": "net.minecraft.nbt", + "importCount": 4, + "importedBy": [ + "noppes/npcs/scripted/ScriptNbt.java", + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/util/NBTJsonUtil.java", + "noppes/npcs/wrapper/nbt/NBTWrapper.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/ScriptNbt.java", + "line": 107 + }, + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 105 + }, + { + "file": "noppes/npcs/wrapper/nbt/NBTWrapper.java", + "line": 200 + } + ], + "casts": [ + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 624 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 623 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockIce": { + "shortName": "BlockIce", + "package": "net.minecraft.block", + "importCount": 3, + "importedBy": [ + "foxz/command/CmdConfig.java", + "kamkeel/npcs/command/ConfigCommand.java", + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "foxz/command/CmdConfig.java", + "line": 107 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 107 + }, + { + "file": "noppes/npcs/CustomNpcs.java", + "line": 414 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockLeavesBase": { + "shortName": "BlockLeavesBase", + "package": "net.minecraft.block", + "importCount": 3, + "importedBy": [ + "foxz/command/CmdConfig.java", + "kamkeel/npcs/command/ConfigCommand.java", + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "foxz/command/CmdConfig.java", + "line": 53 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 57 + }, + { + "file": "noppes/npcs/CustomNpcs.java", + "line": 408 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockVine": { + "shortName": "BlockVine", + "package": "net.minecraft.block", + "importCount": 3, + "importedBy": [ + "foxz/command/CmdConfig.java", + "kamkeel/npcs/command/ConfigCommand.java", + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "foxz/command/CmdConfig.java", + "line": 80 + }, + { + "file": "kamkeel/npcs/command/ConfigCommand.java", + "line": 82 + }, + { + "file": "noppes/npcs/CustomNpcs.java", + "line": 411 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.passive.EntityHorse": { + "shortName": "EntityHorse", + "package": "net.minecraft.entity.passive", + "importCount": 3, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java", + "noppes/npcs/entity/data/ModelDataShared.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "foxz/command/CmdNoppes.java", + "line": 204 + }, + { + "file": "kamkeel/npcs/command/SlayCommand.java", + "line": 128 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.entity.RenderBiped": { + "shortName": "RenderBiped", + "package": "net.minecraft.client.renderer.entity", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getArmorResource": { + "count": 4, + "files": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/RenderNPCPony.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.entity.RenderPlayer": { + "shortName": "RenderPlayer", + "package": "net.minecraft.client.renderer.entity", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "class": "RenderCNPCPlayer" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/addon/client/DBCClientAnimations.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "line": 97 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 157 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 166 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 156 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "line": 165 + } + ] + }, + "methodCalls": { + "passSpecialRender": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "rotateCorpse": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "modelBipedMain": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "modelArmor": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + }, + "modelArmorChestplate": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ] + } + } + }, + "net.minecraftforge.client.event.RenderWorldLastEvent": { + "shortName": "RenderWorldLastEvent", + "package": "net.minecraftforge.client.event", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "partialTicks": { + "count": 3, + "files": [ + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java", + "kamkeel/npcs/client/renderer/TelegraphRenderer.java", + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java" + ] + } + } + }, + "net.minecraft.entity.ai.attributes.AttributeModifier": { + "shortName": "AttributeModifier", + "package": "net.minecraft.entity.ai.attributes", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "line": 167 + }, + { + "file": "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "line": 171 + }, + { + "file": "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "line": 191 + }, + { + "file": "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "line": 206 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 222 + } + ], + "casts": [ + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 508 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 247 + } + ], + "instanceof": [] + }, + "methodCalls": { + "getAmount": { + "count": 3, + "files": [ + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getOperation": { + "count": 1, + "files": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + }, + "getID": { + "count": 2, + "files": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData": { + "shortName": "IEntityAdditionalSpawnData", + "package": "cpw.mods.fml.common.registry", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/entity/EntityAbilityZone.java", + "kamkeel/npcs/entity/EntityEnergyAbility.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "class": "EntityAbilityZone" + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyAbility.java", + "class": "EntityEnergyAbility" + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.Explosion": { + "shortName": "Explosion", + "package": "net.minecraft.world", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/entity/EntityProjectile.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "line": 1369 + }, + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 576 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "doExplosionA": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "doExplosionB": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "func_77277_b": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "isFlaming": { + "count": 2, + "files": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "isSmoking": { + "count": 2, + "files": [ + "kamkeel/npcs/entity/EntityEnergyProjectile.java", + "noppes/npcs/entity/EntityProjectile.java" + ] + }, + "affectedBlockPositions": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityProjectile.java" + ] + } + } + }, + "cpw.mods.fml.common.network.FMLNetworkEvent": { + "shortName": "FMLNetworkEvent", + "package": "cpw.mods.fml.common.network", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/network/PacketHandler.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "packet": { + "count": 2, + "files": [ + "kamkeel/npcs/network/PacketHandler.java" + ] + }, + "handler": { + "count": 1, + "files": [ + "kamkeel/npcs/network/PacketHandler.java" + ] + } + } + }, + "net.minecraft.item.ItemEditableBook": { + "shortName": "ItemEditableBook", + "package": "net.minecraft.item", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 652 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 334 + } + ] + }, + "methodCalls": {}, + "staticCalls": { + "validBookTagContents": { + "count": 1, + "files": [ + "kamkeel/npcs/network/packets/player/SaveBookPacket.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemWritableBook": { + "shortName": "ItemWritableBook", + "package": "net.minecraft.item", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/network/packets/player/SaveBookPacket.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 652 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 334 + } + ] + }, + "methodCalls": {}, + "staticCalls": { + "func_150930_a": { + "count": 1, + "files": [ + "kamkeel/npcs/network/packets/player/SaveBookPacket.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.util.ChatStyle": { + "shortName": "ChatStyle", + "package": "net.minecraft.util", + "importCount": 3, + "importedBy": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/client/TextBlockClient.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/util/ColorUtil.java", + "line": 67 + }, + { + "file": "kamkeel/npcs/util/ColorUtil.java", + "line": 84 + }, + { + "file": "kamkeel/npcs/util/ColorUtil.java", + "line": 88 + }, + { + "file": "noppes/npcs/client/TextBlockClient.java", + "line": 41 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptPlayer.java", + "line": 406 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "createDeepCopy": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java" + ] + }, + "setBold": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + }, + "setItalic": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + }, + "setUnderlined": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + }, + "setStrikethrough": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + }, + "setObfuscated": { + "count": 2, + "files": [ + "kamkeel/npcs/util/ColorUtil.java", + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + }, + "setColor": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.client.ForgeHooksClient": { + "shortName": "ForgeHooksClient", + "package": "net.minecraftforge.client", + "importCount": 3, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java", + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "renderEquippedItem": { + "count": 1, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "getArmorModel": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "renderEntityItem": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.client.MinecraftForgeClient": { + "shortName": "MinecraftForgeClient", + "package": "net.minecraftforge.client", + "importCount": 3, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getItemRenderer": { + "count": 4, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ] + }, + "registerItemRenderer": { + "count": 9, + "files": [ + "noppes/npcs/client/ClientProxy.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemArmor.ArmorMaterial": { + "shortName": "ArmorMaterial", + "package": "net.minecraft.item.ItemArmor", + "importCount": 3, + "importedBy": [ + "noppes/npcs/CustomItems.java", + "noppes/npcs/client/renderer/RenderNPCPony.java", + "noppes/npcs/roles/RoleCompanion.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.EnumFacing": { + "shortName": "EnumFacing", + "package": "net.minecraft.util", + "importCount": 3, + "importedBy": [ + "noppes/npcs/CustomItems.java", + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getFrontOffsetX": { + "count": 2, + "files": [ + "noppes/npcs/CustomItems.java", + "noppes/npcs/blocks/BlockScripted.java" + ] + }, + "getFrontOffsetZ": { + "count": 3, + "files": [ + "noppes/npcs/CustomItems.java", + "noppes/npcs/blocks/BlockScripted.java" + ] + }, + "ordinal": { + "count": 1, + "files": [ + "noppes/npcs/blocks/BlockScripted.java" + ] + } + }, + "staticCalls": { + "values": { + "count": 3, + "files": [ + "noppes/npcs/blocks/BlockScripted.java", + "noppes/npcs/scripted/ScriptBlockPos.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.common.ForgeChunkManager": { + "shortName": "ForgeChunkManager", + "package": "net.minecraftforge.common", + "importCount": 3, + "importedBy": [ + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/roles/JobChunkLoader.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "setForcedChunkLoadingCallback": { + "count": 1, + "files": [ + "noppes/npcs/CustomNpcs.java" + ] + }, + "requestTicket": { + "count": 1, + "files": [ + "noppes/npcs/controllers/ChunkController.java" + ] + }, + "releaseTicket": { + "count": 2, + "files": [ + "noppes/npcs/controllers/ChunkController.java" + ] + }, + "forceChunk": { + "count": 5, + "files": [ + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/roles/JobChunkLoader.java" + ] + }, + "unforceChunk": { + "count": 1, + "files": [ + "noppes/npcs/roles/JobChunkLoader.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.event.entity.EntityEvent": { + "shortName": "EntityEvent", + "package": "net.minecraftforge.event.entity", + "importCount": 3, + "importedBy": [ + "noppes/npcs/EventHooks.java", + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/EventHooks.java", + "line": 1041 + } + ], + "casts": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 48 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ScriptForgeEventHandler.java", + "line": 47 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entity": { + "count": 3, + "files": [ + "noppes/npcs/EventHooks.java", + "noppes/npcs/ScriptForgeEventHandler.java" + ] + } + } + }, + "net.minecraft.util.EntityDamageSource": { + "shortName": "EntityDamageSource", + "package": "net.minecraft.util", + "importCount": 3, + "importedBy": [ + "noppes/npcs/NpcDamageSource.java", + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptLivingBase.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/NpcDamageSource.java", + "class": "NpcDamageSource" + } + ], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 758 + }, + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 760 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "line": 49 + }, + { + "file": "noppes/npcs/scripted/entity/ScriptLivingBase.java", + "line": 51 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.ChunkCoordIntPair": { + "shortName": "ChunkCoordIntPair", + "package": "net.minecraft.world", + "importCount": 3, + "importedBy": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/roles/JobChunkLoader.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 73 + }, + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 195 + }, + { + "file": "noppes/npcs/controllers/ChunkController.java", + "line": 67 + }, + { + "file": "noppes/npcs/controllers/ChunkController.java", + "line": 68 + }, + { + "file": "noppes/npcs/controllers/ChunkController.java", + "line": 69 + }, + { + "file": "noppes/npcs/controllers/ChunkController.java", + "line": 70 + }, + { + "file": "noppes/npcs/roles/JobChunkLoader.java", + "line": 60 + }, + { + "file": "noppes/npcs/roles/JobChunkLoader.java", + "line": 61 + }, + { + "file": "noppes/npcs/roles/JobChunkLoader.java", + "line": 62 + }, + { + "file": "noppes/npcs/roles/JobChunkLoader.java", + "line": 63 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "chunkXPos": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "chunkZPos": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + } + } + }, + "net.minecraft.world.biome.BiomeGenBase": { + "shortName": "BiomeGenBase", + "package": "net.minecraft.world.biome", + "importCount": 3, + "importedBy": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/client/gui/SubGuiNpcBiomes.java", + "noppes/npcs/scripted/NpcAPI.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getSpawningChance": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + } + }, + "staticCalls": { + "getBiomeGenArray": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/SubGuiNpcBiomes.java", + "noppes/npcs/scripted/NpcAPI.java" + ] + } + }, + "fieldAccesses": { + "biomeName": { + "count": 7, + "files": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/client/gui/SubGuiNpcBiomes.java", + "noppes/npcs/scripted/NpcAPI.java" + ] + } + } + }, + "net.minecraftforge.event.entity.living.LivingEvent": { + "shortName": "LivingEvent", + "package": "net.minecraftforge.event.entity.living", + "importCount": 3, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityLiving": { + "count": 19, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.EntityInteractEvent": { + "shortName": "EntityInteractEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 3, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + }, + "setCanceled": { + "count": 7, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 23, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "target": { + "count": 26, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerInteractEvent": { + "shortName": "PlayerInteractEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 3, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setCanceled": { + "count": 8, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 11, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "action": { + "count": 12, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "x": { + "count": 7, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "y": { + "count": 6, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "z": { + "count": 7, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "world": { + "count": 2, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "cpw.mods.fml.common.eventhandler.EventPriority": { + "shortName": "EventPriority", + "package": "cpw.mods.fml.common.eventhandler", + "importCount": 3, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/ClientTickHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.pathfinding.PathNavigate": { + "shortName": "PathNavigate", + "package": "net.minecraft.pathfinding", + "importCount": 3, + "importedBy": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "class": "PathNavigateFlying" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getPathToXYZ": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java" + ] + }, + "noPath": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java" + ] + }, + "setPath": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIAvoidTarget.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.pathfinding.PathPoint": { + "shortName": "PathPoint", + "package": "net.minecraft.pathfinding", + "importCount": 3, + "importedBy": [ + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/pathfinder/NPCPathPoint.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/pathfinder/NPCPathPoint.java", + "class": "NPCPathPoint" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "xCoord": { + "count": 2, + "files": [ + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "yCoord": { + "count": 2, + "files": [ + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + }, + "zCoord": { + "count": 2, + "files": [ + "noppes/npcs/ai/EntityAIZigZagTarget.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + } + } + }, + "net.minecraft.client.resources.SimpleReloadableResourceManager": { + "shortName": "SimpleReloadableResourceManager", + "package": "net.minecraft.client.resources", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/CustomNpcResourceListener.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/AssetsBrowser.java", + "line": 55 + }, + { + "file": "noppes/npcs/client/CustomNpcResourceListener.java", + "line": 30 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "line": 87 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/CustomNpcResourceListener.java", + "line": 27 + } + ] + }, + "methodCalls": { + "reloadResourcePack": { + "count": 1, + "files": [ + "noppes/npcs/client/CustomNpcResourceListener.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.entity.AbstractClientPlayer": { + "shortName": "AbstractClientPlayer", + "package": "net.minecraft.client.entity", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/client/ClientEventHandler.java", + "line": 235 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.settings.KeyBinding": { + "shortName": "KeyBinding", + "package": "net.minecraft.client.settings", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java", + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 349 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 350 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 355 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 358 + }, + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 359 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getKeyCode": { + "count": 2, + "files": [ + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java" + ] + } + }, + "staticCalls": { + "setKeyBindState": { + "count": 9, + "files": [ + "noppes/npcs/client/ClientTickHandler.java", + "noppes/npcs/client/KeyPressHandler.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.audio.SoundHandler": { + "shortName": "SoundHandler", + "package": "net.minecraft.client.audio", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptSoundController.java", + "noppes/npcs/client/gui/select/GuiSoundSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isSoundPlaying": { + "count": 2, + "files": [ + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptSoundController.java" + ] + }, + "stopSound": { + "count": 4, + "files": [ + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptSoundController.java" + ] + }, + "stopSounds": { + "count": 2, + "files": [ + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptSoundController.java" + ] + }, + "playSound": { + "count": 5, + "files": [ + "noppes/npcs/client/controllers/MusicController.java", + "noppes/npcs/client/controllers/ScriptSoundController.java" + ] + }, + "pauseSounds": { + "count": 1, + "files": [ + "noppes/npcs/client/controllers/ScriptSoundController.java" + ] + }, + "resumeSounds": { + "count": 1, + "files": [ + "noppes/npcs/client/controllers/ScriptSoundController.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.GuiTextField": { + "shortName": "GuiTextField", + "package": "net.minecraft.client.gui", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "noppes/npcs/client/gui/util/GuiNpcTextField.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "class": "CustomGuiTextField" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "class": "GuiNpcTextField" + } + ], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 136 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "line": 135 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.player.InventoryPlayer": { + "shortName": "InventoryPlayer", + "package": "net.minecraft.entity.player", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/gui/custom/GuiCustom.java", + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getItemStack": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/custom/GuiCustom.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "player": { + "count": 3, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ] + } + } + }, + "net.minecraft.client.renderer.EntityRenderer": { + "shortName": "EntityRenderer", + "package": "net.minecraft.client.renderer", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "noppes/npcs/mixin/MixinEntityRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getShaderGroup": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ] + }, + "deactivateShader": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ] + }, + "enableLightmap": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + }, + "disableLightmap": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "theShaderGroup": { + "count": 2, + "files": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ] + }, + "debugViewDirection": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + } + } + }, + "net.minecraftforge.client.event.GuiScreenEvent": { + "shortName": "GuiScreenEvent", + "package": "net.minecraftforge.client.event", + "importCount": 3, + "importedBy": [ + "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.inventory.ICrafting": { + "shortName": "ICrafting", + "package": "net.minecraft.inventory", + "importCount": 3, + "importedBy": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java", + "noppes/npcs/containers/ContainerMerchantAdd.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 210 + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 211 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 201 + } + ], + "instanceof": [] + }, + "methodCalls": { + "sendProgressBarUpdate": { + "count": 3, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.IExtendedEntityProperties": { + "shortName": "IExtendedEntityProperties", + "package": "net.minecraftforge.common", + "importCount": 3, + "importedBy": [ + "noppes/npcs/controllers/ScriptEntityData.java", + "noppes/npcs/controllers/data/MarkData.java", + "noppes/npcs/controllers/data/PlayerData.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/controllers/ScriptEntityData.java", + "class": "ScriptEntityData" + }, + { + "file": "noppes/npcs/controllers/data/MarkData.java", + "class": "MarkData" + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "class": "PlayerData" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemSword": { + "shortName": "ItemSword", + "package": "net.minecraft.item", + "importCount": 3, + "importedBy": [ + "noppes/npcs/items/ItemNpcWeaponInterface.java", + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/items/ItemNpcWeaponInterface.java", + "class": "ItemNpcWeaponInterface" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 449 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 458 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 493 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 501 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 52 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemFood": { + "shortName": "ItemFood", + "package": "net.minecraft.item", + "importCount": 3, + "importedBy": [ + "noppes/npcs/roles/RoleCompanion.java", + "noppes/npcs/roles/companion/CompanionFoodStats.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 184 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 648 + }, + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 653 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 414 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/roles/RoleCompanion.java", + "line": 644 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 410 + } + ] + }, + "methodCalls": { + "func_150905_g": { + "count": 1, + "files": [ + "noppes/npcs/roles/companion/CompanionFoodStats.java" + ] + }, + "func_150906_h": { + "count": 1, + "files": [ + "noppes/npcs/roles/companion/CompanionFoodStats.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.monster.EntityGhast": { + "shortName": "EntityGhast", + "package": "net.minecraft.entity.monster", + "importCount": 2, + "importedBy": [ + "foxz/command/CmdNoppes.java", + "kamkeel/npcs/command/SlayCommand.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.command.PlayerSelector": { + "shortName": "PlayerSelector", + "package": "net.minecraft.command", + "importCount": 2, + "importedBy": [ + "foxz/commandhelper/AbstractCommandHelper.java", + "noppes/npcs/controllers/PlayerDataController.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "matchPlayers": { + "count": 2, + "files": [ + "foxz/commandhelper/AbstractCommandHelper.java", + "noppes/npcs/controllers/PlayerDataController.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.network.play.server.S12PacketEntityVelocity": { + "shortName": "S12PacketEntityVelocity", + "package": "net.minecraft.network.play.server", + "importCount": 2, + "importedBy": [ + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java", + "line": 233 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 226 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 316 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 371 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 416 + }, + { + "file": "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java", + "line": 443 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.attributes.IAttributeInstance": { + "shortName": "IAttributeInstance", + "package": "net.minecraft.entity.ai.attributes", + "importCount": 2, + "importedBy": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getModifier": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java" + ] + }, + "removeModifier": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java" + ] + }, + "applyModifier": { + "count": 4, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java" + ] + }, + "getAttributeValue": { + "count": 3, + "files": [ + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java", + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.network.NetworkRegistry": { + "shortName": "NetworkRegistry", + "package": "cpw.mods.fml.common.network", + "importCount": 2, + "importedBy": [ + "kamkeel/npcs/network/PacketHandler.java", + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/network/PacketHandler.java", + "line": 853 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.DimensionManager": { + "shortName": "DimensionManager", + "package": "net.minecraftforge.common", + "importCount": 2, + "importedBy": [ + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java", + "noppes/npcs/controllers/data/SpawnData.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getStaticDimensionIDs": { + "count": 2, + "files": [ + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java", + "noppes/npcs/controllers/data/SpawnData.java" + ] + }, + "createProviderFor": { + "count": 1, + "files": [ + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.entity.EntityPlayerSP": { + "shortName": "EntityPlayerSP", + "package": "net.minecraft.client.entity", + "importCount": 2, + "importedBy": [ + "kamkeel/npcs/util/AnchorPointHelper.java", + "noppes/npcs/client/renderer/RenderCNPCHand.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "line": 52 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "line": 53 + }, + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "line": 53 + } + ], + "instanceof": [ + { + "file": "kamkeel/npcs/util/AnchorPointHelper.java", + "line": 242 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.settings.GameSettings": { + "shortName": "GameSettings", + "package": "net.minecraft.client.settings", + "importCount": 2, + "importedBy": [ + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/client/key/KeyPreset.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getKeyDisplayString": { + "count": 2, + "files": [ + "kamkeel/npcs/util/AttributeItemUtil.java", + "noppes/npcs/client/key/KeyPreset.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.texture.TextureUtil": { + "shortName": "TextureUtil", + "package": "net.minecraft.client.renderer.texture", + "importCount": 2, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/ImageDownloadAlt.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_152777_a": { + "count": 1, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "func_147945_b": { + "count": 1, + "files": [ + "noppes/npcs/AnimationMixinFunctions.java" + ] + }, + "uploadTextureImage": { + "count": 1, + "files": [ + "noppes/npcs/client/ImageDownloadAlt.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.client.IItemRenderer.ItemRenderType": { + "shortName": "ItemRenderType", + "package": "net.minecraftforge.client.IItemRenderer", + "importCount": 2, + "importedBy": [ + "noppes/npcs/AnimationMixinFunctions.java", + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.util.EnumHelper": { + "shortName": "EnumHelper", + "package": "net.minecraftforge.common.util", + "importCount": 2, + "importedBy": [ + "noppes/npcs/CustomItems.java", + "noppes/npcs/enchants/EnchantInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "addToolMaterial": { + "count": 5, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "addArmorMaterial": { + "count": 3, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "addEnchantmentType": { + "count": 1, + "files": [ + "noppes/npcs/enchants/EnchantInterface.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.oredict.OreDictionary": { + "shortName": "OreDictionary", + "package": "net.minecraftforge.oredict", + "importCount": 2, + "importedBy": [ + "noppes/npcs/CustomItems.java", + "noppes/npcs/NoppesUtilPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "registerOre": { + "count": 6, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "itemMatches": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "getOreIDs": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + }, + "getOres": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilPlayer.java" + ] + } + }, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.registry.EntityRegistry": { + "shortName": "EntityRegistry", + "package": "cpw.mods.fml.common.registry", + "importCount": 2, + "importedBy": [ + "noppes/npcs/CustomNpcs.java", + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "usesVanillaSpawning": { + "count": 1, + "files": [ + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ] + }, + "getContainer": { + "count": 1, + "files": [ + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ] + } + }, + "staticCalls": { + "registerModEntity": { + "count": 2, + "files": [ + "noppes/npcs/CustomNpcs.java" + ] + }, + "instance": { + "count": 1, + "files": [ + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.enchantment.EnchantmentHelper": { + "shortName": "EnchantmentHelper", + "package": "net.minecraft.enchantment", + "importCount": 2, + "importedBy": [ + "noppes/npcs/DataInventory.java", + "noppes/npcs/enchants/EnchantInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getLootingModifier": { + "count": 1, + "files": [ + "noppes/npcs/DataInventory.java" + ] + }, + "getEnchantmentLevel": { + "count": 1, + "files": [ + "noppes/npcs/enchants/EnchantInterface.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.entity.EnumCreatureType": { + "shortName": "EnumCreatureType", + "package": "net.minecraft.entity", + "importCount": 2, + "importedBy": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/blocks/BlockScripted.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.chunk.Chunk": { + "shortName": "Chunk", + "package": "net.minecraft.world.chunk", + "importCount": 2, + "importedBy": [ + "noppes/npcs/NPCSpawning.java", + "noppes/npcs/blocks/tiles/TileScripted.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getTopFilledSegment": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "setBlockMetadata": { + "count": 1, + "files": [ + "noppes/npcs/blocks/tiles/TileScripted.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.world.ChunkDataEvent": { + "shortName": "ChunkDataEvent", + "package": "net.minecraftforge.event.world", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.world.ChunkEvent": { + "shortName": "ChunkEvent", + "package": "net.minecraftforge.event.world", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.world.ChunkWatchEvent": { + "shortName": "ChunkWatchEvent", + "package": "net.minecraftforge.event.world", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptForgeEventHandler.java", + "noppes/npcs/controllers/data/ForgeDataScript.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.entity.EntityJoinWorldEvent": { + "shortName": "EntityJoinWorldEvent", + "package": "net.minecraftforge.event.entity", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "world": { + "count": 3, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "entity": { + "count": 4, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.item.ItemTossEvent": { + "shortName": "ItemTossEvent", + "package": "net.minecraftforge.event.entity.item", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + }, + "setCanceled": { + "count": 2, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "player": { + "count": 8, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "entityItem": { + "count": 3, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerUseItemEvent": { + "shortName": "PlayerUseItemEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setCanceled": { + "count": 6, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 32, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "item": { + "count": 8, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "duration": { + "count": 8, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java", + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraft.inventory.ContainerPlayer": { + "shortName": "ContainerPlayer", + "package": "net.minecraft.inventory", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/client/ClientTickHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/ScriptPlayerEventHandler.java", + "line": 409 + }, + { + "file": "noppes/npcs/client/ClientTickHandler.java", + "line": 167 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.entity.living.LivingAttackEvent": { + "shortName": "LivingAttackEvent", + "package": "net.minecraftforge.event.entity.living", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "setCanceled": { + "count": 3, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityLiving": { + "count": 20, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "source": { + "count": 5, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "ammount": { + "count": 5, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.living.LivingDeathEvent": { + "shortName": "LivingDeathEvent", + "package": "net.minecraftforge.event.entity.living", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityLiving": { + "count": 18, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "source": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.living.LivingHurtEvent": { + "shortName": "LivingHurtEvent", + "package": "net.minecraftforge.event.entity.living", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "isCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "setCanceled": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityLiving": { + "count": 13, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "source": { + "count": 5, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "ammount": { + "count": 21, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/ServerEventsHandler.java" + ] + } + } + }, + "net.minecraftforge.event.world.BlockEvent": { + "shortName": "BlockEvent", + "package": "net.minecraftforge.event.world", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java", + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 505 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 531 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getPlayer": { + "count": 8, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "setCanceled": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "getExpToDrop": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "setExpToDrop": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "isCanceled": { + "count": 2, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "world": { + "count": 2, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "x": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "y": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "z": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "cpw.mods.fml.common.gameevent.TickEvent.Phase": { + "shortName": "Phase", + "package": "cpw.mods.fml.common.gameevent.TickEvent", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ServerTickHandler.java", + "noppes/npcs/client/ClientTickHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.IRangedAttackMob": { + "shortName": "IRangedAttackMob", + "package": "net.minecraft.entity", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ai/EntityAIRangedAttack.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "attackEntityWithRangedAttack": { + "count": 1, + "files": [ + "noppes/npcs/ai/EntityAIRangedAttack.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityMoveHelper": { + "shortName": "EntityMoveHelper", + "package": "net.minecraft.entity.ai", + "importCount": 2, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java", + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java", + "class": "FlyingMoveHelper" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.EnumSkyBlock": { + "shortName": "EnumSkyBlock", + "package": "net.minecraft.world", + "importCount": 2, + "importedBy": [ + "noppes/npcs/blocks/tiles/TileBlockAnvil.java", + "noppes/npcs/blocks/tiles/TileScripted.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.AbstractResourcePack": { + "shortName": "AbstractResourcePack", + "package": "net.minecraft.client.resources", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/AssetsBrowser.java", + "line": 66 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "line": 97 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/AssetsBrowser.java", + "line": 65 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "line": 96 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.FallbackResourceManager": { + "shortName": "FallbackResourceManager", + "package": "net.minecraft.client.resources", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/AssetsBrowser.java", + "line": 62 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "line": 93 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/AssetsBrowser.java", + "line": 60 + }, + { + "file": "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "line": 91 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.IResourcePack": { + "shortName": "IResourcePack", + "package": "net.minecraft.client.resources", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.NPCResourceHelper": { + "shortName": "NPCResourceHelper", + "package": "net.minecraft.client.resources", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getPackFile": { + "count": 2, + "files": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.ResourcePackRepository": { + "shortName": "ResourcePackRepository", + "package": "net.minecraft.client.resources", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/AssetsBrowser.java", + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "updateRepositoryEntriesAll": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ] + }, + "getRepositoryEntries": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ] + }, + "getDirResourcepacks": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ] + }, + "getResourcePackName": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.client.event.RenderLivingEvent": { + "shortName": "RenderLivingEvent", + "package": "net.minecraftforge.client.event", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 225 + }, + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "line": 422 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entity": { + "count": 7, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "renderer": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "x": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "y": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "z": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + } + } + }, + "net.minecraftforge.client.event.RenderPlayerEvent": { + "shortName": "RenderPlayerEvent", + "package": "net.minecraftforge.client.event", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/ClientEventHandler.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 2, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "entity": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "renderer": { + "count": 6, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "partialRenderTick": { + "count": 6, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + } + } + }, + "net.minecraft.client.renderer.ActiveRenderInfo": { + "shortName": "ActiveRenderInfo", + "package": "net.minecraft.client.renderer", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getBlockAtEntityViewpoint": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderCNPCPlayer.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.particle.EntityPortalFX": { + "shortName": "EntityPortalFX", + "package": "net.minecraft.client.particle", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "noppes/npcs/client/fx/EntityEnderFX.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "class": "EntityElementalStaffFX" + }, + { + "file": "noppes/npcs/client/fx/EntityEnderFX.java", + "class": "EntityEnderFX" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.IMerchant": { + "shortName": "IMerchant", + "package": "net.minecraft.entity", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java", + "noppes/npcs/containers/ContainerMerchantAdd.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getRecipes": { + "count": 5, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "setCustomer": { + "count": 1, + "files": [ + "noppes/npcs/containers/ContainerMerchantAdd.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.BiomeDictionary": { + "shortName": "BiomeDictionary", + "package": "net.minecraftforge.common", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/gui/SubGuiNpcBiomes.java", + "noppes/npcs/scripted/NpcAPI.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getBiomesForType": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/SubGuiNpcBiomes.java", + "noppes/npcs/scripted/NpcAPI.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.item.crafting.CraftingManager": { + "shortName": "CraftingManager", + "package": "net.minecraft.item.crafting", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/gui/select/GuiTextureSelection.java", + "noppes/npcs/controllers/RecipeController.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getInstance": { + "count": 1, + "files": [ + "noppes/npcs/controllers/RecipeController.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.SkinManager": { + "shortName": "SkinManager", + "package": "net.minecraft.client.resources", + "importCount": 2, + "importedBy": [ + "noppes/npcs/client/renderer/ImageData.java", + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.inventory.InventoryCraftResult": { + "shortName": "InventoryCraftResult", + "package": "net.minecraft.inventory", + "importCount": 2, + "importedBy": [ + "noppes/npcs/containers/ContainerAnvilRepair.java", + "noppes/npcs/containers/ContainerCarpentryBench.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "line": 24 + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 24 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setInventorySlotContents": { + "count": 3, + "files": [ + "noppes/npcs/containers/ContainerAnvilRepair.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.ForgeChunkManager.Ticket": { + "shortName": "Ticket", + "package": "net.minecraftforge.common.ForgeChunkManager", + "importCount": 2, + "importedBy": [ + "noppes/npcs/controllers/ChunkController.java", + "noppes/npcs/roles/JobChunkLoader.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "bindEntity": { + "count": 1, + "files": [ + "noppes/npcs/controllers/ChunkController.java" + ] + }, + "setChunkListDepth": { + "count": 1, + "files": [ + "noppes/npcs/controllers/ChunkController.java" + ] + }, + "getEntity": { + "count": 2, + "files": [ + "noppes/npcs/controllers/ChunkController.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.WeightedRandom": { + "shortName": "WeightedRandom", + "package": "net.minecraft.util", + "importCount": 2, + "importedBy": [ + "noppes/npcs/controllers/SpawnController.java", + "noppes/npcs/controllers/data/SpawnData.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/controllers/data/SpawnData.java", + "class": "SpawnData" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getRandomItem": { + "count": 1, + "files": [ + "noppes/npcs/controllers/SpawnController.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.enchantment.Enchantment": { + "shortName": "Enchantment", + "package": "net.minecraft.enchantment", + "importCount": 2, + "importedBy": [ + "noppes/npcs/enchants/EnchantInterface.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/enchants/EnchantInterface.java", + "class": "EnchantInterface" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.monster.EntityEnderman": { + "shortName": "EntityEnderman", + "package": "net.minecraft.entity.monster", + "importCount": 2, + "importedBy": [ + "noppes/npcs/entity/EntityProjectile.java", + "noppes/npcs/entity/old/EntityNPCEnderman.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 491 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.monster.EntityCreeper": { + "shortName": "EntityCreeper", + "package": "net.minecraft.entity.monster", + "importCount": 2, + "importedBy": [ + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/companion/CompanionGuard.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/roles/JobGuard.java", + "line": 62 + }, + { + "file": "noppes/npcs/roles/companion/CompanionGuard.java", + "line": 30 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.monster.IMob": { + "shortName": "IMob", + "package": "net.minecraft.entity.monster", + "importCount": 2, + "importedBy": [ + "noppes/npcs/roles/JobGuard.java", + "noppes/npcs/roles/companion/CompanionGuard.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/roles/JobGuard.java", + "line": 64 + }, + { + "file": "noppes/npcs/roles/companion/CompanionGuard.java", + "line": 32 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.INpc": { + "shortName": "INpc", + "package": "net.minecraft.entity", + "importCount": 2, + "importedBy": [ + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/roles/ScriptRoleInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 491 + }, + { + "file": "noppes/npcs/scripted/roles/ScriptRoleInterface.java", + "line": 20 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.projectile.EntityFishHook": { + "shortName": "EntityFishHook", + "package": "net.minecraft.entity.projectile", + "importCount": 2, + "importedBy": [ + "noppes/npcs/scripted/NpcAPI.java", + "noppes/npcs/scripted/entity/ScriptFishHook.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 455 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 454 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTBase.NBTPrimitive": { + "shortName": "NBTPrimitive", + "package": "net.minecraft.nbt.NBTBase", + "importCount": 2, + "importedBy": [ + "noppes/npcs/scripted/entity/ScriptEntity.java", + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 622 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 162 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 550 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/entity/ScriptEntity.java", + "line": 621 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 161 + }, + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 549 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.scoreboard.ScoreObjective": { + "shortName": "ScoreObjective", + "package": "net.minecraft.scoreboard", + "importCount": 2, + "importedBy": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboardObjective.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getCriteria": { + "count": 4, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboardObjective.java" + ] + }, + "getName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardObjective.java" + ] + }, + "getDisplayName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardObjective.java" + ] + }, + "setDisplayName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardObjective.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.scoreboard.ScorePlayerTeam": { + "shortName": "ScorePlayerTeam", + "package": "net.minecraft.scoreboard", + "importCount": 2, + "importedBy": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getRegisteredName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "func_96669_c": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "setTeamName": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "getMembershipCollection": { + "count": 3, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "getAllowFriendlyFire": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "setAllowFriendlyFire": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "setNamePrefix": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "setNameSuffix": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "getColorPrefix": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "setSeeFriendlyInvisiblesEnabled": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "func_98297_h": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.scoreboard.Scoreboard": { + "shortName": "Scoreboard", + "package": "net.minecraft.scoreboard", + "importCount": 2, + "importedBy": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java", + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getScoreObjectives": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "getObjective": { + "count": 7, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "func_96519_k": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "addScoreObjective": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "func_96529_a": { + "count": 2, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "func_96510_d": { + "count": 2, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "func_96516_a": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "getTeams": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "getPlayersTeam": { + "count": 3, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "createTeam": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "removeTeam": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + }, + "func_151392_a": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + }, + "removePlayerFromTeam": { + "count": 2, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.command.PlayerNotFoundException": { + "shortName": "PlayerNotFoundException", + "package": "net.minecraft.command", + "importCount": 1, + "importedBy": [ + "kamkeel/npcs/command/NpcCommand.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.network.FMLEventChannel": { + "shortName": "FMLEventChannel", + "package": "cpw.mods.fml.common.network", + "importCount": 1, + "importedBy": [ + "kamkeel/npcs/network/PacketHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "register": { + "count": 1, + "files": [ + "kamkeel/npcs/network/PacketHandler.java" + ] + }, + "sendTo": { + "count": 1, + "files": [ + "kamkeel/npcs/network/PacketHandler.java" + ] + }, + "sendToDimension": { + "count": 1, + "files": [ + "kamkeel/npcs/network/PacketHandler.java" + ] + }, + "sendToAllAround": { + "count": 1, + "files": [ + "kamkeel/npcs/network/PacketHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.NetHandlerPlayServer": { + "shortName": "NetHandlerPlayServer", + "package": "net.minecraft.network", + "importCount": 1, + "importedBy": [ + "kamkeel/npcs/network/PacketHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "kamkeel/npcs/network/PacketHandler.java", + "line": 734 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.achievement.GuiAchievement": { + "shortName": "GuiAchievement", + "package": "net.minecraft.client.gui.achievement", + "importCount": 1, + "importedBy": [ + "kamkeel/npcs/network/packets/data/AchievementPacket.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.WorldProvider": { + "shortName": "WorldProvider", + "package": "net.minecraft.world", + "importCount": 1, + "importedBy": [ + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getDimensionName": { + "count": 1, + "files": [ + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTSizeTracker": { + "shortName": "NBTSizeTracker", + "package": "net.minecraft.nbt", + "importCount": 1, + "importedBy": [ + "kamkeel/npcs/util/ByteBufUtils.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "kamkeel/npcs/util/ByteBufUtils.java", + "line": 86 + }, + { + "file": "kamkeel/npcs/util/ByteBufUtils.java", + "line": 99 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.network.IGuiHandler": { + "shortName": "IGuiHandler", + "package": "cpw.mods.fml.common.network", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CommonProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/CommonProxy.java", + "class": "CommonProxy" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockDispenser": { + "shortName": "BlockDispenser", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomItems.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_149937_b": { + "count": 1, + "files": [ + "noppes/npcs/CustomItems.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.dispenser.BehaviorDefaultDispenseItem": { + "shortName": "BehaviorDefaultDispenseItem", + "package": "net.minecraft.dispenser", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomItems.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/CustomItems.java", + "line": 375 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.dispenser.IBlockSource": { + "shortName": "IBlockSource", + "package": "net.minecraft.dispenser", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomItems.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getBlockMetadata": { + "count": 1, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "getXInt": { + "count": 1, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "getZInt": { + "count": 1, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "getWorld": { + "count": 1, + "files": [ + "noppes/npcs/CustomItems.java" + ] + }, + "getYInt": { + "count": 1, + "files": [ + "noppes/npcs/CustomItems.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.item.Item.ToolMaterial": { + "shortName": "ToolMaterial", + "package": "net.minecraft.item.Item", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomItems.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "customCraftingMaterial": { + "count": 5, + "files": [ + "noppes/npcs/CustomItems.java" + ] + } + } + }, + "net.minecraft.item.ItemFlintAndSteel": { + "shortName": "ItemFlintAndSteel", + "package": "net.minecraft.item", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomItems.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/CustomItems.java", + "line": 575 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.Mod": { + "shortName": "Mod", + "package": "cpw.mods.fml.common", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.Mod.EventHandler": { + "shortName": "EventHandler", + "package": "cpw.mods.fml.common.Mod", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.SidedProxy": { + "shortName": "SidedProxy", + "package": "cpw.mods.fml.common", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.event.FMLInitializationEvent": { + "shortName": "FMLInitializationEvent", + "package": "cpw.mods.fml.common.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.event.FMLLoadCompleteEvent": { + "shortName": "FMLLoadCompleteEvent", + "package": "cpw.mods.fml.common.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.event.FMLPreInitializationEvent": { + "shortName": "FMLPreInitializationEvent", + "package": "cpw.mods.fml.common.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getModConfigurationDirectory": { + "count": 2, + "files": [ + "noppes/npcs/CustomNpcs.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.event.FMLServerAboutToStartEvent": { + "shortName": "FMLServerAboutToStartEvent", + "package": "cpw.mods.fml.common.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getServer": { + "count": 1, + "files": [ + "noppes/npcs/CustomNpcs.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.event.FMLServerStartedEvent": { + "shortName": "FMLServerStartedEvent", + "package": "cpw.mods.fml.common.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.event.FMLServerStartingEvent": { + "shortName": "FMLServerStartingEvent", + "package": "cpw.mods.fml.common.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "registerServerCommand": { + "count": 3, + "files": [ + "noppes/npcs/CustomNpcs.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.event.FMLServerStoppedEvent": { + "shortName": "FMLServerStoppedEvent", + "package": "cpw.mods.fml.common.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomNpcs.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.Teleporter": { + "shortName": "Teleporter", + "package": "net.minecraft.world", + "importCount": 1, + "importedBy": [ + "noppes/npcs/CustomTeleporter.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/CustomTeleporter.java", + "class": "CustomTeleporter" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.LoaderState": { + "shortName": "LoaderState", + "package": "cpw.mods.fml.common", + "importCount": 1, + "importedBy": [ + "noppes/npcs/DataDisplay.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTUtil": { + "shortName": "NBTUtil", + "package": "net.minecraft.nbt", + "importCount": 1, + "importedBy": [ + "noppes/npcs/DataDisplay.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_152460_a": { + "count": 1, + "files": [ + "noppes/npcs/DataDisplay.java" + ] + }, + "func_152459_a": { + "count": 1, + "files": [ + "noppes/npcs/DataDisplay.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.util.StringUtils": { + "shortName": "StringUtils", + "package": "net.minecraft.util", + "importCount": 1, + "importedBy": [ + "noppes/npcs/DataDisplay.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "isNullOrEmpty": { + "count": 2, + "files": [ + "noppes/npcs/DataDisplay.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.command.server.CommandBlockLogic": { + "shortName": "CommandBlockLogic", + "package": "net.minecraft.command.server", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NoppesUtilServer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "func_145752_a": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "func_145754_b": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "func_145755_a": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.tileentity.MobSpawnerBaseLogic": { + "shortName": "MobSpawnerBaseLogic", + "package": "net.minecraft.tileentity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NoppesUtilServer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setRandomEntity": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.tileentity.TileEntityCommandBlock": { + "shortName": "TileEntityCommandBlock", + "package": "net.minecraft.tileentity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NoppesUtilServer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 299 + }, + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 316 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setWorldObj": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "func_145993_a": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "xCoord": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "yCoord": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + }, + "zCoord": { + "count": 2, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + } + } + }, + "net.minecraft.tileentity.TileEntityMobSpawner": { + "shortName": "TileEntityMobSpawner", + "package": "net.minecraft.tileentity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NoppesUtilServer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/NoppesUtilServer.java", + "line": 493 + } + ], + "instanceof": [] + }, + "methodCalls": { + "func_145881_a": { + "count": 1, + "files": [ + "noppes/npcs/NoppesUtilServer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.EntityDamageSourceIndirect": { + "shortName": "EntityDamageSourceIndirect", + "package": "net.minecraft.util", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NpcDamageSourceInderect.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/NpcDamageSourceInderect.java", + "class": "NpcDamageSourceInderect" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.eventhandler.Event.Result": { + "shortName": "Result", + "package": "cpw.mods.fml.common.eventhandler.Event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NPCSpawning.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.ChunkPosition": { + "shortName": "ChunkPosition", + "package": "net.minecraft.world", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NPCSpawning.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/NPCSpawning.java", + "line": 182 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "chunkPosX": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "chunkPosY": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + }, + "chunkPosZ": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + } + } + }, + "net.minecraftforge.event.ForgeEventFactory": { + "shortName": "ForgeEventFactory", + "package": "net.minecraftforge.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/NPCSpawning.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "canEntitySpawn": { + "count": 1, + "files": [ + "noppes/npcs/NPCSpawning.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.event.entity.player.AnvilRepairEvent": { + "shortName": "AnvilRepairEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 2, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + }, + "output": { + "count": 2, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + }, + "left": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + }, + "right": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + }, + "breakChance": { + "count": 1, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerDestroyItemEvent": { + "shortName": "PlayerDestroyItemEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptItemEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 2, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + }, + "original": { + "count": 2, + "files": [ + "noppes/npcs/ScriptItemEventHandler.java" + ] + } + } + }, + "net.minecraftforge.common.ForgeHooks": { + "shortName": "ForgeHooks", + "package": "net.minecraftforge.common", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "newChatWithLinks": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.event.entity.EntityStruckByLightningEvent": { + "shortName": "EntityStruckByLightningEvent", + "package": "net.minecraftforge.event.entity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entity": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.PlaySoundAtEntityEvent": { + "shortName": "PlaySoundAtEntityEvent", + "package": "net.minecraftforge.event.entity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entity": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "name": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "pitch": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "volume": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.living.LivingFallEvent": { + "shortName": "LivingFallEvent", + "package": "net.minecraftforge.event.entity.living", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityLiving": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "distance": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.AchievementEvent": { + "shortName": "AchievementEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "achievement": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.ArrowLooseEvent": { + "shortName": "ArrowLooseEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 7, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "bow": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "charge": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.ArrowNockEvent": { + "shortName": "ArrowNockEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 7, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.BonemealEvent": { + "shortName": "BonemealEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "x": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "y": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "z": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "world": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.FillBucketEvent": { + "shortName": "FillBucketEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "current": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "result": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerDropsEvent": { + "shortName": "PlayerDropsEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setCanceled": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "drops": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerOpenContainerEvent": { + "shortName": "PlayerOpenContainerEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 8, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerPickupXpEvent": { + "shortName": "PlayerPickupXpEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "orb": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerSleepInBedEvent": { + "shortName": "PlayerSleepInBedEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "x": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "y": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "z": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerWakeUpEvent": { + "shortName": "PlayerWakeUpEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "setSpawn": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.UseHoeEvent": { + "shortName": "UseHoeEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entityPlayer": { + "count": 6, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "current": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "x": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "y": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + }, + "z": { + "count": 1, + "files": [ + "noppes/npcs/ScriptPlayerEventHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerEvent": { + "shortName": "PlayerEvent", + "package": "net.minecraftforge.event.entity.player", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "entity": { + "count": 2, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "target": { + "count": 8, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "entityPlayer": { + "count": 4, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + } + } + }, + "net.minecraftforge.event.entity.player.PlayerInteractEvent.Action": { + "shortName": "Action", + "package": "net.minecraftforge.event.entity.player.PlayerInteractEvent", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.terraingen.PopulateChunkEvent": { + "shortName": "PopulateChunkEvent", + "package": "net.minecraftforge.event.terraingen", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ServerEventsHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "world": { + "count": 1, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "chunkX": { + "count": 1, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "chunkZ": { + "count": 1, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + }, + "rand": { + "count": 1, + "files": [ + "noppes/npcs/ServerEventsHandler.java" + ] + } + } + }, + "net.minecraft.entity.ai.EntityAIDoorInteract": { + "shortName": "EntityAIDoorInteract", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/EntityAIBustDoor.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/EntityAIBustDoor.java", + "class": "EntityAIBustDoor" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockDoor": { + "shortName": "BlockDoor", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 610 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 612 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 614 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 610 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 612 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 614 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockFence": { + "shortName": "BlockFence", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 618 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockFenceGate": { + "shortName": "BlockFenceGate", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 618 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockRailBase": { + "shortName": "BlockRailBase", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 548 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 548 + }, + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 616 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockWall": { + "shortName": "BlockWall", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 618 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.pathfinding.PathFinder": { + "shortName": "PathFinder", + "package": "net.minecraft.pathfinding", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "class": "FlyPathFinder" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.math.IntHashMap": { + "shortName": "IntHashMap", + "package": "net.minecraft.util.math", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "line": 39 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "clearMap": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + }, + "lookup": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + }, + "addKey": { + "count": 1, + "files": [ + "noppes/npcs/ai/pathfinder/FlyPathFinder.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.ChunkCache": { + "shortName": "ChunkCache", + "package": "net.minecraft.world", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "line": 638 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAINearestAttackableTarget": { + "shortName": "EntityAINearestAttackableTarget", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/ai/target/EntityAIClosestTarget.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "line": 40 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockBreakable": { + "shortName": "BlockBreakable", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/blocks/BlockCrystal.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/blocks/BlockCrystal.java", + "class": "BlockCrystal" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.material.MapColor": { + "shortName": "MapColor", + "package": "net.minecraft.block.material", + "importCount": 1, + "importedBy": [ + "noppes/npcs/blocks/BlockCrystal.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getMapColorForBlockColored": { + "count": 2, + "files": [ + "noppes/npcs/blocks/BlockCrystal.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.common.util.ForgeDirection": { + "shortName": "ForgeDirection", + "package": "net.minecraftforge.common.util", + "importCount": 1, + "importedBy": [ + "noppes/npcs/blocks/BlockRotated.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.item.EntityEnderPearl": { + "shortName": "EntityEnderPearl", + "package": "net.minecraft.entity.item", + "importCount": 1, + "importedBy": [ + "noppes/npcs/blocks/tiles/TileBorder.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 60 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 59 + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "line": 110 + } + ] + }, + "methodCalls": { + "getThrower": { + "count": 2, + "files": [ + "noppes/npcs/blocks/tiles/TileBorder.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.texture.ITickable": { + "shortName": "ITickable", + "package": "net.minecraft.client.renderer.texture", + "importCount": 1, + "importedBy": [ + "noppes/npcs/blocks/tiles/TileScripted.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "tick": { + "count": 1, + "files": [ + "noppes/npcs/blocks/tiles/TileScripted.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.client.event.MouseEvent": { + "shortName": "MouseEvent", + "package": "net.minecraftforge.client.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setCanceled": { + "count": 3, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "button": { + "count": 4, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "buttonstate": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "dx": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "dy": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "dwheel": { + "count": 3, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + } + } + }, + "net.minecraftforge.client.event.RenderGameOverlayEvent": { + "shortName": "RenderGameOverlayEvent", + "package": "net.minecraftforge.client.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "type": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + }, + "partialTicks": { + "count": 2, + "files": [ + "noppes/npcs/client/ClientEventHandler.java" + ] + } + } + }, + "net.minecraftforge.client.event.RenderHandEvent": { + "shortName": "RenderHandEvent", + "package": "net.minecraftforge.client.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.client.registry.ClientRegistry": { + "shortName": "ClientRegistry", + "package": "cpw.mods.fml.client.registry", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "bindTileEntitySpecialRenderer": { + "count": 25, + "files": [ + "noppes/npcs/client/ClientProxy.java" + ] + }, + "registerKeyBinding": { + "count": 5, + "files": [ + "noppes/npcs/client/ClientProxy.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.particle.EntityFlameFX": { + "shortName": "EntityFlameFX", + "package": "net.minecraft.client.particle", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 840 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.particle.EntitySmokeFX": { + "shortName": "EntitySmokeFX", + "package": "net.minecraft.client.particle", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 842 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.RenderGlobal": { + "shortName": "RenderGlobal", + "package": "net.minecraft.client.renderer", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "doSpawnParticle": { + "count": 1, + "files": [ + "noppes/npcs/client/ClientProxy.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.IReloadableResourceManager": { + "shortName": "IReloadableResourceManager", + "package": "net.minecraft.client.resources", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/ClientProxy.java", + "line": 428 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.ReportedException": { + "shortName": "ReportedException", + "package": "net.minecraft.util", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.client.ClientCommandHandler": { + "shortName": "ClientCommandHandler", + "package": "net.minecraftforge.client", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ClientProxy.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.FolderResourcePack": { + "shortName": "FolderResourcePack", + "package": "net.minecraft.client.resources", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/CustomNpcResourceListener.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/CustomNpcResourceListener.java", + "line": 32 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.IResourceManagerReloadListener": { + "shortName": "IResourceManagerReloadListener", + "package": "net.minecraft.client.resources", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/CustomNpcResourceListener.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/client/CustomNpcResourceListener.java", + "class": "CustomNpcResourceListener" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.passive.EntityChicken": { + "shortName": "EntityChicken", + "package": "net.minecraft.entity.passive", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/EntityUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/client/EntityUtil.java", + "line": 82 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/client/EntityUtil.java", + "line": 81 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.IImageBuffer": { + "shortName": "IImageBuffer", + "package": "net.minecraft.client.renderer", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ImageDownloadAlt.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "func_152634_a": { + "count": 1, + "files": [ + "noppes/npcs/client/ImageDownloadAlt.java" + ] + }, + "parseUserSkin": { + "count": 1, + "files": [ + "noppes/npcs/client/ImageDownloadAlt.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.texture.SimpleTexture": { + "shortName": "SimpleTexture", + "package": "net.minecraft.client.renderer.texture", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/ImageDownloadAlt.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/ImageDownloadAlt.java", + "class": "ImageDownloadAlt" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.gameevent.InputEvent": { + "shortName": "InputEvent", + "package": "cpw.mods.fml.common.gameevent", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/KeyPressHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.Util": { + "shortName": "Util", + "package": "net.minecraft.util", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/NoppesUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getOSType": { + "count": 2, + "files": [ + "noppes/npcs/client/NoppesUtil.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.event.ClickEvent": { + "shortName": "ClickEvent", + "package": "net.minecraft.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/VersionChecker.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/VersionChecker.java", + "line": 35 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.event.ClickEvent.Action": { + "shortName": "Action", + "package": "net.minecraft.event.ClickEvent", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/VersionChecker.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.audio.ISound": { + "shortName": "ISound", + "package": "net.minecraft.client.audio", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/controllers/MusicController.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.audio.ITickableSound": { + "shortName": "ITickableSound", + "package": "net.minecraft.client.audio", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/controllers/ScriptClientSound.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/client/controllers/ScriptClientSound.java", + "class": "ScriptClientSound" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.audio.MovingSound": { + "shortName": "MovingSound", + "package": "net.minecraft.client.audio", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/controllers/ScriptClientSound.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/controllers/ScriptClientSound.java", + "class": "ScriptClientSound" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.entity.EntityEvent.EntityConstructing": { + "shortName": "EntityConstructing", + "package": "net.minecraftforge.event.entity.EntityEvent", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/fx/EntityBigSmokeFX.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "class": "EntityBigSmokeFXConstructingEvent" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.play.client.C17PacketCustomPayload": { + "shortName": "C17PacketCustomPayload", + "package": "net.minecraft.network.play.client", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "line": 139 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.village.MerchantRecipe": { + "shortName": "MerchantRecipe", + "package": "net.minecraft.village", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "line": 123 + } + ], + "casts": [ + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "line": 163 + }, + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "line": 188 + } + ], + "instanceof": [] + }, + "methodCalls": { + "func_82783_a": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "isRecipeDisabled": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "getItemToBuy": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "getSecondItemToBuy": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + }, + "getItemToSell": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/GuiMerchantAdd.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.item.crafting.IRecipe": { + "shortName": "IRecipe", + "package": "net.minecraft.item.crafting", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/player/GuiRecipes.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getRecipeOutput": { + "count": 7, + "files": [ + "noppes/npcs/client/gui/player/GuiRecipes.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.shader.ShaderGroup": { + "shortName": "ShaderGroup", + "package": "net.minecraft.client.shader", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/gui/player/modern/BlurEventHandler.java", + "line": 32 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.client.event.GuiOpenEvent": { + "shortName": "GuiOpenEvent", + "package": "net.minecraftforge.client.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "gui": { + "count": 3, + "files": [ + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java" + ] + } + } + }, + "net.minecraft.client.gui.GuiConfirmOpenLink": { + "shortName": "GuiConfirmOpenLink", + "package": "net.minecraft.client.gui", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/script/GuiScriptInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "line": 705 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.relauncher.ReflectionHelper": { + "shortName": "ReflectionHelper", + "package": "cpw.mods.fml.relauncher", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/select/GuiSoundSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getPrivateValue": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/select/GuiSoundSelection.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.audio.SoundRegistry": { + "shortName": "SoundRegistry", + "package": "net.minecraft.client.audio", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/select/GuiSoundSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "getKeys": { + "count": 1, + "files": [ + "noppes/npcs/client/gui/select/GuiSoundSelection.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.resources.DefaultResourcePack": { + "shortName": "DefaultResourcePack", + "package": "net.minecraft.client.resources", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/select/GuiTextureSelection.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.GuiSlot": { + "shortName": "GuiSlot", + "package": "net.minecraft.client.gui", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/util/GuiNPCStringSlot.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/gui/util/GuiNPCStringSlot.java", + "class": "GuiNPCStringSlot" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.texture.ITextureObject": { + "shortName": "ITextureObject", + "package": "net.minecraft.client.renderer.texture", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/gui/util/GuiTexturedButton.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.model.PositionTextureVertex": { + "shortName": "PositionTextureVertex", + "package": "net.minecraft.client.model", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/model/util/ModelPlane.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 36 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 37 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 38 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 39 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 40 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 41 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 42 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 43 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.model.TexturedQuad": { + "shortName": "TexturedQuad", + "package": "net.minecraft.client.model", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/model/util/ModelPlane.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 54 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 58 + }, + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "line": 62 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "flipFace": { + "count": 1, + "files": [ + "noppes/npcs/client/model/util/ModelPlane.java" + ] + }, + "draw": { + "count": 1, + "files": [ + "noppes/npcs/client/model/util/ModelPlane.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.ImageBufferDownload": { + "shortName": "ImageBufferDownload", + "package": "net.minecraft.client.renderer", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/renderer/ImageBufferDownloadAlt.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/renderer/ImageBufferDownloadAlt.java", + "class": "ImageBufferDownloadAlt" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.client.IItemRenderer.ItemRendererHelper": { + "shortName": "ItemRendererHelper", + "package": "net.minecraftforge.client.IItemRenderer", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/renderer/RenderNPCHumanMale.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.client.renderer.entity.RenderLiving": { + "shortName": "RenderLiving", + "package": "net.minecraft.client.renderer.entity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "class": "RenderNPCInterface" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.boss.BossStatus": { + "shortName": "BossStatus", + "package": "net.minecraft.entity.boss", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "setBossStatus": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderNPCInterface.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemPotion": { + "shortName": "ItemPotion", + "package": "net.minecraft.item", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/renderer/RenderProjectile.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_94589_d": { + "count": 3, + "files": [ + "noppes/npcs/client/renderer/RenderProjectile.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.potion.PotionHelper": { + "shortName": "PotionHelper", + "package": "net.minecraft.potion", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/renderer/RenderProjectile.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_77915_a": { + "count": 1, + "files": [ + "noppes/npcs/client/renderer/RenderProjectile.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.model.ModelBook": { + "shortName": "ModelBook", + "package": "net.minecraft.client.model", + "importCount": 1, + "importedBy": [ + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java", + "line": 24 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "render": { + "count": 2, + "files": [ + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.inventory.SlotCrafting": { + "shortName": "SlotCrafting", + "package": "net.minecraft.inventory", + "importCount": 1, + "importedBy": [ + "noppes/npcs/containers/ContainerCarpentryBench.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "class": "SlotCarpentryResult" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.play.server.S2FPacketSetSlot": { + "shortName": "S2FPacketSetSlot", + "package": "net.minecraft.network.play.server", + "importCount": 1, + "importedBy": [ + "noppes/npcs/containers/ContainerCarpentryBench.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "line": 99 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.ForgeChunkManager.LoadingCallback": { + "shortName": "LoadingCallback", + "package": "net.minecraftforge.common.ForgeChunkManager", + "importCount": 1, + "importedBy": [ + "noppes/npcs/controllers/ChunkController.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/controllers/ChunkController.java", + "class": "ChunkController" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.ForgeChunkManager.Type": { + "shortName": "Type", + "package": "net.minecraftforge.common.ForgeChunkManager", + "importCount": 1, + "importedBy": [ + "noppes/npcs/controllers/ChunkController.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.item.crafting.ShapedRecipes": { + "shortName": "ShapedRecipes", + "package": "net.minecraft.item.crafting", + "importCount": 1, + "importedBy": [ + "noppes/npcs/controllers/data/RecipeCarpentry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "class": "RecipeCarpentry" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.enchantment.EnumEnchantmentType": { + "shortName": "EnumEnchantmentType", + "package": "net.minecraft.enchantment", + "importCount": 1, + "importedBy": [ + "noppes/npcs/enchants/EnchantInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.DataWatcher": { + "shortName": "DataWatcher", + "package": "net.minecraft.entity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.NPCEntityHelper": { + "shortName": "NPCEntityHelper", + "package": "net.minecraft.entity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "setRecentlyHit": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAIAttackOnCollide": { + "shortName": "EntityAIAttackOnCollide", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 448 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAIHurtByTarget": { + "shortName": "EntityAIHurtByTarget", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 898 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAIOpenDoor": { + "shortName": "EntityAIOpenDoor", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1014 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAIRestrictSun": { + "shortName": "EntityAIRestrictSun", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1029 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAISwimming": { + "shortName": "EntityAISwimming", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 241 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.ai.EntityAITasks": { + "shortName": "EntityAITasks", + "package": "net.minecraft.entity.ai", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "removeTask": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + }, + "addTask": { + "count": 34, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": { + "taskEntries": { + "count": 2, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + } + } + }, + "net.minecraft.entity.ai.EntityAITasks.EntityAITaskEntry": { + "shortName": "EntityAITaskEntry", + "package": "net.minecraft.entity.ai.EntityAITasks", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "action": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + } + } + }, + "net.minecraft.entity.boss.IBossDisplayData": { + "shortName": "IBossDisplayData", + "package": "net.minecraft.entity.boss", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.monster.EntityZombie": { + "shortName": "EntityZombie", + "package": "net.minecraft.entity.monster", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 447 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.passive.EntityBat": { + "shortName": "EntityBat", + "package": "net.minecraft.entity.passive", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.play.server.S0BPacketAnimation": { + "shortName": "S0BPacketAnimation", + "package": "net.minecraft.network.play.server", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 422 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.event.ServerChatEvent": { + "shortName": "ServerChatEvent", + "package": "net.minecraftforge.event", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "line": 1170 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "component": { + "count": 1, + "files": [ + "noppes/npcs/entity/EntityNPCInterface.java" + ] + } + } + }, + "net.minecraft.network.play.server.S27PacketExplosion": { + "shortName": "S27PacketExplosion", + "package": "net.minecraft.network.play.server", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityProjectile.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "line": 589 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.MovingObjectPosition.MovingObjectType": { + "shortName": "MovingObjectType", + "package": "net.minecraft.util.MovingObjectPosition", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/EntityProjectile.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.monster.EntitySkeleton": { + "shortName": "EntitySkeleton", + "package": "net.minecraft.entity.monster", + "importCount": 1, + "importedBy": [ + "noppes/npcs/entity/old/EntityNpcSkeleton.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.play.server.S04PacketEntityEquipment": { + "shortName": "S04PacketEntityEquipment", + "package": "net.minecraft.network.play.server", + "importCount": 1, + "importedBy": [ + "noppes/npcs/items/ItemLinked.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/items/ItemLinked.java", + "line": 63 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.item.ItemColored": { + "shortName": "ItemColored", + "package": "net.minecraft.item", + "importCount": 1, + "importedBy": [ + "noppes/npcs/items/ItemNpcColored.java" + ], + "paAbstraction": null, + "usage": { + "extends": [ + { + "file": "noppes/npcs/items/ItemNpcColored.java", + "class": "ItemNpcColored" + } + ], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.relauncher.FMLLaunchHandler": { + "shortName": "FMLLaunchHandler", + "package": "cpw.mods.fml.relauncher", + "importCount": 1, + "importedBy": [ + "noppes/npcs/mixin/CustomNPCsMixinPlugin.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "side": { + "count": 1, + "files": [ + "noppes/npcs/mixin/CustomNPCsMixinPlugin.java" + ] + } + }, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.network.internal.FMLMessage": { + "shortName": "FMLMessage", + "package": "cpw.mods.fml.common.network.internal", + "importCount": 1, + "importedBy": [ + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/mixin/MixinEntityTrackerEntry.java", + "line": 65 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.EntityTrackerEntry": { + "shortName": "EntityTrackerEntry", + "package": "net.minecraft.entity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/mixin/MixinEntityTrackerEntry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.EnumDifficulty": { + "shortName": "EnumDifficulty", + "package": "net.minecraft.world", + "importCount": 1, + "importedBy": [ + "noppes/npcs/roles/companion/CompanionFoodStats.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.common.eventhandler.EventBus": { + "shortName": "EventBus", + "package": "cpw.mods.fml.common.eventhandler", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/NpcAPI.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 164 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.command.CommandHandler": { + "shortName": "CommandHandler", + "package": "net.minecraft.command", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/NpcAPI.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/NpcAPI.java", + "line": 250 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraftforge.common.BiomeDictionary.Type": { + "shortName": "Type", + "package": "net.minecraftforge.common.BiomeDictionary", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/NpcAPI.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.util.Vec3i": { + "shortName": "Vec3i", + "package": "net.minecraft.util", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/ScriptBlockPos.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/ScriptBlockPos.java", + "line": 116 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.block.BlockAir": { + "shortName": "BlockAir", + "package": "net.minecraft.block", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 687 + }, + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 961 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.entity.effect.EntityLightningBolt": { + "shortName": "EntityLightningBolt", + "package": "net.minecraft.entity.effect", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 1041 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.tileentity.TileEntitySign": { + "shortName": "TileEntitySign", + "package": "net.minecraft.tileentity", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 429 + } + ], + "instanceof": [ + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 428 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": { + "signText": { + "count": 4, + "files": [ + "noppes/npcs/scripted/ScriptWorld.java" + ] + } + } + }, + "net.minecraftforge.common.util.BlockSnapshot": { + "shortName": "BlockSnapshot", + "package": "net.minecraftforge.common.util", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/ScriptWorld.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/scripted/ScriptWorld.java", + "line": 506 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.stats.StatBase": { + "shortName": "StatBase", + "package": "net.minecraft.stats", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.stats.StatList": { + "shortName": "StatList", + "package": "net.minecraft.stats", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "func_151177_a": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.world.WorldSettings": { + "shortName": "WorldSettings", + "package": "net.minecraft.world", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "getGameTypeById": { + "count": 1, + "files": [ + "noppes/npcs/scripted/entity/ScriptPlayer.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraftforge.common.IPlantable": { + "shortName": "IPlantable", + "package": "net.minecraftforge.common", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/item/ScriptItemStack.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [ + { + "file": "noppes/npcs/scripted/item/ScriptItemStack.java", + "line": 49 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.scoreboard.IScoreObjectiveCriteria": { + "shortName": "IScoreObjectiveCriteria", + "package": "net.minecraft.scoreboard", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [ + { + "file": "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java", + "line": 77 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.scoreboard.Score": { + "shortName": "Score", + "package": "net.minecraft.scoreboard", + "importCount": 1, + "importedBy": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": { + "setScorePoints": { + "count": 1, + "files": [ + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java" + ] + } + }, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagByteArray": { + "shortName": "NBTTagByteArray", + "package": "net.minecraft.nbt", + "importCount": 1, + "importedBy": [ + "noppes/npcs/util/NBTJsonUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 112 + } + ], + "casts": [ + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 172 + } + ], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagLong": { + "shortName": "NBTTagLong", + "package": "net.minecraft.nbt", + "importCount": 1, + "importedBy": [ + "noppes/npcs/util/NBTJsonUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 149 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.nbt.NBTTagShort": { + "shortName": "NBTTagShort", + "package": "net.minecraft.nbt", + "importCount": 1, + "importedBy": [ + "noppes/npcs/util/NBTJsonUtil.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "noppes/npcs/util/NBTJsonUtil.java", + "line": 146 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.world.IWorldAccess": { + "shortName": "IWorldAccess", + "package": "net.minecraft.world", + "importCount": 1, + "importedBy": [ + "somehussar/janino/EntityUnloadListener.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [ + { + "file": "somehussar/janino/EntityUnloadListener.java", + "class": "EntityUnloadListener" + } + ], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "cpw.mods.fml.client.FMLClientHandler": { + "shortName": "FMLClientHandler", + "package": "cpw.mods.fml.client", + "importCount": 1, + "importedBy": [ + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": { + "instance": { + "count": 1, + "files": [ + "tconstruct/client/tabs/TabRegistry.java" + ] + } + }, + "fieldAccesses": {} + }, + "net.minecraft.client.gui.inventory.GuiInventory": { + "shortName": "GuiInventory", + "package": "net.minecraft.client.gui.inventory", + "importCount": 1, + "importedBy": [ + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "tconstruct/client/tabs/TabRegistry.java", + "line": 46 + } + ], + "casts": [], + "instanceof": [ + { + "file": "tconstruct/client/tabs/TabRegistry.java", + "line": 30 + } + ] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + }, + "net.minecraft.network.play.client.C0DPacketCloseWindow": { + "shortName": "C0DPacketCloseWindow", + "package": "net.minecraft.network.play.client", + "importCount": 1, + "importedBy": [ + "tconstruct/client/tabs/TabRegistry.java" + ], + "paAbstraction": null, + "usage": { + "extends": [], + "implements": [], + "constructors": [ + { + "file": "tconstruct/client/tabs/TabRegistry.java", + "line": 44 + } + ], + "casts": [], + "instanceof": [] + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {} + } + }, + "files": { + "foxz/command/CmdClone.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "CommandBase", + "Entity", + "EntityList", + "EntityPlayerMP", + "MathHelper", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.command.CommandBase", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "foxz/command/CmdConfig.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "BlockIce", + "BlockLeavesBase", + "BlockVine", + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.block.BlockIce", + "net.minecraft.block.BlockLeavesBase", + "net.minecraft.block.BlockVine", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "foxz/command/CmdDialog.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandBase", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "foxz/command/CmdNoppes.java": { + "mcImportCount": 17, + "mcTypes": [ + "AxisAlignedBB", + "ChatComponentTranslation", + "CommandBase", + "Entity", + "EntityAnimal", + "EntityDragon", + "EntityGhast", + "EntityHorse", + "EntityItem", + "EntityList", + "EntityLivingBase", + "EntityMob", + "EntityPlayer", + "EntityPlayerMP", + "EntityTameable", + "EntityXPOrb", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.boss.EntityDragon", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.item.EntityXPOrb", + "net.minecraft.entity.monster.EntityGhast", + "net.minecraft.entity.monster.EntityMob", + "net.minecraft.entity.passive.EntityAnimal", + "net.minecraft.entity.passive.EntityHorse", + "net.minecraft.entity.passive.EntityTameable", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "foxz/command/CmdNpc.java": { + "mcImportCount": 7, + "mcTypes": [ + "CommandBase", + "EntityPlayer", + "EntityPlayerMP", + "ICommandSender", + "MathHelper", + "MinecraftServer", + "World" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "foxz/command/CmdQuest.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "foxz/command/CommandNoppes.java": { + "mcImportCount": 4, + "mcTypes": [ + "ChatComponentText", + "CommandBase", + "EnumChatFormatting", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.ICommandSender", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.EnumChatFormatting" + ] + }, + "foxz/command/ScriptedCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandBase", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.ICommandSender" + ] + }, + "foxz/commandhelper/AbstractCommandHelper.java": { + "mcImportCount": 9, + "mcTypes": [ + "AxisAlignedBB", + "ChatComponentText", + "CommandBase", + "EntityPlayer", + "EntityPlayerMP", + "ICommandSender", + "MinecraftServer", + "PlayerSelector", + "World" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.ICommandSender", + "net.minecraft.command.PlayerSelector", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentText", + "net.minecraft.world.World" + ] + }, + "foxz/commandhelper/ChMcLogger.java": { + "mcImportCount": 2, + "mcTypes": [ + "ChatComponentText", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.ICommandSender", + "net.minecraft.util.ChatComponentText" + ] + }, + "foxz/commandhelper/CommandHelper.java": { + "mcImportCount": 1, + "mcTypes": [ + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.ICommandSender" + ] + }, + "foxz/commandhelper/permissions/OpOnly.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "MinecraftServer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.server.MinecraftServer" + ] + }, + "foxz/commandhelper/permissions/PlayerOnly.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "foxz/utils/Market.java": { + "mcImportCount": 4, + "mcTypes": [ + "ChatComponentText", + "CompressedStreamTools", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ChatComponentText" + ] + }, + "foxz/utils/Utils.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "EntityPlayer", + "EntityPlayerMP", + "MinecraftServer", + "World", + "WorldServer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer" + ] + }, + "kamkeel/npcs/addon/DBCAddon.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "Loader", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/addon/GeckoAddon.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "kamkeel/npcs/addon/client/DBCClient.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "ModelBiped", + "ModelRenderer", + "RenderBlocks", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.ResourceLocation" + ] + }, + "kamkeel/npcs/addon/client/DBCClientAnimations.java": { + "mcImportCount": 12, + "mcTypes": [ + "Entity", + "EntityClientPlayerMP", + "EntityPlayer", + "Item", + "ItemArmor", + "ItemStack", + "Minecraft", + "ModelBiped", + "RenderBiped", + "RenderManager", + "RenderPlayer", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.EntityClientPlayerMP", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.renderer.entity.RenderBiped", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RenderPlayer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation" + ] + }, + "kamkeel/npcs/addon/client/GeckoAddonClient.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "ModelBase" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "kamkeel/npcs/client/command/CommandCNPCDebugger.java": { + "mcImportCount": 3, + "mcTypes": [ + "ChatComponentText", + "CommandBase", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.ICommandSender", + "net.minecraft.util.ChatComponentText" + ] + }, + "kamkeel/npcs/client/renderer/EnergyChargePreviewRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "Minecraft", + "RenderManager", + "RenderWorldLastEvent", + "SubscribeEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraftforge.client.event.RenderWorldLastEvent" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergy.java": { + "mcImportCount": 9, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "OpenGlHelper", + "Render", + "ResourceLocation", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.ResourceLocation" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyBarrier.java": { + "mcImportCount": 2, + "mcTypes": [ + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyBeam.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "RenderManager", + "Side", + "SideOnly", + "Tessellator", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.Entity", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyDisc.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyDome.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.entity.Entity" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyExplosion.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyLaser.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.entity.Entity" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyOrb.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergyPanel.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.entity.Entity" + ] + }, + "kamkeel/npcs/client/renderer/RenderEnergySlicer.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.entity.Entity" + ] + }, + "kamkeel/npcs/client/renderer/RenderSweeper.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "OpenGlHelper", + "Render", + "ResourceLocation", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.entity.Entity", + "net.minecraft.util.ResourceLocation" + ] + }, + "kamkeel/npcs/client/renderer/RenderZone.java": { + "mcImportCount": 8, + "mcTypes": [ + "Entity", + "Minecraft", + "OpenGlHelper", + "Render", + "ResourceLocation", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.entity.Entity", + "net.minecraft.util.ResourceLocation" + ] + }, + "kamkeel/npcs/client/renderer/TelegraphRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "Minecraft", + "RenderWorldLastEvent", + "SubscribeEvent", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraftforge.client.event.RenderWorldLastEvent" + ] + }, + "kamkeel/npcs/client/renderer/lightning/AttachedLightningRenderer.java": { + "mcImportCount": 1, + "mcTypes": [ + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.renderer.Tessellator" + ] + }, + "kamkeel/npcs/client/renderer/lightning/LightningBolt.java": { + "mcImportCount": 1, + "mcTypes": [ + "World" + ], + "mcFqns": [ + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/client/renderer/lightning/LightningHandler.java": { + "mcImportCount": 10, + "mcTypes": [ + "Entity", + "Minecraft", + "RenderWorldLastEvent", + "ResourceLocation", + "Side", + "SideOnly", + "SubscribeEvent", + "Tessellator", + "TextureManager", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.entity.Entity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.World", + "net.minecraftforge.client.event.RenderWorldLastEvent" + ] + }, + "kamkeel/npcs/client/renderer/lightning/Vec3d.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/command/AbilityCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayerMP", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/command/AnimationCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/AttributeCommand.java": { + "mcImportCount": 4, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack" + ] + }, + "kamkeel/npcs/command/AuctionCommand.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/CloneCommand.java": { + "mcImportCount": 11, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "CommandException", + "Entity", + "EntityList", + "ICommandSender", + "MathHelper", + "MinecraftServer", + "NBTTagCompound", + "World", + "WorldServer" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer" + ] + }, + "kamkeel/npcs/command/CommandCommand.java": { + "mcImportCount": 4, + "mcTypes": [ + "BlockPos", + "ChunkCoordinates", + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.util.ChunkCoordinates", + "net.minecraft.util.math.BlockPos" + ] + }, + "kamkeel/npcs/command/CommandKamkeel.java": { + "mcImportCount": 5, + "mcTypes": [ + "CommandBase", + "CommandException", + "EntityPlayer", + "ICommandSender", + "MinecraftServer" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.server.MinecraftServer" + ] + }, + "kamkeel/npcs/command/CommandKamkeelBase.java": { + "mcImportCount": 4, + "mcTypes": [ + "CommandBase", + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/ConfigCommand.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "BlockIce", + "BlockLeavesBase", + "BlockVine", + "CommandException", + "EntityPlayerMP", + "ICommandSender", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.block.BlockIce", + "net.minecraft.block.BlockLeavesBase", + "net.minecraft.block.BlockVine", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.util.ResourceLocation" + ] + }, + "kamkeel/npcs/command/DebugCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/DialogCategoryCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/DialogCommand.java": { + "mcImportCount": 4, + "mcTypes": [ + "CommandBase", + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/EffectCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/FactionCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/HelpCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/MoneyCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/NpcCommand.java": { + "mcImportCount": 11, + "mcTypes": [ + "AxisAlignedBB", + "CommandBase", + "CommandException", + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "ICommandSender", + "MathHelper", + "MinecraftServer", + "PlayerNotFoundException", + "World" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.command.PlayerNotFoundException", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/command/OverlayCommand.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/QuestCategoryCommand.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayerMP", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/command/QuestCommand.java": { + "mcImportCount": 4, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "EntityPlayerMP", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/command/ScriptCommand.java": { + "mcImportCount": 1, + "mcTypes": [ + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/SlayCommand.java": { + "mcImportCount": 16, + "mcTypes": [ + "AxisAlignedBB", + "CommandException", + "Entity", + "EntityAnimal", + "EntityDragon", + "EntityGhast", + "EntityHorse", + "EntityItem", + "EntityList", + "EntityLivingBase", + "EntityMob", + "EntityPlayer", + "EntityPlayerMP", + "EntityTameable", + "EntityXPOrb", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.boss.EntityDragon", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.item.EntityXPOrb", + "net.minecraft.entity.monster.EntityGhast", + "net.minecraft.entity.monster.EntityMob", + "net.minecraft.entity.passive.EntityAnimal", + "net.minecraft.entity.passive.EntityHorse", + "net.minecraft.entity.passive.EntityTameable", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "kamkeel/npcs/command/auction/BlacklistSubCommand.java": { + "mcImportCount": 4, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack" + ] + }, + "kamkeel/npcs/command/profile/CommandHelpProfile.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/profile/CommandProfile.java": { + "mcImportCount": 5, + "mcTypes": [ + "CommandBase", + "CommandException", + "EntityPlayer", + "ICommandSender", + "MinecraftServer" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.server.MinecraftServer" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileAdmin.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileBase.java": { + "mcImportCount": 4, + "mcTypes": [ + "CommandBase", + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandBase", + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileChange.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileCreate.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileList.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileRegion.java": { + "mcImportCount": 2, + "mcTypes": [ + "CommandException", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileRemove.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/command/profile/CommandProfileRename.java": { + "mcImportCount": 3, + "mcTypes": [ + "CommandException", + "EntityPlayer", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.CommandException", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/controllers/AbilityController.java": { + "mcImportCount": 4, + "mcTypes": [ + "Constants", + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraftforge.common.util.Constants" + ] + }, + "kamkeel/npcs/controllers/AttributeController.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/controllers/EnergyController.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/ProfileController.java": { + "mcImportCount": 4, + "mcTypes": [ + "CompressedStreamTools", + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/SyncController.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayerMP", + "Minecraft", + "MinecraftServer", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.server.MinecraftServer" + ] + }, + "kamkeel/npcs/controllers/TelegraphController.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "EntityPlayerMP", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/Ability.java": { + "mcImportCount": 15, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "MovingObjectPosition", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "Side", + "SideOnly", + "StatCollector", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.StatCollector", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/AbilityAction.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/ConcurrentSlot.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "kamkeel/npcs/controllers/data/ability/CustomAbility.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/AbilityCondition.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/ConditionCompare.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHasEffect.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHitCount.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/ConditionHPThreshold.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/ConditionItem.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/ConditionQuestCompleted.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/controllers/data/ability/conditions/ConditionThreshold.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/AbilityIconData.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/ChainedAbility.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/IAbilityAction.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/ProjectileData.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityCustomEffect.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/effect/AbilityPotionEffect.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "PotionEffect" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.potion.PotionEffect" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/effect/IEffectAction.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/entry/AbilityEffectActionEntry.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/data/entry/ChainedAbilityEntry.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/extender/IAbilityExtender.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldBuilder.java": { + "mcImportCount": 4, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton" + ] + }, + "kamkeel/npcs/controllers/data/ability/gui/AbilityFieldDefs.java": { + "mcImportCount": 2, + "mcTypes": [ + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly" + ] + }, + "kamkeel/npcs/controllers/data/ability/gui/GuiAbilityInterface.java": { + "mcImportCount": 8, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "GuiButton", + "GuiScreen", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "kamkeel/npcs/controllers/data/ability/preview/AbilityPreviewExecutor.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "kamkeel/npcs/controllers/data/ability/preview/PreviewEntityHandler.java": { + "mcImportCount": 1, + "mcTypes": [ + "Entity" + ], + "mcFqns": [ + "net.minecraft.entity.Entity" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityCharge.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityCounter.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityCutter.java": { + "mcImportCount": 7, + "mcTypes": [ + "AxisAlignedBB", + "DamageSource", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityDash.java": { + "mcImportCount": 5, + "mcTypes": [ + "DamageSource", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityDefend.java": { + "mcImportCount": 5, + "mcTypes": [ + "DamageSource", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityDodge.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityEffect.java": { + "mcImportCount": 8, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityGuard.java": { + "mcImportCount": 5, + "mcTypes": [ + "DamageSource", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityHazard.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityHeavyHit.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityMovement.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayerMP", + "S12PacketEntityVelocity", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.network.play.server.S12PacketEntityVelocity", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityProjectile.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityShockwave.java": { + "mcImportCount": 5, + "mcTypes": [ + "AxisAlignedBB", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilitySlam.java": { + "mcImportCount": 9, + "mcTypes": [ + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayerMP", + "NBTTagCompound", + "S12PacketEntityVelocity", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.play.server.S12PacketEntityVelocity", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityTeleport.java": { + "mcImportCount": 10, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "Entity", + "EntityLivingBase", + "MathHelper", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityTrap.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityVortex.java": { + "mcImportCount": 8, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/AbilityZone.java": { + "mcImportCount": 5, + "mcTypes": [ + "DamageSource", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBarrier.java": { + "mcImportCount": 5, + "mcTypes": [ + "DamageSource", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityBeam.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDisc.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityDome.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergy.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityEnergyProjectile.java": { + "mcImportCount": 7, + "mcTypes": [ + "DamageSource", + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityLaser.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityOrb.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityShield.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySlicer.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilitySweeper.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/type/energy/AbilityWall.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/ability/util/AbilityTargetHelper.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/controllers/data/attribute/requirement/IRequirementChecker.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/attribute/requirement/RequirementCheckerRegistry.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/attribute/requirement/types/ProfileSlotRequirement.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestActiveRequirement.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/attribute/requirement/types/QuestCompletedRequirement.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/attribute/requirement/types/SoulbindRequirement.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/attribute/tracker/AttributeRecalcEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/controllers/data/attribute/tracker/IAttributeRecalcListener.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerAttributeTracker.java": { + "mcImportCount": 6, + "mcTypes": [ + "AttributeModifier", + "EntityPlayer", + "IAttributeInstance", + "ItemStack", + "NBTTagCompound", + "SharedMonsterAttributes" + ], + "mcFqns": [ + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.entity.ai.attributes.AttributeModifier", + "net.minecraft.entity.ai.attributes.IAttributeInstance", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/attribute/tracker/PlayerEquipmentTracker.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/energy/IEnergyExtender.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/energycharge/EnergyChargePreviewManager.java": { + "mcImportCount": 1, + "mcTypes": [ + "World" + ], + "mcFqns": [ + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/energycharge/EnergyChargeTracker.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/profile/CNPCData.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/profile/IProfileData.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/profile/Profile.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/controllers/data/profile/Slot.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/controllers/data/telegraph/TelegraphInstance.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/controllers/data/telegraph/TelegraphManager.java": { + "mcImportCount": 1, + "mcTypes": [ + "World" + ], + "mcFqns": [ + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityAbilityBeam.java": { + "mcImportCount": 10, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityAbilityDisc.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityAbilityLaser.java": { + "mcImportCount": 9, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "MovingObjectPosition", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityAbilityOrb.java": { + "mcImportCount": 4, + "mcTypes": [ + "AxisAlignedBB", + "EntityLivingBase", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityAbilityZone.java": { + "mcImportCount": 11, + "mcTypes": [ + "AxisAlignedBB", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "IEntityAdditionalSpawnData", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityEnergyAbility.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "IEntityAdditionalSpawnData", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityEnergyBarrier.java": { + "mcImportCount": 8, + "mcTypes": [ + "AxisAlignedBB", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityEnergyDome.java": { + "mcImportCount": 10, + "mcTypes": [ + "AxisAlignedBB", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityEnergyExplosion.java": { + "mcImportCount": 10, + "mcTypes": [ + "AxisAlignedBB", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "MathHelper", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityEnergyPanel.java": { + "mcImportCount": 9, + "mcTypes": [ + "AxisAlignedBB", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityEnergyProjectile.java": { + "mcImportCount": 18, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "Blocks", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "Explosion", + "Material", + "MathHelper", + "MovingObjectPosition", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly", + "Vec3", + "World", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.material.Material", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.world.Explosion", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer" + ] + }, + "kamkeel/npcs/entity/EntityEnergySlicer.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/entity/EntityEnergySweeper.java": { + "mcImportCount": 9, + "mcTypes": [ + "AxisAlignedBB", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/AbstractPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "FMLProxyPacket" + ], + "mcFqns": [ + "cpw.mods.fml.common.network.internal.FMLProxyPacket", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/LargeAbstractPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "FMLProxyPacket" + ], + "mcFqns": [ + "cpw.mods.fml.common.network.internal.FMLProxyPacket", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/PacketHandler.java": { + "mcImportCount": 10, + "mcTypes": [ + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "FMLEventChannel", + "FMLNetworkEvent", + "FMLProxyPacket", + "NetHandlerPlayServer", + "NetworkRegistry", + "Side", + "SubscribeEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.common.network.FMLEventChannel", + "cpw.mods.fml.common.network.FMLNetworkEvent", + "cpw.mods.fml.common.network.NetworkRegistry", + "cpw.mods.fml.common.network.internal.FMLProxyPacket", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.network.NetHandlerPlayServer" + ] + }, + "kamkeel/npcs/network/PacketUtil.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Item", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/AchievementPacket.java": { + "mcImportCount": 10, + "mcTypes": [ + "Achievement", + "EntityPlayer", + "EntityPlayerMP", + "GuiAchievement", + "Items", + "Minecraft", + "ObfuscationReflectionHelper", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.common.ObfuscationReflectionHelper", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.achievement.GuiAchievement", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.init.Items", + "net.minecraft.stats.Achievement", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/network/packets/data/ChatAlertPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "IChatComponent", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.util.IChatComponent", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/network/packets/data/ChatBubblePacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "ChatComponentTranslation", + "Entity", + "EntityPlayer", + "Minecraft", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "kamkeel/npcs/network/packets/data/ClonerPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/ConfigCommandPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "kamkeel/npcs/network/packets/data/DisableMouseInputPacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/LoginPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/MarkDataPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/ParticlePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "Minecraft", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/packets/data/PlayerDataInfoPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/ProfileSharedQuestPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/QuestCompletionPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "GuiScreen", + "Minecraft", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/data/SoundManagementPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "Minecraft", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/VillagerListPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "MerchantRecipeList", + "PacketBuffer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.network.PacketBuffer", + "net.minecraft.village.MerchantRecipeList" + ] + }, + "kamkeel/npcs/network/packets/data/ability/AbilityCooldownSyncPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/data/ability/AbilityHotbarSyncPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/ability/PlayerAbilityStatePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/data/ability/PlayerAbilitySyncPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/energy/BarrierClientSyncPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/packets/data/energy/ProjectileClientSyncPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/packets/data/energy/ProjectileReflectPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/energycharge/EnergyChargeSpawnPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/packets/data/energyexplosion/EnergyExplosionSpawnPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "GuiScreen", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "GuiScreen", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/gui/GuiTeleporterPacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "Minecraft", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/large/GuiDataPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "GuiScreen", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/large/PartyDataPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "GuiScreen", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/large/ScrollDataPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/data/large/ScrollListPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/data/large/SyncEffectPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/large/SyncPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "FMLProxyPacket", + "NBTTagCompound", + "Side" + ], + "mcFqns": [ + "cpw.mods.fml.common.network.internal.FMLProxyPacket", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/npc/DialogPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/npc/RolePacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityPlayer", + "ItemStack", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "kamkeel/npcs/network/packets/data/script/ScriptOverlayClosePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/data/telegraph/TelegraphRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/data/telegraph/TelegraphSpawnPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/AuctionActionPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/player/BankActionPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/CheckPlayerValue.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/CompanionActionPacket.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/player/DialogSelectPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/FollowerPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/GetNPCRole.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/GetTraderData.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/InputDevicePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/MailActionPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/SaveBookPacket.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityPlayer", + "ItemEditableBook", + "ItemStack", + "ItemWritableBook", + "Items", + "NBTTagCompound", + "NBTTagString", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.ItemEditableBook", + "net.minecraft.item.ItemStack", + "net.minecraft.item.ItemWritableBook", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.tileentity.TileEntity" + ] + }, + "kamkeel/npcs/network/packets/player/SaveSignPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.tileentity.TileEntity" + ] + }, + "kamkeel/npcs/network/packets/player/ScreenSizePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/player/SpecialKeyStatePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/SyncRevisionInfoPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/TransportPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSavePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/ability/AbilityHotbarSelectPacket.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/player/ability/AbilityTogglePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "ChatComponentText", + "EntityPlayer", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/network/packets/player/customgui/CustomGuiButtonPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/customgui/CustomGuiClosePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/customgui/CustomGuiUnfocusedPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/customgui/CustomScrollClickPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/item/GuiMagicBookPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/item/GuiPaintbrushPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/item/MagicCyclesPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/profile/ProfileChangePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/profile/ProfileCreatePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/profile/ProfileGetInfoPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Constants", + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraftforge.common.util.Constants" + ] + }, + "kamkeel/npcs/network/packets/player/profile/ProfileGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/player/profile/ProfileRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/player/profile/ProfileRenamePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/DimensionsGetPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "DimensionManager", + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly", + "WorldProvider" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.world.WorldProvider", + "net.minecraftforge.common.DimensionManager" + ] + }, + "kamkeel/npcs/network/packets/request/GuiRequestPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "ChatComponentText", + "EntityPlayer", + "EntityPlayerMP", + "EnumChatFormatting", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.EnumChatFormatting" + ] + }, + "kamkeel/npcs/network/packets/request/IsGuiOpenInform.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/request/MailOpenSetupPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/MerchantUpdatePacket.java": { + "mcImportCount": 8, + "mcTypes": [ + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "EntityVillager", + "MerchantRecipeList", + "PacketBuffer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.passive.EntityVillager", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.network.PacketBuffer", + "net.minecraft.village.MerchantRecipeList" + ] + }, + "kamkeel/npcs/network/packets/request/MountPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityList", + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/TileEntityGetPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity" + ] + }, + "kamkeel/npcs/network/packets/request/TileEntitySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/TraderMarketSavePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/AbilitiesGetAllPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/ability/AbilitiesNpcSavePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/ability/BuiltInAbilityGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitiesGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityClonePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/ability/ChainedAbilityRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/ChainedAbilitySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/ability/CopyAbilityScriptsPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/ability/CustomAbilitiesGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/CustomAbilityClonePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/CustomAbilityGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/ability/CustomAbilityRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/ability/CustomAbilitySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/animation/AnimationClonePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/animation/AnimationGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/animation/AnimationRemovePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/animation/AnimationSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/animation/AnimationsGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/animation/BuiltInAnimationGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/auction/ManageAuctionPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/bank/BankGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/bank/BankRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/bank/BankSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/bank/BanksGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/category/AbilityCategoryMovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/category/CategoryItemsRequestPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/category/CategoryListRequestPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/category/CategoryMoveItemPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/category/CategoryRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/category/CategorySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneAllTagsShortPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneFolderCrudPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneFolderListPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneListPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneMovePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/clone/ClonePreSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneRemovePacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneSavePacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/clone/CloneTagListPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/clone/MobSpawnerPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/clone/SpawnMobPacket.java": { + "mcImportCount": 8, + "mcTypes": [ + "ChatComponentText", + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ChatComponentText" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogCategoriesGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogCategoryRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogCategorySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogNpcGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogNpcRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogNpcSetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/dialog/DialogsGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/effects/EffectClonePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/effects/EffectGetPacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/effects/EffectRemovePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/effects/EffectSavePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/effects/EffectsGetPacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/faction/FactionGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/faction/FactionRemovePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/faction/FactionSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/faction/FactionSetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/faction/FactionsGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/feather/DimensionTeleportPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "ChunkCoordinates", + "EntityPlayer", + "EntityPlayerMP", + "MinecraftServer", + "Side", + "SideOnly", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.ChunkCoordinates", + "net.minecraft.world.WorldServer" + ] + }, + "kamkeel/npcs/network/packets/request/item/ColorBrushPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/item/ColorSetPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity" + ] + }, + "kamkeel/npcs/network/packets/request/item/HammerPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.tileentity.TileEntity" + ] + }, + "kamkeel/npcs/network/packets/request/jobs/JobGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/jobs/JobSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerAddPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/jobs/JobSpawnerRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedGetAllPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedItemBuildPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedItemClonePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedItemRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedItemSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedNPCAddPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedNPCRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/linked/LinkedSetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicCycleRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicCycleSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicGetAllPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicNpcGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicNpcSavePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/magic/MagicSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedMarkDataPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAdvancedSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAIGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuAISavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplayGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuDisplaySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuInvSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/mainmenu/MainmenuStatsSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetAllPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/naturalspawns/NaturalSpawnSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/npc/ModelDataSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/npc/NpcClosePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "FMLCommonHandler", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/request/npc/NpcDeletePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "FMLCommonHandler", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteDeletePacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteFreezeGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteFreezePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteGlobalMenuPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteMainMenuPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteNpcsGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteResetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/npc/RemoteTpToNpcPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyAcceptInvitePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyDisbandPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyIgnoreInvitePacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyInfoPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyInvitePacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyKickPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyLeavePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyLogToServerPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartyPacketUtil.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartySetLeaderPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/party/PartySetQuestPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/pather/MovingPathGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/pather/MovingPathSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataDeleteInfoPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetInfoPacket.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataGetNamesPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataMapRegenPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/playerdata/PlayerDataSaveInfoPacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestCategoriesGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestCategoryGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestCategoryRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestCategorySavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestDialogGetTitlePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestLogToServerPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestOpenGuiPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestsGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/quest/QuestUntrackPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/recipe/RecipeGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/recipe/RecipeRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/recipe/RecipeSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/recipe/RecipesGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/role/RoleCompanionUpdatePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/role/RoleGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/role/RoleSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/AbilityScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/BlockScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity" + ] + }, + "kamkeel/npcs/network/packets/request/script/ChainedAbilityScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/EffectScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/EventScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/ForgeScriptPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/GlobalNPCScriptPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/NPCScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/PlayerScriptPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/RecipeScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/ScriptFilesPacket.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/ScriptInfoPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/item/ItemScriptErrorPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/item/ItemScriptPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/script/item/LinkedItemScriptPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/tags/TagGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/tags/TagRemovePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/tags/TagSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/tags/TagSetPacket.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "kamkeel/npcs/network/packets/request/tags/TagsGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/tags/TagsNpcGetPacket.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "kamkeel/npcs/network/packets/request/transform/TransformGetPacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/transform/TransformLoadPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/transform/TransformSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/transport/TransportCategoriesGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/transport/TransportCategoryRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/transport/TransportCategorySavePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/transport/TransportGetLocationPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/transport/TransportRemovePacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/network/packets/request/transport/TransportSavePacket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "kamkeel/npcs/network/packets/request/transport/TransportsGetPacket.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "kamkeel/npcs/util/AnchorPointHelper.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayerSP", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.client.entity.EntityPlayerSP", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.Vec3" + ] + }, + "kamkeel/npcs/util/AttributeAttackUtil.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "kamkeel/npcs/util/AttributeItemUtil.java": { + "mcImportCount": 9, + "mcTypes": [ + "EntityPlayer", + "EnumChatFormatting", + "GameSettings", + "ItemStack", + "Minecraft", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.settings.GameSettings", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.StatCollector" + ] + }, + "kamkeel/npcs/util/ByteBufUtils.java": { + "mcImportCount": 5, + "mcTypes": [ + "CompressedStreamTools", + "MerchantRecipeList", + "NBTSizeTracker", + "NBTTagCompound", + "PacketBuffer" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTSizeTracker", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.PacketBuffer", + "net.minecraft.village.MerchantRecipeList" + ] + }, + "kamkeel/npcs/util/ColorUtil.java": { + "mcImportCount": 5, + "mcTypes": [ + "ChatComponentText", + "ChatStyle", + "EnumChatFormatting", + "IChatComponent", + "ICommandSender" + ], + "mcFqns": [ + "net.minecraft.command.ICommandSender", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.ChatStyle", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.IChatComponent" + ] + }, + "kamkeel/npcs/util/VaultUtil.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "net/minecraft/client/renderer/entity/NPCRendererHelper.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "ModelBase", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.ResourceLocation" + ] + }, + "net/minecraft/entity/NPCEntityHelper.java": { + "mcImportCount": 1, + "mcTypes": [ + "Item" + ], + "mcFqns": [ + "net.minecraft.item.Item" + ] + }, + "nikedemos/markovnames/MarkovDictionary.java": { + "mcImportCount": 3, + "mcTypes": [ + "Loader", + "ModContainer", + "ResourceLocation" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.ModContainer", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/AbstractDataAbilities.java": { + "mcImportCount": 2, + "mcTypes": [ + "DamageSource", + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/AnimationMixinFunctions.java": { + "mcImportCount": 26, + "mcTypes": [ + "Block", + "Entity", + "EntityClientPlayerMP", + "EntityLivingBase", + "EntityPlayer", + "ForgeHooksClient", + "IIcon", + "IItemRenderer", + "Item", + "ItemBlock", + "ItemRenderType", + "ItemRenderer", + "ItemStack", + "Items", + "MathHelper", + "Minecraft", + "MinecraftForgeClient", + "ModelBiped", + "ModelRenderer", + "OpenGlHelper", + "RenderBlocks", + "RenderHelper", + "ResourceLocation", + "Tessellator", + "TextureManager", + "TextureUtil" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.EntityClientPlayerMP", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.renderer.texture.TextureUtil", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.ForgeHooksClient", + "net.minecraftforge.client.IItemRenderer", + "net.minecraftforge.client.IItemRenderer.ItemRenderType", + "net.minecraftforge.client.MinecraftForgeClient" + ] + }, + "noppes/npcs/CommonProxy.java": { + "mcImportCount": 11, + "mcTypes": [ + "Achievement", + "Container", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "FakePlayer", + "IGuiHandler", + "InventoryBasic", + "Item", + "ModelBiped", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.network.IGuiHandler", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.InventoryBasic", + "net.minecraft.item.Item", + "net.minecraft.stats.Achievement", + "net.minecraft.world.World", + "net.minecraftforge.common.util.FakePlayer" + ] + }, + "noppes/npcs/CreativeTabNpcs.java": { + "mcImportCount": 3, + "mcTypes": [ + "CreativeTabs", + "Item", + "Items" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.init.Items", + "net.minecraft.item.Item" + ] + }, + "noppes/npcs/CustomItems.java": { + "mcImportCount": 17, + "mcTypes": [ + "ArmorMaterial", + "BehaviorDefaultDispenseItem", + "Block", + "BlockDispenser", + "Blocks", + "EnumFacing", + "EnumHelper", + "GameRegistry", + "IBlockSource", + "Item", + "ItemArmor", + "ItemBlock", + "ItemFlintAndSteel", + "ItemStack", + "Items", + "OreDictionary", + "ToolMaterial" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.block.Block", + "net.minecraft.block.BlockDispenser", + "net.minecraft.dispenser.BehaviorDefaultDispenseItem", + "net.minecraft.dispenser.IBlockSource", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.Item.ToolMaterial", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemArmor.ArmorMaterial", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemFlintAndSteel", + "net.minecraft.item.ItemStack", + "net.minecraft.util.EnumFacing", + "net.minecraftforge.common.util.EnumHelper", + "net.minecraftforge.oredict.OreDictionary" + ] + }, + "noppes/npcs/CustomNpcs.java": { + "mcImportCount": 25, + "mcTypes": [ + "Block", + "BlockIce", + "BlockLeavesBase", + "BlockVine", + "Entity", + "EntityList", + "EntityRegistry", + "EventHandler", + "FMLCommonHandler", + "FMLInitializationEvent", + "FMLLoadCompleteEvent", + "FMLPreInitializationEvent", + "FMLServerAboutToStartEvent", + "FMLServerStartedEvent", + "FMLServerStartingEvent", + "FMLServerStoppedEvent", + "ForgeChunkManager", + "Minecraft", + "MinecraftForge", + "MinecraftServer", + "Mod", + "NetworkRegistry", + "Side", + "SideOnly", + "SidedProxy" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.Mod", + "cpw.mods.fml.common.Mod.EventHandler", + "cpw.mods.fml.common.SidedProxy", + "cpw.mods.fml.common.event.FMLInitializationEvent", + "cpw.mods.fml.common.event.FMLLoadCompleteEvent", + "cpw.mods.fml.common.event.FMLPreInitializationEvent", + "cpw.mods.fml.common.event.FMLServerAboutToStartEvent", + "cpw.mods.fml.common.event.FMLServerStartedEvent", + "cpw.mods.fml.common.event.FMLServerStartingEvent", + "cpw.mods.fml.common.event.FMLServerStoppedEvent", + "cpw.mods.fml.common.network.NetworkRegistry", + "cpw.mods.fml.common.registry.EntityRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.BlockIce", + "net.minecraft.block.BlockLeavesBase", + "net.minecraft.block.BlockVine", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.server.MinecraftServer", + "net.minecraftforge.common.ForgeChunkManager", + "net.minecraftforge.common.MinecraftForge" + ] + }, + "noppes/npcs/CustomNpcsPermissions.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "Side" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "noppes/npcs/CustomTeleporter.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "Teleporter", + "WorldServer" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.world.Teleporter", + "net.minecraft.world.WorldServer" + ] + }, + "noppes/npcs/DataAbilities.java": { + "mcImportCount": 5, + "mcTypes": [ + "DamageSource", + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/DataAdvanced.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/DataAI.java": { + "mcImportCount": 3, + "mcTypes": [ + "MathHelper", + "NBTTagCompound", + "SharedMonsterAttributes" + ], + "mcFqns": [ + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/DataDisplay.java": { + "mcImportCount": 13, + "mcTypes": [ + "EntityPlayer", + "FMLCommonHandler", + "Loader", + "LoaderState", + "Minecraft", + "MinecraftServer", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "NBTUtil", + "Side", + "SideOnly", + "StringUtils" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.LoaderState", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.nbt.NBTUtil", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.StringUtils" + ] + }, + "noppes/npcs/DataInventory.java": { + "mcImportCount": 11, + "mcTypes": [ + "DamageSource", + "EnchantmentHelper", + "Entity", + "EntityItem", + "EntityLivingBase", + "EntityPlayer", + "EntityXPOrb", + "IInventory", + "ItemStack", + "MathHelper", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.enchantment.EnchantmentHelper", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.item.EntityXPOrb", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/DataStats.java": { + "mcImportCount": 3, + "mcTypes": [ + "EnumCreatureAttribute", + "NBTTagCompound", + "SharedMonsterAttributes" + ], + "mcFqns": [ + "net.minecraft.entity.EnumCreatureAttribute", + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/EventHooks.java": { + "mcImportCount": 15, + "mcTypes": [ + "Container", + "DamageSource", + "Entity", + "EntityEvent", + "EntityItem", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "EntityXPOrb", + "Event", + "ICommandSender", + "ItemStack", + "World", + "WorldEvent", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.item.EntityXPOrb", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.inventory.Container", + "net.minecraft.item.ItemStack", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer", + "net.minecraftforge.event.entity.EntityEvent", + "net.minecraftforge.event.world.WorldEvent" + ] + }, + "noppes/npcs/ICompatibilty.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/NBTTags.java": { + "mcImportCount": 6, + "mcTypes": [ + "ItemStack", + "NBTBase", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagInt", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/NoppesStringUtils.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/NoppesUtilPlayer.java": { + "mcImportCount": 12, + "mcTypes": [ + "ChatComponentText", + "Container", + "EntityPlayer", + "EntityPlayerMP", + "IInventory", + "ItemStack", + "MinecraftServer", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "OreDictionary", + "WorldServer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.ChatComponentText", + "net.minecraft.world.WorldServer", + "net.minecraftforge.oredict.OreDictionary" + ] + }, + "noppes/npcs/NoppesUtilServer.java": { + "mcImportCount": 22, + "mcTypes": [ + "Blocks", + "ChatComponentTranslation", + "CommandBlockLogic", + "DamageSource", + "Entity", + "EntityArrow", + "EntityItem", + "EntityList", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "EntityThrowable", + "Item", + "ItemStack", + "MathHelper", + "MinecraftServer", + "MobSpawnerBaseLogic", + "NBTTagCompound", + "TileEntity", + "TileEntityCommandBlock", + "TileEntityMobSpawner", + "World" + ], + "mcFqns": [ + "net.minecraft.command.server.CommandBlockLogic", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.entity.projectile.EntityArrow", + "net.minecraft.entity.projectile.EntityThrowable", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.server.MinecraftServer", + "net.minecraft.tileentity.MobSpawnerBaseLogic", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.tileentity.TileEntityCommandBlock", + "net.minecraft.tileentity.TileEntityMobSpawner", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.DamageSource", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/NpcDamageSource.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "EntityDamageSource" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.EntityDamageSource" + ] + }, + "noppes/npcs/NpcDamageSourceInderect.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "EntityDamageSourceIndirect" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.EntityDamageSourceIndirect" + ] + }, + "noppes/npcs/NpcMiscInventory.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/NPCSpawning.java": { + "mcImportCount": 18, + "mcTypes": [ + "BiomeGenBase", + "Block", + "BlockPos", + "Blocks", + "Chunk", + "ChunkCoordIntPair", + "ChunkPosition", + "Entity", + "EntityList", + "EntityLiving", + "EntityPlayer", + "EnumCreatureType", + "ForgeEventFactory", + "MathHelper", + "NBTTagCompound", + "Result", + "World", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event.Result", + "net.minecraft.block.Block", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EnumCreatureType", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper", + "net.minecraft.util.math.BlockPos", + "net.minecraft.world.ChunkCoordIntPair", + "net.minecraft.world.ChunkPosition", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer", + "net.minecraft.world.biome.BiomeGenBase", + "net.minecraft.world.chunk.Chunk", + "net.minecraftforge.event.ForgeEventFactory" + ] + }, + "noppes/npcs/QuestLogData.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/Resistances.java": { + "mcImportCount": 2, + "mcTypes": [ + "DamageSource", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/ScriptForgeEventHandler.java": { + "mcImportCount": 16, + "mcTypes": [ + "ChunkDataEvent", + "ChunkEvent", + "ChunkWatchEvent", + "EntityEvent", + "Event", + "FMLCommonHandler", + "FMLNetworkEvent", + "ItemTooltipEvent", + "Loader", + "ModContainer", + "PlayerEvent", + "Side", + "SubscribeEvent", + "TickEvent", + "WorldEvent", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.ModContainer", + "cpw.mods.fml.common.eventhandler.Event", + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.common.gameevent.PlayerEvent", + "cpw.mods.fml.common.gameevent.TickEvent", + "cpw.mods.fml.common.network.FMLNetworkEvent", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.world.WorldServer", + "net.minecraftforge.event.entity.EntityEvent", + "net.minecraftforge.event.entity.player.ItemTooltipEvent", + "net.minecraftforge.event.world.ChunkDataEvent", + "net.minecraftforge.event.world.ChunkEvent", + "net.minecraftforge.event.world.ChunkWatchEvent", + "net.minecraftforge.event.world.WorldEvent" + ] + }, + "noppes/npcs/ScriptItemEventHandler.java": { + "mcImportCount": 18, + "mcTypes": [ + "AnvilRepairEvent", + "Block", + "EntityInteractEvent", + "EntityItem", + "EntityJoinWorldEvent", + "EntityPlayer", + "FakePlayer", + "ItemStack", + "ItemTossEvent", + "LivingEvent", + "NBTTagCompound", + "PlayerDestroyItemEvent", + "PlayerEvent", + "PlayerInteractEvent", + "PlayerUseItemEvent", + "SubscribeEvent", + "TileEntity", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.common.gameevent.PlayerEvent", + "net.minecraft.block.Block", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.WorldServer", + "net.minecraftforge.common.util.FakePlayer", + "net.minecraftforge.event.entity.EntityJoinWorldEvent", + "net.minecraftforge.event.entity.item.ItemTossEvent", + "net.minecraftforge.event.entity.living.LivingEvent", + "net.minecraftforge.event.entity.player.AnvilRepairEvent", + "net.minecraftforge.event.entity.player.EntityInteractEvent", + "net.minecraftforge.event.entity.player.PlayerDestroyItemEvent", + "net.minecraftforge.event.entity.player.PlayerInteractEvent", + "net.minecraftforge.event.entity.player.PlayerUseItemEvent" + ] + }, + "noppes/npcs/ScriptPlayerEventHandler.java": { + "mcImportCount": 38, + "mcTypes": [ + "AchievementEvent", + "ArrowLooseEvent", + "ArrowNockEvent", + "BlockEvent", + "BonemealEvent", + "ChatComponentTranslation", + "ContainerPlayer", + "Entity", + "EntityInteractEvent", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "EntityStruckByLightningEvent", + "EventPriority", + "FakePlayer", + "FillBucketEvent", + "ForgeHooks", + "ItemStack", + "ItemTossEvent", + "LivingAttackEvent", + "LivingDeathEvent", + "LivingEvent", + "LivingFallEvent", + "LivingHurtEvent", + "PlaySoundAtEntityEvent", + "PlayerDropsEvent", + "PlayerEvent", + "PlayerInteractEvent", + "PlayerOpenContainerEvent", + "PlayerPickupXpEvent", + "PlayerSleepInBedEvent", + "PlayerUseItemEvent", + "PlayerWakeUpEvent", + "Side", + "SubscribeEvent", + "TickEvent", + "UseHoeEvent", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.EventPriority", + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.common.gameevent.PlayerEvent", + "cpw.mods.fml.common.gameevent.TickEvent", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.inventory.ContainerPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.world.WorldServer", + "net.minecraftforge.common.ForgeHooks", + "net.minecraftforge.common.util.FakePlayer", + "net.minecraftforge.event.entity.EntityStruckByLightningEvent", + "net.minecraftforge.event.entity.PlaySoundAtEntityEvent", + "net.minecraftforge.event.entity.item.ItemTossEvent", + "net.minecraftforge.event.entity.living.LivingAttackEvent", + "net.minecraftforge.event.entity.living.LivingDeathEvent", + "net.minecraftforge.event.entity.living.LivingEvent", + "net.minecraftforge.event.entity.living.LivingFallEvent", + "net.minecraftforge.event.entity.living.LivingHurtEvent", + "net.minecraftforge.event.entity.player.AchievementEvent", + "net.minecraftforge.event.entity.player.ArrowLooseEvent", + "net.minecraftforge.event.entity.player.ArrowNockEvent", + "net.minecraftforge.event.entity.player.BonemealEvent", + "net.minecraftforge.event.entity.player.EntityInteractEvent", + "net.minecraftforge.event.entity.player.FillBucketEvent", + "net.minecraftforge.event.entity.player.PlayerDropsEvent", + "net.minecraftforge.event.entity.player.PlayerInteractEvent", + "net.minecraftforge.event.entity.player.PlayerOpenContainerEvent", + "net.minecraftforge.event.entity.player.PlayerPickupXpEvent", + "net.minecraftforge.event.entity.player.PlayerSleepInBedEvent", + "net.minecraftforge.event.entity.player.PlayerUseItemEvent", + "net.minecraftforge.event.entity.player.PlayerWakeUpEvent", + "net.minecraftforge.event.entity.player.UseHoeEvent", + "net.minecraftforge.event.world.BlockEvent" + ] + }, + "noppes/npcs/Server.java": { + "mcImportCount": 3, + "mcTypes": [ + "MerchantRecipeList", + "NBTTagCompound", + "PacketBuffer" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.PacketBuffer", + "net.minecraft.village.MerchantRecipeList" + ] + }, + "noppes/npcs/ServerEventsHandler.java": { + "mcImportCount": 28, + "mcTypes": [ + "Action", + "Block", + "Blocks", + "ChatComponentTranslation", + "Entity", + "EntityInteractEvent", + "EntityJoinWorldEvent", + "EntityList", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "EntityVillager", + "FMLCommonHandler", + "ItemStack", + "LivingAttackEvent", + "LivingDeathEvent", + "LivingEvent", + "LivingHurtEvent", + "MathHelper", + "MerchantRecipeList", + "MinecraftServer", + "NBTTagCompound", + "PlayerEvent", + "PlayerInteractEvent", + "PopulateChunkEvent", + "Side", + "StatCollector", + "SubscribeEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.block.Block", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.passive.EntityVillager", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.init.Blocks", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.MathHelper", + "net.minecraft.util.StatCollector", + "net.minecraft.village.MerchantRecipeList", + "net.minecraftforge.event.entity.EntityJoinWorldEvent", + "net.minecraftforge.event.entity.living.LivingAttackEvent", + "net.minecraftforge.event.entity.living.LivingDeathEvent", + "net.minecraftforge.event.entity.living.LivingEvent", + "net.minecraftforge.event.entity.living.LivingHurtEvent", + "net.minecraftforge.event.entity.player.EntityInteractEvent", + "net.minecraftforge.event.entity.player.PlayerEvent", + "net.minecraftforge.event.entity.player.PlayerInteractEvent", + "net.minecraftforge.event.entity.player.PlayerInteractEvent.Action", + "net.minecraftforge.event.terraingen.PopulateChunkEvent" + ] + }, + "noppes/npcs/ServerTickHandler.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayerMP", + "Phase", + "PlayerEvent", + "SubscribeEvent", + "TickEvent", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.common.gameevent.PlayerEvent", + "cpw.mods.fml.common.gameevent.TickEvent", + "cpw.mods.fml.common.gameevent.TickEvent.Phase", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.world.WorldServer" + ] + }, + "noppes/npcs/TextBlock.java": { + "mcImportCount": 1, + "mcTypes": [ + "IChatComponent" + ], + "mcFqns": [ + "net.minecraft.util.IChatComponent" + ] + }, + "noppes/npcs/VersionCompatibility.java": { + "mcImportCount": 4, + "mcTypes": [ + "NBTBase", + "NBTTagCompound", + "NBTTagInt", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/ai/CombatHandler.java": { + "mcImportCount": 4, + "mcTypes": [ + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/ai/EntityAIAmbushTarget.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "MathHelper", + "MovingObjectPosition", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/ai/EntityAIAnimation.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityAIBase" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAIAttackTarget.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "EntityPlayer", + "MathHelper", + "PathEntity", + "SharedMonsterAttributes", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.pathfinding.PathEntity", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/ai/EntityAIAvoidTarget.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "EntityAIBase", + "EntityLivingBase", + "EntityPlayer", + "PathEntity", + "PathNavigate", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.pathfinding.PathEntity", + "net.minecraft.pathfinding.PathNavigate", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/EntityAIBustDoor.java": { + "mcImportCount": 4, + "mcTypes": [ + "Block", + "Blocks", + "EntityAIDoorInteract", + "EntityLiving" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.ai.EntityAIDoorInteract", + "net.minecraft.init.Blocks" + ] + }, + "noppes/npcs/ai/EntityAIDodgeShoot.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/EntityAIFindShade.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityAIBase", + "EntityCreature", + "MathHelper", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityCreature", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/ai/EntityAIFollow.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "MathHelper", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/ai/EntityAIJob.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityAIBase" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAILeapAtTargetNpc.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/ai/EntityAILook.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/ai/EntityAIMoveIndoors.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityAIBase", + "EntityCreature", + "MathHelper", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityCreature", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/ai/EntityAIMovingPath.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityAIBase" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAIOrbitTarget.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/ai/EntityAIPanic.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityAIBase", + "EntityCreature", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.EntityCreature", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/EntityAIPounceTarget.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/ai/EntityAIRangedAttack.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "IRangedAttackMob", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.IRangedAttackMob", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/ai/EntityAIReturn.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityAIBase", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/EntityAIRole.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityAIBase" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAISprintToTarget.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAIStalkTarget.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityAIBase", + "EntityLivingBase", + "MathHelper", + "MovingObjectPosition", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/ai/EntityAITransform.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityAIBase" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAIWander.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityAIBase", + "IEntitySelector", + "MathHelper", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.command.IEntitySelector", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/EntityAIWatchClosest.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "EntityAIBase", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/ai/EntityAIWaterNav.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityAIBase" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAIWorldLines.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityAIBase" + ], + "mcFqns": [ + "net.minecraft.entity.ai.EntityAIBase" + ] + }, + "noppes/npcs/ai/EntityAIZigZagTarget.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityAIBase", + "EntityCreature", + "EntityLivingBase", + "MathHelper", + "PathEntity", + "PathPoint", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.EntityCreature", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.pathfinding.PathEntity", + "net.minecraft.pathfinding.PathPoint", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/RandomPositionGeneratorAlt.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityCreature", + "MathHelper", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.EntityCreature", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityMoveHelper", + "MathHelper", + "SharedMonsterAttributes" + ], + "mcFqns": [ + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.entity.ai.EntityMoveHelper", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/ai/pathfinder/FlyPathFinder.java": { + "mcImportCount": 15, + "mcTypes": [ + "Block", + "BlockDoor", + "BlockFence", + "BlockFenceGate", + "BlockPos", + "BlockRailBase", + "BlockWall", + "Blocks", + "Entity", + "EntityLiving", + "IBlockAccess", + "IntHashMap", + "Material", + "MathHelper", + "PathFinder" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.block.BlockDoor", + "net.minecraft.block.BlockFence", + "net.minecraft.block.BlockFenceGate", + "net.minecraft.block.BlockRailBase", + "net.minecraft.block.BlockWall", + "net.minecraft.block.material.Material", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLiving", + "net.minecraft.init.Blocks", + "net.minecraft.pathfinding.PathFinder", + "net.minecraft.util.MathHelper", + "net.minecraft.util.math.BlockPos", + "net.minecraft.util.math.IntHashMap", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/ai/pathfinder/NPCPath.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "PathEntity", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.pathfinding.PathEntity", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/ai/pathfinder/NPCPathPoint.java": { + "mcImportCount": 2, + "mcTypes": [ + "MathHelper", + "PathPoint" + ], + "mcFqns": [ + "net.minecraft.pathfinding.PathPoint", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/ai/pathfinder/PathNavigateFlying.java": { + "mcImportCount": 16, + "mcTypes": [ + "Block", + "BlockPos", + "Blocks", + "ChunkCache", + "Entity", + "EntityLiving", + "IAttributeInstance", + "Material", + "MathHelper", + "MovingObjectPosition", + "PathEntity", + "PathNavigate", + "PathPoint", + "SharedMonsterAttributes", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.block.material.Material", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.entity.ai.attributes.IAttributeInstance", + "net.minecraft.init.Blocks", + "net.minecraft.pathfinding.PathEntity", + "net.minecraft.pathfinding.PathNavigate", + "net.minecraft.pathfinding.PathPoint", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.util.math.BlockPos", + "net.minecraft.world.ChunkCache", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/ai/selector/NPCAttackSelector.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "IEntitySelector", + "Potion" + ], + "mcFqns": [ + "net.minecraft.command.IEntitySelector", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.potion.Potion" + ] + }, + "noppes/npcs/ai/selector/NPCInteractSelector.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "IEntitySelector" + ], + "mcFqns": [ + "net.minecraft.command.IEntitySelector", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/ai/target/EntityAIClearTarget.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityAITarget", + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAITarget" + ] + }, + "noppes/npcs/ai/target/EntityAIClosestTarget.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityAINearestAttackableTarget", + "EntityAITarget", + "EntityCreature", + "EntityLivingBase", + "EntityMob", + "IEntitySelector", + "MathHelper", + "SharedMonsterAttributes" + ], + "mcFqns": [ + "net.minecraft.command.IEntitySelector", + "net.minecraft.entity.EntityCreature", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.entity.ai.EntityAINearestAttackableTarget", + "net.minecraft.entity.ai.EntityAITarget", + "net.minecraft.entity.monster.EntityMob", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/ai/target/EntityAIOwnerHurtByTarget.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityAITarget", + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAITarget" + ] + }, + "noppes/npcs/ai/target/EntityAIOwnerHurtTarget.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityAITarget", + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.ai.EntityAITarget" + ] + }, + "noppes/npcs/blocks/BlockBanner.java": { + "mcImportCount": 20, + "mcTypes": [ + "BlockColored", + "BlockContainer", + "Blocks", + "ChatComponentTranslation", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "MovingObjectPosition", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockColored", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockBarrel.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "Item", + "ItemStack", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockBeam.java": { + "mcImportCount": 8, + "mcTypes": [ + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "IBlockAccess", + "Item", + "ItemStack", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockBigSign.java": { + "mcImportCount": 15, + "mcTypes": [ + "AxisAlignedBB", + "BlockContainer", + "Blocks", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "IIcon", + "IIconRegister", + "ItemStack", + "Material", + "MathHelper", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockBlood.java": { + "mcImportCount": 14, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "Blocks", + "EntityLivingBase", + "IBlockAccess", + "IIcon", + "IIconRegister", + "ItemStack", + "Material", + "MathHelper", + "RenderingRegistry", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.init.Blocks", + "net.minecraft.item.ItemStack", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockBook.java": { + "mcImportCount": 8, + "mcTypes": [ + "Blocks", + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "Items", + "NBTTagCompound", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockBorder.java": { + "mcImportCount": 13, + "mcTypes": [ + "BlockContainer", + "Blocks", + "EntityLivingBase", + "EntityPlayer", + "IIcon", + "ItemStack", + "Material", + "MathHelper", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockCampfire.java": { + "mcImportCount": 12, + "mcTypes": [ + "Block", + "Blocks", + "EntityPlayer", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockCandle.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "Blocks", + "IBlockAccess", + "IIcon", + "IIconRegister", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.init.Blocks", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockCarpentryBench.java": { + "mcImportCount": 16, + "mcTypes": [ + "Block", + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "IIcon", + "Item", + "ItemStack", + "Material", + "MathHelper", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockChair.java": { + "mcImportCount": 11, + "mcTypes": [ + "AxisAlignedBB", + "Blocks", + "CreativeTabs", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "Item", + "ItemStack", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockCouchWood.java": { + "mcImportCount": 17, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockCouchWool.java": { + "mcImportCount": 20, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "BlockColored", + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "MovingObjectPosition", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.BlockColored", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockCrate.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "Item", + "ItemStack", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockCrystal.java": { + "mcImportCount": 9, + "mcTypes": [ + "BlockBreakable", + "CreativeTabs", + "IBlockAccess", + "Item", + "ItemStack", + "MapColor", + "Material", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockBreakable", + "net.minecraft.block.material.MapColor", + "net.minecraft.block.material.Material", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/blocks/BlockLantern.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "Blocks", + "IBlockAccess", + "IIcon", + "IIconRegister", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.init.Blocks", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockLightable.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "EntityPlayer", + "Item", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockMailbox.java": { + "mcImportCount": 16, + "mcTypes": [ + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockNpcRedstone.java": { + "mcImportCount": 10, + "mcTypes": [ + "BlockContainer", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "IBlockAccess", + "ItemStack", + "Material", + "NBTTagCompound", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockPedestal.java": { + "mcImportCount": 14, + "mcTypes": [ + "Block", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "IIcon", + "Item", + "ItemBlock", + "ItemStack", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockPlaceholder.java": { + "mcImportCount": 11, + "mcTypes": [ + "Block", + "CreativeTabs", + "EntityLivingBase", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockRotated.java": { + "mcImportCount": 13, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "BlockContainer", + "EntityLivingBase", + "ForgeDirection", + "IBlockAccess", + "IIcon", + "IIconRegister", + "ItemStack", + "MathHelper", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.BlockContainer", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.item.ItemStack", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World", + "net.minecraftforge.common.util.ForgeDirection" + ] + }, + "noppes/npcs/blocks/BlockScripted.java": { + "mcImportCount": 16, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "BlockContainer", + "Blocks", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EnumCreatureType", + "EnumFacing", + "Explosion", + "IBlockAccess", + "Item", + "ItemStack", + "Material", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.EnumCreatureType", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.EnumFacing", + "net.minecraft.world.Explosion", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockShelf.java": { + "mcImportCount": 9, + "mcTypes": [ + "AxisAlignedBB", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "IBlockAccess", + "Item", + "ItemStack", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockShortLamp.java": { + "mcImportCount": 20, + "mcTypes": [ + "AxisAlignedBB", + "BlockColored", + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "MovingObjectPosition", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockColored", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockSign.java": { + "mcImportCount": 11, + "mcTypes": [ + "Blocks", + "ChatComponentTranslation", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "Item", + "ItemStack", + "MathHelper", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.MathHelper", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockStool.java": { + "mcImportCount": 16, + "mcTypes": [ + "AxisAlignedBB", + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockTable.java": { + "mcImportCount": 7, + "mcTypes": [ + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "Item", + "ItemStack", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockTallLamp.java": { + "mcImportCount": 20, + "mcTypes": [ + "AxisAlignedBB", + "BlockColored", + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "MovingObjectPosition", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockColored", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockTombstone.java": { + "mcImportCount": 17, + "mcTypes": [ + "AxisAlignedBB", + "BlockContainer", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockTrigger.java": { + "mcImportCount": 3, + "mcTypes": [ + "Block", + "IBlockAccess", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockWallBanner.java": { + "mcImportCount": 20, + "mcTypes": [ + "AxisAlignedBB", + "BlockColored", + "BlockContainer", + "Blocks", + "ChatComponentTranslation", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IIcon", + "IIconRegister", + "Item", + "ItemStack", + "Material", + "MathHelper", + "MovingObjectPosition", + "NBTTagCompound", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.BlockColored", + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockWaypoint.java": { + "mcImportCount": 9, + "mcTypes": [ + "BlockContainer", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "Material", + "NBTTagCompound", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.block.BlockContainer", + "net.minecraft.block.material.Material", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/BlockWeaponRack.java": { + "mcImportCount": 13, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "Blocks", + "CreativeTabs", + "EntityLivingBase", + "EntityPlayer", + "IBlockAccess", + "Item", + "ItemBlock", + "ItemStack", + "MathHelper", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.MathHelper", + "net.minecraft.world.IBlockAccess", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/tiles/ITileIcon.java": { + "mcImportCount": 1, + "mcTypes": [ + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/blocks/tiles/TileBanner.java": { + "mcImportCount": 3, + "mcTypes": [ + "AxisAlignedBB", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileBigSign.java": { + "mcImportCount": 5, + "mcTypes": [ + "NBTTagCompound", + "NetworkManager", + "Packet", + "S35PacketUpdateTileEntity", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.NetworkManager", + "net.minecraft.network.Packet", + "net.minecraft.network.play.server.S35PacketUpdateTileEntity", + "net.minecraft.tileentity.TileEntity" + ] + }, + "noppes/npcs/blocks/tiles/TileBlockAnvil.java": { + "mcImportCount": 2, + "mcTypes": [ + "EnumSkyBlock", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.EnumSkyBlock" + ] + }, + "noppes/npcs/blocks/tiles/TileBook.java": { + "mcImportCount": 3, + "mcTypes": [ + "ItemStack", + "Items", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.init.Items", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/blocks/tiles/TileBorder.java": { + "mcImportCount": 12, + "mcTypes": [ + "AxisAlignedBB", + "ChatComponentTranslation", + "Entity", + "EntityEnderPearl", + "EntityPlayer", + "EntityPlayerMP", + "IEntitySelector", + "NBTTagCompound", + "NetworkManager", + "Packet", + "S35PacketUpdateTileEntity", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.command.IEntitySelector", + "net.minecraft.entity.Entity", + "net.minecraft.entity.item.EntityEnderPearl", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.NetworkManager", + "net.minecraft.network.Packet", + "net.minecraft.network.play.server.S35PacketUpdateTileEntity", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "noppes/npcs/blocks/tiles/TileCampfire.java": { + "mcImportCount": 1, + "mcTypes": [ + "Block" + ], + "mcFqns": [ + "net.minecraft.block.Block" + ] + }, + "noppes/npcs/blocks/tiles/TileChair.java": { + "mcImportCount": 1, + "mcTypes": [ + "AxisAlignedBB" + ], + "mcFqns": [ + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileColorable.java": { + "mcImportCount": 3, + "mcTypes": [ + "ItemStack", + "Items", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.init.Items", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/blocks/tiles/TileCouchWood.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/blocks/tiles/TileCouchWool.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/blocks/tiles/TileMailbox.java": { + "mcImportCount": 1, + "mcTypes": [ + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.tileentity.TileEntity" + ] + }, + "noppes/npcs/blocks/tiles/TileNpcContainer.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityItem", + "EntityPlayer", + "IInventory", + "ItemStack", + "NBTTagCompound", + "NBTTagList", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/blocks/tiles/TilePedestal.java": { + "mcImportCount": 4, + "mcTypes": [ + "AxisAlignedBB", + "NBTTagCompound", + "Packet", + "S35PacketUpdateTileEntity" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.Packet", + "net.minecraft.network.play.server.S35PacketUpdateTileEntity", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileRedstoneBlock.java": { + "mcImportCount": 5, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "EntityPlayer", + "NBTTagCompound", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileScripted.java": { + "mcImportCount": 16, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "Chunk", + "EnumSkyBlock", + "Event", + "ITickable", + "Item", + "ItemStack", + "NBTTagCompound", + "NetworkManager", + "Packet", + "S35PacketUpdateTileEntity", + "Side", + "SideOnly", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.texture.ITickable", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.NetworkManager", + "net.minecraft.network.Packet", + "net.minecraft.network.play.server.S35PacketUpdateTileEntity", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.world.EnumSkyBlock", + "net.minecraft.world.World", + "net.minecraft.world.chunk.Chunk" + ] + }, + "noppes/npcs/blocks/tiles/TileShortLamp.java": { + "mcImportCount": 1, + "mcTypes": [ + "AxisAlignedBB" + ], + "mcFqns": [ + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileSign.java": { + "mcImportCount": 3, + "mcTypes": [ + "AxisAlignedBB", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileTallLamp.java": { + "mcImportCount": 1, + "mcTypes": [ + "AxisAlignedBB" + ], + "mcFqns": [ + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileVariant.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "NBTTagCompound", + "NetworkManager", + "Packet", + "S35PacketUpdateTileEntity", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.NetworkManager", + "net.minecraft.network.Packet", + "net.minecraft.network.play.server.S35PacketUpdateTileEntity", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileWallBanner.java": { + "mcImportCount": 1, + "mcTypes": [ + "AxisAlignedBB" + ], + "mcFqns": [ + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/blocks/tiles/TileWaypoint.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "ChatComponentTranslation", + "EntityPlayer", + "NBTTagCompound", + "StatCollector", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/blocks/tiles/TileWeaponRack.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "ItemBlock", + "ItemStack", + "NBTTagCompound", + "Packet", + "S35PacketUpdateTileEntity" + ], + "mcFqns": [ + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.Packet", + "net.minecraft.network.play.server.S35PacketUpdateTileEntity", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/client/AssetsBrowser.java": { + "mcImportCount": 11, + "mcTypes": [ + "AbstractResourcePack", + "FallbackResourceManager", + "IResourceManager", + "IResourcePack", + "Loader", + "Minecraft", + "ModContainer", + "NPCResourceHelper", + "ObfuscationReflectionHelper", + "ResourcePackRepository", + "SimpleReloadableResourceManager" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.ModContainer", + "cpw.mods.fml.common.ObfuscationReflectionHelper", + "net.minecraft.client.Minecraft", + "net.minecraft.client.resources.AbstractResourcePack", + "net.minecraft.client.resources.FallbackResourceManager", + "net.minecraft.client.resources.IResourceManager", + "net.minecraft.client.resources.IResourcePack", + "net.minecraft.client.resources.NPCResourceHelper", + "net.minecraft.client.resources.ResourcePackRepository", + "net.minecraft.client.resources.SimpleReloadableResourceManager" + ] + }, + "noppes/npcs/client/AuctionClientConfig.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/ClientAbilityState.java": { + "mcImportCount": 2, + "mcTypes": [ + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly" + ] + }, + "noppes/npcs/client/ClientCacheHandler.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/ClientEventHandler.java": { + "mcImportCount": 20, + "mcTypes": [ + "AbstractClientPlayer", + "Entity", + "EntityClientPlayerMP", + "EntityPlayer", + "EventPriority", + "ItemTooltipEvent", + "Minecraft", + "ModelBase", + "ModelBiped", + "ModelRenderer", + "MouseEvent", + "Render", + "RenderGameOverlayEvent", + "RenderHandEvent", + "RenderLivingEvent", + "RenderManager", + "RenderPlayerEvent", + "RendererLivingEntity", + "ResourceLocation", + "SubscribeEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.EventPriority", + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.AbstractClientPlayer", + "net.minecraft.client.entity.EntityClientPlayerMP", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RendererLivingEntity", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.event.MouseEvent", + "net.minecraftforge.client.event.RenderGameOverlayEvent", + "net.minecraftforge.client.event.RenderHandEvent", + "net.minecraftforge.client.event.RenderLivingEvent", + "net.minecraftforge.client.event.RenderPlayerEvent", + "net.minecraftforge.event.entity.player.ItemTooltipEvent" + ] + }, + "noppes/npcs/client/ClientProxy.java": { + "mcImportCount": 30, + "mcTypes": [ + "Achievement", + "ChatComponentText", + "ClientCommandHandler", + "ClientRegistry", + "Container", + "Entity", + "EntityFX", + "EntityFlameFX", + "EntityLivingBase", + "EntityPlayer", + "EntitySmokeFX", + "FMLCommonHandler", + "FakePlayer", + "GuiScreen", + "IReloadableResourceManager", + "Item", + "ItemStack", + "KeyBinding", + "Minecraft", + "MinecraftForge", + "MinecraftForgeClient", + "ModelBiped", + "ObfuscationReflectionHelper", + "RenderGlobal", + "RenderingRegistry", + "ReportedException", + "ResourceLocation", + "TextureManager", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ClientRegistry", + "cpw.mods.fml.client.registry.RenderingRegistry", + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.ObfuscationReflectionHelper", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.particle.EntityFX", + "net.minecraft.client.particle.EntityFlameFX", + "net.minecraft.client.particle.EntitySmokeFX", + "net.minecraft.client.renderer.RenderGlobal", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.resources.IReloadableResourceManager", + "net.minecraft.client.settings.KeyBinding", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.stats.Achievement", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.ReportedException", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.World", + "net.minecraftforge.client.ClientCommandHandler", + "net.minecraftforge.client.MinecraftForgeClient", + "net.minecraftforge.common.MinecraftForge", + "net.minecraftforge.common.util.FakePlayer" + ] + }, + "noppes/npcs/client/ClientTickHandler.java": { + "mcImportCount": 11, + "mcTypes": [ + "ContainerPlayer", + "Entity", + "EntityPlayer", + "EventPriority", + "KeyBinding", + "Minecraft", + "Phase", + "Side", + "SubscribeEvent", + "TickEvent", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.EventPriority", + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.common.gameevent.TickEvent", + "cpw.mods.fml.common.gameevent.TickEvent.Phase", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.client.Minecraft", + "net.minecraft.client.settings.KeyBinding", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.ContainerPlayer", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/CustomNpcResourceListener.java": { + "mcImportCount": 7, + "mcTypes": [ + "FolderResourcePack", + "IResourceManager", + "IResourceManagerReloadListener", + "Minecraft", + "ResourceLocation", + "SimpleReloadableResourceManager", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.resources.FolderResourcePack", + "net.minecraft.client.resources.IResourceManager", + "net.minecraft.client.resources.IResourceManagerReloadListener", + "net.minecraft.client.resources.SimpleReloadableResourceManager", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/EntityUtil.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityChicken", + "EntityDragon", + "EntityLivingBase", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.boss.EntityDragon", + "net.minecraft.entity.passive.EntityChicken", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/client/ImageDownloadAlt.java": { + "mcImportCount": 8, + "mcTypes": [ + "IImageBuffer", + "IResourceManager", + "Minecraft", + "ResourceLocation", + "Side", + "SideOnly", + "SimpleTexture", + "TextureUtil" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.IImageBuffer", + "net.minecraft.client.renderer.texture.SimpleTexture", + "net.minecraft.client.renderer.texture.TextureUtil", + "net.minecraft.client.resources.IResourceManager", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/KeyPressHandler.java": { + "mcImportCount": 5, + "mcTypes": [ + "InputEvent", + "KeyBinding", + "Minecraft", + "SubscribeEvent", + "TickEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.common.gameevent.InputEvent", + "cpw.mods.fml.common.gameevent.TickEvent", + "net.minecraft.client.Minecraft", + "net.minecraft.client.settings.KeyBinding" + ] + }, + "noppes/npcs/client/MessageAchievement.java": { + "mcImportCount": 5, + "mcTypes": [ + "Achievement", + "ChatComponentText", + "IChatComponent", + "Item", + "Items" + ], + "mcFqns": [ + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.stats.Achievement", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.IChatComponent" + ] + }, + "noppes/npcs/client/NoppesUtil.java": { + "mcImportCount": 9, + "mcTypes": [ + "EntityPlayer", + "GuiScreen", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "PositionedSoundRecord", + "ResourceLocation", + "TileEntity", + "Util" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.audio.PositionedSoundRecord", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.Util" + ] + }, + "noppes/npcs/client/ProfileClientConfig.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/client/RenderChatMessages.java": { + "mcImportCount": 7, + "mcTypes": [ + "FontRenderer", + "IChatComponent", + "Minecraft", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.util.IChatComponent" + ] + }, + "noppes/npcs/client/ScriptClientConfig.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/TextBlockClient.java": { + "mcImportCount": 5, + "mcTypes": [ + "ChatComponentText", + "ChatStyle", + "FontRenderer", + "ICommandSender", + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.command.ICommandSender", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.ChatStyle" + ] + }, + "noppes/npcs/client/VersionChecker.java": { + "mcImportCount": 5, + "mcTypes": [ + "Action", + "ChatComponentTranslation", + "ClickEvent", + "EntityPlayer", + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.event.ClickEvent", + "net.minecraft.event.ClickEvent.Action", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "noppes/npcs/client/controllers/ClientCloneController.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/client/controllers/MusicController.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "ISound", + "Minecraft", + "ResourceLocation", + "SoundHandler" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.audio.ISound", + "net.minecraft.client.audio.SoundHandler", + "net.minecraft.entity.Entity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/controllers/Preset.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/controllers/PresetController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/client/controllers/ScriptClientSound.java": { + "mcImportCount": 7, + "mcTypes": [ + "Entity", + "ITickableSound", + "Minecraft", + "MovingSound", + "NBTTagCompound", + "ResourceLocation", + "World" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.audio.ITickableSound", + "net.minecraft.client.audio.MovingSound", + "net.minecraft.entity.Entity", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/controllers/ScriptSoundController.java": { + "mcImportCount": 2, + "mcTypes": [ + "Minecraft", + "SoundHandler" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.audio.SoundHandler" + ] + }, + "noppes/npcs/client/fx/CustomFX.java": { + "mcImportCount": 11, + "mcTypes": [ + "Entity", + "EntityClientPlayerMP", + "EntityFX", + "EntityPlayer", + "MathHelper", + "Minecraft", + "ResourceLocation", + "Side", + "SideOnly", + "Tessellator", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.EntityClientPlayerMP", + "net.minecraft.client.particle.EntityFX", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/fx/EntityBigSmokeFX.java": { + "mcImportCount": 13, + "mcTypes": [ + "ActiveRenderInfo", + "Cancelable", + "EntityConstructing", + "EntityFX", + "EntityLivingBase", + "MathHelper", + "Minecraft", + "MinecraftForge", + "OpenGlHelper", + "ResourceLocation", + "Side", + "Tessellator", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.client.Minecraft", + "net.minecraft.client.particle.EntityFX", + "net.minecraft.client.renderer.ActiveRenderInfo", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.World", + "net.minecraftforge.common.MinecraftForge", + "net.minecraftforge.event.entity.EntityEvent.EntityConstructing" + ] + }, + "noppes/npcs/client/fx/EntityElementalStaffFX.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "EntityPortalFX", + "EntitySheep", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.client.particle.EntityPortalFX", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.passive.EntitySheep", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/fx/EntityEnderFX.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPortalFX", + "ResourceLocation", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.particle.EntityPortalFX", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/fx/EntityRainbowFX.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityFX", + "Tessellator", + "World" + ], + "mcFqns": [ + "net.minecraft.client.particle.EntityFX", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/fx/ZoneParticleFX.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityFX", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.particle.EntityFX", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/gui/EventGuiScriptList.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/GuiBorderBlock.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/GuiMagicCycleMap.java": { + "mcImportCount": 5, + "mcTypes": [ + "FontRenderer", + "ItemStack", + "Items", + "Minecraft", + "RenderHelper" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.init.Items", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/client/gui/GuiMerchantAdd.java": { + "mcImportCount": 13, + "mcTypes": [ + "C17PacketCustomPayload", + "GuiButton", + "GuiContainer", + "I18n", + "IMerchant", + "ItemStack", + "MerchantRecipe", + "MerchantRecipeList", + "Minecraft", + "RenderHelper", + "ResourceLocation", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.inventory.GuiContainer", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.resources.I18n", + "net.minecraft.entity.IMerchant", + "net.minecraft.item.ItemStack", + "net.minecraft.network.play.client.C17PacketCustomPayload", + "net.minecraft.util.ResourceLocation", + "net.minecraft.village.MerchantRecipe", + "net.minecraft.village.MerchantRecipeList" + ] + }, + "noppes/npcs/client/gui/GuiNpcDimension.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/GuiNPCFactionSelection.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/GuiNPCLinesEdit.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/GuiNpcMobSpawner.java": { + "mcImportCount": 9, + "mcTypes": [ + "Entity", + "EntityList", + "EntityLiving", + "GuiButton", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "StatCollector", + "World" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLiving", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.StatCollector", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java": { + "mcImportCount": 9, + "mcTypes": [ + "Entity", + "EntityList", + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/client/gui/GuiNpcMobSpawnerFullscreen.java": { + "mcImportCount": 9, + "mcTypes": [ + "Entity", + "EntityList", + "EntityLiving", + "GuiButton", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "StatCollector", + "World" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLiving", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.StatCollector", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/gui/GuiNpcMobSpawnerMounter.java": { + "mcImportCount": 9, + "mcTypes": [ + "Entity", + "EntityList", + "EntityLiving", + "GuiButton", + "Minecraft", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagList", + "World" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLiving", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/gui/GuiNpcMobSpawnerSelector.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/client/gui/GuiNpcPather.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/GuiNpcRedstoneBlock.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/GuiNpcRemoteEditor.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.entity.Entity", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/GuiNpcSelectionInterface.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/GuiNpcTextureCloaks.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiScreen", + "OpenGlHelper", + "RenderHelper", + "RenderManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager" + ] + }, + "noppes/npcs/client/gui/GuiNpcTextureOverlays.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiScreen", + "OpenGlHelper", + "RenderHelper", + "RenderManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager" + ] + }, + "noppes/npcs/client/gui/GuiNPCTransportCategoryEdit.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/GuiNpcWaypoint.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/GuiScript.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "MinecraftServer", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/GuiScriptList.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiAnimationFrame.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiAnimationOptions.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiCloneFolderName.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiClonerNPCTags.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/SubGuiClonerQuickTags.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/SubGuiColorSelector.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "IResource", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.IResource", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/SubGuiCustomHitbox.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiEditText.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiEffectGeneral.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "ResourceLocation", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/SubGuiFolderSelect.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiMagic.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiMagicCycle.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiMailmanSendSetup.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiMoveConfirm.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcAvailability.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcAvailabilityDialog.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcAvailabilityQuest.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcBiomes.java": { + "mcImportCount": 3, + "mcTypes": [ + "BiomeDictionary", + "BiomeGenBase", + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.world.biome.BiomeGenBase", + "net.minecraftforge.common.BiomeDictionary" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcCommand.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcDialog.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcDialogOption.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcDialogOptions.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcDialogVisual.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcDimensions.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcFactionOptions.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcFactionPoints.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcMeleeProperties.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcMovement.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcName.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcPartyOptions.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcProfileOptions.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcProjectiles.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcQuest.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcRangeProperties.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcResistanceProperties.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcRespawn.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcTextArea.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiNpcTint.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiPlayerData.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/SubGuiScriptParticle.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiSpawningOptions.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/SubGuiTagSelect.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/SubGuiTrapPresetSelector.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/SubGuiZonePresetSelector.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCAbilities.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "I18n", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.I18n", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCAdvancedLinkedNpc.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCDialogNpcOptions.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCFactionSetup.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCLinesMenu.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCMagic.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCMarks.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCNightSetup.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCSoundsMenu.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/advanced/GuiNPCTagSetup.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityConfig.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityDeleteConfirm.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityEditMode.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityLoad.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityLoadMode.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityMagic.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilitySaveConfirm.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilitySelect.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityTypeSelect.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "I18n" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.I18n" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiAbilityVariantSelect.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiChainedAbilityConfig.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiChainedEntrySource.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiChainSelect.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiConditionEdit.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "I18n" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.I18n" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiCustomEffectSelect.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiDuplicateNameConfirm.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiLoadTypeChoice.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/advanced/SubGuiNpcSlotPicker.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "I18n" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.I18n" + ] + }, + "noppes/npcs/client/gui/builder/FieldDef.java": { + "mcImportCount": 2, + "mcTypes": [ + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly" + ] + }, + "noppes/npcs/client/gui/builder/FieldType.java": { + "mcImportCount": 2, + "mcTypes": [ + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly" + ] + }, + "noppes/npcs/client/gui/builder/GuiFieldBuilder.java": { + "mcImportCount": 5, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/custom/GuiCustom.java": { + "mcImportCount": 19, + "mcTypes": [ + "Container", + "EnumChatFormatting", + "FontRenderer", + "GuiButton", + "GuiScreen", + "GuiTextField", + "IIcon", + "InventoryPlayer", + "ItemStack", + "MathHelper", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "OpenGlHelper", + "RenderHelper", + "ResourceLocation", + "Slot", + "TextureMap" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiTextField", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.texture.TextureMap", + "net.minecraft.entity.player.InventoryPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/custom/components/CustomGuiButton.java": { + "mcImportCount": 4, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "Minecraft", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.Tessellator" + ] + }, + "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java": { + "mcImportCount": 4, + "mcTypes": [ + "Gui", + "Minecraft", + "ResourceLocation", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/custom/components/CustomGuiLine.java": { + "mcImportCount": 3, + "mcTypes": [ + "Gui", + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/custom/components/CustomGuiScrollComponent.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiScreen", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot" + ] + }, + "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiTextField", + "Minecraft", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiTextField", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java": { + "mcImportCount": 3, + "mcTypes": [ + "Gui", + "Minecraft", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.Tessellator" + ] + }, + "noppes/npcs/client/gui/custom/interfaces/IDataHolder.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/custom/interfaces/IGuiComponent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft" + ] + }, + "noppes/npcs/client/gui/customoverlay/OverlayCustom.java": { + "mcImportCount": 5, + "mcTypes": [ + "Gui", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java": { + "mcImportCount": 4, + "mcTypes": [ + "Gui", + "Minecraft", + "ResourceLocation", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java": { + "mcImportCount": 4, + "mcTypes": [ + "Gui", + "Minecraft", + "ResourceLocation", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java": { + "mcImportCount": 6, + "mcTypes": [ + "Gui", + "IResource", + "Minecraft", + "ResourceLocation", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.resources.IResource", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/customoverlay/interfaces/IOverlayComponent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft" + ] + }, + "noppes/npcs/client/gui/global/GuiAbilityDirectory.java": { + "mcImportCount": 12, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "GuiButton", + "GuiScreen", + "GuiYesNo", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ScaledResolution", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiAnimationDirectory.java": { + "mcImportCount": 9, + "mcTypes": [ + "EntityLivingBase", + "GuiButton", + "GuiScreen", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiEffectDirectory.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiScreen", + "NBTTagCompound", + "ResourceLocation", + "StatCollector", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiLinkedItemDirectory.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "NBTTagCompound", + "ResourceLocation", + "StatCollector", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCEditAnimation.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNpcManageAuction.java": { + "mcImportCount": 10, + "mcTypes": [ + "EnumChatFormatting", + "Gui", + "GuiButton", + "ItemStack", + "NBTTagCompound", + "NBTTagList", + "PositionedSoundRecord", + "ResourceLocation", + "Slot", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.audio.PositionedSoundRecord", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageBanks.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageEffects.java": { + "mcImportCount": 7, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "ResourceLocation", + "StatCollector", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageFactions.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageLinked.java": { + "mcImportCount": 12, + "mcTypes": [ + "EntityLivingBase", + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ResourceLocation", + "StatCollector", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNpcManageMagic.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageQuest.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNpcManageRecipes.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageTags.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/global/GuiNPCManageTransporters.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/global/GuiNpcNaturalSpawns.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/global/GuiNpcQuestReward.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/hud/CompassHudComponent.java": { + "mcImportCount": 7, + "mcTypes": [ + "MathHelper", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "ResourceLocation", + "ScaledResolution", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/hud/GuiHudEditor.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.ScaledResolution" + ] + }, + "noppes/npcs/client/gui/hud/HudComponent.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/hud/QuestTrackingComponent.java": { + "mcImportCount": 6, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/client/gui/hud/ability/AbilityHotbarComponent.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityPlayer", + "FontRenderer", + "GuiButton", + "Minecraft", + "NBTTagCompound", + "ScaledResolution", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java": { + "mcImportCount": 6, + "mcTypes": [ + "FontRenderer", + "Gui", + "Minecraft", + "ScaledResolution", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.ScaledResolution" + ] + }, + "noppes/npcs/client/gui/hud/ability/AbilityIcon.java": { + "mcImportCount": 8, + "mcTypes": [ + "Gui", + "Minecraft", + "NBTTagCompound", + "ResourceLocation", + "Side", + "SideOnly", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/item/GuiNpcMagicBook.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/item/GuiNpcPaintbrush.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "IResource", + "ItemStack", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.IResource", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/item/SubGuiLinkedItem.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "GuiYesNo", + "GuiYesNoCallback", + "ResourceLocation", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/mainmenu/GuiNpcAdvanced.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/mainmenu/GuiNpcAI.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/mainmenu/GuiNPCGlobalMainMenu.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/mainmenu/GuiNPCInv.java": { + "mcImportCount": 7, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ResourceLocation", + "Slot" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.inventory.Slot", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/mainmenu/GuiNpcStats.java": { + "mcImportCount": 3, + "mcTypes": [ + "EnumCreatureAttribute", + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.entity.EnumCreatureAttribute", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/model/GuiCreationScreen.java": { + "mcImportCount": 13, + "mcTypes": [ + "EntityList", + "EntityLiving", + "EntityLivingBase", + "GuiButton", + "GuiScreen", + "Minecraft", + "NBTBase", + "NBTTagByte", + "NBTTagCompound", + "NPCRendererHelper", + "RenderManager", + "RendererLivingEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.entity.NPCRendererHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RendererLivingEntity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagByte", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/gui/model/GuiEntitySelection.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityList", + "EntityLivingBase", + "GuiButton", + "NPCRendererHelper", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "RendererLivingEntity" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.NPCRendererHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RendererLivingEntity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/client/gui/model/GuiModelArms.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/model/GuiModelBody.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/model/GuiModelColor.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "IResource", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.resources.IResource", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/model/GuiModelHead.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/model/GuiModelLegs.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/model/GuiModelRotate.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/model/GuiModelScale.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/model/GuiPresetSave.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/model/GuiPresetSelection.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityLivingBase", + "FontRenderer", + "GuiButton", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "RenderHelper", + "RenderManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/player/AuctionTooltipHandler.java": { + "mcImportCount": 10, + "mcTypes": [ + "EnumChatFormatting", + "GuiContainer", + "GuiScreen", + "ItemStack", + "ItemTooltipEvent", + "Minecraft", + "Side", + "SideOnly", + "Slot", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.inventory.GuiContainer", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.StatCollector", + "net.minecraftforge.event.entity.player.ItemTooltipEvent" + ] + }, + "noppes/npcs/client/gui/player/GuiAnvilRecipes.java": { + "mcImportCount": 9, + "mcTypes": [ + "GuiButton", + "ItemStack", + "MathHelper", + "Minecraft", + "RenderHelper", + "ResourceLocation", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.item.ItemStack", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiAuctionBidding.java": { + "mcImportCount": 6, + "mcTypes": [ + "EnumChatFormatting", + "GuiButton", + "NBTTagCompound", + "ResourceLocation", + "Slot", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.inventory.Slot", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiAuctionInterface.java": { + "mcImportCount": 4, + "mcTypes": [ + "Gui", + "GuiButton", + "RenderHelper", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/GuiAuctionListing.java": { + "mcImportCount": 7, + "mcTypes": [ + "EnumChatFormatting", + "GuiButton", + "NBTTagCompound", + "NBTTagList", + "ResourceLocation", + "Slot", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.inventory.Slot", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiAuctionSell.java": { + "mcImportCount": 6, + "mcTypes": [ + "EnumChatFormatting", + "GuiButton", + "ItemStack", + "ResourceLocation", + "Slot", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiAuctionTrades.java": { + "mcImportCount": 6, + "mcTypes": [ + "EnumChatFormatting", + "NBTTagCompound", + "PositionedSoundRecord", + "ResourceLocation", + "Slot", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.audio.PositionedSoundRecord", + "net.minecraft.inventory.Slot", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiBook.java": { + "mcImportCount": 15, + "mcTypes": [ + "ChatAllowedCharacters", + "EntityPlayer", + "EnumChatFormatting", + "GuiButton", + "GuiScreen", + "I18n", + "ItemStack", + "Items", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "ResourceLocation", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.resources.I18n", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.ChatAllowedCharacters", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/GuiCrate.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiContainer", + "I18n", + "IInventory", + "ResourceLocation", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.gui.inventory.GuiContainer", + "net.minecraft.client.resources.I18n", + "net.minecraft.inventory.IInventory", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/GuiDialogImage.java": { + "mcImportCount": 6, + "mcTypes": [ + "Gui", + "IResource", + "Minecraft", + "ResourceLocation", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.resources.IResource", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/GuiDialogInteract.java": { + "mcImportCount": 11, + "mcTypes": [ + "FontRenderer", + "GuiScreen", + "IChatComponent", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "PositionedSoundRecord", + "RenderHelper", + "RenderManager", + "ResourceLocation", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.audio.PositionedSoundRecord", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.IChatComponent", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/GuiMailbox.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiMailmanWrite.java": { + "mcImportCount": 16, + "mcTypes": [ + "ChatAllowedCharacters", + "ChatComponentTranslation", + "EnumChatFormatting", + "GuiButton", + "GuiScreen", + "GuiYesNo", + "GuiYesNoCallback", + "I18n", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "ResourceLocation", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.client.resources.I18n", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.ChatAllowedCharacters", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiNpcAnvil.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiNPCBankChest.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiButton", + "ItemStack", + "NBTTagCompound", + "RenderHelper", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiNpcFollower.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiButton", + "ItemStack", + "NBTTagCompound", + "RenderHelper", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiNpcFollowerHire.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "ItemStack", + "RenderHelper", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiNPCTrader.java": { + "mcImportCount": 6, + "mcTypes": [ + "ItemStack", + "NBTTagCompound", + "RenderHelper", + "ResourceLocation", + "Slot", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiQuestCompletion.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiRecipes.java": { + "mcImportCount": 10, + "mcTypes": [ + "GuiButton", + "IRecipe", + "ItemStack", + "MathHelper", + "Minecraft", + "RenderHelper", + "ResourceLocation", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.item.ItemStack", + "net.minecraft.item.crafting.IRecipe", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/GuiTransportSelection.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/SubGuiAuctionBid.java": { + "mcImportCount": 3, + "mcTypes": [ + "EnumChatFormatting", + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/SubGuiAuctionBuyNow.java": { + "mcImportCount": 3, + "mcTypes": [ + "EnumChatFormatting", + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/SubGuiAuctionSearch.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionInv.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionStats.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "ItemStack", + "MathHelper", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java": { + "mcImportCount": 8, + "mcTypes": [ + "Blocks", + "Gui", + "GuiButton", + "GuiScreen", + "ItemStack", + "Minecraft", + "RenderHelper", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.init.Blocks", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/inventory/GuiAbilities.java": { + "mcImportCount": 6, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "NBTTagCompound", + "ResourceLocation", + "ScaledResolution", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/inventory/GuiFaction.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "NBTTagList", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/inventory/GuiParty.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityPlayer", + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "NBTTagList", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/inventory/GuiProfiles.java": { + "mcImportCount": 7, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "ResourceLocation", + "ScaledResolution", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityPlayer", + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "NBTTagCompound", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/inventory/GuiSettings.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "GuiYesNo", + "GuiYesNoCallback", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/player/modern/BlurEventHandler.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityRenderer", + "GuiOpenEvent", + "Minecraft", + "ResourceLocation", + "ShaderGroup", + "SubscribeEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.EntityRenderer", + "net.minecraft.client.shader.ShaderGroup", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.event.GuiOpenEvent" + ] + }, + "noppes/npcs/client/gui/player/modern/GuiModernDialogInteract.java": { + "mcImportCount": 9, + "mcTypes": [ + "FontRenderer", + "IChatComponent", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ResourceLocation", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.IChatComponent", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/player/modern/GuiModernQuestDialog.java": { + "mcImportCount": 12, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "IChatComponent", + "ItemStack", + "Minecraft", + "NBTTagCompound", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ResourceLocation", + "ScaledResolution", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.IChatComponent", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeDialog.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeItem.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeKill.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityList", + "EntityLivingBase", + "GuiButton", + "GuiScreen", + "World" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeLocation.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/questtypes/GuiNpcQuestTypeManual.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcBankSetup.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcBard.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcCompanion.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcConversation.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcFollowerSetup.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "ItemStack", + "NBTTagCompound", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcGuard.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityList", + "EntityLivingBase", + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcItemGiver.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcMount.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcSpawner.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcTraderSetup.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "NBTTagCompound", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/roles/GuiNpcTransporter.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/roles/SubGuiNpcConversationLine.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/SubGuiNpcTraderCooldownReset.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/SubGuiNpcTraderSettings.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStock.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStockReset.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/roles/SubGuiNpcTraderStockSlots.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/script/EventGuiScriptList.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/script/GuiScriptGlobal.java": { + "mcImportCount": 4, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "NBTTagCompound", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/script/GuiScriptInterface.java": { + "mcImportCount": 9, + "mcTypes": [ + "GuiButton", + "GuiConfirmOpenLink", + "GuiScreen", + "GuiYesNo", + "GuiYesNoCallback", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiConfirmOpenLink", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/script/SubGuiSelectList.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/select/GuiAnimationSelection.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/select/GuiDialogSelection.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/select/GuiQuestSelection.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/select/GuiSoundSelection.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiButton", + "Minecraft", + "ReflectionHelper", + "ResourceLocation", + "SoundHandler", + "SoundRegistry" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.ReflectionHelper", + "net.minecraft.client.Minecraft", + "net.minecraft.client.audio.SoundHandler", + "net.minecraft.client.audio.SoundRegistry", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/select/GuiTexturePathSelection.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiButton", + "Minecraft", + "ResourceLocation", + "StatCollector", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/select/GuiTextureSelection.java": { + "mcImportCount": 15, + "mcTypes": [ + "AbstractResourcePack", + "CraftingManager", + "DefaultResourcePack", + "FallbackResourceManager", + "GuiButton", + "IResourcePack", + "Loader", + "Minecraft", + "ModContainer", + "NPCResourceHelper", + "ObfuscationReflectionHelper", + "ResourceLocation", + "ResourcePackRepository", + "SimpleReloadableResourceManager", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.ModContainer", + "cpw.mods.fml.common.ObfuscationReflectionHelper", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.AbstractResourcePack", + "net.minecraft.client.resources.DefaultResourcePack", + "net.minecraft.client.resources.FallbackResourceManager", + "net.minecraft.client.resources.IResourcePack", + "net.minecraft.client.resources.NPCResourceHelper", + "net.minecraft.client.resources.ResourcePackRepository", + "net.minecraft.client.resources.SimpleReloadableResourceManager", + "net.minecraft.item.crafting.CraftingManager", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiAuctionNavButton.java": { + "mcImportCount": 7, + "mcTypes": [ + "Gui", + "ItemStack", + "Minecraft", + "RenderHelper", + "RenderItem", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderItem", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiButtonBiDirectional.java": { + "mcImportCount": 2, + "mcTypes": [ + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/GuiButtonNextPage.java": { + "mcImportCount": 2, + "mcTypes": [ + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java": { + "mcImportCount": 12, + "mcTypes": [ + "Container", + "EntityClientPlayerMP", + "FontRenderer", + "GuiButton", + "GuiContainer", + "GuiScreen", + "Minecraft", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.EntityClientPlayerMP", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.inventory.GuiContainer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.inventory.Container", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiContainerNPCInterface2.java": { + "mcImportCount": 2, + "mcTypes": [ + "Container", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.inventory.Container", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/GuiCustomScroll.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiScreen", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiCustomScrollCloner.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiScreen", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiCustomScrollIcons.java": { + "mcImportCount": 5, + "mcTypes": [ + "GuiScreen", + "Minecraft", + "ResourceLocation", + "StatCollector", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiCustomScrollTagged.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiScreen", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiDiagram.java": { + "mcImportCount": 5, + "mcTypes": [ + "FontRenderer", + "Gui", + "Minecraft", + "RenderItem", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.entity.RenderItem" + ] + }, + "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java": { + "mcImportCount": 9, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "GuiYesNo", + "GuiYesNoCallback", + "Minecraft", + "NBTTagCompound", + "NBTTagList", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiEffectBar.java": { + "mcImportCount": 5, + "mcTypes": [ + "FontRenderer", + "GuiScreen", + "Minecraft", + "ScaledResolution", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.texture.TextureManager" + ] + }, + "noppes/npcs/client/gui/util/GuiHoverText.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiScreen", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiMenuSideButton.java": { + "mcImportCount": 6, + "mcTypes": [ + "FontRenderer", + "ItemStack", + "Minecraft", + "RenderHelper", + "RenderItem", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderItem", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/GuiMenuTopButton.java": { + "mcImportCount": 5, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "Minecraft", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiMenuTopIconButton.java": { + "mcImportCount": 8, + "mcTypes": [ + "Blocks", + "FontRenderer", + "GuiButton", + "ItemStack", + "Minecraft", + "RenderHelper", + "RenderItem", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderItem", + "net.minecraft.init.Blocks", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/GuiModelInterface.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "GuiButton", + "OpenGlHelper", + "RenderHelper", + "RenderManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/client/gui/util/GuiModelInterface2.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityLivingBase", + "GuiButton", + "GuiScreen", + "OpenGlHelper", + "RenderHelper", + "RenderManager" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/client/gui/util/GuiNpcButton.java": { + "mcImportCount": 8, + "mcTypes": [ + "FontRenderer", + "GuiButton", + "Minecraft", + "OpenGlHelper", + "RenderHelper", + "ResourceLocation", + "ScaledResolution", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiNPCInterface.java": { + "mcImportCount": 13, + "mcTypes": [ + "EntityClientPlayerMP", + "EntityLivingBase", + "FontRenderer", + "GuiButton", + "GuiScreen", + "GuiScreenEvent", + "Minecraft", + "MinecraftForge", + "OpenGlHelper", + "RenderHelper", + "RenderManager", + "ResourceLocation", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.EntityClientPlayerMP", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector", + "net.minecraftforge.client.event.GuiScreenEvent", + "net.minecraftforge.common.MinecraftForge" + ] + }, + "noppes/npcs/client/gui/util/GuiNPCInterface2.java": { + "mcImportCount": 1, + "mcTypes": [ + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/GuiNpcLabel.java": { + "mcImportCount": 7, + "mcTypes": [ + "FontRenderer", + "Gui", + "GuiScreen", + "Minecraft", + "RenderHelper", + "ScaledResolution", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiNpcMenu.java": { + "mcImportCount": 6, + "mcTypes": [ + "FontRenderer", + "GuiScreen", + "GuiYesNo", + "GuiYesNoCallback", + "Minecraft", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNo", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiNpcSlider.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/util/GuiNpcSquareButton.java": { + "mcImportCount": 3, + "mcTypes": [ + "Gui", + "Minecraft", + "RenderHelper" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.renderer.RenderHelper" + ] + }, + "noppes/npcs/client/gui/util/GuiNPCStringSlot.java": { + "mcImportCount": 3, + "mcTypes": [ + "GuiSlot", + "Minecraft", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiSlot", + "net.minecraft.client.renderer.Tessellator" + ] + }, + "noppes/npcs/client/gui/util/GuiNpcTextArea.java": { + "mcImportCount": 5, + "mcTypes": [ + "FontRenderer", + "GuiScreen", + "MathHelper", + "Minecraft", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/gui/util/GuiNpcTextField.java": { + "mcImportCount": 7, + "mcTypes": [ + "FontRenderer", + "GuiScreen", + "GuiTextField", + "Minecraft", + "RenderHelper", + "ScaledResolution", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiTextField", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiScriptTextArea.java": { + "mcImportCount": 4, + "mcTypes": [ + "ChatAllowedCharacters", + "GuiScreen", + "Minecraft", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.util.ChatAllowedCharacters" + ] + }, + "noppes/npcs/client/gui/util/GuiScriptTextArea1.java": { + "mcImportCount": 4, + "mcTypes": [ + "ChatAllowedCharacters", + "GuiScreen", + "Minecraft", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.util.ChatAllowedCharacters" + ] + }, + "noppes/npcs/client/gui/util/GuiScrollWindow.java": { + "mcImportCount": 7, + "mcTypes": [ + "GuiButton", + "GuiScreen", + "GuiScreenEvent", + "GuiYesNoCallback", + "MinecraftForge", + "ResourceLocation", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.client.gui.GuiYesNoCallback", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.event.GuiScreenEvent", + "net.minecraftforge.common.MinecraftForge" + ] + }, + "noppes/npcs/client/gui/util/GuiTexturedButton.java": { + "mcImportCount": 9, + "mcTypes": [ + "FontRenderer", + "IResource", + "ITextureObject", + "Minecraft", + "OpenGlHelper", + "ResourceLocation", + "StatCollector", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.ITextureObject", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.resources.IResource", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/GuiToggleButton.java": { + "mcImportCount": 4, + "mcTypes": [ + "FontRenderer", + "Minecraft", + "OpenGlHelper", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/GuiUtil.java": { + "mcImportCount": 4, + "mcTypes": [ + "Minecraft", + "OpenGlHelper", + "ScaledResolution", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator" + ] + }, + "noppes/npcs/client/gui/util/IButtonListener.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/util/IGuiClose.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/util/IGuiData.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/util/IGuiError.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/util/IPartyData.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/gui/util/SubGuiAPISelect.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/util/SubGuiCategoryMoveConfirm.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/client/gui/util/SubGuiConfirmLink.java": { + "mcImportCount": 2, + "mcTypes": [ + "GuiButton", + "I18n" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.resources.I18n" + ] + }, + "noppes/npcs/client/gui/util/SubGuiInterface.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/util/SubGuiNpcCooldownPicker.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiButton" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiButton" + ] + }, + "noppes/npcs/client/gui/util/key/OverlayKeyPresetViewer.java": { + "mcImportCount": 3, + "mcTypes": [ + "FontRenderer", + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/script/GoToLineDialog.java": { + "mcImportCount": 5, + "mcTypes": [ + "ChatAllowedCharacters", + "FontRenderer", + "Gui", + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.Gui", + "net.minecraft.util.ChatAllowedCharacters", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/script/RenameRefactorHandler.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen" + ] + }, + "noppes/npcs/client/gui/util/script/SearchReplaceBar.java": { + "mcImportCount": 5, + "mcTypes": [ + "ChatAllowedCharacters", + "FontRenderer", + "Gui", + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.Gui", + "net.minecraft.util.ChatAllowedCharacters", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java": { + "mcImportCount": 4, + "mcTypes": [ + "FontRenderer", + "Gui", + "Minecraft", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.ScaledResolution" + ] + }, + "noppes/npcs/client/gui/util/script/interpreter/hover/GutterIconRenderer.java": { + "mcImportCount": 3, + "mcTypes": [ + "Gui", + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/script/interpreter/hover/TokenHoverRenderer.java": { + "mcImportCount": 3, + "mcTypes": [ + "Gui", + "Minecraft", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.Gui", + "net.minecraft.client.gui.ScaledResolution" + ] + }, + "noppes/npcs/client/gui/util/script/interpreter/js_parser/DtsModScanner.java": { + "mcImportCount": 2, + "mcTypes": [ + "Loader", + "ModContainer" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.ModContainer" + ] + }, + "noppes/npcs/client/gui/util/script/interpreter/js_parser/JSTypeRegistry.java": { + "mcImportCount": 2, + "mcTypes": [ + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java": { + "mcImportCount": 3, + "mcTypes": [ + "IResource", + "IResourceManager", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.resources.IResource", + "net.minecraft.client.resources.IResourceManager", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/key/KeyPreset.java": { + "mcImportCount": 3, + "mcTypes": [ + "GameSettings", + "Minecraft", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.settings.GameSettings", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/key/KeyPresetManager.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/client/model/ModelMPM.java": { + "mcImportCount": 8, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayer", + "MathHelper", + "Minecraft", + "ModelBase", + "ModelBiped", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/ModelNpcCrystal.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "MathHelper", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/ModelNpcDragon.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "MathHelper", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/ModelNPCGolem.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/ModelNPCMale.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayer", + "MathHelper", + "ModelBiped", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/ModelNpcSlime.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/ModelPony.java": { + "mcImportCount": 10, + "mcTypes": [ + "Entity", + "EntityPlayer", + "IResource", + "ItemStack", + "MathHelper", + "Minecraft", + "ModelBase", + "ModelRenderer", + "RenderManager", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.resources.IResource", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/ModelPonyArmor.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/ModelSkirtArmor.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelBiped", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/animation/AniCrawling.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/animation/AniHug.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/blocks/ModelAnvil.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelBeam.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelBigSign.java": { + "mcImportCount": 2, + "mcTypes": [ + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/blocks/ModelCampfire.java": { + "mcImportCount": 2, + "mcTypes": [ + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/blocks/ModelCarpentryBench.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelCrate.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelInk.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelLongCrate.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelMailbox.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelMailboxWow.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelPedestal.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelShelf.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelSign.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelStool.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelTable.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelTombstone1.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelTombstone2.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelTombstone3.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/ModelWeaponRack.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java": { + "mcImportCount": 3, + "mcTypes": [ + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/candle/ModelCandle.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/chair/ModelChair.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/lantern/LanternFloor.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/lantern/LanternWall.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelBox", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/ModelBeard.java": { + "mcImportCount": 1, + "mcTypes": [ + "Entity" + ], + "mcFqns": [ + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/ModelBodywear.java": { + "mcImportCount": 2, + "mcTypes": [ + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/ModelBreasts.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/ModelDuckBeak.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/ModelEars.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/ModelHair.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/ModelHeadwear.java": { + "mcImportCount": 2, + "mcTypes": [ + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/ModelHorns.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/ModelLegs.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/part/ModelLimbWear.java": { + "mcImportCount": 2, + "mcTypes": [ + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/ModelMohawk.java": { + "mcImportCount": 1, + "mcTypes": [ + "Entity" + ], + "mcFqns": [ + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/ModelSkirt.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "MathHelper", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/model/part/ModelSnout.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/ModelTail.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "MathHelper", + "ModelRenderer", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/model/part/ModelWings.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/part/horns/ModelAntennasBack.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/horns/ModelAntennasFront.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/horns/ModelBullHorns.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/part/legs/ModelNagaLegs.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/part/tails/ModelCanineTail.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "ModelBiped", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/tails/ModelDragonTail.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/tails/ModelFeatherTail.java": { + "mcImportCount": 2, + "mcTypes": [ + "ModelBiped", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "MathHelper", + "ModelBiped", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/model/part/tails/ModelRodentTail.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/client/model/part/tails/ModelTailFin.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/util/Model2DRenderer.java": { + "mcImportCount": 6, + "mcTypes": [ + "GLAllocation", + "ModelBase", + "ModelRenderer", + "Side", + "SideOnly", + "Tessellator" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.GLAllocation", + "net.minecraft.client.renderer.Tessellator" + ] + }, + "noppes/npcs/client/model/util/ModelPartInterface.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "ModelRenderer", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/model/util/ModelPlane.java": { + "mcImportCount": 5, + "mcTypes": [ + "ModelBox", + "ModelRenderer", + "PositionTextureVertex", + "Tessellator", + "TexturedQuad" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.model.PositionTextureVertex", + "net.minecraft.client.model.TexturedQuad", + "net.minecraft.client.renderer.Tessellator" + ] + }, + "noppes/npcs/client/model/util/ModelPlaneRenderer.java": { + "mcImportCount": 2, + "mcTypes": [ + "ModelBase", + "ModelRenderer" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/client/model/util/ModelRenderPassHelper.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "ModelBase", + "NPCRendererHelper", + "RendererLivingEntity" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.renderer.entity.NPCRendererHelper", + "net.minecraft.client.renderer.entity.RendererLivingEntity", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/client/model/util/ModelScaleRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "GLAllocation", + "ModelBase", + "ModelBox", + "ModelRenderer", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelBox", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.GLAllocation", + "net.minecraft.client.renderer.Tessellator" + ] + }, + "noppes/npcs/client/renderer/AnimationHelper.java": { + "mcImportCount": 1, + "mcTypes": [ + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft" + ] + }, + "noppes/npcs/client/renderer/ImageBufferDownloadAlt.java": { + "mcImportCount": 1, + "mcTypes": [ + "ImageBufferDownload" + ], + "mcFqns": [ + "net.minecraft.client.renderer.ImageBufferDownload" + ] + }, + "noppes/npcs/client/renderer/ImageData.java": { + "mcImportCount": 5, + "mcTypes": [ + "IResource", + "Minecraft", + "ResourceLocation", + "SkinManager", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.resources.IResource", + "net.minecraft.client.resources.SkinManager", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/MarkRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityLivingBase", + "GLAllocation", + "Minecraft", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.GLAllocation", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/NpcItemRenderer.java": { + "mcImportCount": 9, + "mcTypes": [ + "EntityLivingBase", + "IIcon", + "IItemRenderer", + "ItemRenderer", + "ItemStack", + "Minecraft", + "ResourceLocation", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/RenderCNPCHand.java": { + "mcImportCount": 11, + "mcTypes": [ + "EntityClientPlayerMP", + "EntityPlayerSP", + "ItemRenderer", + "ItemStack", + "MathHelper", + "Minecraft", + "OpenGlHelper", + "Render", + "RenderHelper", + "RenderManager", + "RenderPlayer" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.EntityClientPlayerMP", + "net.minecraft.client.entity.EntityPlayerSP", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RenderPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/client/renderer/RenderCNPCPlayer.java": { + "mcImportCount": 18, + "mcTypes": [ + "AbstractClientPlayer", + "ActiveRenderInfo", + "Block", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EntityRenderer", + "Loader", + "Material", + "MathHelper", + "Minecraft", + "ModelBiped", + "ModelRenderer", + "Render", + "RenderHelper", + "RenderManager", + "RenderPlayer", + "RenderPlayerEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "net.minecraft.block.Block", + "net.minecraft.block.material.Material", + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.AbstractClientPlayer", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.ActiveRenderInfo", + "net.minecraft.client.renderer.EntityRenderer", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RenderPlayer", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.MathHelper", + "net.minecraftforge.client.event.RenderPlayerEvent" + ] + }, + "noppes/npcs/client/renderer/RenderCustomNpc.java": { + "mcImportCount": 7, + "mcTypes": [ + "EntityList", + "EntityLiving", + "EntityLivingBase", + "ModelBase", + "NPCRendererHelper", + "RenderManager", + "RendererLivingEntity" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.renderer.entity.NPCRendererHelper", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RendererLivingEntity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/client/renderer/RenderNpcDragon.java": { + "mcImportCount": 1, + "mcTypes": [ + "ModelBase" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase" + ] + }, + "noppes/npcs/client/renderer/RenderNPCHumanMale.java": { + "mcImportCount": 19, + "mcTypes": [ + "Block", + "Entity", + "EntityLiving", + "EntityLivingBase", + "ForgeHooksClient", + "IItemRenderer", + "Item", + "ItemArmor", + "ItemBlock", + "ItemBow", + "ItemRenderType", + "ItemRendererHelper", + "ItemStack", + "Items", + "MinecraftForgeClient", + "ModelBiped", + "OpenGlHelper", + "RenderBiped", + "RenderBlocks" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.entity.RenderBiped", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemBow", + "net.minecraft.item.ItemStack", + "net.minecraftforge.client.ForgeHooksClient", + "net.minecraftforge.client.IItemRenderer", + "net.minecraftforge.client.IItemRenderer.ItemRenderType", + "net.minecraftforge.client.IItemRenderer.ItemRendererHelper", + "net.minecraftforge.client.MinecraftForgeClient" + ] + }, + "noppes/npcs/client/renderer/RenderNPCInterface.java": { + "mcImportCount": 19, + "mcTypes": [ + "AbstractClientPlayer", + "BossStatus", + "Entity", + "EntityLiving", + "EntityLivingBase", + "FontRenderer", + "IResource", + "MathHelper", + "Minecraft", + "MinecraftForge", + "ModelBase", + "OpenGlHelper", + "RenderLiving", + "RenderLivingEvent", + "RenderManager", + "ResourceLocation", + "SkinManager", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.entity.AbstractClientPlayer", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.RenderLiving", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.resources.IResource", + "net.minecraft.client.resources.SkinManager", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.boss.BossStatus", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.event.RenderLivingEvent", + "net.minecraftforge.common.MinecraftForge" + ] + }, + "noppes/npcs/client/renderer/RenderNPCPony.java": { + "mcImportCount": 18, + "mcTypes": [ + "ArmorMaterial", + "Block", + "Entity", + "EntityLiving", + "EntityLivingBase", + "IResource", + "Item", + "ItemArmor", + "ItemBlock", + "ItemBow", + "ItemStack", + "Items", + "Minecraft", + "ModelRenderer", + "RenderBiped", + "RenderBlocks", + "RenderManager", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.model.ModelRenderer", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.entity.RenderBiped", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.resources.IResource", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemArmor.ArmorMaterial", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemBow", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/RenderNpcSlime.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "ModelBase" + ], + "mcFqns": [ + "net.minecraft.client.model.ModelBase", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/client/renderer/RenderProjectile.java": { + "mcImportCount": 18, + "mcTypes": [ + "Block", + "Entity", + "IIcon", + "ItemBlock", + "ItemPotion", + "ItemRenderer", + "ItemStack", + "MathHelper", + "Minecraft", + "PotionHelper", + "Render", + "RenderBlocks", + "ResourceLocation", + "Side", + "SideOnly", + "Tessellator", + "TextureManager", + "TextureMap" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.renderer.texture.TextureMap", + "net.minecraft.entity.Entity", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemPotion", + "net.minecraft.item.ItemStack", + "net.minecraft.potion.PotionHelper", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockBannerRenderer.java": { + "mcImportCount": 13, + "mcTypes": [ + "Block", + "IIcon", + "ItemStack", + "MathHelper", + "Minecraft", + "OpenGlHelper", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "Tessellator", + "TextureManager", + "TextureMap", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.renderer.texture.TextureMap", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockBarrelRenderer.java": { + "mcImportCount": 7, + "mcTypes": [ + "Block", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockBeamRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "RenderBlocks", + "RenderingRegistry", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockBigSignRenderer.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "FontRenderer", + "IBlockAccess", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "Block", + "IBlockAccess", + "ISimpleBlockRenderingHandler", + "RenderBlocks" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockBookRenderer.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "Minecraft", + "ModelBook", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.model.ModelBook", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "IBlockAccess", + "ISimpleBlockRenderingHandler", + "RenderBlocks", + "RenderingRegistry" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockCampfireRenderer.java": { + "mcImportCount": 6, + "mcTypes": [ + "Block", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "IBlockAccess", + "ISimpleBlockRenderingHandler", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TileEntity", + "TileEntitySpecialRenderer" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "IBlockAccess", + "ISimpleBlockRenderingHandler", + "OpenGlHelper", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TileEntity", + "TileEntitySpecialRenderer" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockChairRenderer.java": { + "mcImportCount": 7, + "mcTypes": [ + "Block", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockCouchWoodRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "ModelBase", + "RenderBlocks", + "RenderingRegistry", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.tileentity.TileEntity" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "Minecraft", + "ModelBase", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockCrateRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "Block", + "RenderBlocks", + "RenderingRegistry", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.tileentity.TileEntity" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "IBlockAccess", + "ISimpleBlockRenderingHandler", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TileEntity", + "TileEntitySpecialRenderer" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "IBlockAccess", + "ISimpleBlockRenderingHandler", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TileEntity", + "TileEntitySpecialRenderer" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockPedestalRenderer.java": { + "mcImportCount": 10, + "mcTypes": [ + "Block", + "ItemBlock", + "ItemStack", + "Minecraft", + "RenderBlocks", + "RenderManager", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java": { + "mcImportCount": 10, + "mcTypes": [ + "Block", + "IBlockAccess", + "ISimpleBlockRenderingHandler", + "Minecraft", + "RenderBlocks", + "RenderItem", + "ResourceLocation", + "TextureManager", + "TileEntity", + "TileEntitySpecialRenderer" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.entity.RenderItem", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.IBlockAccess" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockScriptedRenderer.java": { + "mcImportCount": 16, + "mcTypes": [ + "Block", + "EntityItem", + "FontRenderer", + "ForgeHooksClient", + "IBlockAccess", + "IIcon", + "ItemBlock", + "ItemRenderer", + "ItemStack", + "Minecraft", + "RenderBlocks", + "RenderHelper", + "RenderingRegistry", + "Tessellator", + "TextureMap", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureMap", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.world.IBlockAccess", + "net.minecraftforge.client.ForgeHooksClient" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockShelfRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "RenderBlocks", + "RenderingRegistry", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockShortLampRenderer.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "Minecraft", + "OpenGlHelper", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockSignRenderer.java": { + "mcImportCount": 11, + "mcTypes": [ + "Block", + "IIcon", + "ItemStack", + "Minecraft", + "OpenGlHelper", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TextureMap", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.renderer.texture.TextureMap", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockStoolRenderer.java": { + "mcImportCount": 7, + "mcTypes": [ + "Block", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockTableRenderer.java": { + "mcImportCount": 7, + "mcTypes": [ + "Block", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockTallLampRenderer.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "Minecraft", + "OpenGlHelper", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "TextureManager", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockTombstoneRenderer.java": { + "mcImportCount": 6, + "mcTypes": [ + "Block", + "FontRenderer", + "Minecraft", + "RenderBlocks", + "RenderingRegistry", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.tileentity.TileEntity" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockWallBannerRenderer.java": { + "mcImportCount": 16, + "mcTypes": [ + "Block", + "Blocks", + "IIcon", + "Item", + "ItemBlock", + "ItemStack", + "MathHelper", + "Minecraft", + "OpenGlHelper", + "RenderBlocks", + "RenderingRegistry", + "ResourceLocation", + "Tessellator", + "TextureManager", + "TextureMap", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.client.renderer.texture.TextureMap", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/client/renderer/blocks/BlockWeaponRackRenderer.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "ItemBlock", + "ItemStack", + "Minecraft", + "RenderBlocks", + "RenderManager", + "RenderingRegistry", + "TileEntity" + ], + "mcFqns": [ + "cpw.mods.fml.client.registry.RenderingRegistry", + "net.minecraft.block.Block", + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.tileentity.TileEntity" + ] + }, + "noppes/npcs/client/renderer/items/ItemBannerRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "IItemRenderer", + "ItemStack", + "Minecraft", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.item.ItemStack", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "IItemRenderer", + "ItemStack", + "Minecraft", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.item.ItemStack", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "IItemRenderer", + "ItemStack", + "Minecraft", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.item.ItemStack", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/items/ItemCustomRenderer.java": { + "mcImportCount": 15, + "mcTypes": [ + "Entity", + "EntityItem", + "EntityLivingBase", + "IIcon", + "IItemRenderer", + "ItemRenderer", + "ItemStack", + "MathHelper", + "Minecraft", + "OpenGlHelper", + "RenderItem", + "RenderManager", + "ResourceLocation", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.RenderItem", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java": { + "mcImportCount": 2, + "mcTypes": [ + "IItemRenderer", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "IItemRenderer", + "ItemStack", + "Minecraft", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.item.ItemStack", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/items/ItemToolRenderer.java": { + "mcImportCount": 14, + "mcTypes": [ + "Entity", + "EntityItem", + "EntityLivingBase", + "IIcon", + "IItemRenderer", + "ItemRenderer", + "ItemStack", + "Minecraft", + "OpenGlHelper", + "RenderItem", + "RenderManager", + "ResourceLocation", + "Tessellator", + "TextureManager" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.OpenGlHelper", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.client.renderer.entity.RenderItem", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.texture.TextureManager", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon", + "net.minecraft.util.ResourceLocation", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "IItemRenderer", + "ItemStack", + "RenderBlocks", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.item.ItemStack", + "net.minecraftforge.client.IItemRenderer" + ] + }, + "noppes/npcs/client/util/Color.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/compat/PixelmonHelper.java": { + "mcImportCount": 11, + "mcTypes": [ + "ChatComponentText", + "Entity", + "EntityList", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "EntityTameable", + "Loader", + "Minecraft", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "net.minecraft.client.Minecraft", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.passive.EntityTameable", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ChatComponentText", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/config/ConfigClient.java": { + "mcImportCount": 3, + "mcTypes": [ + "Configuration", + "FMLLog", + "Property" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration", + "net.minecraftforge.common.config.Property" + ] + }, + "noppes/npcs/config/ConfigDebug.java": { + "mcImportCount": 3, + "mcTypes": [ + "Configuration", + "FMLLog", + "Property" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration", + "net.minecraftforge.common.config.Property" + ] + }, + "noppes/npcs/config/ConfigEnergy.java": { + "mcImportCount": 2, + "mcTypes": [ + "Configuration", + "FMLLog" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration" + ] + }, + "noppes/npcs/config/ConfigExperimental.java": { + "mcImportCount": 3, + "mcTypes": [ + "Configuration", + "FMLLog", + "Property" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration", + "net.minecraftforge.common.config.Property" + ] + }, + "noppes/npcs/config/ConfigItem.java": { + "mcImportCount": 3, + "mcTypes": [ + "Configuration", + "FMLLog", + "Property" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration", + "net.minecraftforge.common.config.Property" + ] + }, + "noppes/npcs/config/ConfigMain.java": { + "mcImportCount": 3, + "mcTypes": [ + "Configuration", + "FMLLog", + "Property" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration", + "net.minecraftforge.common.config.Property" + ] + }, + "noppes/npcs/config/ConfigMarket.java": { + "mcImportCount": 2, + "mcTypes": [ + "Configuration", + "FMLLog" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration" + ] + }, + "noppes/npcs/config/ConfigMixin.java": { + "mcImportCount": 3, + "mcTypes": [ + "Configuration", + "FMLLog", + "Property" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraftforge.common.config.Configuration", + "net.minecraftforge.common.config.Property" + ] + }, + "noppes/npcs/config/ConfigScript.java": { + "mcImportCount": 5, + "mcTypes": [ + "Configuration", + "EntityPlayer", + "FMLLog", + "MinecraftServer", + "Property" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLLog", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.server.MinecraftServer", + "net.minecraftforge.common.config.Configuration", + "net.minecraftforge.common.config.Property" + ] + }, + "noppes/npcs/config/GlyphCache.java": { + "mcImportCount": 4, + "mcTypes": [ + "GLAllocation", + "Minecraft", + "ResourceLocation", + "ScaledResolution" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.ScaledResolution", + "net.minecraft.client.renderer.GLAllocation", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/config/StringCache.java": { + "mcImportCount": 3, + "mcTypes": [ + "Minecraft", + "ResourceLocation", + "Tessellator" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.Tessellator", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/config/legacy/LegacyConfig.java": { + "mcImportCount": 2, + "mcTypes": [ + "Minecraft", + "MinecraftServer" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.server.MinecraftServer" + ] + }, + "noppes/npcs/constants/EnumAuctionStatus.java": { + "mcImportCount": 1, + "mcTypes": [ + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/constants/EnumClaimType.java": { + "mcImportCount": 1, + "mcTypes": [ + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/constants/EnumCompanionTalent.java": { + "mcImportCount": 3, + "mcTypes": [ + "Item", + "ItemStack", + "Items" + ], + "mcFqns": [ + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/constants/EnumNotificationType.java": { + "mcImportCount": 1, + "mcTypes": [ + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/constants/EnumPotionType.java": { + "mcImportCount": 1, + "mcTypes": [ + "Potion" + ], + "mcFqns": [ + "net.minecraft.potion.Potion" + ] + }, + "noppes/npcs/constants/EnumStockReset.java": { + "mcImportCount": 1, + "mcTypes": [ + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/containers/ContainerAnvilRepair.java": { + "mcImportCount": 11, + "mcTypes": [ + "Container", + "EntityPlayer", + "EntityPlayerMP", + "ICrafting", + "IInventory", + "InventoryCraftResult", + "InventoryCrafting", + "InventoryPlayer", + "ItemStack", + "Slot", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.entity.player.InventoryPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.ICrafting", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.InventoryCraftResult", + "net.minecraft.inventory.InventoryCrafting", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/containers/ContainerAuction.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerAuctionBidding.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "InventoryBasic", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.InventoryBasic", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerAuctionListing.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerAuctionSell.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "InventoryBasic", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.InventoryBasic", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerAuctionTrades.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/containers/ContainerCarpentryBench.java": { + "mcImportCount": 13, + "mcTypes": [ + "Container", + "EntityPlayer", + "EntityPlayerMP", + "ICrafting", + "IInventory", + "InventoryCraftResult", + "InventoryCrafting", + "InventoryPlayer", + "ItemStack", + "S2FPacketSetSlot", + "Slot", + "SlotCrafting", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.entity.player.InventoryPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.ICrafting", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.InventoryCraftResult", + "net.minecraft.inventory.InventoryCrafting", + "net.minecraft.inventory.Slot", + "net.minecraft.inventory.SlotCrafting", + "net.minecraft.item.ItemStack", + "net.minecraft.network.play.server.S2FPacketSetSlot", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/containers/ContainerCrate.java": { + "mcImportCount": 5, + "mcTypes": [ + "Container", + "EntityPlayer", + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerCustomGui.java": { + "mcImportCount": 6, + "mcTypes": [ + "Container", + "EntityPlayer", + "EntityPlayerMP", + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerEmpty.java": { + "mcImportCount": 2, + "mcTypes": [ + "Container", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container" + ] + }, + "noppes/npcs/containers/ContainerMail.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerManageAuction.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "InventoryBasic", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.InventoryBasic", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerManageBanks.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerManageRecipes.java": { + "mcImportCount": 5, + "mcTypes": [ + "Container", + "EntityPlayer", + "InventoryBasic", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.InventoryBasic", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerMerchantAdd.java": { + "mcImportCount": 10, + "mcTypes": [ + "EntityPlayer", + "ICrafting", + "IInventory", + "IMerchant", + "InventoryBasic", + "ItemStack", + "Side", + "SideOnly", + "Slot", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.IMerchant", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.ICrafting", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.InventoryBasic", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/containers/ContainerNPCBankInterface.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNPCBankLarge.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/containers/ContainerNPCBankSmall.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/containers/ContainerNPCBankUnlock.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/containers/ContainerNPCBankUpgrade.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/containers/ContainerNPCCompanion.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNPCFollower.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNPCFollowerHire.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "InventoryBasic", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.InventoryBasic", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNPCFollowerSetup.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNpcInterface.java": { + "mcImportCount": 3, + "mcTypes": [ + "Container", + "EntityPlayer", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/containers/ContainerNPCInv.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNpcItemGiver.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNpcQuestReward.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNpcQuestTypeItem.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNPCTrader.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/ContainerNPCTraderSetup.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/InventoryAuctionDisplay.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/InventoryNPC.java": { + "mcImportCount": 4, + "mcTypes": [ + "Container", + "EntityPlayer", + "IInventory", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/InventoryNpcTrader.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/SlotAuctionDisplay.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/SlotCompanionArmor.java": { + "mcImportCount": 6, + "mcTypes": [ + "IIcon", + "IInventory", + "ItemArmor", + "ItemBlock", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon" + ] + }, + "noppes/npcs/containers/SlotCompanionWeapon.java": { + "mcImportCount": 3, + "mcTypes": [ + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/SlotNPCArmor.java": { + "mcImportCount": 6, + "mcTypes": [ + "IIcon", + "IInventory", + "ItemArmor", + "ItemBlock", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon" + ] + }, + "noppes/npcs/containers/SlotNpcBankCurrency.java": { + "mcImportCount": 3, + "mcTypes": [ + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/SlotNpcMercenaryCurrency.java": { + "mcImportCount": 4, + "mcTypes": [ + "IInventory", + "Item", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/SlotNpcTraderItems.java": { + "mcImportCount": 3, + "mcTypes": [ + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/containers/SlotValid.java": { + "mcImportCount": 3, + "mcTypes": [ + "IInventory", + "ItemStack", + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.IInventory", + "net.minecraft.inventory.Slot", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/controllers/AnimationController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/AuctionConfigSync.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/AuctionController.java": { + "mcImportCount": 8, + "mcTypes": [ + "ChatComponentText", + "CompressedStreamTools", + "EntityPlayer", + "EntityPlayerMP", + "EnumChatFormatting", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.EnumChatFormatting" + ] + }, + "noppes/npcs/controllers/BankController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/ChunkController.java": { + "mcImportCount": 8, + "mcTypes": [ + "ChunkCoordIntPair", + "Entity", + "ForgeChunkManager", + "LoadingCallback", + "MathHelper", + "Ticket", + "Type", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.util.MathHelper", + "net.minecraft.world.ChunkCoordIntPair", + "net.minecraft.world.World", + "net.minecraftforge.common.ForgeChunkManager", + "net.minecraftforge.common.ForgeChunkManager.LoadingCallback", + "net.minecraftforge.common.ForgeChunkManager.Ticket", + "net.minecraftforge.common.ForgeChunkManager.Type" + ] + }, + "noppes/npcs/controllers/CustomEffectController.java": { + "mcImportCount": 4, + "mcTypes": [ + "CompressedStreamTools", + "EntityPlayer", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/CustomGuiController.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/DialogController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/FactionController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/GlobalDataController.java": { + "mcImportCount": 2, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/HookDefinition.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/controllers/LinkedItemController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/LinkedNpcController.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/MagicController.java": { + "mcImportCount": 4, + "mcTypes": [ + "CompressedStreamTools", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/MarketRegistry.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/PartyController.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/controllers/PlayerDataController.java": { + "mcImportCount": 9, + "mcTypes": [ + "ChatComponentText", + "CompressedStreamTools", + "EntityPlayer", + "EntityPlayerMP", + "ICommandSender", + "MinecraftServer", + "NBTTagCompound", + "NBTTagList", + "PlayerSelector" + ], + "mcFqns": [ + "net.minecraft.command.ICommandSender", + "net.minecraft.command.PlayerSelector", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.ChatComponentText" + ] + }, + "noppes/npcs/controllers/PlayerQuestController.java": { + "mcImportCount": 3, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "noppes/npcs/controllers/ProfileConfigSync.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/QuestController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/RecipeController.java": { + "mcImportCount": 6, + "mcTypes": [ + "CompressedStreamTools", + "CraftingManager", + "InventoryCrafting", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.inventory.InventoryCrafting", + "net.minecraft.item.ItemStack", + "net.minecraft.item.crafting.CraftingManager", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/ScriptConfigSync.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/ScriptContainer.java": { + "mcImportCount": 2, + "mcTypes": [ + "Event", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/ScriptController.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "MinecraftServer", + "NBTTagCompound", + "NBTTagList", + "NBTTagString", + "SubscribeEvent", + "WorldEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.server.MinecraftServer", + "net.minecraftforge.event.world.WorldEvent" + ] + }, + "noppes/npcs/controllers/ScriptEntityData.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "IExtendedEntityProperties", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World", + "net.minecraftforge.common.IExtendedEntityProperties" + ] + }, + "noppes/npcs/controllers/ServerCloneController.java": { + "mcImportCount": 8, + "mcTypes": [ + "ChatComponentText", + "CompressedStreamTools", + "Entity", + "EntityList", + "ICommandSender", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.command.ICommandSender", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.ChatComponentText" + ] + }, + "noppes/npcs/controllers/ServerTagMapController.java": { + "mcImportCount": 2, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/SpawnController.java": { + "mcImportCount": 4, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList", + "WeightedRandom" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.WeightedRandom" + ] + }, + "noppes/npcs/controllers/TagController.java": { + "mcImportCount": 5, + "mcTypes": [ + "CompressedStreamTools", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/controllers/TransportController.java": { + "mcImportCount": 3, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/AbilityScript.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/Animation.java": { + "mcImportCount": 4, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/AnimationData.java": { + "mcImportCount": 6, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.AxisAlignedBB" + ] + }, + "noppes/npcs/controllers/data/AuctionBlacklist.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "GameRegistry", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/AuctionClaim.java": { + "mcImportCount": 2, + "mcTypes": [ + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/AuctionListing.java": { + "mcImportCount": 2, + "mcTypes": [ + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/Availability.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "MathHelper", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/controllers/data/Bank.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/BankData.java": { + "mcImportCount": 6, + "mcTypes": [ + "Container", + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.inventory.Container", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/BuiltInAnimation.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/ChainedAbilityScript.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/CustomEffect.java": { + "mcImportCount": 3, + "mcTypes": [ + "Constants", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraftforge.common.util.Constants" + ] + }, + "noppes/npcs/controllers/data/DataScript.java": { + "mcImportCount": 8, + "mcTypes": [ + "Entity", + "Event", + "FMLCommonHandler", + "NBTTagCompound", + "NBTTagList", + "Side", + "World", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.eventhandler.Event", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.entity.Entity", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer" + ] + }, + "noppes/npcs/controllers/data/DataTransform.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/Dialog.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/DialogCategory.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/DialogOption.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/EffectScript.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/Faction.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/FactionOptions.java": { + "mcImportCount": 3, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "noppes/npcs/controllers/data/ForgeDataScript.java": { + "mcImportCount": 10, + "mcTypes": [ + "ChunkDataEvent", + "ChunkEvent", + "ChunkWatchEvent", + "EntityEvent", + "Event", + "FMLNetworkEvent", + "ItemTooltipEvent", + "NBTTagCompound", + "TickEvent", + "WorldEvent" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "cpw.mods.fml.common.gameevent.TickEvent", + "cpw.mods.fml.common.network.FMLNetworkEvent", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraftforge.event.entity.EntityEvent", + "net.minecraftforge.event.entity.player.ItemTooltipEvent", + "net.minecraftforge.event.world.ChunkDataEvent", + "net.minecraftforge.event.world.ChunkEvent", + "net.minecraftforge.event.world.ChunkWatchEvent", + "net.minecraftforge.event.world.WorldEvent" + ] + }, + "noppes/npcs/controllers/data/GlobalNPCDataScript.java": { + "mcImportCount": 2, + "mcTypes": [ + "BlockPos", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.math.BlockPos" + ] + }, + "noppes/npcs/controllers/data/IScriptHandler.java": { + "mcImportCount": 2, + "mcTypes": [ + "Event", + "FMLCommonHandler" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.eventhandler.Event" + ] + }, + "noppes/npcs/controllers/data/IScriptHandlerPacket.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/IScriptUnit.java": { + "mcImportCount": 2, + "mcTypes": [ + "Event", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/JaninoScriptHandler.java": { + "mcImportCount": 2, + "mcTypes": [ + "Event", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/LinkedItem.java": { + "mcImportCount": 3, + "mcTypes": [ + "Constants", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraftforge.common.util.Constants" + ] + }, + "noppes/npcs/controllers/data/LinkedItemScript.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/Magic.java": { + "mcImportCount": 5, + "mcTypes": [ + "GameRegistry", + "Item", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/MarkData.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "IExtendedEntityProperties", + "NBTTagCompound", + "NBTTagList", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.world.World", + "net.minecraftforge.common.IExtendedEntityProperties" + ] + }, + "noppes/npcs/controllers/data/MultiScriptHandler.java": { + "mcImportCount": 2, + "mcTypes": [ + "Event", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/Party.java": { + "mcImportCount": 7, + "mcTypes": [ + "ChatComponentText", + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound", + "NBTTagList", + "Side" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.relauncher.Side", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.ChatComponentText" + ] + }, + "noppes/npcs/controllers/data/PlayerAbilityData.java": { + "mcImportCount": 7, + "mcTypes": [ + "DamageSource", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/controllers/data/PlayerAbilityHotbarData.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "FMLCommonHandler", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/PlayerBankData.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/PlayerData.java": { + "mcImportCount": 7, + "mcTypes": [ + "CompressedStreamTools", + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "IExtendedEntityProperties", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World", + "net.minecraftforge.common.IExtendedEntityProperties" + ] + }, + "noppes/npcs/controllers/data/PlayerDataScript.java": { + "mcImportCount": 4, + "mcTypes": [ + "BlockPos", + "EntityPlayer", + "Event", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.math.BlockPos" + ] + }, + "noppes/npcs/controllers/data/PlayerEffect.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/controllers/data/PlayerFactionData.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/PlayerItemGiverData.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/PlayerMail.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "IInventory", + "ItemStack", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/controllers/data/PlayerMailData.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/PlayerQuestData.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/PlayerTradeData.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/controllers/data/Quest.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/QuestCategory.java": { + "mcImportCount": 3, + "mcTypes": [ + "Constants", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraftforge.common.util.Constants" + ] + }, + "noppes/npcs/controllers/data/QuestData.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/RecipeAnvil.java": { + "mcImportCount": 3, + "mcTypes": [ + "Constants", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraftforge.common.util.Constants" + ] + }, + "noppes/npcs/controllers/data/RecipeCarpentry.java": { + "mcImportCount": 8, + "mcTypes": [ + "Block", + "Constants", + "InventoryCrafting", + "Item", + "ItemStack", + "NBTTagCompound", + "ShapedRecipes", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.inventory.InventoryCrafting", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.item.crafting.ShapedRecipes", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World", + "net.minecraftforge.common.util.Constants" + ] + }, + "noppes/npcs/controllers/data/RecipeScript.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/controllers/data/RecipesDefault.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "Blocks", + "Item", + "ItemStack", + "Items" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/controllers/data/ScriptHandler.java": { + "mcImportCount": 1, + "mcTypes": [ + "Event" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event" + ] + }, + "noppes/npcs/controllers/data/SingleScriptHandler.java": { + "mcImportCount": 3, + "mcTypes": [ + "Constants", + "Event", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraftforge.common.util.Constants" + ] + }, + "noppes/npcs/controllers/data/SpawnData.java": { + "mcImportCount": 5, + "mcTypes": [ + "DimensionManager", + "Entity", + "EntityList", + "NBTTagCompound", + "WeightedRandom" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.WeightedRandom", + "net.minecraftforge.common.DimensionManager" + ] + }, + "noppes/npcs/enchants/EnchantInterface.java": { + "mcImportCount": 5, + "mcTypes": [ + "Enchantment", + "EnchantmentHelper", + "EnumEnchantmentType", + "EnumHelper", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.enchantment.Enchantment", + "net.minecraft.enchantment.EnchantmentHelper", + "net.minecraft.enchantment.EnumEnchantmentType", + "net.minecraft.item.ItemStack", + "net.minecraftforge.common.util.EnumHelper" + ] + }, + "noppes/npcs/entity/EntityChairMount.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "NBTTagCompound", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityCustomNpc.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityDialogNpc.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityFakeLiving.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLiving", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLiving", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityMagicProjectile.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "StatCollector", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.util.StatCollector", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityNpcCrystal.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityNpcDragon.java": { + "mcImportCount": 3, + "mcTypes": [ + "MathHelper", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityNPCFlying.java": { + "mcImportCount": 4, + "mcTypes": [ + "MathHelper", + "MovingObjectPosition", + "Vec3", + "World" + ], + "mcFqns": [ + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityNPCGolem.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityNPCInterface.java": { + "mcImportCount": 59, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "Blocks", + "ChatComponentTranslation", + "ChunkCoordinates", + "Constants", + "DamageSource", + "DataWatcher", + "Entity", + "EntityAIAttackOnCollide", + "EntityAIBase", + "EntityAIHurtByTarget", + "EntityAIOpenDoor", + "EntityAIRestrictSun", + "EntityAISwimming", + "EntityAITaskEntry", + "EntityAITasks", + "EntityArrow", + "EntityBat", + "EntityCreature", + "EntityItem", + "EntityLivingBase", + "EntityMob", + "EntityMoveHelper", + "EntityPlayer", + "EntityPlayerMP", + "EntityThrowable", + "EntityZombie", + "EnumCreatureAttribute", + "FMLCommonHandler", + "FakePlayer", + "IBossDisplayData", + "IChatComponent", + "ICommandSender", + "IEntityAdditionalSpawnData", + "IEntitySelector", + "IIcon", + "IRangedAttackMob", + "Item", + "ItemBow", + "ItemStack", + "Material", + "MathHelper", + "Minecraft", + "MinecraftForge", + "NBTTagCompound", + "NPCEntityHelper", + "PathNavigate", + "Potion", + "PotionEffect", + "ResourceLocation", + "S0BPacketAnimation", + "ServerChatEvent", + "SharedMonsterAttributes", + "Side", + "SideOnly", + "Vec3", + "World", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.block.material.Material", + "net.minecraft.client.Minecraft", + "net.minecraft.command.ICommandSender", + "net.minecraft.command.IEntitySelector", + "net.minecraft.entity.DataWatcher", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityCreature", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.EnumCreatureAttribute", + "net.minecraft.entity.IRangedAttackMob", + "net.minecraft.entity.NPCEntityHelper", + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.entity.ai.EntityAIAttackOnCollide", + "net.minecraft.entity.ai.EntityAIBase", + "net.minecraft.entity.ai.EntityAIHurtByTarget", + "net.minecraft.entity.ai.EntityAIOpenDoor", + "net.minecraft.entity.ai.EntityAIRestrictSun", + "net.minecraft.entity.ai.EntityAISwimming", + "net.minecraft.entity.ai.EntityAITasks", + "net.minecraft.entity.ai.EntityAITasks.EntityAITaskEntry", + "net.minecraft.entity.ai.EntityMoveHelper", + "net.minecraft.entity.boss.IBossDisplayData", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.monster.EntityMob", + "net.minecraft.entity.monster.EntityZombie", + "net.minecraft.entity.passive.EntityBat", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.entity.projectile.EntityArrow", + "net.minecraft.entity.projectile.EntityThrowable", + "net.minecraft.init.Blocks", + "net.minecraft.item.Item", + "net.minecraft.item.ItemBow", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.network.play.server.S0BPacketAnimation", + "net.minecraft.pathfinding.PathNavigate", + "net.minecraft.potion.Potion", + "net.minecraft.potion.PotionEffect", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.ChunkCoordinates", + "net.minecraft.util.DamageSource", + "net.minecraft.util.IChatComponent", + "net.minecraft.util.IIcon", + "net.minecraft.util.MathHelper", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.Vec3", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer", + "net.minecraftforge.common.MinecraftForge", + "net.minecraftforge.common.util.Constants", + "net.minecraftforge.common.util.FakePlayer", + "net.minecraftforge.event.ServerChatEvent" + ] + }, + "noppes/npcs/entity/EntityNpcPony.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "ResourceLocation", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityNpcSlime.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/EntityProjectile.java": { + "mcImportCount": 30, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "Blocks", + "ChatComponentTranslation", + "DamageSource", + "Entity", + "EntityEnderman", + "EntityItem", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "EntityThrowable", + "Explosion", + "IChatComponent", + "Item", + "ItemBlock", + "ItemStack", + "Items", + "MathHelper", + "MovingObjectPosition", + "MovingObjectType", + "NBTTagCompound", + "NBTTagList", + "Potion", + "PotionEffect", + "S27PacketExplosion", + "Side", + "SideOnly", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.monster.EntityEnderman", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.entity.projectile.EntityThrowable", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.network.play.server.S27PacketExplosion", + "net.minecraft.potion.Potion", + "net.minecraft.potion.PotionEffect", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.DamageSource", + "net.minecraft.util.IChatComponent", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.MovingObjectPosition.MovingObjectType", + "net.minecraft.util.Vec3", + "net.minecraft.world.Explosion", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/data/DataSkinOverlays.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/entity/data/DataTimers.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/entity/data/ModelData.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityLiving", + "EntityLivingBase", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/data/ModelDataShared.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityHorse", + "EntityLivingBase", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.passive.EntityHorse", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/entity/data/ModelPartData.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/entity/data/ModelRotate.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/entity/data/ModelRotatePart.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/entity/data/ModelScale.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/entity/data/ModelScalePart.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/entity/old/EntityNPCDwarfFemale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCDwarfMale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCElfFemale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCElfMale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNpcEnderchibi.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCEnderman.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityEnderman", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.monster.EntityEnderman", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCFurryFemale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCFurryMale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCHumanFemale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCHumanMale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNpcMonsterFemale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNpcMonsterMale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNpcNagaFemale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNpcNagaMale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCOrcFemale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCOrcMale.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNpcSkeleton.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntitySkeleton", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.monster.EntitySkeleton", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/entity/old/EntityNPCVillager.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityVillager", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.passive.EntityVillager", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemCrossbow.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "EnumAction", + "ItemStack", + "Items", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemCustomizable.java": { + "mcImportCount": 13, + "mcTypes": [ + "Block", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EnumAction", + "GameRegistry", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.EnumAction", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemDaggerReversed.java": { + "mcImportCount": 1, + "mcTypes": [ + "IIconRegister" + ], + "mcFqns": [ + "net.minecraft.client.renderer.texture.IIconRegister" + ] + }, + "noppes/npcs/items/ItemElementalStaff.java": { + "mcImportCount": 5, + "mcTypes": [ + "CreativeTabs", + "EntityPlayer", + "EntitySheep", + "Item", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.passive.EntitySheep", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/ItemGun.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "EnumAction", + "Item", + "ItemStack", + "Potion", + "PotionEffect", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.potion.Potion", + "net.minecraft.potion.PotionEffect", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemGunChainsaw.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/ItemKunai.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemKunaiReversed.java": { + "mcImportCount": 1, + "mcTypes": [ + "IIconRegister" + ], + "mcFqns": [ + "net.minecraft.client.renderer.texture.IIconRegister" + ] + }, + "noppes/npcs/items/ItemLinked.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "S04PacketEntityEquipment", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.network.play.server.S04PacketEntityEquipment", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemMachineGun.java": { + "mcImportCount": 8, + "mcTypes": [ + "EntityPlayer", + "EnumAction", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemMoneyBag.java": { + "mcImportCount": 6, + "mcTypes": [ + "EntityPlayer", + "GuiScreen", + "Item", + "ItemStack", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemMounter.java": { + "mcImportCount": 7, + "mcTypes": [ + "GameRegistry", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/ItemMusic.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "Item", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemMusicClarinet.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EnumAction", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemMusicOracina.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EnumAction", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemMusicViolin.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EnumAction", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemMusket.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EnumAction", + "ItemStack", + "NBTTagCompound", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemNpcArmor.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "GameRegistry", + "Item", + "ItemArmor", + "ItemStack" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.entity.Entity", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/ItemNpcArmorColorable.java": { + "mcImportCount": 10, + "mcTypes": [ + "Entity", + "GameRegistry", + "IIcon", + "IIconRegister", + "Item", + "ItemArmor", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.Entity", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.IIcon" + ] + }, + "noppes/npcs/items/ItemNpcBlock.java": { + "mcImportCount": 3, + "mcTypes": [ + "Block", + "ItemBlock", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/ItemNpcCloner.java": { + "mcImportCount": 10, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "GameRegistry", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemNpcColored.java": { + "mcImportCount": 2, + "mcTypes": [ + "Block", + "ItemColored" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.item.ItemColored" + ] + }, + "noppes/npcs/items/ItemNpcInterface.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "GameRegistry", + "Item", + "ItemStack" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/ItemNpcMovingPath.java": { + "mcImportCount": 12, + "mcTypes": [ + "ChatComponentText", + "Entity", + "EntityPlayer", + "GameRegistry", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "MathHelper", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.MathHelper", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemNpcScripter.java": { + "mcImportCount": 10, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "GameRegistry", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemNpcTool.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "CreativeTabs", + "EntityPlayer", + "GameRegistry", + "Item", + "ItemStack", + "NBTTagCompound", + "TileEntity", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.block.Block", + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemNpcWand.java": { + "mcImportCount": 11, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "GameRegistry", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "MinecraftServer", + "Side", + "SideOnly", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemNpcWeaponInterface.java": { + "mcImportCount": 3, + "mcTypes": [ + "GameRegistry", + "Item", + "ItemSword" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.item.Item", + "net.minecraft.item.ItemSword" + ] + }, + "noppes/npcs/items/ItemOrb.java": { + "mcImportCount": 4, + "mcTypes": [ + "CreativeTabs", + "EntitySheep", + "Item", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.creativetab.CreativeTabs", + "net.minecraft.entity.passive.EntitySheep", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/ItemPlaceholder.java": { + "mcImportCount": 6, + "mcTypes": [ + "Block", + "IIcon", + "ItemBlock", + "ItemStack", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.block.Block", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon" + ] + }, + "noppes/npcs/items/ItemScripted.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemShield.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "EnumAction", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemSkirt.java": { + "mcImportCount": 10, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "GameRegistry", + "IIcon", + "Item", + "ItemArmor", + "ItemStack", + "ModelBiped", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemStack", + "net.minecraft.util.IIcon" + ] + }, + "noppes/npcs/items/ItemSlingshot.java": { + "mcImportCount": 6, + "mcTypes": [ + "Blocks", + "EntityPlayer", + "EnumAction", + "Item", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.item.EnumAction", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemSoulstoneEmpty.java": { + "mcImportCount": 10, + "mcTypes": [ + "EntityAnimal", + "EntityList", + "EntityLiving", + "EntityLivingBase", + "EntityPlayer", + "EntityVillager", + "GameRegistry", + "Item", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.passive.EntityAnimal", + "net.minecraft.entity.passive.EntityVillager", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/items/ItemSoulstoneFilled.java": { + "mcImportCount": 13, + "mcTypes": [ + "Entity", + "EntityList", + "EntityPlayer", + "EnumChatFormatting", + "FMLCommonHandler", + "GameRegistry", + "Item", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly", + "StatCollector", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.FMLCommonHandler", + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.util.StatCollector", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemStaff.java": { + "mcImportCount": 11, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EntitySheep", + "EnumAction", + "ItemStack", + "NBTTagCompound", + "Potion", + "PotionEffect", + "World", + "WorldServer" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.passive.EntitySheep", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.EnumAction", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.potion.Potion", + "net.minecraft.potion.PotionEffect", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer" + ] + }, + "noppes/npcs/items/ItemTeleporter.java": { + "mcImportCount": 17, + "mcTypes": [ + "AxisAlignedBB", + "Blocks", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "EntityPlayerMP", + "GameRegistry", + "IIconRegister", + "Item", + "ItemStack", + "Items", + "MathHelper", + "MovingObjectPosition", + "Side", + "SideOnly", + "Vec3", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.registry.GameRegistry", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.renderer.texture.IIconRegister", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemThrowingWeapon.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/items/ItemWand.java": { + "mcImportCount": 1, + "mcTypes": [ + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/items/MoneyBagContents.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/janino/JaninoScript.java": { + "mcImportCount": 2, + "mcTypes": [ + "Event", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/mixin/CustomNPCsMixinPlugin.java": { + "mcImportCount": 1, + "mcTypes": [ + "FMLLaunchHandler" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.FMLLaunchHandler" + ] + }, + "noppes/npcs/mixin/MixinEntityRenderer.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EntityRenderer", + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.renderer.EntityRenderer", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/mixin/MixinEntityTrackerEntry.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityRegistry", + "EntityTrackerEntry", + "FMLMessage", + "FMLProxyPacket", + "Packet" + ], + "mcFqns": [ + "cpw.mods.fml.common.network.internal.FMLMessage", + "cpw.mods.fml.common.network.internal.FMLProxyPacket", + "cpw.mods.fml.common.registry.EntityRegistry", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityTrackerEntry", + "net.minecraft.network.Packet" + ] + }, + "noppes/npcs/mixin/MixinItemRenderer.java": { + "mcImportCount": 9, + "mcTypes": [ + "EntityPlayer", + "ItemRenderer", + "Minecraft", + "ModelBiped", + "Render", + "RenderBlocks", + "RenderManager", + "RendererLivingEntity", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.model.ModelBiped", + "net.minecraft.client.renderer.ItemRenderer", + "net.minecraft.client.renderer.RenderBlocks", + "net.minecraft.client.renderer.entity.Render", + "net.minecraft.client.renderer.entity.RenderManager", + "net.minecraft.client.renderer.entity.RendererLivingEntity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.ResourceLocation" + ] + }, + "noppes/npcs/mixin/MixinItemStack.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "Minecraft", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/mixin/MixinModelRenderer.java": { + "mcImportCount": 4, + "mcTypes": [ + "ModelBase", + "ModelRenderer", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.model.ModelBase", + "net.minecraft.client.model.ModelRenderer" + ] + }, + "noppes/npcs/mixin/MixinRendererLivingEntity.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "RendererLivingEntity" + ], + "mcFqns": [ + "net.minecraft.client.renderer.entity.RendererLivingEntity", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/quests/QuestDialog.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/quests/QuestInterface.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/quests/QuestItem.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/quests/QuestKill.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/quests/QuestLocation.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/quests/QuestManual.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/JobBard.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "ItemStack", + "Minecraft", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/JobChunkLoader.java": { + "mcImportCount": 6, + "mcTypes": [ + "ChunkCoordIntPair", + "EntityPlayer", + "ForgeChunkManager", + "MathHelper", + "NBTTagCompound", + "Ticket" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper", + "net.minecraft.world.ChunkCoordIntPair", + "net.minecraftforge.common.ForgeChunkManager", + "net.minecraftforge.common.ForgeChunkManager.Ticket" + ] + }, + "noppes/npcs/roles/JobConversation.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/roles/JobFollower.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/JobGuard.java": { + "mcImportCount": 9, + "mcTypes": [ + "Entity", + "EntityAnimal", + "EntityCreeper", + "EntityDragon", + "EntityList", + "EntityPlayer", + "EntityTameable", + "IMob", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.boss.EntityDragon", + "net.minecraft.entity.monster.EntityCreeper", + "net.minecraft.entity.monster.IMob", + "net.minecraft.entity.passive.EntityAnimal", + "net.minecraft.entity.passive.EntityTameable", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/JobHealer.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityLivingBase", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/JobInterface.java": { + "mcImportCount": 2, + "mcTypes": [ + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/JobItemGiver.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "Item", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/roles/JobSpawner.java": { + "mcImportCount": 6, + "mcTypes": [ + "Entity", + "EntityLiving", + "EntityLivingBase", + "EntityPlayerMP", + "MathHelper", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/roles/RoleAuctioneer.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/RoleBank.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/RoleCompanion.java": { + "mcImportCount": 19, + "mcTypes": [ + "ArmorMaterial", + "AttributeModifier", + "Blocks", + "DamageSource", + "Entity", + "EntityPlayer", + "Item", + "ItemArmor", + "ItemBow", + "ItemFood", + "ItemStack", + "ItemSword", + "Items", + "MathHelper", + "NBTTagCompound", + "NBTTagList", + "ObfuscationReflectionHelper", + "SharedMonsterAttributes", + "Vec3" + ], + "mcFqns": [ + "cpw.mods.fml.common.ObfuscationReflectionHelper", + "net.minecraft.entity.Entity", + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.entity.ai.attributes.AttributeModifier", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemArmor.ArmorMaterial", + "net.minecraft.item.ItemBow", + "net.minecraft.item.ItemFood", + "net.minecraft.item.ItemStack", + "net.minecraft.item.ItemSword", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.DamageSource", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/roles/RoleFollower.java": { + "mcImportCount": 4, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "NBTTagCompound", + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/roles/RoleInnkeeper.java": { + "mcImportCount": 5, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "NBTBase", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "noppes/npcs/roles/RoleInterface.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/RoleMount.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/RolePostman.java": { + "mcImportCount": 3, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "noppes/npcs/roles/RoleTrader.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "EntityPlayerMP", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/roles/RoleTransporter.java": { + "mcImportCount": 3, + "mcTypes": [ + "ChatComponentTranslation", + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.ChatComponentTranslation" + ] + }, + "noppes/npcs/roles/companion/CompanionFarmer.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/companion/CompanionFoodStats.java": { + "mcImportCount": 7, + "mcTypes": [ + "DamageSource", + "EnumDifficulty", + "ItemFood", + "ItemStack", + "NBTTagCompound", + "Side", + "SideOnly" + ], + "mcFqns": [ + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.item.ItemFood", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.util.DamageSource", + "net.minecraft.world.EnumDifficulty" + ] + }, + "noppes/npcs/roles/companion/CompanionGuard.java": { + "mcImportCount": 5, + "mcTypes": [ + "Entity", + "EntityCreeper", + "EntityPlayer", + "IMob", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.monster.EntityCreeper", + "net.minecraft.entity.monster.IMob", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/companion/CompanionJobInterface.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/roles/companion/CompanionTrader.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/BlockScriptedWrapper.java": { + "mcImportCount": 9, + "mcTypes": [ + "Block", + "BlockPos", + "Item", + "ItemStack", + "MinecraftServer", + "NBTBase", + "NBTTagCompound", + "NBTTagString", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.math.BlockPos", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/scripted/NpcAPI.java": { + "mcImportCount": 39, + "mcTypes": [ + "BiomeDictionary", + "BiomeGenBase", + "Block", + "BlockPos", + "CommandHandler", + "Container", + "DamageSource", + "Entity", + "EntityAnimal", + "EntityArrow", + "EntityDamageSource", + "EntityFishHook", + "EntityItem", + "EntityLiving", + "EntityLivingBase", + "EntityMob", + "EntityPlayerMP", + "EntityTameable", + "EntityThrowable", + "EntityVillager", + "EventBus", + "IInventory", + "INpc", + "Item", + "ItemArmor", + "ItemBlock", + "ItemEditableBook", + "ItemStack", + "ItemWritableBook", + "Items", + "Loader", + "MinecraftServer", + "NBTBase", + "NBTTagCompound", + "NBTTagString", + "TileEntity", + "Type", + "World", + "WorldServer" + ], + "mcFqns": [ + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.eventhandler.EventBus", + "net.minecraft.block.Block", + "net.minecraft.command.CommandHandler", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLiving", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.INpc", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.monster.EntityMob", + "net.minecraft.entity.passive.EntityAnimal", + "net.minecraft.entity.passive.EntityTameable", + "net.minecraft.entity.passive.EntityVillager", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.entity.projectile.EntityArrow", + "net.minecraft.entity.projectile.EntityFishHook", + "net.minecraft.entity.projectile.EntityThrowable", + "net.minecraft.init.Items", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemEditableBook", + "net.minecraft.item.ItemStack", + "net.minecraft.item.ItemWritableBook", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.server.MinecraftServer", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.DamageSource", + "net.minecraft.util.EntityDamageSource", + "net.minecraft.util.math.BlockPos", + "net.minecraft.world.World", + "net.minecraft.world.WorldServer", + "net.minecraft.world.biome.BiomeGenBase", + "net.minecraftforge.common.BiomeDictionary", + "net.minecraftforge.common.BiomeDictionary.Type" + ] + }, + "noppes/npcs/scripted/ScriptBlock.java": { + "mcImportCount": 8, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "BlockPos", + "IInventory", + "NBTTagCompound", + "ResourceLocation", + "TileEntity", + "World" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.inventory.IInventory", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ResourceLocation", + "net.minecraft.util.math.BlockPos", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/scripted/ScriptBlockPos.java": { + "mcImportCount": 3, + "mcTypes": [ + "BlockPos", + "EnumFacing", + "Vec3i" + ], + "mcFqns": [ + "net.minecraft.util.EnumFacing", + "net.minecraft.util.Vec3i", + "net.minecraft.util.math.BlockPos" + ] + }, + "noppes/npcs/scripted/ScriptContainer.java": { + "mcImportCount": 5, + "mcTypes": [ + "Block", + "Container", + "EntityPlayerMP", + "IInventory", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.inventory.Container", + "net.minecraft.inventory.IInventory", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/scripted/ScriptDamageSource.java": { + "mcImportCount": 1, + "mcTypes": [ + "DamageSource" + ], + "mcFqns": [ + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/scripted/ScriptNbt.java": { + "mcImportCount": 8, + "mcTypes": [ + "NBTBase", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagFloat", + "NBTTagInt", + "NBTTagIntArray", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagFloat", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagIntArray", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/scripted/ScriptParticle.java": { + "mcImportCount": 6, + "mcTypes": [ + "NBTTagByte", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagFloat", + "NBTTagInt", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagByte", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagFloat", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/scripted/ScriptPixelmonPlayerData.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayerMP", + "EntityTameable", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.passive.EntityTameable", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/ScriptSound.java": { + "mcImportCount": 6, + "mcTypes": [ + "NBTTagByte", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagFloat", + "NBTTagInt", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagByte", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagFloat", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/scripted/ScriptTelegraph.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/scripted/ScriptTelegraphInstance.java": { + "mcImportCount": 1, + "mcTypes": [ + "Entity" + ], + "mcFqns": [ + "net.minecraft.entity.Entity" + ] + }, + "noppes/npcs/scripted/ScriptTileEntity.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "TileEntity" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.tileentity.TileEntity" + ] + }, + "noppes/npcs/scripted/ScriptWorld.java": { + "mcImportCount": 21, + "mcTypes": [ + "AxisAlignedBB", + "Block", + "BlockAir", + "BlockEvent", + "BlockSnapshot", + "Blocks", + "ChatComponentText", + "Entity", + "EntityLightningBolt", + "EntityPlayer", + "EntityPlayerMP", + "FakePlayer", + "MathHelper", + "MinecraftForge", + "MinecraftServer", + "MovingObjectPosition", + "NBTTagCompound", + "TileEntity", + "TileEntitySign", + "Vec3", + "WorldServer" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.block.BlockAir", + "net.minecraft.entity.Entity", + "net.minecraft.entity.effect.EntityLightningBolt", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.init.Blocks", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.server.MinecraftServer", + "net.minecraft.tileentity.TileEntity", + "net.minecraft.tileentity.TileEntitySign", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.ChatComponentText", + "net.minecraft.util.MathHelper", + "net.minecraft.util.MovingObjectPosition", + "net.minecraft.util.Vec3", + "net.minecraft.world.WorldServer", + "net.minecraftforge.common.MinecraftForge", + "net.minecraftforge.common.util.BlockSnapshot", + "net.minecraftforge.common.util.FakePlayer", + "net.minecraftforge.event.world.BlockEvent" + ] + }, + "noppes/npcs/scripted/entity/ScriptAnimal.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityAnimal", + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.passive.EntityAnimal", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/scripted/entity/ScriptArrow.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityArrow" + ], + "mcFqns": [ + "net.minecraft.entity.projectile.EntityArrow" + ] + }, + "noppes/npcs/scripted/entity/ScriptDBCPlayer.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayerMP", + "ItemStack", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergyAbility.java": { + "mcImportCount": 2, + "mcTypes": [ + "Entity", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergyBeam.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergyDisc.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergyLaser.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergyOrb.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergyProjectile.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergySlicer.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/entity/ScriptEnergyZone.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/entity/ScriptEntity.java": { + "mcImportCount": 16, + "mcTypes": [ + "AxisAlignedBB", + "Entity", + "EntityAnimal", + "EntityItem", + "EntityList", + "EntityLivingBase", + "EntityMob", + "EntityPlayer", + "Material", + "MathHelper", + "NBTBase", + "NBTPrimitive", + "NBTTagCompound", + "NBTTagIntArray", + "NBTTagString", + "WorldServer" + ], + "mcFqns": [ + "net.minecraft.block.material.Material", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityList", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityItem", + "net.minecraft.entity.monster.EntityMob", + "net.minecraft.entity.passive.EntityAnimal", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTBase.NBTPrimitive", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagIntArray", + "net.minecraft.nbt.NBTTagString", + "net.minecraft.util.AxisAlignedBB", + "net.minecraft.util.MathHelper", + "net.minecraft.world.WorldServer" + ] + }, + "noppes/npcs/scripted/entity/ScriptEntityItem.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityItem", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.item.EntityItem", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/scripted/entity/ScriptFishHook.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityFishHook" + ], + "mcFqns": [ + "net.minecraft.entity.projectile.EntityFishHook" + ] + }, + "noppes/npcs/scripted/entity/ScriptLiving.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLiving" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLiving" + ] + }, + "noppes/npcs/scripted/entity/ScriptLivingBase.java": { + "mcImportCount": 8, + "mcTypes": [ + "DamageSource", + "EntityDamageSource", + "EntityLivingBase", + "MathHelper", + "Potion", + "PotionEffect", + "SharedMonsterAttributes", + "Vec3" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.SharedMonsterAttributes", + "net.minecraft.potion.Potion", + "net.minecraft.potion.PotionEffect", + "net.minecraft.util.DamageSource", + "net.minecraft.util.EntityDamageSource", + "net.minecraft.util.MathHelper", + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/scripted/entity/ScriptMonster.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityMob" + ], + "mcFqns": [ + "net.minecraft.entity.monster.EntityMob" + ] + }, + "noppes/npcs/scripted/entity/ScriptNpc.java": { + "mcImportCount": 3, + "mcTypes": [ + "EntityPlayer", + "EnumCreatureAttribute", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.EnumCreatureAttribute", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/scripted/entity/ScriptPixelmon.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityTameable", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.passive.EntityTameable", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/entity/ScriptPlayer.java": { + "mcImportCount": 13, + "mcTypes": [ + "Achievement", + "ChatComponentTranslation", + "ChatStyle", + "ChunkCoordinates", + "Entity", + "EntityPlayerMP", + "EnumChatFormatting", + "Item", + "ItemStack", + "NBTTagCompound", + "StatBase", + "StatList", + "WorldSettings" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.Item", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.stats.Achievement", + "net.minecraft.stats.StatBase", + "net.minecraft.stats.StatList", + "net.minecraft.util.ChatComponentTranslation", + "net.minecraft.util.ChatStyle", + "net.minecraft.util.ChunkCoordinates", + "net.minecraft.util.EnumChatFormatting", + "net.minecraft.world.WorldSettings" + ] + }, + "noppes/npcs/scripted/entity/ScriptProjectile.java": { + "mcImportCount": 1, + "mcTypes": [ + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/scripted/entity/ScriptThrowable.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityThrowable" + ], + "mcFqns": [ + "net.minecraft.entity.projectile.EntityThrowable" + ] + }, + "noppes/npcs/scripted/entity/ScriptVillager.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityVillager" + ], + "mcFqns": [ + "net.minecraft.entity.passive.EntityVillager" + ] + }, + "noppes/npcs/scripted/event/AbilityEvent.java": { + "mcImportCount": 3, + "mcTypes": [ + "Cancelable", + "DamageSource", + "EntityLivingBase" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/scripted/event/AnimationEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/BlockEvent.java": { + "mcImportCount": 3, + "mcTypes": [ + "Cancelable", + "Entity", + "EntityPlayer" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/scripted/event/ChainEvent.java": { + "mcImportCount": 2, + "mcTypes": [ + "DamageSource", + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/scripted/event/CustomNPCsEvent.java": { + "mcImportCount": 3, + "mcTypes": [ + "Cancelable", + "EntityLivingBase", + "Event" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/event/EnergyBarrierEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/EnergyProjectileEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/ForgeEvent.java": { + "mcImportCount": 2, + "mcTypes": [ + "Cancelable", + "Event" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "cpw.mods.fml.common.eventhandler.Event" + ] + }, + "noppes/npcs/scripted/event/ItemEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/NpcEvent.java": { + "mcImportCount": 6, + "mcTypes": [ + "Cancelable", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayer", + "ItemStack" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.item.ItemStack", + "net.minecraft.util.DamageSource" + ] + }, + "noppes/npcs/scripted/event/PartyEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/RecipeScriptEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/player/AuctionEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/player/CustomGuiEvent.java": { + "mcImportCount": 2, + "mcTypes": [ + "Cancelable", + "ItemStack" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/scripted/event/player/DialogEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/player/FactionEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/event/player/PlayerEvent.java": { + "mcImportCount": 7, + "mcTypes": [ + "Cancelable", + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityXPOrb", + "ItemStack", + "World" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable", + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.item.EntityXPOrb", + "net.minecraft.item.ItemStack", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/scripted/event/player/QuestEvent.java": { + "mcImportCount": 1, + "mcTypes": [ + "Cancelable" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Cancelable" + ] + }, + "noppes/npcs/scripted/gui/ScriptGui.java": { + "mcImportCount": 4, + "mcTypes": [ + "EntityPlayer", + "NBTBase", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiButton.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiComponent.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiItemSlot.java": { + "mcImportCount": 1, + "mcTypes": [ + "Slot" + ], + "mcFqns": [ + "net.minecraft.inventory.Slot" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiLabel.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiLine.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiScroll.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiTextField.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/gui/ScriptGuiTexturedRect.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/item/ScriptCustomItem.java": { + "mcImportCount": 3, + "mcTypes": [ + "Event", + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "cpw.mods.fml.common.eventhandler.Event", + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/item/ScriptCustomizableItem.java": { + "mcImportCount": 2, + "mcTypes": [ + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/item/ScriptItemArmor.java": { + "mcImportCount": 2, + "mcTypes": [ + "ItemArmor", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/scripted/item/ScriptItemBlock.java": { + "mcImportCount": 2, + "mcTypes": [ + "Block", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/scripted/item/ScriptItemBook.java": { + "mcImportCount": 4, + "mcTypes": [ + "ItemStack", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/scripted/item/ScriptItemStack.java": { + "mcImportCount": 19, + "mcTypes": [ + "AttributeModifier", + "Block", + "Blocks", + "Enchantment", + "IPlantable", + "Item", + "ItemArmor", + "ItemBlock", + "ItemEditableBook", + "ItemFood", + "ItemStack", + "ItemSword", + "ItemWritableBook", + "Items", + "NBTBase", + "NBTPrimitive", + "NBTTagCompound", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.block.Block", + "net.minecraft.enchantment.Enchantment", + "net.minecraft.entity.ai.attributes.AttributeModifier", + "net.minecraft.init.Blocks", + "net.minecraft.init.Items", + "net.minecraft.item.Item", + "net.minecraft.item.ItemArmor", + "net.minecraft.item.ItemBlock", + "net.minecraft.item.ItemEditableBook", + "net.minecraft.item.ItemFood", + "net.minecraft.item.ItemStack", + "net.minecraft.item.ItemSword", + "net.minecraft.item.ItemWritableBook", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTBase.NBTPrimitive", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString", + "net.minecraftforge.common.IPlantable" + ] + }, + "noppes/npcs/scripted/item/ScriptLinkedItem.java": { + "mcImportCount": 2, + "mcTypes": [ + "ItemStack", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.item.ItemStack", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/overlay/ScriptOverlay.java": { + "mcImportCount": 3, + "mcTypes": [ + "NBTBase", + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/scripted/overlay/ScriptOverlayComponent.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/overlay/ScriptOverlayLabel.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/overlay/ScriptOverlayLine.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/overlay/ScriptOverlayTexturedRect.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/roles/ScriptJobItemGiver.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/scripted/roles/ScriptJobSpawner.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayerMP", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/scripted/roles/ScriptRoleFollower.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/scripted/roles/ScriptRoleInterface.java": { + "mcImportCount": 1, + "mcTypes": [ + "INpc" + ], + "mcFqns": [ + "net.minecraft.entity.INpc" + ] + }, + "noppes/npcs/scripted/roles/ScriptRoleTransporter.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayerMP" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayerMP" + ] + }, + "noppes/npcs/scripted/scoreboard/ScriptScoreboard.java": { + "mcImportCount": 6, + "mcTypes": [ + "IScoreObjectiveCriteria", + "MinecraftServer", + "Score", + "ScoreObjective", + "ScorePlayerTeam", + "Scoreboard" + ], + "mcFqns": [ + "net.minecraft.scoreboard.IScoreObjectiveCriteria", + "net.minecraft.scoreboard.Score", + "net.minecraft.scoreboard.ScoreObjective", + "net.minecraft.scoreboard.ScorePlayerTeam", + "net.minecraft.scoreboard.Scoreboard", + "net.minecraft.server.MinecraftServer" + ] + }, + "noppes/npcs/scripted/scoreboard/ScriptScoreboardObjective.java": { + "mcImportCount": 1, + "mcTypes": [ + "ScoreObjective" + ], + "mcFqns": [ + "net.minecraft.scoreboard.ScoreObjective" + ] + }, + "noppes/npcs/scripted/scoreboard/ScriptScoreboardTeam.java": { + "mcImportCount": 3, + "mcTypes": [ + "EnumChatFormatting", + "ScorePlayerTeam", + "Scoreboard" + ], + "mcFqns": [ + "net.minecraft.scoreboard.ScorePlayerTeam", + "net.minecraft.scoreboard.Scoreboard", + "net.minecraft.util.EnumChatFormatting" + ] + }, + "noppes/npcs/scripted/wrapper/ScriptDataAbilities.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityLivingBase" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase" + ] + }, + "noppes/npcs/scripted/wrapper/ScriptPlayerAbilityData.java": { + "mcImportCount": 1, + "mcTypes": [ + "EntityPlayer" + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer" + ] + }, + "noppes/npcs/util/AuctionFormatUtil.java": { + "mcImportCount": 1, + "mcTypes": [ + "StatCollector" + ], + "mcFqns": [ + "net.minecraft.util.StatCollector" + ] + }, + "noppes/npcs/util/IProjectileCallback.java": { + "mcImportCount": 2, + "mcTypes": [ + "EntityLivingBase", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.item.ItemStack" + ] + }, + "noppes/npcs/util/MarketCachedObject.java": { + "mcImportCount": 1, + "mcTypes": [ + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "noppes/npcs/util/MathUtil.java": { + "mcImportCount": 1, + "mcTypes": [ + "Vec3" + ], + "mcFqns": [ + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/util/NBTJsonUtil.java": { + "mcImportCount": 14, + "mcTypes": [ + "CompressedStreamTools", + "NBTBase", + "NBTTagByte", + "NBTTagByteArray", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagFloat", + "NBTTagInt", + "NBTTagIntArray", + "NBTTagList", + "NBTTagLong", + "NBTTagShort", + "NBTTagString", + "ObfuscationReflectionHelper" + ], + "mcFqns": [ + "cpw.mods.fml.common.ObfuscationReflectionHelper", + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagByte", + "net.minecraft.nbt.NBTTagByteArray", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagFloat", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagIntArray", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagLong", + "net.minecraft.nbt.NBTTagShort", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/util/NPCMountUtil.java": { + "mcImportCount": 4, + "mcTypes": [ + "Entity", + "EntityLivingBase", + "EntityPlayer", + "MathHelper" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.util.MathHelper" + ] + }, + "noppes/npcs/util/Vec3NPC.java": { + "mcImportCount": 1, + "mcTypes": [ + "Vec3" + ], + "mcFqns": [ + "net.minecraft.util.Vec3" + ] + }, + "noppes/npcs/wrapper/MC1710PlatformService.java": { + "mcImportCount": 7, + "mcTypes": [ + "DamageSource", + "Entity", + "EntityLivingBase", + "EntityPlayerMP", + "ItemStack", + "MinecraftServer", + "World" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.EntityLivingBase", + "net.minecraft.entity.player.EntityPlayerMP", + "net.minecraft.item.ItemStack", + "net.minecraft.server.MinecraftServer", + "net.minecraft.util.DamageSource", + "net.minecraft.world.World" + ] + }, + "noppes/npcs/wrapper/nbt/NBTListWrapper.java": { + "mcImportCount": 5, + "mcTypes": [ + "NBTTagDouble", + "NBTTagFloat", + "NBTTagInt", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagFloat", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/wrapper/nbt/NBTWrapper.java": { + "mcImportCount": 8, + "mcTypes": [ + "NBTBase", + "NBTTagCompound", + "NBTTagDouble", + "NBTTagFloat", + "NBTTagInt", + "NBTTagIntArray", + "NBTTagList", + "NBTTagString" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTBase", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagDouble", + "net.minecraft.nbt.NBTTagFloat", + "net.minecraft.nbt.NBTTagInt", + "net.minecraft.nbt.NBTTagIntArray", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.nbt.NBTTagString" + ] + }, + "noppes/npcs/wrapper/nbt/NBTWrapperFactory.java": { + "mcImportCount": 2, + "mcTypes": [ + "NBTTagCompound", + "NBTTagList" + ], + "mcFqns": [ + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList" + ] + }, + "noppes/npcs/wrapper/nbt/NBTWrapperIO.java": { + "mcImportCount": 2, + "mcTypes": [ + "CompressedStreamTools", + "NBTTagCompound" + ], + "mcFqns": [ + "net.minecraft.nbt.CompressedStreamTools", + "net.minecraft.nbt.NBTTagCompound" + ] + }, + "somehussar/gui/AnnotatedGui.java": { + "mcImportCount": 1, + "mcTypes": [ + "GuiScreen" + ], + "mcFqns": [ + "net.minecraft.client.gui.GuiScreen" + ] + }, + "somehussar/gui/ImmediateTextField.java": { + "mcImportCount": 2, + "mcTypes": [ + "FontRenderer", + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.FontRenderer" + ] + }, + "somehussar/janino/EntityUnloadListener.java": { + "mcImportCount": 3, + "mcTypes": [ + "Entity", + "EntityPlayer", + "IWorldAccess" + ], + "mcFqns": [ + "net.minecraft.entity.Entity", + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.world.IWorldAccess" + ] + }, + "tconstruct/client/tabs/AbstractTab.java": { + "mcImportCount": 6, + "mcTypes": [ + "GuiButton", + "ItemStack", + "Minecraft", + "RenderHelper", + "RenderItem", + "ResourceLocation" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.GuiButton", + "net.minecraft.client.renderer.RenderHelper", + "net.minecraft.client.renderer.entity.RenderItem", + "net.minecraft.item.ItemStack", + "net.minecraft.util.ResourceLocation" + ] + }, + "tconstruct/client/tabs/InventoryTabCustomNpc.java": { + "mcImportCount": 3, + "mcTypes": [ + "ItemStack", + "Items", + "Minecraft" + ], + "mcFqns": [ + "net.minecraft.client.Minecraft", + "net.minecraft.init.Items", + "net.minecraft.item.ItemStack" + ] + }, + "tconstruct/client/tabs/InventoryTabVanilla.java": { + "mcImportCount": 2, + "mcTypes": [ + "Blocks", + "ItemStack" + ], + "mcFqns": [ + "net.minecraft.init.Blocks", + "net.minecraft.item.ItemStack" + ] + }, + "tconstruct/client/tabs/TabRegistry.java": { + "mcImportCount": 9, + "mcTypes": [ + "C0DPacketCloseWindow", + "FMLClientHandler", + "GuiInventory", + "GuiScreenEvent", + "Loader", + "Minecraft", + "Side", + "SideOnly", + "SubscribeEvent" + ], + "mcFqns": [ + "cpw.mods.fml.client.FMLClientHandler", + "cpw.mods.fml.common.Loader", + "cpw.mods.fml.common.eventhandler.SubscribeEvent", + "cpw.mods.fml.relauncher.Side", + "cpw.mods.fml.relauncher.SideOnly", + "net.minecraft.client.Minecraft", + "net.minecraft.client.gui.inventory.GuiInventory", + "net.minecraft.network.play.client.C0DPacketCloseWindow", + "net.minecraftforge.client.event.GuiScreenEvent" + ] + } + }, + "hierarchy": { + "extends": { + "net.minecraft.entity.Entity": [ + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "class": "EntityAbilityZone" + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyAbility.java", + "class": "EntityEnergyAbility" + }, + { + "file": "noppes/npcs/entity/EntityChairMount.java", + "class": "EntityChairMount" + } + ], + "net.minecraft.client.gui.GuiButton": [ + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "class": "MerchantButton" + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiButton.java", + "class": "CustomGuiButton" + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "class": "NextPageButton" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcButton.java", + "class": "GuiNpcButton" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcSlider.java", + "class": "GuiNpcSlider" + }, + { + "file": "tconstruct/client/tabs/AbstractTab.java", + "class": "AbstractTab" + } + ], + "net.minecraft.client.model.ModelRenderer": [ + { + "file": "noppes/npcs/client/model/part/ModelDuckBeak.java", + "class": "ModelDuckBeak" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasBack.java", + "class": "ModelAntennasBack" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntennasFront.java", + "class": "ModelAntennasFront" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelAntlerHorns.java", + "class": "ModelAntlerHorns" + }, + { + "file": "noppes/npcs/client/model/part/horns/ModelBullHorns.java", + "class": "ModelBullHorns" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelDigitigradeLegs.java", + "class": "ModelDigitigradeLegs" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs.java", + "class": "ModelMermaidLegs" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelMermaidLegs2.java", + "class": "ModelMermaidLegs2" + }, + { + "file": "noppes/npcs/client/model/part/legs/ModelNagaLegs.java", + "class": "ModelNagaLegs" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelCanineTail.java", + "class": "ModelCanineTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelDragonTail.java", + "class": "ModelDragonTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelFeatherTail.java", + "class": "ModelFeatherTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelMonkeyTail.java", + "class": "ModelMonkeyTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelRodentTail.java", + "class": "ModelRodentTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelSquirrelTail.java", + "class": "ModelSquirrelTail" + }, + { + "file": "noppes/npcs/client/model/part/tails/ModelTailFin.java", + "class": "ModelTailFin" + }, + { + "file": "noppes/npcs/client/model/util/Model2DRenderer.java", + "class": "Model2DRenderer" + }, + { + "file": "noppes/npcs/client/model/util/ModelPartInterface.java", + "class": "ModelPartInterface" + }, + { + "file": "noppes/npcs/client/model/util/ModelPlaneRenderer.java", + "class": "ModelPlaneRenderer" + }, + { + "file": "noppes/npcs/client/model/util/ModelScaleRenderer.java", + "class": "ModelScaleRenderer" + } + ], + "net.minecraft.client.model.ModelBase": [ + { + "file": "noppes/npcs/client/model/ModelNpcCrystal.java", + "class": "ModelNpcCrystal" + }, + { + "file": "noppes/npcs/client/model/ModelNpcDragon.java", + "class": "ModelNpcDragon" + }, + { + "file": "noppes/npcs/client/model/ModelNpcSlime.java", + "class": "ModelNpcSlime" + }, + { + "file": "noppes/npcs/client/model/ModelPony.java", + "class": "ModelPony" + }, + { + "file": "noppes/npcs/client/model/ModelPonyArmor.java", + "class": "ModelPonyArmor" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelAnvil.java", + "class": "ModelAnvil" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelBeam.java", + "class": "ModelBeam" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelBigSign.java", + "class": "ModelBigSign" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCampfire.java", + "class": "ModelCampfire" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCarpentryBench.java", + "class": "ModelCarpentryBench" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelCrate.java", + "class": "ModelCrate" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelInk.java", + "class": "ModelInk" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelLongCrate.java", + "class": "ModelLongCrate" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailbox.java", + "class": "ModelMailbox" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelMailboxWow.java", + "class": "ModelMailboxWow" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelPedestal.java", + "class": "ModelPedestal" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelShelf.java", + "class": "ModelShelf" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelSign.java", + "class": "ModelSign" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelStool.java", + "class": "ModelStool" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTable.java", + "class": "ModelTable" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone1.java", + "class": "ModelTombstone1" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone2.java", + "class": "ModelTombstone2" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelTombstone3.java", + "class": "ModelTombstone3" + }, + { + "file": "noppes/npcs/client/model/blocks/ModelWeaponRack.java", + "class": "ModelWeaponRack" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloor.java", + "class": "ModelBannerFloor" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerFloorFlag.java", + "class": "ModelBannerFloorFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWall.java", + "class": "ModelBannerWall" + }, + { + "file": "noppes/npcs/client/model/blocks/banner/ModelBannerWallFlag.java", + "class": "ModelBannerWallFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/barrel/ModelBarrel.java", + "class": "ModelBarrel" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireCoals.java", + "class": "ModelCampfireCoals" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireFlame.java", + "class": "ModelCampfireFlame" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireLog.java", + "class": "ModelCampfireLog" + }, + { + "file": "noppes/npcs/client/model/blocks/campfire/ModelCampfireStone.java", + "class": "ModelCampfireStone" + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandle.java", + "class": "ModelCandle" + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleCeiling.java", + "class": "ModelCandleCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/candle/ModelCandleWall.java", + "class": "ModelCandleWall" + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChair.java", + "class": "ModelChair" + }, + { + "file": "noppes/npcs/client/model/blocks/chair/ModelChairSpoof.java", + "class": "ModelChairSpoof" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java", + "class": "ModelCouchCorner" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java", + "class": "ModelCouchLeft" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java", + "class": "ModelCouchMiddle" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchRight.java", + "class": "ModelCouchRight" + }, + { + "file": "noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java", + "class": "ModelCouchSingle" + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelShortLamp.java", + "class": "ModelShortLamp" + }, + { + "file": "noppes/npcs/client/model/blocks/lamp/ModelTallLamp.java", + "class": "ModelTallLamp" + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternCeiling.java", + "class": "LanternCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternFloor.java", + "class": "LanternFloor" + }, + { + "file": "noppes/npcs/client/model/blocks/lantern/LanternWall.java", + "class": "LanternWall" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyAnvil.java", + "class": "ModelLegacyAnvil" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBanner.java", + "class": "ModelLegacyBanner" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBannerFlag.java", + "class": "ModelLegacyBannerFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrel.java", + "class": "ModelLegacyBarrel" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyBarrelLid.java", + "class": "ModelLegacyBarrelLid" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandle.java", + "class": "ModelLegacyCandle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleCeiling.java", + "class": "ModelLegacyCandleCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCandleWall.java", + "class": "ModelLegacyCandleWall" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCarpentryBench.java", + "class": "ModelLegacyCarpentryBench" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyCeiling.java", + "class": "ModelLegacyCeiling" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyChair.java", + "class": "ModelLegacyChair" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyLantern.java", + "class": "ModelLegacyLantern" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyMailboxUS.java", + "class": "ModelLegacyMailboxUS" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyPedestal.java", + "class": "ModelLegacyPedestal" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyStool.java", + "class": "ModelLegacyStool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTable.java", + "class": "ModelLegacyTable" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLamp.java", + "class": "ModelLegacyTallLamp" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyTallLampTop.java", + "class": "ModelLegacyTallLampTop" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWall.java", + "class": "ModelLegacyWall" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBanner.java", + "class": "ModelLegacyWallBanner" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/ModelLegacyWallBannerFlag.java", + "class": "ModelLegacyWallBannerFlag" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodLeft.java", + "class": "ModelCouchWoodLeft" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodMiddle.java", + "class": "ModelCouchWoodMiddle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodRight.java", + "class": "ModelCouchWoodRight" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelCouchWoodSingle.java", + "class": "ModelCouchWoodSingle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCorner.java", + "class": "ModelLegacyCouchCorner" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchCornerWool.java", + "class": "ModelLegacyCouchCornerWool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeft.java", + "class": "ModelLegacyCouchLeft" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchLeftWool.java", + "class": "ModelLegacyCouchLeftWool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddle.java", + "class": "ModelLegacyCouchMiddle" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchMiddleWool.java", + "class": "ModelLegacyCouchMiddleWool" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRight.java", + "class": "ModelLegacyCouchRight" + }, + { + "file": "noppes/npcs/client/model/blocks/legacy/couch/ModelLegacyCouchRightWool.java", + "class": "ModelLegacyCouchRightWool" + }, + { + "file": "noppes/npcs/client/model/util/ModelRenderPassHelper.java", + "class": "ModelRenderPassHelper" + } + ], + "net.minecraft.block.Block": [ + { + "file": "noppes/npcs/blocks/BlockBlood.java", + "class": "BlockBlood" + }, + { + "file": "noppes/npcs/blocks/BlockPlaceholder.java", + "class": "BlockPlaceholder" + } + ], + "net.minecraft.tileentity.TileEntity": [ + { + "file": "noppes/npcs/blocks/tiles/TileBigSign.java", + "class": "TileBigSign" + }, + { + "file": "noppes/npcs/blocks/tiles/TileBlockAnvil.java", + "class": "TileBlockAnvil" + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "class": "TileBorder" + }, + { + "file": "noppes/npcs/blocks/tiles/TileMailbox.java", + "class": "TileMailbox" + }, + { + "file": "noppes/npcs/blocks/tiles/TileRedstoneBlock.java", + "class": "TileRedstoneBlock" + }, + { + "file": "noppes/npcs/blocks/tiles/TileScripted.java", + "class": "TileScripted" + }, + { + "file": "noppes/npcs/blocks/tiles/TileVariant.java", + "class": "TileVariant" + }, + { + "file": "noppes/npcs/blocks/tiles/TileWaypoint.java", + "class": "TileWaypoint" + } + ], + "net.minecraft.item.Item": [ + { + "file": "noppes/npcs/items/ItemCustomizable.java", + "class": "ItemCustomizable" + }, + { + "file": "noppes/npcs/items/ItemMoneyBag.java", + "class": "ItemMoneyBag" + }, + { + "file": "noppes/npcs/items/ItemMounter.java", + "class": "ItemMounter" + }, + { + "file": "noppes/npcs/items/ItemNpcCloner.java", + "class": "ItemNpcCloner" + }, + { + "file": "noppes/npcs/items/ItemNpcInterface.java", + "class": "ItemNpcInterface" + }, + { + "file": "noppes/npcs/items/ItemNpcMovingPath.java", + "class": "ItemNpcMovingPath" + }, + { + "file": "noppes/npcs/items/ItemNpcScripter.java", + "class": "ItemNpcScripter" + }, + { + "file": "noppes/npcs/items/ItemNpcTool.java", + "class": "ItemNpcTool" + }, + { + "file": "noppes/npcs/items/ItemNpcWand.java", + "class": "ItemNpcWand" + }, + { + "file": "noppes/npcs/items/ItemSoulstoneEmpty.java", + "class": "ItemSoulstoneEmpty" + }, + { + "file": "noppes/npcs/items/ItemSoulstoneFilled.java", + "class": "ItemSoulstoneFilled" + }, + { + "file": "noppes/npcs/items/ItemTeleporter.java", + "class": "ItemTeleporter" + } + ], + "net.minecraft.client.gui.GuiScreen": [ + { + "file": "noppes/npcs/client/gui/custom/GuiCustom.java", + "class": "GuiCustom" + }, + { + "file": "noppes/npcs/client/gui/hud/GuiHudEditor.java", + "class": "GuiHudEditor" + }, + { + "file": "noppes/npcs/client/gui/player/GuiBook.java", + "class": "GuiBook" + }, + { + "file": "noppes/npcs/client/gui/player/companion/GuiNpcCompanionTalents.java", + "class": "GuiTalent" + }, + { + "file": "noppes/npcs/client/gui/util/GuiCustomScroll.java", + "class": "GuiCustomScroll" + }, + { + "file": "noppes/npcs/client/gui/util/GuiEffectBar.java", + "class": "GuiEffectBar" + }, + { + "file": "noppes/npcs/client/gui/util/GuiHoverText.java", + "class": "GuiHoverText" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNPCInterface.java", + "class": "GuiNPCInterface" + }, + { + "file": "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "class": "GuiScrollWindow" + } + ], + "net.minecraft.util.Vec3": [ + { + "file": "noppes/npcs/util/Vec3NPC.java", + "class": "Vec3NPC" + } + ], + "net.minecraft.inventory.Slot": [ + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiSlot.java", + "class": "CustomGuiSlot" + }, + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "class": "SlotAnvilOutput" + }, + { + "file": "noppes/npcs/containers/SlotAuctionDisplay.java", + "class": "SlotAuctionDisplay" + }, + { + "file": "noppes/npcs/containers/SlotCompanionArmor.java", + "class": "SlotCompanionArmor" + }, + { + "file": "noppes/npcs/containers/SlotCompanionWeapon.java", + "class": "SlotCompanionWeapon" + }, + { + "file": "noppes/npcs/containers/SlotNPCArmor.java", + "class": "SlotNPCArmor" + }, + { + "file": "noppes/npcs/containers/SlotNpcBankCurrency.java", + "class": "SlotNpcBankCurrency" + }, + { + "file": "noppes/npcs/containers/SlotNpcMercenaryCurrency.java", + "class": "SlotNpcMercenaryCurrency" + }, + { + "file": "noppes/npcs/containers/SlotNpcTraderItems.java", + "class": "SlotNpcTraderItems" + }, + { + "file": "noppes/npcs/containers/SlotValid.java", + "class": "SlotValid" + } + ], + "net.minecraft.client.model.ModelBox": [ + { + "file": "noppes/npcs/client/model/util/ModelPlane.java", + "class": "ModelPlane" + } + ], + "net.minecraft.entity.ai.EntityAIBase": [ + { + "file": "noppes/npcs/ai/EntityAIAmbushTarget.java", + "class": "EntityAIAmbushTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIAnimation.java", + "class": "EntityAIAnimation" + }, + { + "file": "noppes/npcs/ai/EntityAIAttackTarget.java", + "class": "EntityAIAttackTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIAvoidTarget.java", + "class": "EntityAIAvoidTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIDodgeShoot.java", + "class": "EntityAIDodgeShoot" + }, + { + "file": "noppes/npcs/ai/EntityAIFindShade.java", + "class": "EntityAIFindShade" + }, + { + "file": "noppes/npcs/ai/EntityAIFollow.java", + "class": "EntityAIFollow" + }, + { + "file": "noppes/npcs/ai/EntityAIJob.java", + "class": "EntityAIJob" + }, + { + "file": "noppes/npcs/ai/EntityAILeapAtTargetNpc.java", + "class": "EntityAILeapAtTargetNpc" + }, + { + "file": "noppes/npcs/ai/EntityAILook.java", + "class": "EntityAILook" + }, + { + "file": "noppes/npcs/ai/EntityAIMoveIndoors.java", + "class": "EntityAIMoveIndoors" + }, + { + "file": "noppes/npcs/ai/EntityAIMovingPath.java", + "class": "EntityAIMovingPath" + }, + { + "file": "noppes/npcs/ai/EntityAIOrbitTarget.java", + "class": "EntityAIOrbitTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIPanic.java", + "class": "EntityAIPanic" + }, + { + "file": "noppes/npcs/ai/EntityAIPounceTarget.java", + "class": "EntityAIPounceTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIRangedAttack.java", + "class": "EntityAIRangedAttack" + }, + { + "file": "noppes/npcs/ai/EntityAIReturn.java", + "class": "EntityAIReturn" + }, + { + "file": "noppes/npcs/ai/EntityAIRole.java", + "class": "EntityAIRole" + }, + { + "file": "noppes/npcs/ai/EntityAISprintToTarget.java", + "class": "EntityAISprintToTarget" + }, + { + "file": "noppes/npcs/ai/EntityAIStalkTarget.java", + "class": "EntityAIStalkTarget" + }, + { + "file": "noppes/npcs/ai/EntityAITransform.java", + "class": "EntityAITransform" + }, + { + "file": "noppes/npcs/ai/EntityAIWander.java", + "class": "EntityAIWander" + }, + { + "file": "noppes/npcs/ai/EntityAIWatchClosest.java", + "class": "EntityAIWatchClosest" + }, + { + "file": "noppes/npcs/ai/EntityAIWaterNav.java", + "class": "EntityAIWaterNav" + }, + { + "file": "noppes/npcs/ai/EntityAIWorldLines.java", + "class": "EntityAIWorldLines" + }, + { + "file": "noppes/npcs/ai/EntityAIZigZagTarget.java", + "class": "EntityAIZigZagTarget" + } + ], + "net.minecraft.inventory.Container": [ + { + "file": "noppes/npcs/containers/ContainerAnvilRepair.java", + "class": "ContainerAnvilRepair" + }, + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "class": "ContainerCarpentryBench" + }, + { + "file": "noppes/npcs/containers/ContainerCrate.java", + "class": "ContainerCrate" + }, + { + "file": "noppes/npcs/containers/ContainerCustomGui.java", + "class": "ContainerCustomGui" + }, + { + "file": "noppes/npcs/containers/ContainerEmpty.java", + "class": "ContainerEmpty" + }, + { + "file": "noppes/npcs/containers/ContainerManageBanks.java", + "class": "ContainerManageBanks" + }, + { + "file": "noppes/npcs/containers/ContainerManageRecipes.java", + "class": "ContainerManageRecipes" + }, + { + "file": "noppes/npcs/containers/ContainerNPCFollowerSetup.java", + "class": "ContainerNPCFollowerSetup" + }, + { + "file": "noppes/npcs/containers/ContainerNpcInterface.java", + "class": "ContainerNpcInterface" + }, + { + "file": "noppes/npcs/containers/ContainerNPCInv.java", + "class": "ContainerNPCInv" + }, + { + "file": "noppes/npcs/containers/ContainerNpcItemGiver.java", + "class": "ContainerNpcItemGiver" + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestReward.java", + "class": "ContainerNpcQuestReward" + }, + { + "file": "noppes/npcs/containers/ContainerNpcQuestTypeItem.java", + "class": "ContainerNpcQuestTypeItem" + }, + { + "file": "noppes/npcs/containers/ContainerNPCTraderSetup.java", + "class": "ContainerNPCTraderSetup" + } + ], + "net.minecraft.creativetab.CreativeTabs": [ + { + "file": "noppes/npcs/CreativeTabNpcs.java", + "class": "CreativeTabNpcs" + } + ], + "net.minecraft.client.gui.Gui": [ + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLabel.java", + "class": "CustomGuiLabel" + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiLine.java", + "class": "CustomGuiLine" + }, + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiTexturedRect.java", + "class": "CustomGuiTexturedRect" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/OverlayCustom.java", + "class": "OverlayCustom" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLabel.java", + "class": "CustomOverlayLabel" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayLine.java", + "class": "CustomOverlayLine" + }, + { + "file": "noppes/npcs/client/gui/customoverlay/components/CustomOverlayTexturedRect.java", + "class": "CustomOverlayTexturedRect" + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityHotbarSlotRenderer.java", + "class": "AbilityHotbarSlotRenderer" + }, + { + "file": "noppes/npcs/client/gui/hud/ability/AbilityIcon.java", + "class": "AbilityIcon" + }, + { + "file": "noppes/npcs/client/gui/player/GuiDialogImage.java", + "class": "GuiDialogImage" + }, + { + "file": "noppes/npcs/client/gui/util/GuiDiagram.java", + "class": "GuiDiagram" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcLabel.java", + "class": "GuiNpcLabel" + }, + { + "file": "noppes/npcs/client/gui/util/script/autocomplete/AutocompleteMenu.java", + "class": "AutocompleteMenu" + } + ], + "net.minecraft.item.ItemBlock": [ + { + "file": "noppes/npcs/items/ItemNpcBlock.java", + "class": "ItemNpcBlock" + }, + { + "file": "noppes/npcs/items/ItemPlaceholder.java", + "class": "ItemPlaceholder" + } + ], + "net.minecraft.entity.EntityLiving": [ + { + "file": "noppes/npcs/entity/EntityFakeLiving.java", + "class": "EntityFakeLiving" + } + ], + "cpw.mods.fml.common.eventhandler.Event": [ + { + "file": "noppes/npcs/scripted/event/CustomNPCsEvent.java", + "class": "CustomNPCsEvent" + } + ], + "net.minecraft.client.model.ModelBiped": [ + { + "file": "noppes/npcs/client/model/ModelNPCMale.java", + "class": "ModelNPCMale" + }, + { + "file": "noppes/npcs/client/model/ModelSkirtArmor.java", + "class": "ModelSkirtArmor" + } + ], + "net.minecraft.block.BlockContainer": [ + { + "file": "noppes/npcs/blocks/BlockBanner.java", + "class": "BlockBanner" + }, + { + "file": "noppes/npcs/blocks/BlockBigSign.java", + "class": "BlockBigSign" + }, + { + "file": "noppes/npcs/blocks/BlockBorder.java", + "class": "BlockBorder" + }, + { + "file": "noppes/npcs/blocks/BlockCarpentryBench.java", + "class": "BlockCarpentryBench" + }, + { + "file": "noppes/npcs/blocks/BlockCouchWood.java", + "class": "BlockCouchWood" + }, + { + "file": "noppes/npcs/blocks/BlockCouchWool.java", + "class": "BlockCouchWool" + }, + { + "file": "noppes/npcs/blocks/BlockMailbox.java", + "class": "BlockMailbox" + }, + { + "file": "noppes/npcs/blocks/BlockNpcRedstone.java", + "class": "BlockNpcRedstone" + }, + { + "file": "noppes/npcs/blocks/BlockRotated.java", + "class": "BlockRotated" + }, + { + "file": "noppes/npcs/blocks/BlockScripted.java", + "class": "BlockScripted" + }, + { + "file": "noppes/npcs/blocks/BlockShortLamp.java", + "class": "BlockShortLamp" + }, + { + "file": "noppes/npcs/blocks/BlockStool.java", + "class": "BlockStool" + }, + { + "file": "noppes/npcs/blocks/BlockTallLamp.java", + "class": "BlockTallLamp" + }, + { + "file": "noppes/npcs/blocks/BlockTombstone.java", + "class": "BlockTombstone" + }, + { + "file": "noppes/npcs/blocks/BlockWallBanner.java", + "class": "BlockWallBanner" + }, + { + "file": "noppes/npcs/blocks/BlockWaypoint.java", + "class": "BlockWaypoint" + } + ], + "net.minecraft.command.CommandBase": [ + { + "file": "foxz/command/CommandNoppes.java", + "class": "CommandNoppes" + }, + { + "file": "foxz/command/ScriptedCommand.java", + "class": "ScriptedCommand" + }, + { + "file": "kamkeel/npcs/client/command/CommandCNPCDebugger.java", + "class": "CommandCNPCDebugger" + }, + { + "file": "kamkeel/npcs/command/CommandKamkeel.java", + "class": "CommandKamkeel" + }, + { + "file": "kamkeel/npcs/command/CommandKamkeelBase.java", + "class": "CommandKamkeelBase" + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfile.java", + "class": "CommandProfile" + }, + { + "file": "kamkeel/npcs/command/profile/CommandProfileBase.java", + "class": "CommandProfileBase" + } + ], + "net.minecraft.item.ItemArmor": [ + { + "file": "noppes/npcs/items/ItemNpcArmor.java", + "class": "ItemNpcArmor" + }, + { + "file": "noppes/npcs/items/ItemNpcArmorColorable.java", + "class": "ItemNpcArmorColorable" + }, + { + "file": "noppes/npcs/items/ItemSkirt.java", + "class": "ItemSkirt" + } + ], + "net.minecraft.client.renderer.entity.Render": [ + { + "file": "kamkeel/npcs/client/renderer/RenderEnergy.java", + "class": "RenderEnergy" + }, + { + "file": "kamkeel/npcs/client/renderer/RenderSweeper.java", + "class": "RenderSweeper" + }, + { + "file": "kamkeel/npcs/client/renderer/RenderZone.java", + "class": "RenderZone" + }, + { + "file": "noppes/npcs/client/renderer/RenderProjectile.java", + "class": "RenderProjectile" + } + ], + "net.minecraft.client.renderer.ItemRenderer": [ + { + "file": "noppes/npcs/client/renderer/RenderCNPCHand.java", + "class": "RenderCNPCHand" + } + ], + "net.minecraft.entity.EntityCreature": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "net.minecraft.stats.Achievement": [ + { + "file": "noppes/npcs/client/MessageAchievement.java", + "class": "MessageAchievement" + } + ], + "net.minecraft.entity.projectile.EntityThrowable": [ + { + "file": "noppes/npcs/entity/EntityProjectile.java", + "class": "EntityProjectile" + } + ], + "net.minecraft.pathfinding.PathEntity": [ + { + "file": "noppes/npcs/ai/pathfinder/NPCPath.java", + "class": "NPCPath" + } + ], + "net.minecraft.client.particle.EntityFX": [ + { + "file": "noppes/npcs/client/fx/CustomFX.java", + "class": "CustomFX" + }, + { + "file": "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "class": "EntityBigSmokeFX" + }, + { + "file": "noppes/npcs/client/fx/EntityRainbowFX.java", + "class": "EntityRainbowFX" + }, + { + "file": "noppes/npcs/client/fx/ZoneParticleFX.java", + "class": "ZoneParticleFX" + } + ], + "net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer": [ + { + "file": "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "class": "BlockCandleRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "class": "BlockCarpentryBenchRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "class": "BlockLanternRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "class": "BlockMailboxRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "class": "BlockRendererInterface" + } + ], + "net.minecraft.entity.ai.EntityAITarget": [ + { + "file": "noppes/npcs/ai/target/EntityAIClearTarget.java", + "class": "EntityAIClearTarget" + }, + { + "file": "noppes/npcs/ai/target/EntityAIClosestTarget.java", + "class": "EntityAIClosestTarget" + }, + { + "file": "noppes/npcs/ai/target/EntityAIOwnerHurtByTarget.java", + "class": "EntityAIOwnerHurtByTarget" + }, + { + "file": "noppes/npcs/ai/target/EntityAIOwnerHurtTarget.java", + "class": "EntityAIOwnerHurtTarget" + } + ], + "net.minecraft.client.gui.inventory.GuiContainer": [ + { + "file": "noppes/npcs/client/gui/GuiMerchantAdd.java", + "class": "GuiMerchantAdd" + }, + { + "file": "noppes/npcs/client/gui/player/GuiCrate.java", + "class": "GuiCrate" + }, + { + "file": "noppes/npcs/client/gui/util/GuiContainerNPCInterface.java", + "class": "GuiContainerNPCInterface" + } + ], + "net.minecraft.client.renderer.entity.RenderPlayer": [ + { + "file": "noppes/npcs/client/renderer/RenderCNPCPlayer.java", + "class": "RenderCNPCPlayer" + } + ], + "net.minecraft.util.EntityDamageSource": [ + { + "file": "noppes/npcs/NpcDamageSource.java", + "class": "NpcDamageSource" + } + ], + "net.minecraft.pathfinding.PathNavigate": [ + { + "file": "noppes/npcs/ai/pathfinder/PathNavigateFlying.java", + "class": "PathNavigateFlying" + } + ], + "net.minecraft.pathfinding.PathPoint": [ + { + "file": "noppes/npcs/ai/pathfinder/NPCPathPoint.java", + "class": "NPCPathPoint" + } + ], + "net.minecraft.client.gui.GuiTextField": [ + { + "file": "noppes/npcs/client/gui/custom/components/CustomGuiTextField.java", + "class": "CustomGuiTextField" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcTextField.java", + "class": "GuiNpcTextField" + } + ], + "net.minecraft.item.ItemSword": [ + { + "file": "noppes/npcs/items/ItemNpcWeaponInterface.java", + "class": "ItemNpcWeaponInterface" + } + ], + "net.minecraft.entity.ai.EntityMoveHelper": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyingMoveHelper.java", + "class": "FlyingMoveHelper" + } + ], + "net.minecraft.client.particle.EntityPortalFX": [ + { + "file": "noppes/npcs/client/fx/EntityElementalStaffFX.java", + "class": "EntityElementalStaffFX" + }, + { + "file": "noppes/npcs/client/fx/EntityEnderFX.java", + "class": "EntityEnderFX" + } + ], + "net.minecraft.util.WeightedRandom": [ + { + "file": "noppes/npcs/controllers/data/SpawnData.java", + "class": "SpawnData" + } + ], + "net.minecraft.enchantment.Enchantment": [ + { + "file": "noppes/npcs/enchants/EnchantInterface.java", + "class": "EnchantInterface" + } + ], + "net.minecraft.world.Teleporter": [ + { + "file": "noppes/npcs/CustomTeleporter.java", + "class": "CustomTeleporter" + } + ], + "net.minecraft.util.EntityDamageSourceIndirect": [ + { + "file": "noppes/npcs/NpcDamageSourceInderect.java", + "class": "NpcDamageSourceInderect" + } + ], + "net.minecraft.entity.ai.EntityAIDoorInteract": [ + { + "file": "noppes/npcs/ai/EntityAIBustDoor.java", + "class": "EntityAIBustDoor" + } + ], + "net.minecraft.pathfinding.PathFinder": [ + { + "file": "noppes/npcs/ai/pathfinder/FlyPathFinder.java", + "class": "FlyPathFinder" + } + ], + "net.minecraft.block.BlockBreakable": [ + { + "file": "noppes/npcs/blocks/BlockCrystal.java", + "class": "BlockCrystal" + } + ], + "net.minecraft.client.renderer.texture.SimpleTexture": [ + { + "file": "noppes/npcs/client/ImageDownloadAlt.java", + "class": "ImageDownloadAlt" + } + ], + "net.minecraft.client.audio.MovingSound": [ + { + "file": "noppes/npcs/client/controllers/ScriptClientSound.java", + "class": "ScriptClientSound" + } + ], + "net.minecraftforge.event.entity.EntityEvent.EntityConstructing": [ + { + "file": "noppes/npcs/client/fx/EntityBigSmokeFX.java", + "class": "EntityBigSmokeFXConstructingEvent" + } + ], + "net.minecraft.client.gui.GuiSlot": [ + { + "file": "noppes/npcs/client/gui/util/GuiNPCStringSlot.java", + "class": "GuiNPCStringSlot" + } + ], + "net.minecraft.client.renderer.ImageBufferDownload": [ + { + "file": "noppes/npcs/client/renderer/ImageBufferDownloadAlt.java", + "class": "ImageBufferDownloadAlt" + } + ], + "net.minecraft.client.renderer.entity.RenderLiving": [ + { + "file": "noppes/npcs/client/renderer/RenderNPCInterface.java", + "class": "RenderNPCInterface" + } + ], + "net.minecraft.inventory.SlotCrafting": [ + { + "file": "noppes/npcs/containers/ContainerCarpentryBench.java", + "class": "SlotCarpentryResult" + } + ], + "net.minecraft.item.crafting.ShapedRecipes": [ + { + "file": "noppes/npcs/controllers/data/RecipeCarpentry.java", + "class": "RecipeCarpentry" + } + ], + "net.minecraft.item.ItemColored": [ + { + "file": "noppes/npcs/items/ItemNpcColored.java", + "class": "ItemNpcColored" + } + ] + }, + "implements": { + "net.minecraft.command.ICommandSender": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "net.minecraft.inventory.IInventory": [ + { + "file": "noppes/npcs/DataInventory.java", + "class": "DataInventory" + }, + { + "file": "noppes/npcs/NpcMiscInventory.java", + "class": "NpcMiscInventory" + }, + { + "file": "noppes/npcs/blocks/tiles/TileNpcContainer.java", + "class": "TileNpcContainer" + }, + { + "file": "noppes/npcs/containers/InventoryAuctionDisplay.java", + "class": "InventoryAuctionDisplay" + }, + { + "file": "noppes/npcs/containers/InventoryNPC.java", + "class": "InventoryNPC" + }, + { + "file": "noppes/npcs/containers/InventoryNpcTrader.java", + "class": "InventoryNpcTrader" + }, + { + "file": "noppes/npcs/controllers/data/PlayerMail.java", + "class": "PlayerMail" + } + ], + "net.minecraft.client.gui.GuiYesNoCallback": [ + { + "file": "noppes/npcs/client/gui/GuiNpcMobSpawnerAdd.java", + "class": "GuiNpcMobSpawnerAdd" + }, + { + "file": "noppes/npcs/client/gui/GuiNpcRemoteEditor.java", + "class": "GuiNpcRemoteEditor" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManageAbilities.java", + "class": "GuiNpcManageAbilities" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageAnimations.java", + "class": "GuiNPCManageAnimations" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageDialogs.java", + "class": "GuiNPCManageDialogs" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageEffects.java", + "class": "GuiNPCManageEffects" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageFactions.java", + "class": "GuiNPCManageFactions" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageLinked.java", + "class": "GuiNPCManageLinked" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNpcManagePlayerData.java", + "class": "GuiNpcManagePlayerData" + }, + { + "file": "noppes/npcs/client/gui/global/GuiNPCManageQuest.java", + "class": "GuiNPCManageQuest" + }, + { + "file": "noppes/npcs/client/gui/item/SubGuiLinkedItem.java", + "class": "SubGuiLinkedItem" + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailbox.java", + "class": "GuiMailbox" + }, + { + "file": "noppes/npcs/client/gui/player/GuiMailmanWrite.java", + "class": "GuiMailmanWrite" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiParty.java", + "class": "GuiParty" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiProfiles.java", + "class": "GuiProfiles" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiQuestLog.java", + "class": "GuiQuestLog" + }, + { + "file": "noppes/npcs/client/gui/player/inventory/GuiSettings.java", + "class": "GuiSettings" + }, + { + "file": "noppes/npcs/client/gui/script/GuiScriptInterface.java", + "class": "GuiScriptInterface" + }, + { + "file": "noppes/npcs/client/gui/util/GuiDirectoryCategorized.java", + "class": "GuiDirectoryCategorized" + }, + { + "file": "noppes/npcs/client/gui/util/GuiNpcMenu.java", + "class": "GuiNpcMenu" + }, + { + "file": "noppes/npcs/client/gui/util/GuiScrollWindow.java", + "class": "GuiScrollWindow" + } + ], + "net.minecraftforge.client.IItemRenderer": [ + { + "file": "noppes/npcs/client/renderer/NpcItemRenderer.java", + "class": "NpcItemRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemBannerRenderer.java", + "class": "ItemBannerRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemBannerWallRenderer.java", + "class": "ItemBannerWallRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCouchWoolRenderer.java", + "class": "ItemCouchWoolRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemCustomRenderer.java", + "class": "ItemCustomRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemShortLampRenderer.java", + "class": "ItemShortLampRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemTallLampRenderer.java", + "class": "ItemTallLampRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ItemToolRenderer.java", + "class": "ItemToolRenderer" + }, + { + "file": "noppes/npcs/client/renderer/items/ScriptedBlockItemRenderer.java", + "class": "ScriptedBlockItemRenderer" + } + ], + "cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler": [ + { + "file": "noppes/npcs/client/renderer/blocks/BlockBloodRenderer.java", + "class": "BlockBloodRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockBorderRenderer.java", + "class": "BlockBorderRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCandleRenderer.java", + "class": "BlockCandleRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockCarpentryBenchRenderer.java", + "class": "BlockCarpentryBenchRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockLanternRenderer.java", + "class": "BlockLanternRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockMailboxRenderer.java", + "class": "BlockMailboxRenderer" + }, + { + "file": "noppes/npcs/client/renderer/blocks/BlockRendererInterface.java", + "class": "BlockRendererInterface" + } + ], + "net.minecraft.command.IEntitySelector": [ + { + "file": "noppes/npcs/ai/selector/NPCAttackSelector.java", + "class": "NPCAttackSelector" + }, + { + "file": "noppes/npcs/ai/selector/NPCInteractSelector.java", + "class": "NPCInteractSelector" + }, + { + "file": "noppes/npcs/blocks/tiles/TileBorder.java", + "class": "TileBorder" + } + ], + "cpw.mods.fml.common.registry.IEntityAdditionalSpawnData": [ + { + "file": "kamkeel/npcs/entity/EntityAbilityZone.java", + "class": "EntityAbilityZone" + }, + { + "file": "kamkeel/npcs/entity/EntityEnergyAbility.java", + "class": "EntityEnergyAbility" + }, + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "net.minecraftforge.common.IExtendedEntityProperties": [ + { + "file": "noppes/npcs/controllers/ScriptEntityData.java", + "class": "ScriptEntityData" + }, + { + "file": "noppes/npcs/controllers/data/MarkData.java", + "class": "MarkData" + }, + { + "file": "noppes/npcs/controllers/data/PlayerData.java", + "class": "PlayerData" + } + ], + "net.minecraft.entity.IRangedAttackMob": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "cpw.mods.fml.common.network.IGuiHandler": [ + { + "file": "noppes/npcs/CommonProxy.java", + "class": "CommonProxy" + } + ], + "net.minecraft.client.resources.IResourceManagerReloadListener": [ + { + "file": "noppes/npcs/client/CustomNpcResourceListener.java", + "class": "CustomNpcResourceListener" + } + ], + "net.minecraft.client.audio.ITickableSound": [ + { + "file": "noppes/npcs/client/controllers/ScriptClientSound.java", + "class": "ScriptClientSound" + } + ], + "net.minecraftforge.common.ForgeChunkManager.LoadingCallback": [ + { + "file": "noppes/npcs/controllers/ChunkController.java", + "class": "ChunkController" + } + ], + "net.minecraft.entity.boss.IBossDisplayData": [ + { + "file": "noppes/npcs/entity/EntityNPCInterface.java", + "class": "EntityNPCInterface" + } + ], + "net.minecraft.world.IWorldAccess": [ + { + "file": "somehussar/janino/EntityUnloadListener.java", + "class": "EntityUnloadListener" + } + ] + } + } +} \ No newline at end of file diff --git a/tools/migration/pa_batch.py b/tools/migration/pa_batch.py new file mode 100644 index 000000000..c98e167de --- /dev/null +++ b/tools/migration/pa_batch.py @@ -0,0 +1,210 @@ +#!/usr/bin/env python3 +"""PA Batch Writer — Write multiple Java source files from a single JSON manifest. + +Usage: + python tools/migration/pa_batch.py [options] + +Reads a JSON manifest containing raw Java source strings and writes them to disk. +Auto-derives file paths from package declarations and public type names when +no explicit path is provided. + +See PA_IMPLEMENTOR_DESIGN.md for full design rationale and manifest format. +""" + +import argparse +import json +import os +import re +import sys + +RE_PACKAGE = re.compile(r"^\s*package\s+([\w.]+)\s*;", re.MULTILINE) +RE_PUBLIC_TYPE = re.compile( + r"public\s+(?:abstract\s+|final\s+|strictfp\s+)*" + r"(?:class|interface|enum|@interface)\s+(\w+)", + re.MULTILINE, +) + + +def detect_project_root(start: str) -> str: + """Walk up from *start* looking for a directory that contains settings.gradle.""" + cur = os.path.abspath(start) + for _ in range(20): + if os.path.isfile(os.path.join(cur, "settings.gradle")): + return cur + parent = os.path.dirname(cur) + if parent == cur: + break + cur = parent + return os.path.abspath(start) + + +def derive_path(content: str, root: str) -> tuple: + """Derive the output file path from *content*'s package + public type name. + + Returns ``(path, error_message)``. On success *error_message* is ``None``. + """ + pkg_match = RE_PACKAGE.search(content) + if not pkg_match: + return None, "no package declaration found" + type_match = RE_PUBLIC_TYPE.search(content) + if not type_match: + return None, "no public class/interface/enum/@interface found" + pkg = pkg_match.group(1).replace(".", os.sep) + name = type_match.group(1) + return os.path.join(root, pkg, f"{name}.java"), None + + +def validate_package_vs_path(content: str, path: str) -> str | None: + """Return a warning string if *path* doesn't match the package in *content*.""" + pkg_match = RE_PACKAGE.search(content) + if not pkg_match: + return None + expected_pkg_dir = pkg_match.group(1).replace(".", os.sep) + norm = path.replace("\\", "/") + expected = expected_pkg_dir.replace("\\", "/") + if expected not in norm: + return f'package "{pkg_match.group(1)}" does not match path "{path}"' + return None + + +def process_manifest( + manifest_path: str, project_root: str, force: bool, dry_run: bool, json_output: bool +): + """Read *manifest_path* and write (or preview) all files.""" + with open(manifest_path, "r", encoding="utf-8") as fh: + manifest = json.load(fh) + + global_root = manifest.get("root", "") + entries = manifest.get("files", []) + + created: list[str] = [] + skipped: list[str] = [] + errors: list[dict] = [] + warnings: list[str] = [] + + for idx, entry in enumerate(entries): + content = entry.get("content") + if content is None: + errors.append({"index": idx, "error": 'missing "content" field'}) + continue + + explicit_path = entry.get("path") + entry_root = entry.get("root", global_root) + + if explicit_path: + rel_path = explicit_path + warn = validate_package_vs_path(content, rel_path) + if warn: + warnings.append(f"entry {idx}: {warn}") + else: + if not entry_root: + errors.append( + { + "index": idx, + "error": "cannot derive path — no root and no explicit path", + } + ) + continue + rel_path, err = derive_path(content, entry_root) + if err: + errors.append({"index": idx, "error": f"cannot derive path — {err}"}) + continue + + abs_path = os.path.join(project_root, rel_path) + + if os.path.isfile(abs_path) and not force: + skipped.append(rel_path) + continue + + if not dry_run: + os.makedirs(os.path.dirname(abs_path), exist_ok=True) + with open(abs_path, "w", encoding="utf-8", newline="\n") as out: + out.write(content) + + created.append(rel_path) + + if json_output: + result = { + "total": len(entries), + "created": created, + "skipped": skipped, + "errors": errors, + "warnings": warnings, + "dry_run": dry_run, + } + print(json.dumps(result, indent=2)) + else: + mode = " (DRY RUN)" if dry_run else "" + print(f"\nPA Batch Writer — {len(entries)} files processed{mode}") + print(f" CREATED: {len(created)} files") + print(f" SKIPPED: {len(skipped)} files (already exist)") + print(f" ERRORS: {len(errors)}") + if warnings: + print(f" WARNINGS: {len(warnings)}") + if created: + verb = "Would create" if dry_run else "Created" + print(f"\n{verb}:") + for p in created: + print(f" {p}") + if skipped: + print("\nSkipped (already exist):") + for p in skipped: + print(f" {p}") + if errors: + print("\nErrors:") + for e in errors: + print(f" entry {e['index']}: {e['error']}") + if warnings: + print("\nWarnings:") + for w in warnings: + print(f" {w}") + + return len(errors) == 0 + + +def main(): + parser = argparse.ArgumentParser( + description="PA Batch Writer — write multiple Java source files from a JSON manifest.", + ) + parser.add_argument("manifest", help="Path to JSON manifest file") + parser.add_argument("--force", action="store_true", help="Overwrite existing files") + parser.add_argument( + "--dry-run", + action="store_true", + help="Show what would be created without writing", + ) + parser.add_argument( + "--json", action="store_true", help="Machine-readable JSON output" + ) + parser.add_argument( + "--project-root", + default=None, + help="Project root override (auto-detected by default)", + ) + args = parser.parse_args() + + if not os.path.isfile(args.manifest): + print(f"ERROR: manifest not found: {args.manifest}", file=sys.stderr) + sys.exit(1) + + if args.project_root: + project_root = os.path.abspath(args.project_root) + else: + project_root = detect_project_root(os.path.dirname(os.path.abspath(__file__))) + + try: + ok = process_manifest( + args.manifest, project_root, args.force, args.dry_run, args.json + ) + except json.JSONDecodeError as exc: + print(f"ERROR: invalid JSON in manifest — {exc}", file=sys.stderr) + sys.exit(1) + except Exception as exc: + print(f"ERROR: {exc}", file=sys.stderr) + sys.exit(1) + + sys.exit(0 if ok else 1) + + +if __name__ == "__main__": + main() diff --git a/tools/migration/pa_classifications_map.txt b/tools/migration/pa_classifications_map.txt new file mode 100644 index 000000000..103e48c5e --- /dev/null +++ b/tools/migration/pa_classifications_map.txt @@ -0,0 +1,411 @@ +EXISTING: +NBTTagCompound -> INbt +EntityPlayer -> IPlayer +EntityPlayerMP -> IPlayer +Entity -> IEntity +ItemStack -> IItemStack +EntityLivingBase -> IEntityLivingBase +World -> IWorld +NBTTagList -> INbtList +DamageSource -> IDamageSource +WorldServer -> IWorld +EntityLiving -> IEntityLiving + +INTERFACE: +ResourceLocation -> IResourceLocation +Block -> IBlock +TileEntity -> ITileEntity +AxisAlignedBB -> IBoundingBox +ICommandSender -> ICommandSender +Vec3 -> IVector3 +Slot -> ISlot +RenderBlocks -> IRenderBlocks +IInventory -> IIInventory +IBlockAccess -> IIBlockAccess +Container -> IContainer +ChatComponentTranslation -> ITextComponent +ChatComponentText -> ITextComponent +EntityItem -> IEntityItem +MovingObjectPosition -> IRayTraceResult +ItemArmor -> IItemArmor +NBTBase -> INbtBase +BlockPos -> IBlockPos +IChatComponent -> ITextComponent +Configuration -> IConfiguration +RenderItem -> IRenderItem +EntityMob -> IEntityMob +EntityCreature -> IEntityLiving +Potion -> IPotionType +Property -> IProperty +PotionEffect -> IPotionEffect +MerchantRecipeList -> IMerchantRecipeList +ModContainer -> IModContainer +InventoryCrafting -> IInventoryCrafting +AttributeModifier -> IAttributeModifier +Explosion -> IExplosion +ChatStyle -> ITextStyle +SoundHandler -> ISoundHandler +IAttributeInstance -> IIAttributeInstance +BlockEvent -> IBlockEvent +ResourcePackRepository -> IResourcePackRepository +Ticket -> ITicket +Enchantment -> IEnchantment +ScoreObjective -> IScoreObjective +ScorePlayerTeam -> IScorePlayerTeam +Scoreboard -> IScoreboard +FMLEventChannel -> IFMLEventChannel +IBlockSource -> IIBlockSource +CommandBlockLogic -> ICommandBlockLogic +IntHashMap -> IIntHashMap +MerchantRecipe -> IMerchantRecipe + +SERVICE: +StatCollector -> PlatformService +Item -> PlatformService +RenderingRegistry -> PlatformService +MinecraftServer -> PlatformService +IIconRegister -> PlatformService +EntityList -> PlatformService +FMLCommonHandler -> PlatformService +CompressedStreamTools -> NBTIO +Gui -> PlatformService +CommandBase -> PlatformService +Loader -> PlatformService +IItemRenderer -> PlatformService +IResource -> PlatformService +I18n -> PlatformService +FMLLog -> PlatformService +ItemRenderer -> PlatformService +ObfuscationReflectionHelper -> PlatformService +EntityVillager -> PlatformService +FakePlayer -> PlatformService +IEntitySelector -> PlatformService +S35PacketUpdateTileEntity -> PlatformService +ChatAllowedCharacters -> PlatformService +EntityXPOrb -> PlatformService +Achievement -> PlatformService +BlockColored -> PlatformService +EnumCreatureAttribute -> PlatformService +PlayerEvent -> PlatformService +IResourceManager -> PlatformService +PositionedSoundRecord -> PlatformService +NPCRendererHelper -> PlatformService +GLAllocation -> PlatformService +RenderBiped -> PlatformService +ItemEditableBook -> PlatformService +ItemWritableBook -> PlatformService +ForgeHooksClient -> PlatformService +MinecraftForgeClient -> PlatformService +ForgeChunkManager -> PlatformService +BiomeGenBase -> PlatformService +LivingEvent -> PlatformService +EntityInteractEvent -> PlatformService +PlayerInteractEvent -> PlatformService +SimpleReloadableResourceManager -> PlatformService +KeyBinding -> PlatformService +ICrafting -> PlatformService +ItemFood -> PlatformService +PlayerSelector -> PlatformService +DimensionManager -> PlatformService +GameSettings -> PlatformService +TextureUtil -> PlatformService +EnumHelper -> PlatformService +OreDictionary -> PlatformService +EnchantmentHelper -> PlatformService +Chunk -> PlatformService +EntityJoinWorldEvent -> PlatformService +ItemTossEvent -> PlatformService +PlayerUseItemEvent -> PlatformService +LivingAttackEvent -> PlatformService +LivingHurtEvent -> PlatformService +IRangedAttackMob -> PlatformService +NPCResourceHelper -> PlatformService +ActiveRenderInfo -> PlatformService +IMerchant -> PlatformService +BiomeDictionary -> PlatformService +InventoryCraftResult -> PlatformService +WeightedRandom -> PlatformService +WorldProvider -> PlatformService +BlockDispenser -> PlatformService +FMLServerAboutToStartEvent -> PlatformService +NBTUtil -> PlatformService +StringUtils -> PlatformService +MobSpawnerBaseLogic -> PlatformService +TileEntityCommandBlock -> PlatformService +TileEntityMobSpawner -> PlatformService +ForgeHooks -> PlatformService +LivingFallEvent -> PlatformService +PlayerDropsEvent -> PlatformService +EntityEnderPearl -> PlatformService +ITickable -> PlatformService +MouseEvent -> PlatformService +ClientRegistry -> PlatformService +IImageBuffer -> PlatformService +Util -> PlatformService +ReflectionHelper -> PlatformService +SoundRegistry -> PlatformService +TexturedQuad -> PlatformService +BossStatus -> PlatformService +ItemPotion -> PlatformService +PotionHelper -> PlatformService +ModelBook -> PlatformService +NPCEntityHelper -> PlatformService +FMLLaunchHandler -> PlatformService +StatList -> PlatformService +WorldSettings -> PlatformService +Score -> PlatformService +FMLClientHandler -> PlatformService + +TRANSFORM: +Side -> (2 patterns) +SideOnly -> (0 patterns) +MathHelper -> (7 patterns) +EnumChatFormatting -> (0 patterns) +EnumFacing -> (0 patterns) + +SUPPRESS: +GuiButton +Minecraft +ModelRenderer +ModelBase +GuiScreen +Tessellator +RenderHelper +OpenGlHelper +TextureManager +FontRenderer +IIcon +RenderManager +EntityAIBase +ScaledResolution +CreativeTabs +GameRegistry +Event +ModelBiped +SubscribeEvent +Render +MinecraftForge +EntityClientPlayerMP +InventoryBasic +Packet +FMLProxyPacket +PathEntity +TileEntitySpecialRenderer +PacketBuffer +EntityAITarget +GuiContainer +RenderPlayer +PathNavigate +PathPoint +AbstractClientPlayer +GuiTextField +InventoryPlayer +EntityRenderer +NetworkRegistry +EntityRegistry +IResourcePack +CraftingManager +FMLInitializationEvent +FMLPreInitializationEvent +FMLServerStartingEvent +ForgeEventFactory +PathFinder +MapColor +RenderGlobal +IRecipe +GuiSlot +RenderLiving +ShapedRecipes +DataWatcher +EntityAITasks +EventBus + +AUTO: +Blocks +NBTTagString +ModelBox +CommandException +Items +Material +GuiYesNo +GuiYesNoCallback +ItemBlock +Cancelable +BlockContainer +EnumAction +SharedMonsterAttributes +Constants +NBTTagDouble +NBTTagInt +EntityAnimal +EntityTameable +RendererLivingEntity +ISimpleBlockRenderingHandler +TickEvent +TextureMap +NBTTagFloat +EntityThrowable +EntityFX +EntityDragon +ChunkCoordinates +WorldEvent +EntityArrow +ItemTooltipEvent +NetworkManager +EntitySheep +NBTTagByte +ItemBow +NBTTagIntArray +BlockIce +BlockLeavesBase +BlockVine +EntityHorse +RenderWorldLastEvent +IEntityAdditionalSpawnData +FMLNetworkEvent +ArmorMaterial +EntityEvent +EntityDamageSource +ChunkCoordIntPair +EventPriority +GuiScreenEvent +IExtendedEntityProperties +ItemSword +EntityGhast +S12PacketEntityVelocity +EntityPlayerSP +ItemRenderType +EnumCreatureType +ChunkDataEvent +ChunkEvent +ChunkWatchEvent +ContainerPlayer +LivingDeathEvent +Phase +EntityMoveHelper +EnumSkyBlock +AbstractResourcePack +FallbackResourceManager +RenderLivingEvent +RenderPlayerEvent +EntityPortalFX +SkinManager +EntityEnderman +EntityCreeper +IMob +INpc +EntityFishHook +NBTPrimitive +PlayerNotFoundException +NetHandlerPlayServer +GuiAchievement +NBTSizeTracker +IGuiHandler +BehaviorDefaultDispenseItem +ToolMaterial +ItemFlintAndSteel +Mod +EventHandler +SidedProxy +FMLLoadCompleteEvent +FMLServerStartedEvent +FMLServerStoppedEvent +Teleporter +LoaderState +EntityDamageSourceIndirect +Result +ChunkPosition +AnvilRepairEvent +PlayerDestroyItemEvent +EntityStruckByLightningEvent +PlaySoundAtEntityEvent +AchievementEvent +ArrowLooseEvent +ArrowNockEvent +BonemealEvent +FillBucketEvent +PlayerOpenContainerEvent +PlayerPickupXpEvent +PlayerSleepInBedEvent +PlayerWakeUpEvent +UseHoeEvent +PlayerEvent +Action +PopulateChunkEvent +EntityAIDoorInteract +BlockDoor +BlockFence +BlockFenceGate +BlockRailBase +BlockWall +ChunkCache +EntityAINearestAttackableTarget +BlockBreakable +ForgeDirection +RenderGameOverlayEvent +RenderHandEvent +EntityFlameFX +EntitySmokeFX +IReloadableResourceManager +ReportedException +ClientCommandHandler +FolderResourcePack +IResourceManagerReloadListener +EntityChicken +SimpleTexture +InputEvent +ClickEvent +Action +ISound +ITickableSound +MovingSound +EntityConstructing +C17PacketCustomPayload +ShaderGroup +GuiOpenEvent +GuiConfirmOpenLink +DefaultResourcePack +ITextureObject +PositionTextureVertex +ImageBufferDownload +ItemRendererHelper +SlotCrafting +S2FPacketSetSlot +LoadingCallback +Type +EnumEnchantmentType +EntityAIAttackOnCollide +EntityAIHurtByTarget +EntityAIOpenDoor +EntityAIRestrictSun +EntityAISwimming +EntityAITaskEntry +IBossDisplayData +EntityZombie +EntityBat +S0BPacketAnimation +ServerChatEvent +S27PacketExplosion +MovingObjectType +EntitySkeleton +S04PacketEntityEquipment +ItemColored +FMLMessage +EntityTrackerEntry +EnumDifficulty +CommandHandler +Type +Vec3i +BlockAir +EntityLightningBolt +TileEntitySign +BlockSnapshot +StatBase +IPlantable +IScoreObjectiveCriteria +NBTTagByteArray +NBTTagLong +NBTTagShort +IWorldAccess +GuiInventory +C0DPacketCloseWindow diff --git a/tools/migration/pa_editor.py b/tools/migration/pa_editor.py new file mode 100644 index 000000000..c39de978e --- /dev/null +++ b/tools/migration/pa_editor.py @@ -0,0 +1,518 @@ +#!/usr/bin/env python3 +"""PA Batch Editor — Surgical multi-file editing from a single JSON manifest. + +Usage: + python tools/migration/pa_editor.py [options] + +Companion to pa_batch.py (which creates files). This tool EDITS existing files +with atomic transaction semantics: all edits succeed or ALL rollback. + +Operations: insert (before/after line), delete (N lines), replace (pattern→content). +Targeting: line numbers OR regex patterns (agent chooses per-edit). + +See AGENTS.md in tools/migration/ for full manifest format and usage patterns. +""" + +import argparse +import copy +import difflib +import json +import os +import re +import shutil +import sys +from typing import Any + + +def detect_project_root(start: str) -> str: + """Walk up from *start* looking for settings.gradle.""" + cur = os.path.abspath(start) + for _ in range(20): + if os.path.isfile(os.path.join(cur, "settings.gradle")): + return cur + parent = os.path.dirname(cur) + if parent == cur: + break + cur = parent + return os.path.abspath(start) + + +# --------------------------------------------------------------------------- +# Edit validation +# --------------------------------------------------------------------------- + + +def _resolve_line( + lines: list[str], target: dict[str, Any], filepath: str +) -> tuple[int | None, str | None]: + """Resolve a target spec to a 0-based line index. + + Target formats: + {"line": 10} → line 10 (1-based → index 9) + {"pattern": "import.*"} → first line matching regex + {"pattern": "import.*", "occurrence": 2} → 2nd match + Returns (index, error_msg). On success error_msg is None. + """ + if "line" in target: + ln = target["line"] + if not isinstance(ln, int) or ln < 1: + return None, f"invalid line number: {ln}" + if ln > len(lines): + return None, f"line {ln} out of bounds (file has {len(lines)} lines)" + return ln - 1, None + + if "pattern" in target: + pat = target["pattern"] + try: + regex = re.compile(pat) + except re.error as exc: + return None, f"invalid regex '{pat}': {exc}" + occurrence = target.get("occurrence", 1) + if not isinstance(occurrence, int) or occurrence < 1: + return None, f"invalid occurrence: {occurrence}" + count = 0 + for i, line in enumerate(lines): + if regex.search(line): + count += 1 + if count == occurrence: + return i, None + return None, f"pattern '{pat}' not found in {filepath}" + ( + f" (occurrence {occurrence})" if occurrence > 1 else "" + ) + + return None, "target must specify 'line' or 'pattern'" + + +def _validate_edit(edit: dict[str, Any], idx: int) -> str | None: + """Validate a single edit spec. Returns error message or None.""" + op = edit.get("op") + if op not in ("insert", "delete", "replace"): + return f"edit {idx}: invalid op '{op}' (must be insert/delete/replace)" + + if op == "insert": + if "content" not in edit: + return f"edit {idx}: insert requires 'content'" + if "target" not in edit: + return f"edit {idx}: insert requires 'target'" + pos = edit.get("position", "after") + if pos not in ("before", "after"): + return f"edit {idx}: position must be 'before' or 'after', got '{pos}'" + + elif op == "delete": + if "target" not in edit: + return f"edit {idx}: delete requires 'target'" + count = edit.get("count", 1) + if not isinstance(count, int) or count < 1: + return f"edit {idx}: delete count must be a positive integer" + + elif op == "replace": + if "content" not in edit: + return f"edit {idx}: replace requires 'content'" + if "target" not in edit: + return f"edit {idx}: replace requires 'target'" + count = edit.get("count", 1) + if not isinstance(count, int) or count < 1: + return f"edit {idx}: replace count must be a positive integer" + + return None + + +# --------------------------------------------------------------------------- +# Edit application (on in-memory line list) +# --------------------------------------------------------------------------- + + +def _apply_edit( + lines: list[str], edit: dict[str, Any], idx: int, filepath: str +) -> tuple[list[str], str | None]: + """Apply a single edit to *lines* (in-memory). Returns (new_lines, error_msg). + + Edits are applied to a copy. On error, returns (original_lines, error_msg). + """ + op = edit["op"] + target = edit["target"] + + line_idx, err = _resolve_line(lines, target, filepath) + if err or line_idx is None: + return lines, f"edit {idx}: {err}" + + result = list(lines) + + if op == "insert": + content = edit["content"] + new_lines = _content_to_lines(content) + pos = edit.get("position", "after") + insert_at = line_idx if pos == "before" else line_idx + 1 + for i, nl in enumerate(new_lines): + result.insert(insert_at + i, nl) + + elif op == "delete": + count = edit.get("count", 1) + end = line_idx + count + if end > len(result): + return ( + lines, + f"edit {idx}: delete would go past end of file (line {line_idx + 1} + {count} > {len(result)})", + ) + del result[line_idx:end] + + elif op == "replace": + count = edit.get("count", 1) + end = line_idx + count + if end > len(result): + return ( + lines, + f"edit {idx}: replace range past end of file (line {line_idx + 1} + {count} > {len(result)})", + ) + new_lines = _content_to_lines(edit["content"]) + result[line_idx:end] = new_lines + + return result, None + + +def _content_to_lines(content: str | list[str]) -> list[str]: + """Normalize content (string or list of strings) to list of lines with newlines.""" + if isinstance(content, list): + return [ln if ln.endswith("\n") else ln + "\n" for ln in content] + # String: split into lines, preserve trailing newline + raw_lines = content.split("\n") + # If content ends with \n, split produces an empty trailing element — drop it + if raw_lines and raw_lines[-1] == "": + raw_lines = raw_lines[:-1] + return [ln + "\n" for ln in raw_lines] + + +# --------------------------------------------------------------------------- +# Diff generation +# --------------------------------------------------------------------------- + + +def _generate_diff( + old_lines: list[str], new_lines: list[str], filepath: str +) -> list[str]: + """Generate unified diff between old and new content.""" + return list( + difflib.unified_diff( + old_lines, + new_lines, + fromfile=f"a/{filepath}", + tofile=f"b/{filepath}", + lineterm="\n", + ) + ) + + +# --------------------------------------------------------------------------- +# Core processing +# --------------------------------------------------------------------------- + + +def process_manifest( + manifest_path: str, + project_root: str, + force: bool, + dry_run: bool, + backup: bool, + json_output: bool, +) -> bool: + """Read *manifest_path*, validate ALL edits, then apply atomically (or preview).""" + with open(manifest_path, "r", encoding="utf-8") as fh: + manifest = json.load(fh) + + file_edits: list[dict[str, Any]] = manifest.get("edits", []) + if not file_edits: + _output(json_output, dry_run, [], [], [], []) + return True + + # ====================================================================== + # PHASE 1: Structural validation (no file I/O) + # ====================================================================== + errors: list[dict[str, Any]] = [] + for fi, fe in enumerate(file_edits): + path = fe.get("path") + if not path: + errors.append({"file_index": fi, "error": "missing 'path'"}) + continue + ops = fe.get("ops", []) + if not ops: + errors.append({"file_index": fi, "path": path, "error": "no ops specified"}) + continue + for oi, op_spec in enumerate(ops): + err = _validate_edit(op_spec, oi) + if err: + errors.append({"file_index": fi, "path": path, "error": err}) + + if errors: + _output(json_output, dry_run, [], [], errors, []) + return False + + # ====================================================================== + # PHASE 2: Read all files, resolve all targets, compute results + # ====================================================================== + file_states: list[ + dict[str, Any] + ] = [] # {path, abs_path, original, modified, diffs, edit_count} + warnings: list[str] = [] + + for fi, fe in enumerate(file_edits): + rel_path = fe["path"] + abs_path = os.path.join(project_root, rel_path) + + if not os.path.isfile(abs_path): + errors.append( + {"file_index": fi, "path": rel_path, "error": "file not found"} + ) + continue + + try: + with open(abs_path, "r", encoding="utf-8") as f: + original = f.readlines() + except Exception as exc: + errors.append( + {"file_index": fi, "path": rel_path, "error": f"read error: {exc}"} + ) + continue + + # Apply edits sequentially (order matters — line numbers shift) + current = list(original) + ops = fe["ops"] + edit_count = 0 + file_ok = True + + for oi, op_spec in enumerate(ops): + current, err = _apply_edit(current, op_spec, oi, rel_path) + if err: + errors.append({"file_index": fi, "path": rel_path, "error": err}) + file_ok = False + break + edit_count += 1 + + if not file_ok: + continue + + if current == original: + warnings.append(f"{rel_path}: edits produced no changes") + + diffs = _generate_diff(original, current, rel_path) + file_states.append( + { + "path": rel_path, + "abs_path": abs_path, + "original": original, + "modified": current, + "diffs": diffs, + "edit_count": edit_count, + } + ) + + # If ANY file had errors, abort ALL + if errors: + _output(json_output, dry_run, [], [], errors, warnings) + return False + + # ====================================================================== + # PHASE 3: Apply (or dry-run) + # ====================================================================== + modified_paths: list[str] = [] + backup_paths: list[str] = [] + + if not dry_run: + # Create backups first (if requested), so rollback is possible + if backup: + for fs in file_states: + bak_path = fs["abs_path"] + ".bak" + try: + shutil.copy2(fs["abs_path"], bak_path) + backup_paths.append(bak_path) + except Exception as exc: + errors.append( + {"path": fs["path"], "error": f"backup failed: {exc}"} + ) + + if errors: + # Clean up any backups we already made + for bp in backup_paths: + try: + os.remove(bp) + except OSError: + pass + _output(json_output, dry_run, [], [], errors, warnings) + return False + + written: list[str] = [] + write_error = False + for fs in file_states: + try: + with open(fs["abs_path"], "w", encoding="utf-8", newline="") as out: + out.writelines(fs["modified"]) + written.append(fs["abs_path"]) + modified_paths.append(fs["path"]) + except Exception as exc: + errors.append({"path": fs["path"], "error": f"write failed: {exc}"}) + write_error = True + break + + # ROLLBACK on write failure + if write_error: + for abs_p in written: + # Find the original content for this path + for fs in file_states: + if fs["abs_path"] == abs_p: + try: + with open(abs_p, "w", encoding="utf-8", newline="") as out: + out.writelines(fs["original"]) + except Exception: + pass # best-effort rollback + break + # Also remove backups since we rolled back + for bp in backup_paths: + try: + os.remove(bp) + except OSError: + pass + _output(json_output, dry_run, [], [], errors, warnings) + return False + else: + modified_paths = [fs["path"] for fs in file_states] + + _output(json_output, dry_run, file_states, modified_paths, errors, warnings) + return True + + +# --------------------------------------------------------------------------- +# Output formatting +# --------------------------------------------------------------------------- + + +def _output( + json_mode: bool, + dry_run: bool, + file_states: list[dict[str, Any]], + modified: list[str], + errors: list[dict[str, Any]], + warnings: list[str], +): + """Print results in human-readable or JSON format.""" + total_edits = sum(fs.get("edit_count", 0) for fs in file_states) + + if json_mode: + result: dict[str, Any] = { + "dry_run": dry_run, + "files_modified": len(modified), + "total_edits": total_edits, + "modified": modified, + "errors": errors, + "warnings": warnings, + } + if dry_run and file_states: + result["diffs"] = {fs["path"]: "".join(fs["diffs"]) for fs in file_states} + print(json.dumps(result, indent=2)) + return + + mode = " (DRY RUN)" if dry_run else "" + print(f"\nPA Batch Editor — {len(modified)} files, {total_edits} edits{mode}") + print(f" MODIFIED: {len(modified)} files") + print(f" ERRORS: {len(errors)}") + if warnings: + print(f" WARNINGS: {len(warnings)}") + + if modified and not dry_run: + print("\nModified:") + for p in modified: + edit_count = 0 + for fs in file_states: + if fs["path"] == p: + edit_count = fs["edit_count"] + break + print(f" {p} ({edit_count} edits)") + + if dry_run and file_states: + print("\nDiffs:") + for fs in file_states: + if fs["diffs"]: + print(f"\n--- {fs['path']} ({fs['edit_count']} edits) ---") + for d in fs["diffs"]: + line = d.rstrip("\n") + print(line) + else: + print(f"\n--- {fs['path']} (no changes) ---") + + if errors: + print("\nErrors:") + for e in errors: + path_info = e.get("path", f"index {e.get('file_index', '?')}") + print(f" {path_info}: {e['error']}") + + if warnings: + print("\nWarnings:") + for w in warnings: + print(f" {w}") + + +# --------------------------------------------------------------------------- +# CLI +# --------------------------------------------------------------------------- + + +def main(): + parser = argparse.ArgumentParser( + description="PA Batch Editor — surgical multi-file editing from a JSON manifest.", + ) + parser.add_argument("manifest", help="Path to JSON edit manifest file") + parser.add_argument( + "--force", action="store_true", help="Apply edits (required to write)" + ) + parser.add_argument( + "--dry-run", + action="store_true", + help="Show diffs without writing (default if --force not given)", + ) + parser.add_argument( + "--backup", + action="store_true", + help="Save .bak copies of original files before editing", + ) + parser.add_argument( + "--json", action="store_true", help="Machine-readable JSON output" + ) + parser.add_argument( + "--project-root", + default=None, + help="Project root override (auto-detected by default)", + ) + args = parser.parse_args() + + # Default to dry-run if --force not specified + if not args.force and not args.dry_run: + args.dry_run = True + + if not os.path.isfile(args.manifest): + print(f"ERROR: manifest not found: {args.manifest}", file=sys.stderr) + sys.exit(1) + + if args.project_root: + project_root = os.path.abspath(args.project_root) + else: + project_root = detect_project_root(os.path.dirname(os.path.abspath(__file__))) + + try: + ok = process_manifest( + args.manifest, + project_root, + args.force, + args.dry_run, + args.backup, + args.json, + ) + except json.JSONDecodeError as exc: + print(f"ERROR: invalid JSON in manifest — {exc}", file=sys.stderr) + sys.exit(1) + except Exception as exc: + print(f"ERROR: {exc}", file=sys.stderr) + sys.exit(1) + + sys.exit(0 if ok else 1) + + +if __name__ == "__main__": + main() diff --git a/tools/migration/pa_rules.py b/tools/migration/pa_rules.py new file mode 100644 index 000000000..9a21c61f6 --- /dev/null +++ b/tools/migration/pa_rules.py @@ -0,0 +1,791 @@ +""" +PA Generation Rules — Single Source of Truth for Migration +========================================================== + +This module defines ALL rules governing platform-abstraction (PA) generation. +Both analyze.py and scan_codebase.py import from here. + +DESIGN PRINCIPLE: Every section is a flat data structure (dict, list, or scalar). +To add a new rule, just append an entry. No classes, no inheritance, no builders. + +HOW TO USE: + from pa_rules import EXISTING_MAPPINGS # replaces hardcoded KNOWN_PA + from pa_rules import classify_type # get classification for any MC type + from pa_rules import get_pa_name # get semantic PA interface name + from pa_rules import get_service_target # get service routing for SERVICE types + from pa_rules import resolve_param_type # resolve MC type → PA type for params + +HOW TO EXTEND: + - New PA mapping completed? → Add to EXISTING_MAPPINGS + - New type to classify? → Add to FORCE_INTERFACE, FORCE_SERVICE, FORCE_TRANSFORM, or SUPPRESS + - New semantic name? → Add to NAMING + - New service routing? → Add to SERVICE_ROUTING + - New obfuscated method name? → Add to OBFUSCATED_METHOD_NAMES +""" + +import re + +# ============================================================ +# SECTION 1: EXISTING MAPPINGS +# Types already abstracted in platform-api. +# Used as the single source of truth for readiness scoring. +# +# Format: "net.minecraft.fully.qualified.Name": "PAInterfaceName" +# +# HOW TO UPDATE: When you complete a PA interface migration, +# add the MC FQN → PA name mapping here. Both analyze.py and +# scan_codebase.py will pick it up automatically. +# ============================================================ + +EXISTING_MAPPINGS = { + # --- NBT --- + "net.minecraft.nbt.NBTTagCompound": "INbt", + "net.minecraft.nbt.NBTTagList": "INbtList", + # --- Entity --- + "net.minecraft.entity.Entity": "IEntity", + "net.minecraft.entity.EntityLivingBase": "IEntityLivingBase", + "net.minecraft.entity.EntityLiving": "IEntityLiving", + "net.minecraft.entity.player.EntityPlayer": "IPlayer", + "net.minecraft.entity.player.EntityPlayerMP": "IPlayer", + # --- Item --- + "net.minecraft.item.ItemStack": "IItemStack", + # --- World --- + "net.minecraft.world.World": "IWorld", + "net.minecraft.world.WorldServer": "IWorld", + # --- Combat --- + "net.minecraft.util.DamageSource": "IDamageSource", +} + + +# ============================================================ +# SECTION 2: TYPE CLASSIFICATION +# Controls how unabstracted MC types are handled during migration. +# Every MC type falls into exactly ONE category: +# +# EXISTING — Already has a PA interface (in EXISTING_MAPPINGS) +# INTERFACE — Should become a standalone PA interface (I*.java) +# SERVICE — Methods should be added to PlatformService or a domain service +# TRANSFORM — Handled by Static-Transform regex replacement +# SUPPRESS — Should NEVER be abstracted (client-only, debug, stays in mc1710) +# AUTO — Not explicitly classified; use heuristics (surface-miner data) +# +# HOW TO ADD: Put the MC simple class name (not FQN) in the right list. +# ============================================================ + +# --- Auto-classification thresholds (for types not in any list) --- +# Used by the classify command when a type isn't explicitly categorized. + +# If more than this fraction of a type's used methods are static → SERVICE +STATIC_THRESHOLD = 0.6 + +# If a type has fewer than this many unique methods used → SERVICE (not worth an interface) +MIN_METHODS_FOR_INTERFACE = 3 + +# If a type is used in fewer than this many files → consider suppressing +MIN_FILES_FOR_INTERFACE = 5 + + +# --- INTERFACE: Types that MUST become standalone PA interfaces --- +# These have rich instance-method surfaces and appear as parameters/return types. +# They represent concepts that exist across MC versions. +FORCE_INTERFACE = [ + # Command/Chat system + "ICommandSender", # 5 instance methods, used for command execution context + "IChatComponent", # Chat message abstraction (→ ITextComponent) + "ChatComponentText", # Concrete text component (→ ITextComponent) + "ChatComponentTranslation", # Translatable text (→ ITextComponent) + "ChatStyle", # Text formatting (→ ITextStyle) + # Geometry / Math + "AxisAlignedBB", # Bounding boxes (→ IBoundingBox) + "Vec3", # 3D vector (→ IVector3) + "MovingObjectPosition", # Raytrace result (→ IRayTraceResult) + # Resources + "ResourceLocation", # Asset/registry identifiers (→ IResourceLocation) + # Effects + "Potion", # Potion type registry (→ IPotionType) + "PotionEffect", # Active potion effect instance (→ IPotionEffect) + # Enchantment + "Enchantment", # Enchantment type (→ IEnchantment) + # Auth + "GameProfile", # Mojang auth profile (→ IGameProfile) + # NBT extension (if needed beyond INbt) + "NBTBase", # Base NBT tag (→ INbtBase, if needed) +] + + +# --- SERVICE: Types whose methods → PlatformService or domain service --- +# These are static utility classes or singleton accessors. +# Java 7 can't have static methods in interfaces, so these MUST go to services. +FORCE_SERVICE = [ + "CompressedStreamTools", # → NBTIO: readCompressed, writeCompressed, read + "PlayerSelector", # → PlatformService: matchPlayers (1 static method) + "MinecraftServer", # → PlatformService: getServer, isDedicatedServer, worldServerForDimension + "StringTranslate", # → PlatformService: translate + "FMLCommonHandler", # → PlatformService: getSide, getEffectiveSide + "ServerConfigurationManager", # → PlatformService: getPlayerList, sendPacketToAllPlayers + "JsonToNBT", # → PlatformService: parseNbt (1 static method) + "StatCollector", # → PlatformService: translateToLocal, translateToLocalFormatted +] + + +# --- TRANSFORM: Types handled by regex-based Static-Transform --- +# These are annotations, enums, or trivially-replaceable patterns. +# The actual regex patterns are in TRANSFORM_PATTERNS below. +FORCE_TRANSFORM = [ + "Side", # @SideOnly(Side.CLIENT) → @ClientOnly + "SideOnly", # Annotation carrier (handled by Side patterns) + "MathHelper", # MathHelper.clamp_int → ValueUtil.clampInt (pure static math) + "EnumChatFormatting", # Color codes → string constants or ITextFormatting enum + "EnumFacing", # Direction enum (if used in core) +] + + +# --- SUPPRESS: Types that should NEVER be abstracted --- +# Client-only, networking, debug, entity AI internals, registration. +# These stay in mc1710 forever. Don't waste time classifying them. +SUPPRESS = [ + # ---- Client-only (GUI, rendering) — never goes to core ---- + "GuiButton", + "GuiScreen", + "GuiTextField", + "GuiContainer", + "GuiSlot", + "Minecraft", + "FontRenderer", + "Tessellator", + "RenderHelper", + "GL11", + "GL12", + "OpenGlHelper", + "RenderGlobal", + "TextureManager", + "IIcon", + "ScaledResolution", + "RenderManager", + "Render", + "RenderLiving", + "RenderPlayer", + "EntityRenderer", + "TileEntitySpecialRenderer", + "ModelBase", + "ModelRenderer", + "ModelBiped", + "ModelPlayer", + "EnumParticleTypes", + "WorldRenderer", + "AbstractClientPlayer", + "EntityClientPlayerMP", + "ResourcePack", + "IResourcePack", + # ---- Networking — stays in mc1710 platform layer ---- + "Packet", + "PacketBuffer", + "ByteBuf", + "ByteBufInputStream", + "SimpleNetworkWrapper", + "IMessage", + "IMessageHandler", + "MessageContext", + "FMLProxyPacket", + # ---- Entity AI internals — entities extend MC directly ---- + "EntityAIBase", + "EntityAITasks", + "PathNavigate", + "DataWatcher", + "EntityAITarget", + "EntityAIWatchClosest", + "PathFinder", + "NavigationPath", + "PathPoint", + "PathEntity", + # ---- Debug / Internal ---- + "Profiler", + "CrashReport", + "CrashReportCategory", + # ---- Forge event system — stays in mc1710 ---- + "Event", + "EventBus", + "SubscribeEvent", + "ForgeEventFactory", + "MinecraftForge", + "FMLEvent", + "FMLPreInitializationEvent", + "FMLInitializationEvent", + "FMLPostInitializationEvent", + "FMLServerStartingEvent", + "FMLServerStoppingEvent", + # ---- Registration — platform-specific forever ---- + "GameRegistry", + "LanguageRegistry", + "EntityRegistry", + "NetworkRegistry", + "TickRegistry", + # ---- Mixin internals ---- + "SpongePowered", + "Mixin", + "Shadow", + "Inject", + # ---- Recipe system (NEVER list in AGENTS.md) ---- + "ShapedRecipes", + "ShapelessRecipes", + "CraftingManager", + "IRecipe", + # ---- Block/Tile internals that stay platform-side ---- + # (IBlock/ITileEntity exist but wrap ScriptedBlock, not raw MC Block) + "CreativeTabs", + "MapColor", + # ---- Inventory internals ---- + "InventoryBasic", + "InventoryPlayer", +] + + +# ============================================================ +# SECTION 3: NAMING +# Semantic name overrides for generated PA interfaces. +# Maps MC simple class name → PA interface name. +# +# WHY: MC names are version-specific (ChatComponentText in 1.7, +# TextComponent in 1.16, Component in 1.19). PA names must be +# version-agnostic and stable across all versions. +# +# DEFAULT: If not listed here, the generated name is "I" + MCClassName. +# +# HOW TO ADD: When you decide on a semantic name for a type, +# add it here. The classify and generate-pa commands use this. +# ============================================================ + +NAMING = { + # ---- Chat / Text system ---- + # 1.7: ChatComponentText, 1.16: StringTextComponent, 1.19: Component.literal() + "ChatComponentText": "ITextComponent", + "ChatComponentTranslation": "ITextComponent", + "ChatComponentScore": "ITextComponent", + "IChatComponent": "ITextComponent", + "ChatStyle": "ITextStyle", + "EnumChatFormatting": "ITextFormatting", + # ---- Server ---- + # 1.7: MinecraftServer.getServer(), 1.13+: different access patterns + "MinecraftServer": "IServer", + "DedicatedServer": "IServer", + "IntegratedServer": "IServer", + "ServerConfigurationManager": "IPlayerManager", + # ---- Geometry ---- + # 1.7: AxisAlignedBB, 1.14+: same name but different package + "AxisAlignedBB": "IBoundingBox", + "Vec3": "IVector3", + "ChunkCoordinates": "IPos", # IPos already exists in PA + "MovingObjectPosition": "IRayTraceResult", + # ---- Effects ---- + # 1.7: Potion, 1.9+: different registry system but same concept + "Potion": "IPotionType", + "PotionEffect": "IPotionEffect", + # ---- Entity merges ---- + # Multiple MC classes → single PA interface (wraps closest common ancestor) + "EntityPlayer": "IPlayer", + "EntityPlayerMP": "IPlayer", + "EntityLivingBase": "IEntityLivingBase", + "EntityLiving": "IEntityLiving", + "EntityCreature": "IEntityLiving", + # ---- Resources ---- + # 1.7: ResourceLocation, all versions: same concept + "ResourceLocation": "IResourceLocation", + # ---- Auth ---- + "GameProfile": "IGameProfile", + # ---- Enchantment ---- + "Enchantment": "IEnchantment", + # ---- NBT base ---- + "NBTBase": "INbtBase", + # ---- World ---- + "WorldServer": "IWorld", + # ---- Command ---- + "ICommandSender": "ICommandSender", # Keep same name (already good) +} + + +# ============================================================ +# SECTION 4: ROUTING +# Where generated interfaces and service methods go. +# +# HOW TO UPDATE: +# - New sub-package needed? → Add a pattern to PACKAGE_ROUTING +# - New service target? → Add to SERVICE_ROUTING +# ============================================================ + +# Default output locations +DEFAULT_INTERFACE_PACKAGE = "noppes.npcs.api" +DEFAULT_INTERFACE_DIR = "platform-api/src/main/java/noppes/npcs/api/" + +# Sub-package routing: regex on PA interface name → sub-package +# First match wins. If nothing matches → DEFAULT_INTERFACE_PACKAGE. +PACKAGE_ROUTING = [ + (r"IPlayer|IEntity|ILiving|ICustomNpc", "noppes.npcs.api.entity"), + (r"IItem", "noppes.npcs.api.item"), + (r"IScoreboard", "noppes.npcs.api.scoreboard"), + (r"IOverlay", "noppes.npcs.api.overlay"), + (r"IJob", "noppes.npcs.api.jobs"), + (r"IRole", "noppes.npcs.api.roles"), + (r"IHandler|IPlayerData|IPlayerQuest", "noppes.npcs.api.handler"), + # Everything else → default package +] + +# Service routing: MC simple name → service target +# Defines WHERE service methods go for FORCE_SERVICE types. +SERVICE_ROUTING = { + "CompressedStreamTools": { + "service": "NBTIO", + "file": "platform-api/src/main/java/noppes/npcs/platform/nbt/NBTIO.java", + "reason": "NBT I/O operations belong with NBT infrastructure", + }, + "PlayerSelector": { + "service": "PlatformService", + "file": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "reason": "Single static method (matchPlayers), too small for own service", + }, + "MinecraftServer": { + "service": "PlatformService", + "file": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "reason": "Server access is a core platform concern (getServer, isDedicatedServer)", + }, + "StringTranslate": { + "service": "PlatformService", + "file": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "reason": "Translation is platform-specific (different I18n in each version)", + }, + "FMLCommonHandler": { + "service": "PlatformService", + "file": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "reason": "Side detection is platform infrastructure", + }, + "ServerConfigurationManager": { + "service": "PlatformService", + "file": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "reason": "Player management access is core platform concern", + }, + "JsonToNBT": { + "service": "NBTIO", + "file": "platform-api/src/main/java/noppes/npcs/platform/nbt/NBTIO.java", + "reason": "JSON↔NBT conversion belongs with NBT infrastructure", + }, + "StatCollector": { + "service": "PlatformService", + "file": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "reason": "Translation/localization is platform-specific", + }, +} + + +# ============================================================ +# SECTION 5: STATIC TRANSFORM PATTERNS +# Regex patterns for FORCE_TRANSFORM types. +# Used by Static-Transform.ps1 during migration waves. +# +# Format: "MCTypeName": [(regex_pattern, replacement), ...] +# +# HOW TO ADD: When you identify a new pattern for a TRANSFORM type, +# add the regex + replacement here. The classify command shows +# these patterns in its output. +# ============================================================ + +TRANSFORM_PATTERNS = { + "Side": [ + (r"@SideOnly\s*\(\s*Side\.CLIENT\s*\)", "@ClientOnly"), + (r"@SideOnly\s*\(\s*Side\.SERVER\s*\)", "@ServerOnly"), + ], + "SideOnly": [], # Handled by Side patterns above + "MathHelper": [ + (r"MathHelper\.clamp_int\s*\(", "ValueUtil.clampInt("), + (r"MathHelper\.clamp_float\s*\(", "ValueUtil.clampFloat("), + (r"MathHelper\.clamp_double\s*\(", "ValueUtil.clampDouble("), + (r"MathHelper\.sqrt_double\s*\(", "Math.sqrt("), + (r"MathHelper\.sqrt_float\s*\(", "(float)Math.sqrt("), + (r"MathHelper\.floor_double\s*\(", "ValueUtil.floorDouble("), + (r"MathHelper\.floor_float\s*\(", "ValueUtil.floorFloat("), + ], + "EnumChatFormatting": [ + # Typically replaced with string constants or suppressed in core + # Add specific patterns as migration progresses + ], + "EnumFacing": [ + # Direction enum — add patterns when core code needs directions + ], +} + + +# ============================================================ +# SECTION 6: PARAMETER TYPE RESOLUTION +# When generating PA interface method signatures, MC types in +# parameters and return types need to be resolved to PA types. +# +# Strategy for types NOT in this map: +# "object" — use Object (pragmatic, safe, fast) +# "recursive" — also generate interfaces for param types (thorough) +# ============================================================ + +UNRESOLVED_PARAM_STRATEGY = "object" + +# Known parameter type mappings: MC simple name → PA type name +# Used when generating interface method signatures. +PARAM_TYPE_MAP = { + # ---- Already abstracted (mirrors EXISTING_MAPPINGS by simple name) ---- + "EntityPlayer": "IPlayer", + "EntityPlayerMP": "IPlayer", + "NBTTagCompound": "INbt", + "NBTTagList": "INbtList", + "ItemStack": "IItemStack", + "World": "IWorld", + "WorldServer": "IWorld", + "DamageSource": "IDamageSource", + "Entity": "IEntity", + "EntityLivingBase": "IEntityLivingBase", + "EntityLiving": "IEntityLiving", + # ---- Planned abstractions (use the NAMING value) ---- + "ResourceLocation": "IResourceLocation", + "ChatComponentText": "ITextComponent", + "ChatComponentTranslation": "ITextComponent", + "IChatComponent": "ITextComponent", + "AxisAlignedBB": "IBoundingBox", + "Vec3": "IVector3", + "GameProfile": "IGameProfile", + "PotionEffect": "IPotionEffect", + "Potion": "IPotionType", + "Enchantment": "IEnchantment", + "ICommandSender": "ICommandSender", + "MovingObjectPosition": "IRayTraceResult", + # ---- Java primitives (pass through unchanged) ---- + "String": "String", + "int": "int", + "float": "float", + "double": "double", + "boolean": "boolean", + "long": "long", + "byte": "byte", + "short": "short", + "char": "char", + "void": "void", + "byte[]": "byte[]", + "int[]": "int[]", + "String[]": "String[]", + "float[]": "float[]", + "double[]": "double[]", + # ---- Java standard library (pass through unchanged) ---- + "List": "List", + "ArrayList": "List", + "Map": "Map", + "HashMap": "Map", + "Set": "Set", + "HashSet": "Set", + "Collection": "Collection", + "File": "File", + "UUID": "UUID", + "InputStream": "InputStream", + "OutputStream": "OutputStream", + "DataInputStream": "DataInputStream", + "DataOutputStream": "DataOutputStream", + "Object": "Object", + "Runnable": "Runnable", +} + + +# ============================================================ +# SECTION 7: METHOD FILTERING +# Controls which methods are included/excluded in generated interfaces. +# ============================================================ + +# Methods to ALWAYS exclude from generated interfaces +# (inherited Object methods that never belong in PA interfaces) +EXCLUDED_METHODS = [ + "toString", + "hashCode", + "equals", + "clone", + "finalize", + "getClass", + "notify", + "notifyAll", + "wait", +] + +# Obfuscated MCP method names → readable names +# When surface-miner finds these, use the readable name in generated interfaces. +OBFUSCATED_METHOD_NAMES = { + "func_152457_a": "decompress", + "func_150296_c": "getTagType", + "func_150299_b": "getKeySet", + "func_74875_a": "getTagList", + "func_82580_o": "getShort", + "func_150295_c": "merge", + "func_74737_a": "copy", + "func_74732_a": "getId", +} + +# If True, obfuscated methods (matching func_\d+_[a-z]) that are NOT in +# OBFUSCATED_METHOD_NAMES are excluded from generated interfaces. +EXCLUDE_UNMAPPED_OBFUSCATED = True + + +# ============================================================ +# SECTION 8: JAVA CONSTRAINTS +# Compile-time constraints that affect generated code shape. +# ============================================================ + +# Java language level for generated interfaces. +# Java 7: no default methods, no static interface methods. +# Java 8: default and static methods allowed. +JAVA_TARGET = 7 + +# If True, add @Override on wrapper methods implementing PA interfaces. +ADD_OVERRIDE = True + + +# ============================================================ +# SECTION 9: HELPER FUNCTIONS +# Convenience functions for consuming the rules above. +# These are the primary API for other modules. +# ============================================================ + + +def _simple_name(fqn_or_simple): + """Extract simple class name from FQN or return as-is.""" + return fqn_or_simple.rsplit(".", 1)[-1] if "." in fqn_or_simple else fqn_or_simple + + +def is_existing(fqn): + """Check if a fully-qualified MC type already has a PA abstraction.""" + return fqn in EXISTING_MAPPINGS + + +def get_existing_pa(fqn): + """Get the PA interface name for an already-abstracted MC type, or None.""" + return EXISTING_MAPPINGS.get(fqn) + + +def classify_type(simple_name, surface_data=None): + """ + Classify an MC type into a migration category. + + Args: + simple_name: MC class simple name (e.g. "MinecraftServer") + surface_data: Optional dict from surface-miner with keys: + "methods": [{"name": str, "kind": "static"|"instance", "count": int}, ...] + If provided, enables AUTO classification with heuristics. + + Returns: + dict with keys: + "classification": "EXISTING"|"INTERFACE"|"SERVICE"|"TRANSFORM"|"SUPPRESS"|"AUTO" + "reason": str explaining why + "pa_name": str or None (the PA interface/service name) + "target": str or None (service file path for SERVICE types) + "transform_patterns": list or None (regex patterns for TRANSFORM types) + """ + name = _simple_name(simple_name) + + # Check EXISTING first (by simple name match against EXISTING_MAPPINGS values) + for fqn, pa in EXISTING_MAPPINGS.items(): + if _simple_name(fqn) == name: + return { + "classification": "EXISTING", + "reason": f"Already abstracted as {pa}", + "pa_name": pa, + "target": None, + "transform_patterns": None, + } + + # Check SUPPRESS + if name in SUPPRESS: + return { + "classification": "SUPPRESS", + "reason": "Suppressed (client-only, debug, networking, or stays in mc1710)", + "pa_name": None, + "target": None, + "transform_patterns": None, + } + + # Check FORCE_TRANSFORM + if name in FORCE_TRANSFORM: + patterns = TRANSFORM_PATTERNS.get(name, []) + return { + "classification": "TRANSFORM", + "reason": f"Static-Transform ({len(patterns)} regex patterns)", + "pa_name": None, + "target": None, + "transform_patterns": patterns, + } + + # Check FORCE_SERVICE + if name in FORCE_SERVICE: + routing = SERVICE_ROUTING.get(name, {}) + return { + "classification": "SERVICE", + "reason": routing.get("reason", "Force-classified as service"), + "pa_name": None, + "target": routing.get("file"), + "service_name": routing.get("service", "PlatformService"), + "transform_patterns": None, + } + + # Check FORCE_INTERFACE + if name in FORCE_INTERFACE: + pa_name = get_pa_name(name) + return { + "classification": "INTERFACE", + "reason": "Force-classified as interface", + "pa_name": pa_name, + "target": _resolve_interface_path(pa_name), + "transform_patterns": None, + } + + # AUTO classification using surface data (if provided) + if surface_data and surface_data.get("methods"): + methods = surface_data["methods"] + total = len(methods) + static_count = sum(1 for m in methods if m.get("kind") == "static") + static_ratio = static_count / total if total > 0 else 0 + + if total < MIN_METHODS_FOR_INTERFACE: + return { + "classification": "SERVICE", + "reason": f"Auto: only {total} methods (< {MIN_METHODS_FOR_INTERFACE} threshold)", + "pa_name": None, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "service_name": "PlatformService", + "transform_patterns": None, + } + + if static_ratio > STATIC_THRESHOLD: + return { + "classification": "SERVICE", + "reason": f"Auto: {static_ratio:.0%} static methods (> {STATIC_THRESHOLD:.0%} threshold)", + "pa_name": None, + "target": "platform-api/src/main/java/kamkeel/npcs/platform/PlatformService.java", + "service_name": "PlatformService", + "transform_patterns": None, + } + + pa_name = get_pa_name(name) + return { + "classification": "INTERFACE", + "reason": f"Auto: {total} methods, {static_ratio:.0%} static → instance-heavy", + "pa_name": pa_name, + "target": _resolve_interface_path(pa_name), + "transform_patterns": None, + } + + # No data, no explicit rule → UNKNOWN + return { + "classification": "AUTO", + "reason": "Not classified. Run with --surface to enable auto-classification.", + "pa_name": get_pa_name(name), + "target": None, + "transform_patterns": None, + } + + +def get_pa_name(simple_name): + """ + Get the PA interface name for an MC type. + Uses NAMING overrides, falls back to "I" + simple_name. + """ + name = _simple_name(simple_name) + return NAMING.get(name, f"I{name}") + + +def get_service_target(simple_name): + """ + Get the service routing for a SERVICE-classified type. + Returns dict with 'service', 'file', 'reason' or None. + """ + name = _simple_name(simple_name) + return SERVICE_ROUTING.get(name) + + +def resolve_param_type(mc_type_name): + """ + Resolve an MC type name to its PA equivalent for use in method signatures. + Returns the PA type name, or "Object" if unresolved (per UNRESOLVED_PARAM_STRATEGY). + """ + name = _simple_name(mc_type_name) + resolved = PARAM_TYPE_MAP.get(name) + if resolved: + return resolved + if UNRESOLVED_PARAM_STRATEGY == "object": + return "Object" + return name # "recursive" strategy — caller handles generation + + +def should_exclude_method(method_name): + """Check if a method should be excluded from generated interfaces.""" + if method_name in EXCLUDED_METHODS: + return True + if EXCLUDE_UNMAPPED_OBFUSCATED and re.match(r"func_\d+_[a-z]", method_name): + return method_name not in OBFUSCATED_METHOD_NAMES + return False + + +def resolve_obfuscated_method(method_name): + """Resolve an obfuscated MCP method name to readable, or return as-is.""" + return OBFUSCATED_METHOD_NAMES.get(method_name, method_name) + + +def get_interface_package(pa_name): + """Determine which package a PA interface should go in based on its name.""" + for pattern, package in PACKAGE_ROUTING: + if re.search(pattern, pa_name): + return package + return DEFAULT_INTERFACE_PACKAGE + + +def _resolve_interface_path(pa_name): + """Build the full file path for a PA interface.""" + package = get_interface_package(pa_name) + package_path = package.replace(".", "/") + return f"platform-api/src/main/java/{package_path}/{pa_name}.java" + + +# ============================================================ +# SECTION 10: QUICK REFERENCE +# Summary of all classified types for fast lookup. +# Run: python -m pa_rules to see the full classification table. +# ============================================================ + +if __name__ == "__main__": + print("=" * 72) + print("PA GENERATION RULES — CLASSIFICATION SUMMARY") + print("=" * 72) + + print(f"\n EXISTING ({len(EXISTING_MAPPINGS)} types):") + for fqn, pa in sorted(EXISTING_MAPPINGS.items(), key=lambda x: x[1]): + print(f" {_simple_name(fqn):30s} → {pa}") + + print(f"\n INTERFACE ({len(FORCE_INTERFACE)} types):") + for t in sorted(FORCE_INTERFACE): + pa = get_pa_name(t) + path = _resolve_interface_path(pa) + print(f" {t:30s} → {pa:20s} {path}") + + print(f"\n SERVICE ({len(FORCE_SERVICE)} types):") + for t in sorted(FORCE_SERVICE): + routing = SERVICE_ROUTING.get(t, {}) + svc = routing.get("service", "PlatformService") + print(f" {t:30s} → {svc}") + + print(f"\n TRANSFORM ({len(FORCE_TRANSFORM)} types):") + for t in sorted(FORCE_TRANSFORM): + patterns = TRANSFORM_PATTERNS.get(t, []) + print(f" {t:30s} ({len(patterns)} patterns)") + + print(f"\n SUPPRESS ({len(SUPPRESS)} types):") + for i in range(0, len(SUPPRESS), 6): + chunk = SUPPRESS[i : i + 6] + print(f" {', '.join(chunk)}") + + total = ( + len(EXISTING_MAPPINGS) + + len(FORCE_INTERFACE) + + len(FORCE_SERVICE) + + len(FORCE_TRANSFORM) + + len(SUPPRESS) + ) + print(f"\n TOTAL CLASSIFIED: {total}") + print(f" REMAINING AUTO: {400 - total} (of ~400 MC types in codebase)") + print(f"\n Run 'python analyze.py classify ' for per-type classification.") diff --git a/tools/migration/scan_codebase.py b/tools/migration/scan_codebase.py new file mode 100644 index 000000000..2e753c77b --- /dev/null +++ b/tools/migration/scan_codebase.py @@ -0,0 +1,780 @@ +#!/usr/bin/env python3 +""" +scan_codebase.py — Full MC/Forge Usage Index Builder +===================================================== +Uses tree-sitter for AST-accurate scanning of all Java files. +Produces a JSON index of every Minecraft/Forge type: imports, usage patterns, +method calls, field accesses, class hierarchy, and PA abstraction status. + +Usage: + pip install tree-sitter tree-sitter-java + python tools/migration/scan_codebase.py + python tools/migration/scan_codebase.py --scan-dir mc1710/src/main/java --output mc_usage_index.json + python tools/migration/scan_codebase.py --top 30 +""" + +import os +import sys +import json +import re +import argparse +import time +from collections import defaultdict +from pathlib import Path + +# ============================================================ +# Configuration +# ============================================================ + +MC_PREFIXES = ("net.minecraft.", "cpw.mods.", "net.minecraftforge.") + +from pa_rules import EXISTING_MAPPINGS as KNOWN_PA + +# ============================================================ +# Tree-sitter Setup +# ============================================================ + + +def setup_parser(): + """Initialize tree-sitter parser with Java grammar.""" + try: + import tree_sitter_java as tsjava + from tree_sitter import Language, Parser + except ImportError: + print("ERROR: Required packages not installed.") + print("Run: pip install tree-sitter tree-sitter-java") + sys.exit(1) + + lang = Language(tsjava.language()) + parser = Parser(lang) + return parser + + +# ============================================================ +# Java File Analyzer +# ============================================================ + + +class JavaFileAnalyzer: + """Analyzes a single Java file for MC/Forge type usage via tree-sitter AST.""" + + def __init__(self, parser, source_bytes, rel_path): + self.source = source_bytes + self.rel_path = rel_path + self.tree = parser.parse(source_bytes) + self.root = self.tree.root_node + + # Import maps + self.mc_imports = {} # simple_name → fqn (MC/Forge only) + + # Variable → type mapping (flat per file, last-write-wins) + self.type_vars = {} # var_name → simple_type_name + + # Extracted data + self.extends_list = [] # (our_class, mc_simple_name) + self.implements_list = [] # (our_class, mc_simple_name) + self.new_calls = [] # (mc_simple_name, line) + self.instanceof_checks = [] # (mc_simple_name, line) + self.casts = [] # (mc_simple_name, line) + self.method_calls = defaultdict(list) # mc_fqn → [(method_name, line)] + self.static_calls = defaultdict(list) # mc_fqn → [(method_name, line)] + self.field_accesses = defaultdict(list) # mc_fqn → [(field_name, line)] + + def _text(self, node): + if node is None: + return None + return node.text.decode("utf-8") + + def analyze(self): + self._extract_imports() + if self.mc_imports: # Skip AST walk if no MC imports + self._walk(self.root) + return self._build_result() + + # --- Import extraction (regex — imports are trivially structured) --- + + def _extract_imports(self): + text = self.source.decode("utf-8", errors="replace") + for line in text.split("\n"): + line = line.strip() + m = re.match(r"import\s+(static\s+)?([a-zA-Z0-9_.*]+)\s*;", line) + if not m: + continue + + is_static = bool(m.group(1)) + fqn = m.group(2) + + if fqn.endswith(".*"): + continue # Wildcard — can't resolve simple names + + if is_static: + # Static import: last part is method/field, parent is class + parts = fqn.rsplit(".", 1) + if len(parts) == 2: + class_fqn = parts[0] + simple = class_fqn.rsplit(".", 1)[-1] + if self._is_mc(class_fqn): + self.mc_imports[simple] = class_fqn + else: + simple = fqn.rsplit(".", 1)[-1] + if self._is_mc(fqn): + self.mc_imports[simple] = fqn + + def _is_mc(self, fqn): + return any(fqn.startswith(p) for p in MC_PREFIXES) + + # --- AST walking --- + + def _walk(self, node): + self._process_node(node) + for child in node.children: + self._walk(child) + + def _process_node(self, node): + t = node.type + if ( + t == "class_declaration" + or t == "interface_declaration" + or t == "enum_declaration" + ): + self._handle_class_decl(node) + elif t == "field_declaration": + self._handle_var_decl(node) + elif t == "local_variable_declaration": + self._handle_var_decl(node) + elif t == "formal_parameter": + self._handle_formal_param(node) + elif t == "enhanced_for_statement": + self._handle_enhanced_for(node) + elif t == "method_invocation": + self._handle_method_invocation(node) + elif t == "object_creation_expression": + self._handle_object_creation(node) + elif t == "cast_expression": + self._handle_cast(node) + elif t == "instanceof_expression": + self._handle_instanceof(node) + elif t == "field_access": + self._handle_field_access(node) + + # --- Node handlers --- + + def _handle_class_decl(self, node): + name_node = node.child_by_field_name("name") + class_name = self._text(name_node) or "?" + + # Superclass: (superclass extends type_identifier) + sc = node.child_by_field_name("superclass") + if sc: + for child in sc.children: + tn = self._extract_type_name(child) + if tn and tn in self.mc_imports: + self.extends_list.append((class_name, tn)) + + # Interfaces: (super_interfaces implements type_list(type_identifier ...)) + ifaces = node.child_by_field_name("interfaces") + if ifaces: + for child in self._iter_all(ifaces): + tn = self._extract_type_name(child) + if tn and tn in self.mc_imports: + self.implements_list.append((class_name, tn)) + + def _handle_var_decl(self, node): + """Handle field_declaration and local_variable_declaration. + AST: type_identifier @type variable_declarator @declarator(identifier @name)""" + type_node = node.child_by_field_name("type") + type_name = self._extract_type_name(type_node) + if not type_name: + return + for child in node.children: + if child.type == "variable_declarator": + name_node = child.child_by_field_name("name") + if name_node: + self.type_vars[self._text(name_node)] = type_name + + def _handle_formal_param(self, node): + """AST: type_identifier @type identifier @name""" + type_node = node.child_by_field_name("type") + name_node = node.child_by_field_name("name") + type_name = self._extract_type_name(type_node) + var_name = self._text(name_node) + if type_name and var_name: + self.type_vars[var_name] = type_name + + def _handle_enhanced_for(self, node): + """AST: for ( type_identifier @type identifier @name : expr ) block""" + type_node = node.child_by_field_name("type") + name_node = node.child_by_field_name("name") + type_name = self._extract_type_name(type_node) + var_name = self._text(name_node) + if type_name and var_name: + self.type_vars[var_name] = type_name + + def _handle_method_invocation(self, node): + """AST: identifier @object . identifier @name argument_list @arguments + OR: field_access @object . identifier @name argument_list @arguments""" + obj_node = node.child_by_field_name("object") + name_node = node.child_by_field_name("name") + + if not name_node or not obj_node: + return + + method_name = self._text(name_node) + line = node.start_point[0] + 1 + + # Case 1: direct variable — player.getHealth() + if obj_node.type == "identifier": + receiver = self._text(obj_node) + + # Check if it's a type name (static call): MinecraftServer.getServer() + if receiver in self.mc_imports and receiver[0:1].isupper(): + self.static_calls[self.mc_imports[receiver]].append((method_name, line)) + return + + # Instance call: look up variable type + if receiver in self.type_vars: + type_name = self.type_vars[receiver] + if type_name in self.mc_imports: + self.method_calls[self.mc_imports[type_name]].append( + (method_name, line) + ) + return + + # Case 2: this.field.method() — field_access(this, field) + if obj_node.type == "field_access": + obj_obj = obj_node.child_by_field_name("object") + field = obj_node.child_by_field_name("field") + if obj_obj and obj_obj.type == "this" and field: + receiver = self._text(field) + if receiver in self.type_vars: + type_name = self.type_vars[receiver] + if type_name in self.mc_imports: + self.method_calls[self.mc_imports[type_name]].append( + (method_name, line) + ) + + def _handle_object_creation(self, node): + """AST: new type_identifier @type argument_list @arguments""" + type_node = node.child_by_field_name("type") + type_name = self._extract_type_name(type_node) + if type_name and type_name in self.mc_imports: + self.new_calls.append((type_name, node.start_point[0] + 1)) + + def _handle_cast(self, node): + """AST: ( type_identifier @type ) expression @value""" + type_node = node.child_by_field_name("type") + type_name = self._extract_type_name(type_node) + if type_name and type_name in self.mc_imports: + self.casts.append((type_name, node.start_point[0] + 1)) + + def _handle_instanceof(self, node): + """AST: expression @left instanceof type_identifier @right""" + right = node.child_by_field_name("right") + type_name = self._extract_type_name(right) + if type_name and type_name in self.mc_imports: + self.instanceof_checks.append((type_name, node.start_point[0] + 1)) + + def _handle_field_access(self, node): + """AST: identifier @object . identifier @field + Only records when the receiver is a variable with MC type AND + this field_access is NOT the object of a method_invocation (those are + handled by method_invocation handler).""" + # Skip if this is the object of a method call (method handler covers it) + parent = node.parent + if parent and parent.type == "method_invocation": + p_obj = parent.child_by_field_name("object") + if p_obj is not None and p_obj.id == node.id: + return + + obj_node = node.child_by_field_name("object") + field_node = node.child_by_field_name("field") + if not obj_node or not field_node: + return + + field_name = self._text(field_node) + line = node.start_point[0] + 1 + + receiver = None + if obj_node.type == "identifier": + receiver = self._text(obj_node) + elif obj_node.type == "this": + return # Can't resolve this.field without class context + + if receiver and receiver in self.type_vars: + type_name = self.type_vars[receiver] + if type_name in self.mc_imports: + self.field_accesses[self.mc_imports[type_name]].append( + (field_name, line) + ) + + # --- Type name extraction --- + + def _extract_type_name(self, node): + """Extract the simple type name from any type AST node.""" + if node is None: + return None + t = node.type + if t == "type_identifier": + return self._text(node) + elif t == "scoped_type_identifier": + # e.g. NBTBase.NBTPrimitive — return first type_identifier + for child in node.children: + if child.type == "type_identifier": + return self._text(child) + return self._text(node) + elif t == "generic_type": + # e.g. List — return the base type + for child in node.children: + if child.type in ("type_identifier", "scoped_type_identifier"): + return self._extract_type_name(child) + elif t == "array_type": + # e.g. EntityPlayer[] — return element type + el = node.child_by_field_name("element") + if el: + return self._extract_type_name(el) + for child in node.children: + r = self._extract_type_name(child) + if r: + return r + return None + + def _iter_all(self, node): + """Recursively yield all descendant nodes.""" + for child in node.children: + yield child + yield from self._iter_all(child) + + # --- Build result --- + + def _build_result(self): + return { + "mc_imports": dict(self.mc_imports), + "extends": self.extends_list, + "implements": self.implements_list, + "new_calls": self.new_calls, + "instanceof": self.instanceof_checks, + "casts": self.casts, + "method_calls": {k: list(v) for k, v in self.method_calls.items()}, + "static_calls": {k: list(v) for k, v in self.static_calls.items()}, + "field_accesses": {k: list(v) for k, v in self.field_accesses.items()}, + } + + +# ============================================================ +# Index Builder (aggregates across all files) +# ============================================================ + + +class IndexBuilder: + def __init__(self, project_root, scan_dir, parser): + self.project_root = Path(project_root) + self.scan_dir = self.project_root / scan_dir + self.parser = parser + + # Per-type aggregation + self.type_data = {} # fqn → dict + self.file_data = {} # rel_path → dict + + self.stats = { + "totalFiles": 0, + "filesWithMcDeps": 0, + "totalMcImports": 0, + "parseErrors": 0, + } + + def _ensure_type(self, fqn, short_name): + if fqn not in self.type_data: + self.type_data[fqn] = { + "shortName": short_name, + "package": fqn.rsplit(".", 1)[0] if "." in fqn else "", + "importCount": 0, + "importedBy": [], + "paAbstraction": KNOWN_PA.get(fqn), + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [], + }, + "methodCalls": {}, + "staticCalls": {}, + "fieldAccesses": {}, + } + return self.type_data[fqn] + + def _add_call(self, store, method_name, rel_path): + if method_name not in store: + store[method_name] = {"count": 0, "files": []} + entry = store[method_name] + entry["count"] += 1 + if rel_path not in entry["files"]: + entry["files"].append(rel_path) + + def scan(self): + java_files = [] + for root, _dirs, files in os.walk(self.scan_dir): + for f in files: + if f.endswith(".java"): + java_files.append(Path(root) / f) + + self.stats["totalFiles"] = len(java_files) + t0 = time.time() + + for i, filepath in enumerate(java_files): + rel_path = filepath.relative_to(self.scan_dir).as_posix() + + try: + source = filepath.read_bytes() + analyzer = JavaFileAnalyzer(self.parser, source, rel_path) + result = analyzer.analyze() + self._aggregate(rel_path, result) + except Exception as e: + self.stats["parseErrors"] += 1 + print(f" WARN: {rel_path}: {e}", file=sys.stderr) + + # Progress + if (i + 1) % 500 == 0: + print(f" ... {i + 1}/{len(java_files)} files", file=sys.stderr) + + elapsed = time.time() - t0 + print( + f" Scanned {len(java_files)} files in {elapsed:.1f}s " + f"({self.stats['parseErrors']} errors)", + file=sys.stderr, + ) + + def _aggregate(self, rel_path, result): + mc_imports = result["mc_imports"] + if not mc_imports: + return + + self.stats["filesWithMcDeps"] += 1 + self.stats["totalMcImports"] += len(mc_imports) + + # File index + self.file_data[rel_path] = { + "mcImportCount": len(mc_imports), + "mcTypes": sorted(mc_imports.keys()), + "mcFqns": sorted(set(mc_imports.values())), + } + + # Type index — imports + for simple, fqn in mc_imports.items(): + ti = self._ensure_type(fqn, simple) + ti["importCount"] += 1 + ti["importedBy"].append(rel_path) + + # Hierarchy + for class_name, mc_simple in result["extends"]: + if mc_simple in mc_imports: + fqn = mc_imports[mc_simple] + self._ensure_type(fqn, mc_simple)["usage"]["extends"].append( + {"file": rel_path, "class": class_name} + ) + + for class_name, mc_simple in result["implements"]: + if mc_simple in mc_imports: + fqn = mc_imports[mc_simple] + self._ensure_type(fqn, mc_simple)["usage"]["implements"].append( + {"file": rel_path, "class": class_name} + ) + + # Constructors + for mc_simple, line in result["new_calls"]: + if mc_simple in mc_imports: + fqn = mc_imports[mc_simple] + self._ensure_type(fqn, mc_simple)["usage"]["constructors"].append( + {"file": rel_path, "line": line} + ) + + # Casts + for mc_simple, line in result["casts"]: + if mc_simple in mc_imports: + fqn = mc_imports[mc_simple] + self._ensure_type(fqn, mc_simple)["usage"]["casts"].append( + {"file": rel_path, "line": line} + ) + + # instanceof + for mc_simple, line in result["instanceof"]: + if mc_simple in mc_imports: + fqn = mc_imports[mc_simple] + self._ensure_type(fqn, mc_simple)["usage"]["instanceof"].append( + {"file": rel_path, "line": line} + ) + + # Method calls + for fqn, calls in result["method_calls"].items(): + ti = self._ensure_type(fqn, fqn.rsplit(".", 1)[-1]) + for method_name, _line in calls: + self._add_call(ti["methodCalls"], method_name, rel_path) + + # Static calls + for fqn, calls in result["static_calls"].items(): + ti = self._ensure_type(fqn, fqn.rsplit(".", 1)[-1]) + for method_name, _line in calls: + self._add_call(ti["staticCalls"], method_name, rel_path) + + # Field accesses + for fqn, accesses in result["field_accesses"].items(): + ti = self._ensure_type(fqn, fqn.rsplit(".", 1)[-1]) + for field_name, _line in accesses: + self._add_call(ti["fieldAccesses"], field_name, rel_path) + + def build_output(self, top_n=50): + sorted_types = sorted( + self.type_data.items(), key=lambda x: x[1]["importCount"], reverse=True + ) + + # Per-package stats + by_package = defaultdict(lambda: {"types": set(), "totalImports": 0}) + abstracted = 0 + not_abstracted = 0 + + for fqn, ti in sorted_types: + pkg = ti["package"] + by_package[pkg]["types"].add(ti["shortName"]) + by_package[pkg]["totalImports"] += ti["importCount"] + if ti["paAbstraction"]: + abstracted += 1 + else: + not_abstracted += 1 + + total_types = abstracted + not_abstracted + + # Hierarchy rollup + hierarchy_extends = defaultdict(list) + hierarchy_implements = defaultdict(list) + for fqn, ti in sorted_types: + for entry in ti["usage"]["extends"]: + hierarchy_extends[fqn].append(entry) + for entry in ti["usage"]["implements"]: + hierarchy_implements[fqn].append(entry) + + summary = { + "totalFiles": self.stats["totalFiles"], + "filesWithMcDeps": self.stats["filesWithMcDeps"], + "totalMcImports": self.stats["totalMcImports"], + "uniqueMcTypes": len(self.type_data), + "parseErrors": self.stats["parseErrors"], + "abstractionCoverage": { + "abstracted": abstracted, + "notAbstracted": not_abstracted, + "total": total_types, + "percentage": f"{abstracted / total_types * 100:.1f}%" + if total_types > 0 + else "0%", + }, + "topTypes": [ + { + "fqn": fqn, + "shortName": ti["shortName"], + "importCount": ti["importCount"], + "pa": ti["paAbstraction"], + "methodCallCount": sum( + m["count"] for m in ti["methodCalls"].values() + ), + "staticCallCount": sum( + m["count"] for m in ti["staticCalls"].values() + ), + "fieldAccessCount": sum( + m["count"] for m in ti["fieldAccesses"].values() + ), + "extendsCount": len(ti["usage"]["extends"]), + "implementsCount": len(ti["usage"]["implements"]), + "constructorCount": len(ti["usage"]["constructors"]), + } + for fqn, ti in sorted_types[:top_n] + ], + "topFiles": sorted( + [ + {"file": f, "mcImports": d["mcImportCount"]} + for f, d in self.file_data.items() + ], + key=lambda x: x["mcImports"], + reverse=True, + )[:top_n], + "byPackage": { + pkg: { + "types": len(data["types"]), + "typeNames": sorted(data["types"]), + "totalImports": data["totalImports"], + } + for pkg, data in sorted( + by_package.items(), key=lambda x: x[1]["totalImports"], reverse=True + ) + }, + } + + return { + "meta": { + "scanDir": str(self.scan_dir.relative_to(self.project_root)), + "projectRoot": str(self.project_root), + "generatedBy": "scan_codebase.py (tree-sitter)", + "timestamp": time.strftime("%Y-%m-%dT%H:%M:%S"), + }, + "summary": summary, + "types": {fqn: ti for fqn, ti in sorted_types}, + "files": self.file_data, + "hierarchy": { + "extends": dict(hierarchy_extends), + "implements": dict(hierarchy_implements), + }, + } + + +# ============================================================ +# Console Summary +# ============================================================ + + +def print_summary(output): + s = output["summary"] + cov = s["abstractionCoverage"] + + print() + print("=" * 72) + print(f" MC/FORGE USAGE INDEX — {output['meta']['scanDir']}") + print("=" * 72) + print(f" Total files scanned: {s['totalFiles']:>6,}") + print(f" Files with MC deps: {s['filesWithMcDeps']:>6,}") + print(f" Total MC imports: {s['totalMcImports']:>6,}") + print(f" Unique MC types: {s['uniqueMcTypes']:>6}") + print(f" Parse errors: {s['parseErrors']:>6}") + print( + f" PA coverage: {cov['abstracted']}/{cov['total']} ({cov['percentage']})" + ) + print() + + # Top types + print(" TOP MC TYPES BY IMPORT COUNT") + print(" " + "-" * 68) + fmt = " {rank:>3}. {name:<30} {imp:>4} imports {methods:>4} methods {fields:>3} fields {pa}" + for i, t in enumerate(s["topTypes"][:30]): + pa_str = f"-> {t['pa']}" if t["pa"] else "" + print( + fmt.format( + rank=i + 1, + name=t["shortName"], + imp=t["importCount"], + methods=t["methodCallCount"] + t["staticCallCount"], + fields=t["fieldAccessCount"], + pa=pa_str, + ) + ) + print() + + # Top packages + print(" TOP MC PACKAGES") + print(" " + "-" * 68) + for pkg, data in list(s["byPackage"].items())[:15]: + print( + f" {pkg:<45} {data['types']:>3} types {data['totalImports']:>5} imports" + ) + print() + + # Top files + print(" TOP FILES BY MC DEPENDENCY COUNT") + print(" " + "-" * 68) + for f in s["topFiles"][:15]: + print(f" {f['file']:<55} {f['mcImports']:>3} imports") + print() + + # Hierarchy summary + ext = output["hierarchy"]["extends"] + impl = output["hierarchy"]["implements"] + if ext: + print( + f" CLASSES EXTENDING MC TYPES ({sum(len(v) for v in ext.values())} total)" + ) + print(" " + "-" * 68) + for fqn, entries in sorted(ext.items(), key=lambda x: len(x[1]), reverse=True)[ + :10 + ]: + short = fqn.rsplit(".", 1)[-1] + classes = [e["class"] for e in entries] + print(f" {short:<30} <- {', '.join(classes[:5])}") + if len(classes) > 5: + print(f" {'':30} ... and {len(classes) - 5} more") + print() + + if impl: + print( + f" CLASSES IMPLEMENTING MC INTERFACES ({sum(len(v) for v in impl.values())} total)" + ) + print(" " + "-" * 68) + for fqn, entries in sorted(impl.items(), key=lambda x: len(x[1]), reverse=True)[ + :10 + ]: + short = fqn.rsplit(".", 1)[-1] + classes = [e["class"] for e in entries] + print(f" {short:<30} <- {', '.join(classes[:5])}") + if len(classes) > 5: + print(f" {'':30} ... and {len(classes) - 5} more") + print() + + print("=" * 72) + + +# ============================================================ +# Main +# ============================================================ + + +def main(): + # Auto-detect project root from script location + script_dir = Path(__file__).resolve().parent + default_root = script_dir.parent.parent # tools/migration/ -> project root + + ap = argparse.ArgumentParser( + description="MC/Forge Usage Index Builder (tree-sitter)" + ) + ap.add_argument( + "--scan-dir", + default="mc1710/src/main/java", + help="Directory to scan (relative to project root)", + ) + ap.add_argument( + "--output", + "-o", + default="mc_usage_index.json", + help="Output JSON file path (relative to project root)", + ) + ap.add_argument( + "--project-root", default=str(default_root), help="Project root directory" + ) + ap.add_argument( + "--top", type=int, default=50, help="Number of top entries in summary" + ) + ap.add_argument( + "--quiet", "-q", action="store_true", help="Suppress console summary" + ) + args = ap.parse_args() + + project_root = Path(args.project_root).resolve() + output_path = project_root / args.output + + print(f"Initializing tree-sitter parser...", file=sys.stderr) + parser = setup_parser() + + print(f"Scanning {args.scan_dir}...", file=sys.stderr) + builder = IndexBuilder(project_root, args.scan_dir, parser) + builder.scan() + + print(f"Building index...", file=sys.stderr) + output = builder.build_output(top_n=args.top) + + # Write JSON + with open(output_path, "w", encoding="utf-8") as f: + json.dump(output, f, indent=2, ensure_ascii=False) + size_kb = output_path.stat().st_size / 1024 + print(f"Wrote {output_path} ({size_kb:.0f} KB)", file=sys.stderr) + + # Console summary + if not args.quiet: + print_summary(output) + + +if __name__ == "__main__": + main() diff --git a/tools/migration/test_analyze.py b/tools/migration/test_analyze.py new file mode 100644 index 000000000..9f700a6bd --- /dev/null +++ b/tools/migration/test_analyze.py @@ -0,0 +1,1163 @@ +#!/usr/bin/env python3 +""" +test_analyze.py — Comprehensive test suite for analyze.py subcommands. +Tests all 6 subcommands with mock index data and real tree-sitter parsing. + +Run: + python tools/migration/test_analyze.py +""" + +import sys +import os +import json +import tempfile +import shutil +from pathlib import Path + +SCRIPT_DIR = Path(__file__).resolve().parent +PROJECT_ROOT = SCRIPT_DIR.parent.parent +ANALYZE_PY = SCRIPT_DIR / "analyze.py" + +sys.path.insert(0, str(SCRIPT_DIR)) +import analyze + + +MOCK_INDEX = { + "meta": { + "scanDir": "src/main/java", + "projectRoot": str(PROJECT_ROOT), + "generatedBy": "test_analyze.py", + "timestamp": "2025-01-01T00:00:00", + }, + "summary": { + "totalFiles": 500, + "filesWithMcDeps": 300, + "totalMcImports": 1200, + "uniqueMcTypes": 45, + "parseErrors": 0, + "abstractionCoverage": { + "abstracted": 5, + "notAbstracted": 40, + "total": 45, + "percentage": "11.1%", + }, + "topTypes": [], + "topFiles": [], + "byPackage": {}, + }, + "types": { + "net.minecraft.entity.player.EntityPlayer": { + "shortName": "EntityPlayer", + "package": "net.minecraft.entity.player", + "importCount": 120, + "importedBy": [ + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/DialogController.java", + ], + "paAbstraction": "IPlayer", + "usage": { + "extends": [ + { + "file": "noppes/npcs/entity/FakePlayer.java", + "class": "FakePlayer", + } + ], + "implements": [], + "constructors": [], + "casts": [ + {"file": "noppes/npcs/controllers/QuestController.java", "line": 50} + ], + "instanceof": [ + {"file": "noppes/npcs/controllers/QuestController.java", "line": 42} + ], + }, + "methodCalls": { + "getCommandSenderName": { + "count": 15, + "files": [ + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/DialogController.java", + ], + }, + "getEntityId": { + "count": 8, + "files": ["noppes/npcs/controllers/QuestController.java"], + }, + }, + "staticCalls": {}, + "fieldAccesses": { + "worldObj": { + "count": 22, + "files": [ + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/DialogController.java", + "noppes/npcs/roles/RoleTrader.java", + ], + } + }, + }, + "net.minecraft.nbt.NBTTagCompound": { + "shortName": "NBTTagCompound", + "package": "net.minecraft.nbt", + "importCount": 250, + "importedBy": [ + "noppes/npcs/controllers/QuestController.java", + "noppes/npcs/controllers/data/Quest.java", + "core/src/main/java/noppes/npcs/controllers/FactionController.java", + ], + "paAbstraction": "INbt", + "usage": { + "extends": [], + "implements": [], + "constructors": [ + {"file": "noppes/npcs/controllers/data/Quest.java", "line": 30} + ], + "casts": [], + "instanceof": [], + }, + "methodCalls": { + "setString": { + "count": 80, + "files": [ + "noppes/npcs/controllers/data/Quest.java", + "noppes/npcs/controllers/QuestController.java", + "core/src/main/java/noppes/npcs/controllers/FactionController.java", + ], + }, + "getString": { + "count": 60, + "files": [ + "noppes/npcs/controllers/data/Quest.java", + "core/src/main/java/noppes/npcs/controllers/FactionController.java", + ], + }, + "setInteger": { + "count": 45, + "files": ["noppes/npcs/controllers/data/Quest.java"], + }, + }, + "staticCalls": {}, + "fieldAccesses": {}, + }, + "net.minecraft.server.MinecraftServer": { + "shortName": "MinecraftServer", + "package": "net.minecraft.server", + "importCount": 30, + "importedBy": ["noppes/npcs/CustomNpcs.java"], + "paAbstraction": None, + "usage": { + "extends": [], + "implements": [], + "constructors": [], + "casts": [], + "instanceof": [], + }, + "methodCalls": {}, + "staticCalls": { + "getServer": { + "count": 10, + "files": ["noppes/npcs/CustomNpcs.java"], + } + }, + "fieldAccesses": {}, + }, + }, + "files": { + "noppes/npcs/controllers/QuestController.java": { + "mcImportCount": 5, + "mcTypes": [ + "EntityPlayer", + "NBTTagCompound", + "NBTTagList", + "ItemStack", + "MinecraftServer", + ], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + "net.minecraft.nbt.NBTTagList", + "net.minecraft.item.ItemStack", + "net.minecraft.server.MinecraftServer", + ], + }, + "noppes/npcs/controllers/DialogController.java": { + "mcImportCount": 2, + "mcTypes": ["EntityPlayer", "NBTTagCompound"], + "mcFqns": [ + "net.minecraft.entity.player.EntityPlayer", + "net.minecraft.nbt.NBTTagCompound", + ], + }, + "noppes/npcs/CustomNpcs.java": { + "mcImportCount": 3, + "mcTypes": ["MinecraftServer", "NBTTagCompound", "FMLServerStartingEvent"], + "mcFqns": [ + "net.minecraft.server.MinecraftServer", + "net.minecraft.nbt.NBTTagCompound", + "cpw.mods.fml.common.event.FMLServerStartingEvent", + ], + }, + }, + "hierarchy": { + "extends": { + "net.minecraft.entity.player.EntityPlayer": [ + {"file": "noppes/npcs/entity/FakePlayer.java", "class": "FakePlayer"} + ] + }, + "implements": {}, + }, +} + + +def _write_mock_index(tmpdir): + """Write mock index to a temp directory matching the expected path.""" + idx_dir = Path(tmpdir) / "tools" / "migration" + idx_dir.mkdir(parents=True, exist_ok=True) + idx_path = idx_dir / "mc_usage_index.json" + with open(idx_path, "w", encoding="utf-8") as f: + json.dump(MOCK_INDEX, f, indent=2) + return str(tmpdir) + + +def _make_namespace(overrides): + """Build an argparse.Namespace with common defaults.""" + defaults = { + "project_root": None, + "index": "tools/migration/mc_usage_index.json", + "json_output": False, + "top": 0, + "methods_only": False, + "field_accesses_only": False, + "show_files": False, + } + defaults.update(overrides) + return argparse.Namespace(**defaults) + + +import argparse +import io +from contextlib import redirect_stdout, redirect_stderr + + +def _capture_cmd(func, args): + """Run a command function, capturing stdout/stderr. Returns (returncode, stdout, stderr).""" + out_buf = io.StringIO() + err_buf = io.StringIO() + with redirect_stdout(out_buf), redirect_stderr(err_buf): + try: + rc = func(args) + except SystemExit as e: + rc = e.code if e.code is not None else 0 + except Exception as e: + err_buf.write(str(e)) + rc = 1 + return rc, out_buf.getvalue(), err_buf.getvalue() + + +# ============================================================ +# Tests +# ============================================================ + +passed = 0 +failed = 0 + + +def check(condition, desc): + global passed, failed + if condition: + passed += 1 + print(f" PASS {desc}") + else: + failed += 1 + print(f" FAIL {desc}") + return condition + + +def test_query_type_basic(): + """query-type: finds EntityPlayer, shows PA abstraction and method calls.""" + print("TEST: query-type basic") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "EntityPlayer", + "fqn": None, + "project_root": mock_root, + } + ) + rc, stdout, stderr = _capture_cmd(analyze.cmd_query_type, args) + check(rc == 0, "Return code 0") + check("EntityPlayer" in stdout, "Type name in output") + check("IPlayer" in stdout, "PA abstraction shown") + check("METHOD CALLS" in stdout, "Method calls section") + check("getCommandSenderName" in stdout, "Method name present") + check("FIELD ACCESSES" in stdout, "Field accesses section") + check("worldObj" in stdout, "Field name present") + check("EXTENDED BY" in stdout, "Hierarchy section") + check("Constructors:" in stdout, "Usage summary") + finally: + shutil.rmtree(tmpdir) + + +def test_query_type_by_fqn(): + """query-type: find by explicit FQN.""" + print("TEST: query-type by FQN") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "EntityPlayer", + "fqn": "net.minecraft.entity.player.EntityPlayer", + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_query_type, args) + check(rc == 0, "Return code 0") + check("net.minecraft.entity.player.EntityPlayer" in stdout, "FQN in output") + finally: + shutil.rmtree(tmpdir) + + +def test_query_type_not_found(): + """query-type: missing type returns error.""" + print("TEST: query-type not found") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "NonexistentType", + "fqn": None, + "project_root": mock_root, + } + ) + rc, stdout, stderr = _capture_cmd(analyze.cmd_query_type, args) + check(rc == 1, "Return code 1 for missing type") + check("not found" in stderr.lower(), "Error message mentions not found") + finally: + shutil.rmtree(tmpdir) + + +def test_query_type_json(): + """query-type: JSON output mode.""" + print("TEST: query-type JSON output") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "NBTTagCompound", + "fqn": None, + "project_root": mock_root, + "json_output": True, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_query_type, args) + check(rc == 0, "Return code 0") + data = json.loads(stdout) + check(data["fqn"] == "net.minecraft.nbt.NBTTagCompound", "Correct FQN in JSON") + check(data["paAbstraction"] == "INbt", "PA abstraction in JSON") + finally: + shutil.rmtree(tmpdir) + + +def test_query_file_basic(): + """query-file: finds QuestController, shows MC types.""" + print("TEST: query-file basic") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "file": "noppes/npcs/controllers/QuestController.java", + "readiness": False, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_query_file, args) + check(rc == 0, "Return code 0") + check("QuestController" in stdout, "File name in output") + check("MC Import Count: 5" in stdout, "Import count shown") + check("MC TYPES USED" in stdout, "Types section present") + finally: + shutil.rmtree(tmpdir) + + +def test_query_file_readiness(): + """query-file: readiness score calculation.""" + print("TEST: query-file readiness") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "file": "noppes/npcs/controllers/QuestController.java", + "readiness": True, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_query_file, args) + check(rc == 0, "Return code 0") + check("MIGRATION READINESS" in stdout, "Readiness header present") + check("Blocking" in stdout, "Blocking types shown") + finally: + shutil.rmtree(tmpdir) + + +def test_query_file_not_found(): + """query-file: missing file returns error.""" + print("TEST: query-file not found") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "file": "nonexistent/File.java", + "readiness": False, + "project_root": mock_root, + } + ) + rc, stdout, stderr = _capture_cmd(analyze.cmd_query_file, args) + check(rc == 1, "Return code 1 for missing file") + check("not found" in stderr.lower(), "Error message about missing file") + finally: + shutil.rmtree(tmpdir) + + +def test_query_file_json(): + """query-file: JSON output with readiness.""" + print("TEST: query-file JSON output") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "file": "noppes/npcs/controllers/DialogController.java", + "readiness": True, + "project_root": mock_root, + "json_output": True, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_query_file, args) + check(rc == 0, "Return code 0") + data = json.loads(stdout) + check(data["mcImportCount"] == 2, "Import count correct") + check("readiness" in data, "Readiness in JSON") + check(data["readiness"]["score"] == 100.0, "All types abstracted = 100%") + finally: + shutil.rmtree(tmpdir) + + +def test_extract_signatures_real_file(): + """extract-signatures: parse real PA interface file with tree-sitter.""" + print("TEST: extract-signatures real file") + parser, lang = analyze.setup_treesitter_parser() + if parser is None: + print(" SKIP tree-sitter not available") + return + + inbt_path = ( + PROJECT_ROOT + / "platform-api" + / "src" + / "main" + / "java" + / "noppes" + / "npcs" + / "api" + / "INbt.java" + ) + if not inbt_path.exists(): + print(f" SKIP {inbt_path} not found") + return + + args = _make_namespace( + { + "file": str(inbt_path), + "public_only": False, + "project_root": str(PROJECT_ROOT), + } + ) + rc, stdout, stderr = _capture_cmd(analyze.cmd_extract_signatures, args) + check(rc == 0, f"Return code 0 (stderr: {stderr[:100]})") + check("SIGNATURES:" in stdout, "Header present") + check("Total methods:" in stdout, "Method count shown") + check("setString" in stdout, "Known method found") + check("getString" in stdout, "Known getter found") + check("hasKey" in stdout, "Query method found") + + +def test_extract_signatures_temp_file(): + """extract-signatures: parse a temp Java file.""" + print("TEST: extract-signatures temp file") + parser, lang = analyze.setup_treesitter_parser() + if parser is None: + print(" SKIP tree-sitter not available") + return + + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f: + f.write(""" +package test; + +public class TestSig { + /** Constructor doc */ + public TestSig(int x) {} + + public String getName() { return "test"; } + + private void helper(int a, String b) {} + + public static void doStuff(Object... args) {} + + @Override + public String toString() { return ""; } +} +""") + tmp = f.name + + try: + args = _make_namespace( + { + "file": tmp, + "public_only": False, + "project_root": str(PROJECT_ROOT), + } + ) + rc, stdout, stderr = _capture_cmd(analyze.cmd_extract_signatures, args) + check(rc == 0, f"Return code 0 (stderr: {stderr[:100]})") + check("getName" in stdout, "getName method found") + check("helper" in stdout, "private helper found") + check("doStuff" in stdout, "static varargs method found") + check("[constructor]" in stdout, "Constructor detected") + finally: + os.unlink(tmp) + + +def test_extract_signatures_public_only(): + """extract-signatures: --public-only filters private methods.""" + print("TEST: extract-signatures public-only") + parser, lang = analyze.setup_treesitter_parser() + if parser is None: + print(" SKIP tree-sitter not available") + return + + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f: + f.write(""" +public class Filtered { + public void pubMethod() {} + private void privMethod() {} + protected void protMethod() {} + void packageMethod() {} +} +""") + tmp = f.name + + try: + args = _make_namespace( + { + "file": tmp, + "public_only": True, + "project_root": str(PROJECT_ROOT), + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_extract_signatures, args) + check(rc == 0, "Return code 0") + check("pubMethod" in stdout, "Public method included") + check("privMethod" not in stdout, "Private method excluded") + check("protMethod" not in stdout, "Protected method excluded") + finally: + os.unlink(tmp) + + +def test_extract_signatures_json(): + """extract-signatures: JSON output includes all fields.""" + print("TEST: extract-signatures JSON output") + parser, lang = analyze.setup_treesitter_parser() + if parser is None: + print(" SKIP tree-sitter not available") + return + + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f: + f.write(""" +public interface IFoo { + String doThing(int x, String y); + void noArgs(); +} +""") + tmp = f.name + + try: + args = _make_namespace( + { + "file": tmp, + "public_only": False, + "json_output": True, + "project_root": str(PROJECT_ROOT), + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_extract_signatures, args) + check(rc == 0, "Return code 0") + data = json.loads(stdout) + check(data["total_methods"] == 2, "Two methods found") + sig0 = data["signatures"][0] + check(sig0["name"] == "doThing", "First method name") + check(sig0["return_type"] == "String", "Return type captured") + check(len(sig0["params"]) == 2, "Two parameters captured") + check(sig0["params"][0]["type"] == "int", "First param type") + check(sig0["params"][1]["name"] == "y", "Second param name") + finally: + os.unlink(tmp) + + +def test_surface_miner_basic(): + """surface-miner: find methods/fields for NBTTagCompound.""" + print("TEST: surface-miner basic") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "NBTTagCompound", + "fqn": None, + "scope": None, + "compare_existing": None, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_surface_miner, args) + check(rc == 0, "Return code 0") + check("MINIMAL SURFACE" in stdout, "Header present") + check("METHODS" in stdout, "Methods section") + check("setString" in stdout, "setString method found") + check("getString" in stdout, "getString method found") + finally: + shutil.rmtree(tmpdir) + + +def test_surface_miner_scoped(): + """surface-miner: --scope filters to files under path.""" + print("TEST: surface-miner scoped") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "NBTTagCompound", + "fqn": None, + "scope": "core/src/main/java", + "compare_existing": None, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_surface_miner, args) + check(rc == 0, "Return code 0") + check("scoped to core/src/main/java" in stdout, "Scope shown in output") + check("setString" in stdout, "setString in core scope") + check("getString" in stdout, "getString in core scope") + check("setInteger" not in stdout, "setInteger not in core scope") + finally: + shutil.rmtree(tmpdir) + + +def test_surface_miner_not_found(): + """surface-miner: missing type returns error.""" + print("TEST: surface-miner not found") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "FakeType", + "fqn": None, + "scope": None, + "compare_existing": None, + "project_root": mock_root, + } + ) + rc, _, stderr = _capture_cmd(analyze.cmd_surface_miner, args) + check(rc == 1, "Return code 1 for missing type") + check("not found" in stderr.lower(), "Error message") + finally: + shutil.rmtree(tmpdir) + + +def test_diff_signatures_basic(): + """diff-signatures: detect added/removed methods between two temp files.""" + print("TEST: diff-signatures basic") + parser, lang = analyze.setup_treesitter_parser() + if parser is None: + print(" SKIP tree-sitter not available") + return + + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f1: + f1.write(""" +public class OldClass { + public void keepMethod() {} + public void removeMe() {} + public int changeable() { return 0; } +} +""") + old_path = f1.name + + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f2: + f2.write(""" +public class NewClass { + public void keepMethod() {} + public void addedMethod() {} + public String changeable() { return ""; } +} +""") + new_path = f2.name + + try: + args = _make_namespace( + { + "old": old_path, + "new": new_path, + "project_root": str(PROJECT_ROOT), + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_diff_signatures, args) + check(rc == 0, "Return code 0") + check("SIGNATURE DIFF" in stdout, "Header present") + check("ADDED" in stdout, "Added section") + check("addedMethod" in stdout, "Added method detected") + check("REMOVED" in stdout, "Removed section") + check("removeMe" in stdout, "Removed method detected") + check("CHANGED" in stdout, "Changed section") + check("changeable" in stdout, "Changed method detected") + finally: + os.unlink(old_path) + os.unlink(new_path) + + +def test_diff_signatures_identical(): + """diff-signatures: identical files produce no diffs.""" + print("TEST: diff-signatures identical") + parser, lang = analyze.setup_treesitter_parser() + if parser is None: + print(" SKIP tree-sitter not available") + return + + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f: + f.write(""" +public class Same { + public void alpha() {} + public void beta(int x) {} +} +""") + path = f.name + + try: + args = _make_namespace( + { + "old": path, + "new": path, + "project_root": str(PROJECT_ROOT), + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_diff_signatures, args) + check(rc == 0, "Return code 0") + check("No differences found" in stdout, "No diffs for identical files") + check("=2 unchanged" in stdout, "2 unchanged methods") + finally: + os.unlink(path) + + +def test_diff_signatures_json(): + """diff-signatures: JSON output has added/removed/changed.""" + print("TEST: diff-signatures JSON output") + parser, lang = analyze.setup_treesitter_parser() + if parser is None: + print(" SKIP tree-sitter not available") + return + + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f1: + f1.write("public class A { public void m1() {} }") + p1 = f1.name + with tempfile.NamedTemporaryFile(mode="w", suffix=".java", delete=False) as f2: + f2.write("public class A { public void m1() {} public void m2() {} }") + p2 = f2.name + + try: + args = _make_namespace( + { + "old": p1, + "new": p2, + "json_output": True, + "project_root": str(PROJECT_ROOT), + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_diff_signatures, args) + check(rc == 0, "Return code 0") + data = json.loads(stdout) + check(len(data["added"]) == 1, "One method added") + check(data["added"][0]["name"] == "m2", "Added method is m2") + check(len(data["removed"]) == 0, "No methods removed") + check(data["unchanged"] == 1, "One unchanged") + finally: + os.unlink(p1) + os.unlink(p2) + + +def test_type_usage_basic(): + """type-usage: basic invocation shows all sections.""" + print("TEST: type-usage basic") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "EntityPlayer", + "fqn": None, + "scope": None, + "top": 0, + "project_root": mock_root, + } + ) + rc, stdout, stderr = _capture_cmd(analyze.cmd_type_usage, args) + check(rc == 0, f"Return code 0 (stderr: {stderr[:100]})") + check("TYPE USAGE:" in stdout, "Header present") + check("EntityPlayer" in stdout, "Type name in output") + check("IPlayer" in stdout, "PA abstraction shown") + check("METHOD CALLS" in stdout, "Method calls section") + check("getCommandSenderName" in stdout, "Method name present") + check("FIELD ACCESSES" in stdout, "Field accesses section") + check("worldObj" in stdout, "Field name present") + check("CONSTRUCTORS:" in stdout, "Constructors section") + check("CASTS:" in stdout, "Casts section") + check("INSTANCEOF:" in stdout, "Instanceof section") + finally: + shutil.rmtree(tmpdir) + + +def test_type_usage_scoped(): + """type-usage: --scope filters to files under path.""" + print("TEST: type-usage scoped") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "EntityPlayer", + "fqn": None, + "scope": "noppes/npcs/controllers/", + "top": 0, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_type_usage, args) + check(rc == 0, "Return code 0") + check("noppes/npcs/controllers/" in stdout, "Scope shown in output") + check("getCommandSenderName" in stdout, "Method in scope present") + check("QuestController" in stdout, "Scoped file present") + # RoleTrader is outside controllers/ scope for method calls + # but worldObj has it — check that scoped files appear + check("worldObj" in stdout, "Field in scope present") + finally: + shutil.rmtree(tmpdir) + + +def test_type_usage_json(): + """type-usage: JSON output has all expected keys.""" + print("TEST: type-usage JSON output") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "EntityPlayer", + "fqn": None, + "scope": None, + "top": 0, + "json_output": True, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_type_usage, args) + check(rc == 0, "Return code 0") + data = json.loads(stdout) + check(data["type"] == "net.minecraft.entity.player.EntityPlayer", "Correct FQN") + check(data["shortName"] == "EntityPlayer", "Short name present") + check(data["paAbstraction"] == "IPlayer", "PA abstraction present") + check("methodCalls" in data, "methodCalls key present") + check("staticCalls" in data, "staticCalls key present") + check("fieldAccesses" in data, "fieldAccesses key present") + check("constructors" in data, "constructors key present") + check("casts" in data, "casts key present") + check("instanceof" in data, "instanceof key present") + check("count" in data["casts"], "casts has count") + check("files" in data["casts"], "casts has files") + check(data["totalFilesInScope"] > 0, "totalFilesInScope > 0") + check(data["totalFilesGlobal"] > 0, "totalFilesGlobal > 0") + finally: + shutil.rmtree(tmpdir) + + +def test_type_usage_top_limit(): + """type-usage: --top limits methods/fields shown.""" + print("TEST: type-usage --top limit") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "NBTTagCompound", + "fqn": None, + "scope": None, + "top": 1, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_type_usage, args) + check(rc == 0, "Return code 0") + # NBTTagCompound has 3 methods (setString, getString, setInteger) + # With --top 1, only the highest should show + check("setString" in stdout, "Top method (setString) present") + # setInteger has lowest count (1 file), should be excluded + check("setInteger" not in stdout, "Lower method excluded by --top 1") + finally: + shutil.rmtree(tmpdir) + + +def test_type_usage_not_found(): + """type-usage: missing type returns error.""" + print("TEST: type-usage not found") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "type": "NonexistentType", + "fqn": None, + "scope": None, + "top": 0, + "project_root": mock_root, + } + ) + rc, _, stderr = _capture_cmd(analyze.cmd_type_usage, args) + check(rc == 1, "Return code 1 for missing type") + check("not found" in stderr.lower(), "Error message mentions not found") + finally: + shutil.rmtree(tmpdir) + + +def test_coverage_report_basic(): + """coverage-report: basic stats from mock index.""" + print("TEST: coverage-report basic") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "detailed": False, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_coverage_report, args) + check(rc == 0, "Return code 0") + check("MIGRATION COVERAGE REPORT" in stdout, "Header present") + check("OVERALL STATISTICS:" in stdout, "Stats section") + check("Total files scanned" in stdout, "File count label") + check("ABSTRACTION COVERAGE:" in stdout, "Coverage section") + check("TOP BLOCKING TYPES" in stdout, "Blocking types section") + check("MinecraftServer" in stdout, "Blocking type shown") + finally: + shutil.rmtree(tmpdir) + + +def test_coverage_report_detailed(): + """coverage-report: detailed mode includes package and file breakdown.""" + print("TEST: coverage-report detailed") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "detailed": True, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_coverage_report, args) + check(rc == 0, "Return code 0") + check("PACKAGE BREAKDOWN" in stdout, "Package breakdown in detailed mode") + check("TOP FILES BY MC DEPENDENCY" in stdout, "File breakdown in detailed mode") + finally: + shutil.rmtree(tmpdir) + + +def test_coverage_report_json(): + """coverage-report: JSON output.""" + print("TEST: coverage-report JSON output") + tmpdir = tempfile.mkdtemp() + try: + mock_root = _write_mock_index(tmpdir) + args = _make_namespace( + { + "detailed": False, + "json_output": True, + "project_root": mock_root, + } + ) + rc, stdout, _ = _capture_cmd(analyze.cmd_coverage_report, args) + check(rc == 0, "Return code 0") + data = json.loads(stdout) + check("abstractionCoverage" in data, "Coverage in JSON") + check(data["abstractionCoverage"]["abstracted"] == 2, "2 abstracted types") + check(len(data["topBlockingTypes"]) == 1, "1 blocking type") + check( + data["topBlockingTypes"][0]["shortName"] == "MinecraftServer", + "MinecraftServer is blocking", + ) + finally: + shutil.rmtree(tmpdir) + + +def test_missing_index(): + """All index-dependent commands fail gracefully when index is missing.""" + print("TEST: missing index") + tmpdir = tempfile.mkdtemp() + try: + args = _make_namespace( + { + "type": "EntityPlayer", + "fqn": None, + "project_root": tmpdir, + } + ) + rc, _, stderr = _capture_cmd(analyze.cmd_query_type, args) + check(rc == 1, "Return code 1 when index missing") + check( + "not found" in stderr.lower() or "index" in stderr.lower(), + "Error mentions missing index", + ) + finally: + shutil.rmtree(tmpdir) + + +def test_utility_functions(): + """Test utility functions directly.""" + print("TEST: utility functions") + + root = analyze.auto_detect_project_root() + check(root.exists(), "auto_detect_project_root returns existing path") + + check( + analyze._find_type_key(MOCK_INDEX, "EntityPlayer") + == "net.minecraft.entity.player.EntityPlayer", + "_find_type_key by short name", + ) + + check( + analyze._find_type_key(MOCK_INDEX, "X", fqn="net.minecraft.nbt.NBTTagCompound") + == "net.minecraft.nbt.NBTTagCompound", + "_find_type_key by FQN", + ) + + check( + analyze._find_type_key(MOCK_INDEX, "Nonexistent") is None, + "_find_type_key returns None for missing", + ) + + check( + analyze._find_file_key( + MOCK_INDEX, "noppes/npcs/controllers/QuestController.java" + ) + == "noppes/npcs/controllers/QuestController.java", + "_find_file_key exact match", + ) + + check( + analyze._find_file_key(MOCK_INDEX, "controllers/QuestController.java") + == "noppes/npcs/controllers/QuestController.java", + "_find_file_key suffix match", + ) + + readiness = analyze._calc_readiness( + MOCK_INDEX["files"]["noppes/npcs/CustomNpcs.java"] + ) + check(0 < readiness["score"] < 100, "Partial readiness for CustomNpcs") + check(len(readiness["blocking"]) > 0, "Has blocking types") + + +def test_signature_key(): + """Test signature_key uniqueness.""" + print("TEST: signature_key") + sig1 = {"name": "foo", "params": [{"type": "int", "name": "x"}]} + sig2 = {"name": "foo", "params": [{"type": "int", "name": "y"}]} + sig3 = {"name": "foo", "params": [{"type": "String", "name": "x"}]} + + check( + analyze.signature_key(sig1) == analyze.signature_key(sig2), + "Same name+types, different param names = same key", + ) + check( + analyze.signature_key(sig1) != analyze.signature_key(sig3), + "Same name, different types = different key", + ) + + +def main(): + global passed, failed + print("=" * 80) + print("ANALYZE.PY COMPREHENSIVE TEST SUITE") + print("=" * 80) + print() + + tests = [ + test_utility_functions, + test_signature_key, + test_query_type_basic, + test_query_type_by_fqn, + test_query_type_not_found, + test_query_type_json, + test_query_file_basic, + test_query_file_readiness, + test_query_file_not_found, + test_query_file_json, + test_extract_signatures_real_file, + test_extract_signatures_temp_file, + test_extract_signatures_public_only, + test_extract_signatures_json, + test_surface_miner_basic, + test_surface_miner_scoped, + test_surface_miner_not_found, + test_type_usage_basic, + test_type_usage_scoped, + test_type_usage_json, + test_type_usage_top_limit, + test_type_usage_not_found, + test_diff_signatures_basic, + test_diff_signatures_identical, + test_diff_signatures_json, + test_coverage_report_basic, + test_coverage_report_detailed, + test_coverage_report_json, + test_missing_index, + ] + + for test_fn in tests: + try: + test_fn() + except Exception as e: + failed += 1 + print(f" FAIL EXCEPTION: {e}") + import traceback + + traceback.print_exc() + print() + + print("=" * 80) + print("SUMMARY") + print("=" * 80) + total = passed + failed + print(f" {passed}/{total} checks passed, {failed} failed") + print() + + return 0 if failed == 0 else 1 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/tools/migration/test_pa_editor.py b/tools/migration/test_pa_editor.py new file mode 100644 index 000000000..43c231ef1 --- /dev/null +++ b/tools/migration/test_pa_editor.py @@ -0,0 +1,637 @@ +#!/usr/bin/env python3 +"""Test suite for pa_editor.py — validates all operation types and error handling. + +Run: python tools/migration/test_pa_editor.py +""" + +import json +import os +import shutil +import subprocess +import sys +import tempfile + +SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) +PA_EDITOR = os.path.join(SCRIPT_DIR, "pa_editor.py") +PROJECT_ROOT = os.path.abspath(os.path.join(SCRIPT_DIR, "..", "..")) + +PASS = 0 +FAIL = 0 + + +def test(name: str, passed: bool, detail: str = ""): + global PASS, FAIL + if passed: + PASS += 1 + print(f" PASS {name}") + else: + FAIL += 1 + print(f" FAIL {name}" + (f" — {detail}" if detail else "")) + + +def run_editor(manifest_path: str, *args: str) -> tuple[int, str, str]: + cmd = [ + sys.executable, + PA_EDITOR, + manifest_path, + *args, + "--project-root", + PROJECT_ROOT, + ] + result = subprocess.run(cmd, capture_output=True, text=True, cwd=PROJECT_ROOT) + return result.returncode, result.stdout, result.stderr + + +def write_file(path: str, content: str): + os.makedirs(os.path.dirname(path), exist_ok=True) + with open(path, "w", encoding="utf-8", newline="\n") as f: + f.write(content) + + +def read_file(path: str) -> str: + with open(path, "r", encoding="utf-8") as f: + return f.read() + + +def write_manifest(tmpdir: str, manifest: dict) -> str: + path = os.path.join(tmpdir, "manifest.json") + with open(path, "w", encoding="utf-8") as f: + json.dump(manifest, f, indent=2) + return path + + +SAMPLE_JAVA = """\ +package test; + +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.entity.player.EntityPlayer; +import java.util.List; + +public class Sample { + private int id; + + public void load(NBTTagCompound nbt) { + id = nbt.getInteger("id"); + } + + public void interact(EntityPlayer player) { + player.addChatMessage(null); + } +} +""" + + +def run_tests(): + tmpdir = tempfile.mkdtemp( + prefix="pa_editor_test_", dir=os.path.join(PROJECT_ROOT, "tools", "migration") + ) + try: + _run_all(tmpdir) + finally: + shutil.rmtree(tmpdir, ignore_errors=True) + + print(f"\n{'=' * 50}") + print(f" RESULTS: {PASS} passed, {FAIL} failed") + print(f"{'=' * 50}") + return FAIL == 0 + + +def _run_all(tmpdir: str): + print("\n=== PA Editor Test Suite ===\n") + + # ---------------------------------------------------------------- + # TEST 1: Replace by pattern + # ---------------------------------------------------------------- + f1 = os.path.join(tmpdir, "Replace.java") + write_file(f1, SAMPLE_JAVA) + rel1 = os.path.relpath(f1, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel1, + "ops": [ + { + "op": "replace", + "target": { + "pattern": "^import net\\.minecraft\\.nbt\\.NBTTagCompound;" + }, + "content": "import api.INbt;", + }, + ], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("replace-by-pattern: exit 0", code == 0) + content = read_file(f1) + test("replace-by-pattern: import changed", "import api.INbt;" in content) + test( + "replace-by-pattern: old import gone", + "import net.minecraft.nbt.NBTTagCompound;" not in content, + ) + + # ---------------------------------------------------------------- + # TEST 2: Insert before/after + # ---------------------------------------------------------------- + f2 = os.path.join(tmpdir, "Insert.java") + write_file(f2, SAMPLE_JAVA) + rel2 = os.path.relpath(f2, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel2, + "ops": [ + { + "op": "insert", + "target": {"line": 1}, + "position": "before", + "content": "// Header comment", + }, + { + "op": "insert", + "target": {"pattern": "^public class"}, + "position": "after", + "content": " // class body start", + }, + ], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("insert: exit 0", code == 0) + content = read_file(f2) + lines = content.split("\n") + test("insert-before: first line is comment", lines[0] == "// Header comment") + test( + "insert-after: class body comment exists", " // class body start" in content + ) + + # ---------------------------------------------------------------- + # TEST 3: Delete lines + # ---------------------------------------------------------------- + f3 = os.path.join(tmpdir, "Delete.java") + write_file(f3, SAMPLE_JAVA) + rel3 = os.path.relpath(f3, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel3, + "ops": [ + { + "op": "delete", + "target": {"pattern": "^import net\\.minecraft\\.nbt"}, + "count": 1, + }, + { + "op": "delete", + "target": {"pattern": "^import net\\.minecraft\\.entity"}, + "count": 1, + }, + ], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("delete: exit 0", code == 0) + content = read_file(f3) + test("delete: MC imports removed", "net.minecraft" not in content) + test("delete: java import preserved", "java.util.List" in content) + + # ---------------------------------------------------------------- + # TEST 4: Multi-line insert + # ---------------------------------------------------------------- + f4 = os.path.join(tmpdir, "MultiInsert.java") + write_file(f4, SAMPLE_JAVA) + rel4 = os.path.relpath(f4, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel4, + "ops": [ + { + "op": "insert", + "target": {"pattern": "^public class"}, + "position": "before", + "content": "/**\n * Migrated class.\n * PA types only.\n */", + }, + ], + } + ] + }, + ) + code, _, _ = run_editor(manifest, "--force") + test("multi-line-insert: exit 0", code == 0) + content = read_file(f4) + test("multi-line-insert: javadoc present", "* Migrated class." in content) + test("multi-line-insert: javadoc 3 lines", "* PA types only." in content) + + # ---------------------------------------------------------------- + # TEST 5: Multi-line replace (count > 1) + # ---------------------------------------------------------------- + f5 = os.path.join(tmpdir, "MultiReplace.java") + write_file(f5, SAMPLE_JAVA) + rel5 = os.path.relpath(f5, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel5, + "ops": [ + { + "op": "replace", + "target": {"pattern": "^import net\\.minecraft\\.nbt"}, + "count": 2, + "content": "import api.INbt;\nimport api.IPlayer;", + }, + ], + } + ] + }, + ) + code, _, _ = run_editor(manifest, "--force") + test("multi-replace: exit 0", code == 0) + content = read_file(f5) + test( + "multi-replace: new imports present", + "import api.INbt;" in content and "import api.IPlayer;" in content, + ) + test("multi-replace: old imports gone", "net.minecraft" not in content) + + # ---------------------------------------------------------------- + # TEST 6: Dry-run does not write + # ---------------------------------------------------------------- + f6 = os.path.join(tmpdir, "DryRun.java") + write_file(f6, SAMPLE_JAVA) + rel6 = os.path.relpath(f6, PROJECT_ROOT) + original = read_file(f6) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel6, + "ops": [ + { + "op": "replace", + "target": {"line": 1}, + "content": "// MODIFIED", + } + ], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--dry-run") + test("dry-run: exit 0", code == 0) + test("dry-run: file unchanged", read_file(f6) == original) + test("dry-run: output shows DRY RUN", "DRY RUN" in out) + + # ---------------------------------------------------------------- + # TEST 7: Dry-run JSON output + # ---------------------------------------------------------------- + code, out, _ = run_editor(manifest, "--dry-run", "--json") + test("dry-run-json: exit 0", code == 0) + data = json.loads(out) + test("dry-run-json: has diffs", "diffs" in data) + test("dry-run-json: dry_run flag true", data.get("dry_run") is True) + + # ---------------------------------------------------------------- + # TEST 8: Backup creates .bak files + # ---------------------------------------------------------------- + f8 = os.path.join(tmpdir, "Backup.java") + write_file(f8, SAMPLE_JAVA) + rel8 = os.path.relpath(f8, PROJECT_ROOT) + original = read_file(f8) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel8, + "ops": [ + { + "op": "replace", + "target": {"line": 1}, + "content": "// MODIFIED", + } + ], + } + ] + }, + ) + code, _, _ = run_editor(manifest, "--force", "--backup") + test("backup: exit 0", code == 0) + test("backup: .bak exists", os.path.isfile(f8 + ".bak")) + test("backup: .bak has original content", read_file(f8 + ".bak") == original) + + # ---------------------------------------------------------------- + # TEST 9: Error — file not found + # ---------------------------------------------------------------- + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": os.path.join(tmpdir, "NONEXISTENT.java"), + "ops": [{"op": "replace", "target": {"line": 1}, "content": "x"}], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("error-file-not-found: exit 1", code == 1) + test("error-file-not-found: error in output", "file not found" in out) + + # ---------------------------------------------------------------- + # TEST 10: Error — line out of bounds + # ---------------------------------------------------------------- + f10 = os.path.join(tmpdir, "OOB.java") + write_file(f10, SAMPLE_JAVA) + rel10 = os.path.relpath(f10, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel10, + "ops": [{"op": "delete", "target": {"line": 9999}, "count": 1}], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("error-oob: exit 1", code == 1) + test("error-oob: error mentions bounds", "out of bounds" in out) + + # ---------------------------------------------------------------- + # TEST 11: Error — pattern not found + # ---------------------------------------------------------------- + f11 = os.path.join(tmpdir, "PatternFail.java") + write_file(f11, SAMPLE_JAVA) + rel11 = os.path.relpath(f11, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel11, + "ops": [ + { + "op": "replace", + "target": {"pattern": "WILL_NEVER_MATCH"}, + "content": "x", + } + ], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("error-pattern-not-found: exit 1", code == 1) + test("error-pattern-not-found: error mentions pattern", "not found" in out) + + # ---------------------------------------------------------------- + # TEST 12: Error — invalid regex + # ---------------------------------------------------------------- + f12 = os.path.join(tmpdir, "BadRegex.java") + write_file(f12, SAMPLE_JAVA) + rel12 = os.path.relpath(f12, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel12, + "ops": [ + { + "op": "replace", + "target": {"pattern": "[invalid"}, + "content": "x", + } + ], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("error-bad-regex: exit 1", code == 1) + test("error-bad-regex: error mentions regex", "invalid regex" in out) + + # ---------------------------------------------------------------- + # TEST 13: Atomicity — partial failure prevents ALL writes + # ---------------------------------------------------------------- + f13a = os.path.join(tmpdir, "Atomic_A.java") + f13b = os.path.join(tmpdir, "Atomic_B.java") + write_file(f13a, SAMPLE_JAVA) + write_file(f13b, SAMPLE_JAVA) + orig_a = read_file(f13a) + rel13a = os.path.relpath(f13a, PROJECT_ROOT) + rel13b = os.path.relpath(f13b, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel13a, + "ops": [ + { + "op": "insert", + "target": {"line": 1}, + "position": "before", + "content": "// SHOULD NOT APPEAR", + } + ], + }, + { + "path": rel13b, + "ops": [ + { + "op": "replace", + "target": {"pattern": "WILL_NEVER_MATCH"}, + "content": "x", + } + ], + }, + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("atomicity: exit 1", code == 1) + test("atomicity: file A unchanged", read_file(f13a) == orig_a, read_file(f13a)[:50]) + + # ---------------------------------------------------------------- + # TEST 14: Multi-file success + # ---------------------------------------------------------------- + f14a = os.path.join(tmpdir, "Multi_A.java") + f14b = os.path.join(tmpdir, "Multi_B.java") + f14c = os.path.join(tmpdir, "Multi_C.java") + write_file(f14a, SAMPLE_JAVA) + write_file(f14b, SAMPLE_JAVA) + write_file(f14c, SAMPLE_JAVA) + rel14a = os.path.relpath(f14a, PROJECT_ROOT) + rel14b = os.path.relpath(f14b, PROJECT_ROOT) + rel14c = os.path.relpath(f14c, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel14a, + "ops": [ + { + "op": "replace", + "target": {"pattern": "^import net\\.minecraft\\.nbt"}, + "content": "import api.INbt;", + } + ], + }, + { + "path": rel14b, + "ops": [ + { + "op": "delete", + "target": {"pattern": "^import net\\.minecraft\\.entity"}, + "count": 1, + } + ], + }, + { + "path": rel14c, + "ops": [ + { + "op": "insert", + "target": {"line": 1}, + "position": "before", + "content": "// File C header", + } + ], + }, + ] + }, + ) + code, out, _ = run_editor(manifest, "--force", "--json") + test("multi-file: exit 0", code == 0) + data = json.loads(out) + test("multi-file: 3 files modified", data.get("files_modified") == 3) + test("multi-file A: import replaced", "import api.INbt;" in read_file(f14a)) + test( + "multi-file B: import deleted", + "import net.minecraft.entity.player.EntityPlayer;" not in read_file(f14b), + ) + test("multi-file C: header added", read_file(f14c).startswith("// File C header")) + + # ---------------------------------------------------------------- + # TEST 15: Pattern occurrence targeting + # ---------------------------------------------------------------- + f15 = os.path.join(tmpdir, "Occurrence.java") + write_file(f15, "line A\nline B\nline A\nline C\nline A\n") + rel15 = os.path.relpath(f15, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel15, + "ops": [ + { + "op": "replace", + "target": {"pattern": "^line A", "occurrence": 2}, + "content": "line A_REPLACED", + } + ], + } + ] + }, + ) + code, _, _ = run_editor(manifest, "--force") + test("occurrence: exit 0", code == 0) + lines = read_file(f15).split("\n") + test("occurrence: line 1 unchanged", lines[0] == "line A") + test("occurrence: line 3 replaced", lines[2] == "line A_REPLACED") + test("occurrence: line 5 unchanged", lines[4] == "line A") + + # ---------------------------------------------------------------- + # TEST 16: Content as list of strings + # ---------------------------------------------------------------- + f16 = os.path.join(tmpdir, "ListContent.java") + write_file(f16, SAMPLE_JAVA) + rel16 = os.path.relpath(f16, PROJECT_ROOT) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": rel16, + "ops": [ + { + "op": "insert", + "target": {"line": 1}, + "position": "before", + "content": ["// Line 1", "// Line 2", "// Line 3"], + } + ], + } + ] + }, + ) + code, _, _ = run_editor(manifest, "--force") + test("list-content: exit 0", code == 0) + lines = read_file(f16).split("\n") + test( + "list-content: 3 lines inserted", + lines[0] == "// Line 1" and lines[1] == "// Line 2" and lines[2] == "// Line 3", + ) + + # ---------------------------------------------------------------- + # TEST 17: Structural validation (missing fields) + # ---------------------------------------------------------------- + manifest = write_manifest( + tmpdir, {"edits": [{"path": "x.java", "ops": [{"op": "insert"}]}]} + ) + code, out, _ = run_editor(manifest, "--force") + test("validation: missing content/target", code == 1) + + manifest = write_manifest( + tmpdir, + { + "edits": [ + { + "path": "x.java", + "ops": [{"op": "bogus", "target": {"line": 1}, "content": "x"}], + } + ] + }, + ) + code, out, _ = run_editor(manifest, "--force") + test("validation: invalid op name", code == 1) + + +if __name__ == "__main__": + ok = run_tests() + sys.exit(0 if ok else 1) diff --git a/tools/migration/test_runner.ps1 b/tools/migration/test_runner.ps1 new file mode 100644 index 000000000..404f67788 --- /dev/null +++ b/tools/migration/test_runner.ps1 @@ -0,0 +1,382 @@ +# Test runner for all migration tools +# Run: powershell -ExecutionPolicy Bypass -File tools/migration/test_runner.ps1 + +$ErrorActionPreference = 'Stop' +$passed = 0 +$failed = 0 + +function Reset-Sandbox { + $sandboxDir = Join-Path $PSScriptRoot 'test_sandbox\src' + + # TestController.java + $dir1 = Join-Path $sandboxDir 'noppes\npcs\controllers' + if (!(Test-Path $dir1)) { New-Item -ItemType Directory -Path $dir1 -Force | Out-Null } + [IO.File]::WriteAllText("$dir1\TestController.java", @' +package noppes.npcs.controllers; + +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagList; +import net.minecraft.entity.player.EntityPlayer; +import cpw.mods.fml.common.event.FMLServerStartingEvent; +import net.minecraftforge.common.MinecraftForge; +import noppes.npcs.controllers.data.TestData; +import noppes.npcs.util.TestUtil; +import java.util.HashMap; +import java.util.List; + +public class TestController { + private HashMap data = new HashMap<>(); + private NBTTagList tagList; + + public void save(EntityPlayer player) { + NBTTagCompound compound = new NBTTagCompound(); + compound.setString("name", player.getCommandSenderName()); + CompressedStreamTools.writeCompressed(compound, outputStream); + } + + public void load() { + NBTTagCompound compound = CompressedStreamTools.readCompressed(inputStream); + MathHelper.clamp_int(value, 0, 100); + } +} +'@) + + # TestData.java + $dir2 = Join-Path $sandboxDir 'noppes\npcs\controllers\data' + if (!(Test-Path $dir2)) { New-Item -ItemType Directory -Path $dir2 -Force | Out-Null } + [IO.File]::WriteAllText("$dir2\TestData.java", @' +package noppes.npcs.controllers.data; + +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagList; +import net.minecraft.nbt.NBTTagString; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.item.ItemStack; +import noppes.npcs.controllers.TestController; +import noppes.npcs.util.TestUtil; +import java.util.ArrayList; + +public class TestData { + private NBTTagCompound nbt; + private EntityPlayer player; + + public NBTTagCompound writeNBT(NBTTagCompound compound) { + NBTTagList list = new NBTTagList(); + NBTTagString str = new NBTTagString("hello"); + compound.setTag("list", list); + return compound; + } + + public void readNBT(NBTTagCompound compound) { + NBTTagList list = compound.getTagList("list", 10); + } + + public ItemStack getItem() { + return null; + } +} +'@) + + # TestUtil.java (with duplicate imports) + $dir3 = Join-Path $sandboxDir 'noppes\npcs\util' + if (!(Test-Path $dir3)) { New-Item -ItemType Directory -Path $dir3 -Force | Out-Null } + [IO.File]::WriteAllText("$dir3\TestUtil.java", @' +package noppes.npcs.util; + +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagCompound; +import noppes.npcs.controllers.TestController; +import noppes.npcs.controllers.TestController; +import java.util.Map; + +public class TestUtil { + public static NBTTagCompound merge(NBTTagCompound a, NBTTagCompound b) { + NBTTagCompound result = new NBTTagCompound(); + return result; + } +} +'@) +} + +function Assert-Contains { + param([string]$Content, [string]$Expected, [string]$TestName) + if ($Content -match [regex]::Escape($Expected)) { + return $true + } else { + Write-Host " FAIL: Expected '$Expected' in $TestName" -ForegroundColor Red + return $false + } +} + +function Assert-NotContains { + param([string]$Content, [string]$Unexpected, [string]$TestName) + if ($Content -match [regex]::Escape($Unexpected)) { + Write-Host " FAIL: Did NOT expect '$Unexpected' in $TestName" -ForegroundColor Red + return $false + } else { + return $true + } +} + +# ===== Load all tools ===== +. (Join-Path $PSScriptRoot 'Symbol-Swap.ps1') +. (Join-Path $PSScriptRoot 'Nuke-Imports.ps1') +. (Join-Path $PSScriptRoot 'Static-Transform.ps1') +. (Join-Path $PSScriptRoot 'Dedupe-Imports.ps1') +. (Join-Path $PSScriptRoot 'Generate-Stubs.ps1') +. (Join-Path $PSScriptRoot 'Create-And-Propagate.ps1') + +$sandboxRel = 'tools/migration/test_sandbox/src' +$sandboxAbs = Join-Path $PSScriptRoot 'test_sandbox\src' + +# ============================================================ +Write-Host "`n========== TEST 1: Symbol-Swap ==========" -ForegroundColor Cyan +Reset-Sandbox + +$result = Symbol-Swap -Directory $sandboxRel -Swaps @( + @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), + @('NBTTagList', 'INbtList', 'net.minecraft.nbt.NBTTagList', 'noppes.npcs.api.nbt.INbtList'), + @('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer'), + @('ItemStack', 'IItemStack', 'net.minecraft.item.ItemStack', 'noppes.npcs.api.item.IItemStack') +) + +$tc = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\TestController.java") +$td = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\data\TestData.java") + +$ok = $true +$ok = (Assert-Contains $tc 'import noppes.npcs.api.nbt.INbt;' 'TestController new import') -and $ok +$ok = (Assert-NotContains $tc 'import net.minecraft.nbt.NBTTagCompound;' 'TestController old import removed') -and $ok +$ok = (Assert-Contains $tc 'HashMap' 'TestController symbol swap') -and $ok +$ok = (Assert-Contains $td 'import noppes.npcs.api.entity.IPlayer;' 'TestData IPlayer import') -and $ok +$ok = (Assert-Contains $td 'private IPlayer player;' 'TestData EntityPlayer swap') -and $ok +$ok = (Assert-Contains $td 'public IItemStack getItem()' 'TestData ItemStack swap') -and $ok +# Verify old MC imports are gone +$ok = (Assert-NotContains $td 'import net.minecraft.entity.player.EntityPlayer;' 'TestData old EntityPlayer import') -and $ok +$ok = (Assert-NotContains $td 'import net.minecraft.item.ItemStack;' 'TestData old ItemStack import') -and $ok +# Verify no mangled imports (the bug we fixed) +$ok = (Assert-NotContains $tc 'import net.minecraft.nbt.INbt;' 'No mangled import') -and $ok + +if ($ok) { $passed++; Write-Host " PASS: Symbol-Swap" -ForegroundColor Green } else { $failed++ } + +# ============================================================ +Write-Host "`n========== TEST 2: Nuke-Imports ==========" -ForegroundColor Cyan +Reset-Sandbox + +$result = Nuke-Imports -Directory $sandboxRel -ForbiddenPrefixes @( + 'net.minecraft.', 'cpw.mods.', 'net.minecraftforge.' +) + +$tc = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\TestController.java") +$td = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\data\TestData.java") + +$ok = $true +$ok = (Assert-NotContains $tc 'import net.minecraft' 'TestController MC imports nuked') -and $ok +$ok = (Assert-NotContains $tc 'import cpw.mods' 'TestController FML imports nuked') -and $ok +$ok = (Assert-NotContains $tc 'import net.minecraftforge' 'TestController Forge imports nuked') -and $ok +$ok = (Assert-Contains $tc 'import noppes.npcs.controllers.data.TestData;' 'TestController project imports preserved') -and $ok +$ok = (Assert-Contains $tc 'import java.util.HashMap;' 'TestController java imports preserved') -and $ok +$ok = (Assert-NotContains $td 'import net.minecraft' 'TestData MC imports nuked') -and $ok +$ok = (Assert-Contains $td 'import noppes.npcs.controllers.TestController;' 'TestData project imports preserved') -and $ok + +if ($ok) { $passed++; Write-Host " PASS: Nuke-Imports" -ForegroundColor Green } else { $failed++ } + +# ============================================================ +Write-Host "`n========== TEST 3: Static-Transform ==========" -ForegroundColor Cyan +Reset-Sandbox + +$result = Static-Transform -Directory $sandboxRel -Transforms @( + @('CompressedStreamTools\.writeCompressed\s*\(([^,]+),\s*([^)]+)\)', 'PlatformServiceHolder.get().writeCompressedNBT($1, $2)'), + @('CompressedStreamTools\.readCompressed\s*\(([^)]+)\)', 'PlatformServiceHolder.get().readCompressedNBT($1)'), + @('new\s+NBTTagCompound\s*\(\)', 'NBT.compound()'), + @('new\s+NBTTagList\s*\(\)', 'NBT.list()'), + @('MathHelper\.clamp_int\s*\(', 'ValueUtil.clampInt(') +) + +$tc = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\TestController.java") +$td = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\data\TestData.java") + +$ok = $true +$ok = (Assert-Contains $tc 'NBT.compound()' 'new NBTTagCompound -> NBT.compound()') -and $ok +$ok = (Assert-Contains $tc 'PlatformServiceHolder.get().writeCompressedNBT(compound, outputStream)' 'writeCompressed transformed') -and $ok +$ok = (Assert-Contains $tc 'PlatformServiceHolder.get().readCompressedNBT(inputStream)' 'readCompressed transformed') -and $ok +$ok = (Assert-Contains $tc 'ValueUtil.clampInt(value, 0, 100)' 'MathHelper.clamp_int transformed') -and $ok +$ok = (Assert-Contains $td 'NBT.list()' 'new NBTTagList -> NBT.list()') -and $ok + +if ($ok) { $passed++; Write-Host " PASS: Static-Transform" -ForegroundColor Green } else { $failed++ } + +# ============================================================ +Write-Host "`n========== TEST 4: Dedupe-Imports ==========" -ForegroundColor Cyan +Reset-Sandbox + +$result = Dedupe-Imports -Directory $sandboxRel + +$tu = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\util\TestUtil.java") + +$ok = $true +# Count how many times 'import noppes.npcs.controllers.TestController;' appears +$dupeCount = ([regex]::Matches($tu, 'import noppes\.npcs\.controllers\.TestController;')).Count +if ($dupeCount -eq 1) { + $ok = $true +} else { + Write-Host " FAIL: Expected 1 TestController import, got $dupeCount" -ForegroundColor Red + $ok = $false +} +$nbtDupeCount = ([regex]::Matches($tu, 'import net\.minecraft\.nbt\.NBTTagCompound;')).Count +if ($nbtDupeCount -eq 1) { + # ok +} else { + Write-Host " FAIL: Expected 1 NBTTagCompound import, got $nbtDupeCount" -ForegroundColor Red + $ok = $false +} +$ok = (Assert-Contains $tu 'import java.util.Map;' 'TestUtil java import preserved') -and $ok + +if ($ok) { $passed++; Write-Host " PASS: Dedupe-Imports" -ForegroundColor Green } else { $failed++ } + +# ============================================================ +Write-Host "`n========== TEST 5: Generate-Stubs ==========" -ForegroundColor Cyan +Reset-Sandbox + +# Clean up any previous stub +$stubDir = Join-Path $sandboxAbs 'noppes\npcs\controllers' +$stubFile = Join-Path $stubDir 'SyncController.java' +if (Test-Path $stubFile) { Remove-Item $stubFile -Force } + +$result = Generate-Stubs -Stubs @( + @{ pkg='noppes.npcs.controllers'; name='SyncController'; type='class'; + body=' public static void updateDialog(Object d) {}' } +) -TargetRoot 'tools/migration/test_sandbox/src' + +$ok = $true +if (Test-Path $stubFile) { + $stubContent = [IO.File]::ReadAllText($stubFile) + $ok = (Assert-Contains $stubContent 'TEMPORARY STUB' 'Stub has marker comment') -and $ok + $ok = (Assert-Contains $stubContent 'package noppes.npcs.controllers;' 'Stub correct package') -and $ok + $ok = (Assert-Contains $stubContent 'public class SyncController' 'Stub correct class') -and $ok + $ok = (Assert-Contains $stubContent 'public static void updateDialog(Object d) {}' 'Stub has method') -and $ok +} else { + Write-Host " FAIL: Stub file not created" -ForegroundColor Red + $ok = $false +} + +# Test that it does NOT overwrite a real class +$realFile = Join-Path $stubDir 'TestController.java' +$realBefore = [IO.File]::ReadAllText($realFile) +Generate-Stubs -Stubs @( + @{ pkg='noppes.npcs.controllers'; name='TestController'; type='class'; body='// should not appear' } +) -TargetRoot 'tools/migration/test_sandbox/src' | Out-Null +$realAfter = [IO.File]::ReadAllText($realFile) +if ($realBefore -eq $realAfter) { + # good - real class not overwritten +} else { + Write-Host " FAIL: Generate-Stubs overwrote a real class!" -ForegroundColor Red + $ok = $false +} + +# Clean up stub +if (Test-Path $stubFile) { Remove-Item $stubFile -Force } + +if ($ok) { $passed++; Write-Host " PASS: Generate-Stubs" -ForegroundColor Green } else { $failed++ } + +# ============================================================ +Write-Host "`n========== TEST 6: Create-And-Propagate ==========" -ForegroundColor Cyan +Reset-Sandbox + +$interfacePath = 'tools/migration/test_sandbox/src/noppes/npcs/api/ITestService.java' +$interfaceContent = @' +package noppes.npcs.api; + +public interface ITestService { + void doSomething(); +} +'@ + +$result = Create-And-Propagate ` + -FilePath $interfacePath ` + -Content $interfaceContent ` + -TargetDirectory $sandboxRel ` + -Swaps @( + ,@('CompressedStreamTools', 'ITestService', 'net.minecraft.nbt.CompressedStreamTools', 'noppes.npcs.api.ITestService') + ) + +$ok = $true +# Check interface was created +$ifaceFull = Join-Path $PSScriptRoot 'test_sandbox\src\noppes\npcs\api\ITestService.java' +if (Test-Path $ifaceFull) { + $ifaceContent = [IO.File]::ReadAllText($ifaceFull) + $ok = (Assert-Contains $ifaceContent 'public interface ITestService' 'Interface created') -and $ok +} else { + Write-Host " FAIL: Interface file not created" -ForegroundColor Red + $ok = $false +} + +# Check propagation in TestController (had CompressedStreamTools references) +$tc = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\TestController.java") +$ok = (Assert-Contains $tc 'ITestService' 'CompressedStreamTools replaced with ITestService') -and $ok +$ok = (Assert-NotContains $tc 'CompressedStreamTools' 'No leftover CompressedStreamTools') -and $ok +$ok = (Assert-Contains $tc 'import noppes.npcs.api.ITestService;' 'New import added') -and $ok + +# Clean up +if (Test-Path $ifaceFull) { Remove-Item $ifaceFull -Force } +$apiDir = Join-Path $PSScriptRoot 'test_sandbox\src\noppes\npcs\api' +if (Test-Path $apiDir) { Remove-Item $apiDir -Recurse -Force } + +if ($ok) { $passed++; Write-Host " PASS: Create-And-Propagate" -ForegroundColor Green } else { $failed++ } + +# ============================================================ +Write-Host "`n========== TEST 7: Full Pipeline (Symbol-Swap + Nuke + Static + Dedupe) ==========" -ForegroundColor Cyan +Reset-Sandbox + +# Step 1: Nuke MC imports +Nuke-Imports -Directory $sandboxRel -ForbiddenPrefixes @('net.minecraft.', 'cpw.mods.', 'net.minecraftforge.') | Out-Null + +# Step 2: Symbol swap whatever is left +Symbol-Swap -Directory $sandboxRel -Swaps @( + @('NBTTagCompound', 'INbt', 'net.minecraft.nbt.NBTTagCompound', 'noppes.npcs.api.nbt.INbt'), + @('NBTTagList', 'INbtList', 'net.minecraft.nbt.NBTTagList', 'noppes.npcs.api.nbt.INbtList'), + @('EntityPlayer', 'IPlayer', 'net.minecraft.entity.player.EntityPlayer', 'noppes.npcs.api.entity.IPlayer') +) | Out-Null + +# Step 3: Static transforms +Static-Transform -Directory $sandboxRel -Transforms @( + @('new\s+INbt\s*\(\)', 'NBT.compound()'), + @('new\s+INbtList\s*\(\)', 'NBT.list()'), + @('MathHelper\.clamp_int\s*\(', 'ValueUtil.clampInt(') +) | Out-Null + +# Step 4: Dedupe +Dedupe-Imports -Directory $sandboxRel | Out-Null + +$tc = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\controllers\TestController.java") +$tu = [IO.File]::ReadAllText("$sandboxAbs\noppes\npcs\util\TestUtil.java") + +$ok = $true +$ok = (Assert-NotContains $tc 'net.minecraft' 'Pipeline: no MC imports left') -and $ok +$ok = (Assert-NotContains $tc 'cpw.mods' 'Pipeline: no FML imports left') -and $ok +$ok = (Assert-Contains $tc 'INbt' 'Pipeline: symbols swapped') -and $ok +$ok = (Assert-Contains $tc 'NBT.compound()' 'Pipeline: static transforms applied') -and $ok +$ok = (Assert-Contains $tc 'ValueUtil.clampInt(' 'Pipeline: MathHelper transformed') -and $ok +# Check deduplication worked on TestUtil +$tuDupeCount = ([regex]::Matches($tu, 'import noppes\.npcs\.controllers\.TestController;')).Count +if ($tuDupeCount -eq 1) { + # good +} else { + Write-Host " FAIL: Pipeline dedup - expected 1 TestController import, got $tuDupeCount" -ForegroundColor Red + $ok = $false +} + +if ($ok) { $passed++; Write-Host " PASS: Full Pipeline" -ForegroundColor Green } else { $failed++ } + +# ============================================================ +# Clean up sandbox +Reset-Sandbox + +# ===== SUMMARY ===== +Write-Host "`n============================================" -ForegroundColor White +Write-Host " TEST RESULTS" -ForegroundColor White +Write-Host "============================================" -ForegroundColor White +Write-Host " Passed: $passed" -ForegroundColor Green +Write-Host " Failed: $failed" -ForegroundColor $(if ($failed -gt 0) { 'Red' } else { 'Green' }) +Write-Host "============================================" -ForegroundColor White + +if ($failed -gt 0) { exit 1 }