gitextract_875549rw/ ├── .github/ │ ├── FUNDING.yml │ └── workflows/ │ └── deploy-steam.yml ├── .gitignore ├── Aseprite/ │ ├── Aseprite.csproj │ ├── AsepriteAnimation.cs │ ├── AsepriteFile.cs │ ├── AsepriteImporter.cs │ ├── AsepriteProcessor.cs │ ├── AsepriteReader.cs │ ├── AsepriteWriter.cs │ ├── AudioFile.cs │ ├── AudioImporter.cs │ ├── AudioProcessor.cs │ ├── AudioReader.cs │ ├── AudioWriter.cs │ ├── Calc.cs │ ├── Properties/ │ │ └── AssemblyInfo.cs │ ├── README.md │ └── packages.config ├── BurningKnight/ │ ├── BK.cs │ ├── BurningKnight.csproj │ ├── Content/ │ │ ├── Animations/ │ │ │ ├── accessory_trader.ase │ │ │ ├── achievements.ase │ │ │ ├── active_trader.ase │ │ │ ├── baby_gobbo.ase │ │ │ ├── baby_slime.ase │ │ │ ├── backpack.ase │ │ │ ├── badosz.ase │ │ │ ├── bandit.ase │ │ │ ├── bee.ase │ │ │ ├── beehive.ase │ │ │ ├── beet.ase │ │ │ ├── belt.ase │ │ │ ├── belt_down.ase │ │ │ ├── belt_up.ase │ │ │ ├── big_slime.ase │ │ │ ├── big_snowball.ase │ │ │ ├── bigbee.ase │ │ │ ├── biome_assets.ase │ │ │ ├── bird.ase │ │ │ ├── bk_orbital.ase │ │ │ ├── blue_bullet_slime.ase │ │ │ ├── book.ase │ │ │ ├── boss_door.ase │ │ │ ├── boxy.ase │ │ │ ├── brastin.ase │ │ │ ├── broco.ase │ │ │ ├── buffed_flower.ase │ │ │ ├── buffer.ase │ │ │ ├── builder.ase │ │ │ ├── bullet_slime.ase │ │ │ ├── button.ase │ │ │ ├── cactus.ase │ │ │ ├── campfire.ase │ │ │ ├── castle_biome.ase │ │ │ ├── cave_biome.ase │ │ │ ├── challenge_door.ase │ │ │ ├── clown.ase │ │ │ ├── copper_coin.ase │ │ │ ├── crab.ase │ │ │ ├── crawler.ase │ │ │ ├── crystal.ase │ │ │ ├── cup_guy.ase │ │ │ ├── dark_mage.ase │ │ │ ├── death_fx.ase │ │ │ ├── demon.ase │ │ │ ├── desert_biome.ase │ │ │ ├── desert_bullet_slime.ase │ │ │ ├── desert_slime.ase │ │ │ ├── dino.ase │ │ │ ├── discord.ase │ │ │ ├── duck.ase │ │ │ ├── dude.ase │ │ │ ├── dummy.ase │ │ │ ├── elon.ase │ │ │ ├── emerald_golem.ase │ │ │ ├── emerald_gunner.ase │ │ │ ├── explobee.ase │ │ │ ├── explosion.ase │ │ │ ├── eye.ase │ │ │ ├── flower.ase │ │ │ ├── fly.ase │ │ │ ├── ghost.ase │ │ │ ├── globbo.ase │ │ │ ├── gobbo.ase │ │ │ ├── gobetta.ase │ │ │ ├── gold_coin.ase │ │ │ ├── grandma.ase │ │ │ ├── gunner.ase │ │ │ ├── half_mana.ase │ │ │ ├── hat_trader.ase │ │ │ ├── head_door.ase │ │ │ ├── heinur.ase │ │ │ ├── hub_biome.ase │ │ │ ├── ice_biome.ase │ │ │ ├── ice_crawler.ase │ │ │ ├── ice_queen.ase │ │ │ ├── iron_coin.ase │ │ │ ├── isaac.ase │ │ │ ├── item_half_heart.ase │ │ │ ├── item_heart.ase │ │ │ ├── items.ase │ │ │ ├── jungle_biome.ase │ │ │ ├── key.ase │ │ │ ├── knight.ase │ │ │ ├── level_lock.ase │ │ │ ├── lever.ase │ │ │ ├── library_biome.ase │ │ │ ├── loading.ase │ │ │ ├── lock.ase │ │ │ ├── logo.ase │ │ │ ├── logobg.ase │ │ │ ├── maanex.ase │ │ │ ├── mage.ase │ │ │ ├── maggot.ase │ │ │ ├── mana.ase │ │ │ ├── mapuzzle.ase │ │ │ ├── marshmallow.ase │ │ │ ├── meat_guy.ase │ │ │ ├── mega_slime.ase │ │ │ ├── mike.ase │ │ │ ├── milt.ase │ │ │ ├── mother_slime.ase │ │ │ ├── moving_platform.ase │ │ │ ├── mummy.ase │ │ │ ├── new_gobbo.ase │ │ │ ├── nullptr.ase │ │ │ ├── nurse.ase │ │ │ ├── old_burning_knight.ase │ │ │ ├── old_gobbo.ase │ │ │ ├── old_king.ase │ │ │ ├── old_man.ase │ │ │ ├── ord.ase │ │ │ ├── paintings.ase │ │ │ ├── particles.ase │ │ │ ├── payed_door.ase │ │ │ ├── pharaoh.ase │ │ │ ├── planks_particle.ase │ │ │ ├── platinum_coin.ase │ │ │ ├── preasure_plate.ase │ │ │ ├── prism.ase │ │ │ ├── projectiles.ase │ │ │ ├── props.ase │ │ │ ├── proto_chest.ase │ │ │ ├── rat.ase │ │ │ ├── regular_door.ase │ │ │ ├── roger.ase │ │ │ ├── rolling_spike.ase │ │ │ ├── scourged_door.ase │ │ │ ├── shield_buddy.ase │ │ │ ├── shooty.ase │ │ │ ├── shop_door.ase │ │ │ ├── shopkeeper.ase │ │ │ ├── side_door.ase │ │ │ ├── skele_buddy.ase │ │ │ ├── skeleton.ase │ │ │ ├── slime.ase │ │ │ ├── small_king.ase │ │ │ ├── snek.ase │ │ │ ├── sniper.ase │ │ │ ├── snowball.ase │ │ │ ├── snowflake.ase │ │ │ ├── snowman.ase │ │ │ ├── snowman_body.ase │ │ │ ├── spelunker.ase │ │ │ ├── spider.ase │ │ │ ├── spiked_cookie.ase │ │ │ ├── spiked_door.ase │ │ │ ├── spikes.ase │ │ │ ├── splash_fx.ase │ │ │ ├── splash_particle.ase │ │ │ ├── sponge.ase │ │ │ ├── spooky_big_slime.ase │ │ │ ├── spooky_biome.ase │ │ │ ├── spooky_slime.ase │ │ │ ├── stepping_platform.ase │ │ │ ├── sword_trail.ase │ │ │ ├── tech_biome.ase │ │ │ ├── thief.ase │ │ │ ├── trash_goblin.ase │ │ │ ├── treasure_door.ase │ │ │ ├── turret.ase │ │ │ ├── twitch.ase │ │ │ ├── twitch_pet.ase │ │ │ ├── ui.ase │ │ │ ├── vampire.ase │ │ │ ├── vertical_shop_door.ase │ │ │ ├── vertical_treasure_door.ase │ │ │ ├── wallet.ase │ │ │ ├── weapon_trader.ase │ │ │ ├── wombat.ase │ │ │ ├── worm.ase │ │ │ └── xmas_biome.ase │ │ ├── Content.mgcb │ │ ├── Dialogs/ │ │ │ ├── accessorytrader.json │ │ │ ├── activetrader.json │ │ │ ├── beet.json │ │ │ ├── bk.json │ │ │ ├── bk_sign.json │ │ │ ├── boxy.json │ │ │ ├── brastin.json │ │ │ ├── builder.json │ │ │ ├── charger.json │ │ │ ├── control.json │ │ │ ├── dialogs.json │ │ │ ├── discord.json │ │ │ ├── dm.json │ │ │ ├── duck.json │ │ │ ├── eg.json │ │ │ ├── elon.json │ │ │ ├── fountain.json │ │ │ ├── gobetta.json │ │ │ ├── granny.json │ │ │ ├── hattrader.json │ │ │ ├── isaac.json │ │ │ ├── maanex.json │ │ │ ├── maanex2.json │ │ │ ├── machine.json │ │ │ ├── mapuzzle.json │ │ │ ├── milt.json │ │ │ ├── mob.json │ │ │ ├── npc.json │ │ │ ├── npc_hurt.json │ │ │ ├── nullptr.json │ │ │ ├── nurse.json │ │ │ ├── old_man.json │ │ │ ├── player.json │ │ │ ├── roger.json │ │ │ ├── shopkeeper.json │ │ │ ├── snek.json │ │ │ ├── tomb.json │ │ │ ├── trash_goblin.json │ │ │ ├── twitch.json │ │ │ ├── vampire.json │ │ │ └── weapontrader.json │ │ ├── Fonts/ │ │ │ ├── fnt.spritefont │ │ │ ├── large.xnb │ │ │ ├── large_font.fnt │ │ │ ├── large_font.xnb │ │ │ ├── small.xnb │ │ │ ├── small_font.fnt │ │ │ └── small_font.xnb │ │ ├── Locales/ │ │ │ ├── by.json │ │ │ ├── de.json │ │ │ ├── en.json │ │ │ ├── fr.json │ │ │ ├── it.json │ │ │ ├── pl.json │ │ │ ├── pt.json │ │ │ ├── qu.json │ │ │ └── ru.json │ │ ├── Music/ │ │ │ ├── BK.ogg │ │ │ ├── Believer.ogg │ │ │ ├── Born to do rogueries.ogg │ │ │ ├── Botanical Expedition.ogg │ │ │ ├── Cursed legend.ogg │ │ │ ├── Fatiga.ogg │ │ │ ├── Frozen to the bones.ogg │ │ │ ├── Gobbeon.ogg │ │ │ ├── Hidden knowledge.ogg │ │ │ ├── Hub.ogg │ │ │ ├── Last chance.ogg │ │ │ ├── Ma Precious.ogg │ │ │ ├── Menu.ogg │ │ │ ├── My precious.ogg │ │ │ ├── Nostalgia.ogg │ │ │ ├── Outsider.ogg │ │ │ ├── Pirate Bay.ogg │ │ │ ├── Reckless.ogg │ │ │ ├── Serendipity.ogg │ │ │ ├── Shopkeeper.ogg │ │ │ ├── Void.ogg │ │ │ ├── chip.ogg │ │ │ └── piano.ogg │ │ ├── Prefabs/ │ │ │ ├── cutscene_0.lvl │ │ │ ├── granny.lvl │ │ │ ├── hub.lvl │ │ │ ├── mclaw.lvl │ │ │ ├── new_hub.lvl │ │ │ ├── nhub.lvl │ │ │ └── tutorial.lvl │ │ ├── README.txt │ │ ├── Shaders/ │ │ │ ├── bk.fx │ │ │ ├── chasm.fx │ │ │ ├── entity.fx │ │ │ ├── fog.fx │ │ │ ├── item.fx │ │ │ ├── screen.fx │ │ │ ├── terrain.fx │ │ │ └── ui.fx │ │ ├── achievements.json │ │ ├── bin/ │ │ │ ├── Fonts/ │ │ │ │ ├── fnt.xnb │ │ │ │ ├── large.xnb │ │ │ │ └── small.xnb │ │ │ ├── Shaders/ │ │ │ │ ├── bk.xnb │ │ │ │ ├── chasm.xnb │ │ │ │ ├── entity.xnb │ │ │ │ ├── fog.xnb │ │ │ │ ├── item.xnb │ │ │ │ ├── screen.xnb │ │ │ │ ├── terrain.xnb │ │ │ │ ├── test │ │ │ │ └── ui.xnb │ │ │ └── Textures/ │ │ │ ├── light.xnb │ │ │ ├── noise.xnb │ │ │ └── rexcellent_logo_pixel.xnb │ │ ├── items.json │ │ ├── keys.json │ │ └── logo_helper.ase │ ├── Events.cs │ ├── Properties/ │ │ └── AssemblyInfo.cs │ ├── README.md │ ├── Settings.cs │ ├── Tags.cs │ ├── assets/ │ │ ├── CommonAse.cs │ │ ├── Dialogs.cs │ │ ├── Font.cs │ │ ├── ImGuiHelper.cs │ │ ├── Palette.cs │ │ ├── Shaders.cs │ │ ├── achievements/ │ │ │ ├── Achievement.cs │ │ │ └── Achievements.cs │ │ ├── input/ │ │ │ ├── Control.cs │ │ │ └── Controls.cs │ │ ├── items/ │ │ │ ├── ItemData.cs │ │ │ └── Items.cs │ │ ├── lighting/ │ │ │ ├── EntityLight.cs │ │ │ ├── Light.cs │ │ │ ├── LightComponent.cs │ │ │ ├── Lights.cs │ │ │ └── PositionedLight.cs │ │ ├── loot/ │ │ │ ├── Drops.cs │ │ │ └── LootTables.cs │ │ ├── mod/ │ │ │ ├── Mod.cs │ │ │ └── Mods.cs │ │ ├── particle/ │ │ │ ├── AnimatedParticle.cs │ │ │ ├── Particle.cs │ │ │ ├── ParticleEmitter.cs │ │ │ ├── ParticleEntity.cs │ │ │ ├── ParticleSystem.cs │ │ │ ├── Particles.cs │ │ │ ├── controller/ │ │ │ │ ├── AnimatedParticleController.cs │ │ │ │ ├── AshController.cs │ │ │ │ ├── BkDeathParticleController.cs │ │ │ │ ├── BloodParticleController.cs │ │ │ │ ├── Controllers.cs │ │ │ │ ├── DestroyParticleController.cs │ │ │ │ ├── FloatParticleController.cs │ │ │ │ ├── HealthParticleController.cs │ │ │ │ ├── LavaController.cs │ │ │ │ ├── ParticleController.cs │ │ │ │ ├── RainParticleController.cs │ │ │ │ ├── ScourgeController.cs │ │ │ │ ├── SimpleParticleController.cs │ │ │ │ └── SparkParticleController.cs │ │ │ ├── custom/ │ │ │ │ ├── BuffParticle.cs │ │ │ │ ├── ConfettiParticle.cs │ │ │ │ ├── ConsumableParticle.cs │ │ │ │ ├── EpicSpawn.cs │ │ │ │ ├── FadingParticle.cs │ │ │ │ ├── FireEmitter.cs │ │ │ │ ├── FireParticle.cs │ │ │ │ ├── ProjectileParticle.cs │ │ │ │ ├── RainParticle.cs │ │ │ │ ├── SnowParticle.cs │ │ │ │ ├── TextParticle.cs │ │ │ │ └── TileParticle.cs │ │ │ └── renderer/ │ │ │ ├── AnimatedParticleRenderer.cs │ │ │ ├── HealthParticleRenderer.cs │ │ │ ├── ParticleRenderer.cs │ │ │ ├── RandomFrameRenderer.cs │ │ │ └── TexturedParticleRenderer.cs │ │ └── prefabs/ │ │ ├── Prefab.cs │ │ └── Prefabs.cs │ ├── capsule.ase │ ├── debug/ │ │ ├── BiomeCommand.cs │ │ ├── BuffCommand.cs │ │ ├── CheatWindow.cs │ │ ├── Console.cs │ │ ├── ConsoleCommand.cs │ │ ├── DebugCommand.cs │ │ ├── DieCommand.cs │ │ ├── EntityCommand.cs │ │ ├── ExploreCommand.cs │ │ ├── GiveCommand.cs │ │ ├── GodModeCommand.cs │ │ ├── HappeningCommand.cs │ │ ├── HealCommand.cs │ │ ├── HurtCommand.cs │ │ ├── LevelCommand.cs │ │ ├── LevelLayerDebug.cs │ │ ├── LootTableEditor.cs │ │ ├── PassableCommand.cs │ │ ├── PoolEditor.cs │ │ ├── SaveCommand.cs │ │ ├── SpawnCommand.cs │ │ ├── TileCommand.cs │ │ └── ZoomCommand.cs │ ├── entity/ │ │ ├── BlankMaker.cs │ │ ├── Cursor.cs │ │ ├── DamageType.cs │ │ ├── ExplosionMaker.cs │ │ ├── HealthType.cs │ │ ├── Layers.cs │ │ ├── Lego.cs │ │ ├── RenderTrigger.cs │ │ ├── RenderTriggerManager.cs │ │ ├── SpawnPoint.cs │ │ ├── bomb/ │ │ │ ├── Bomb.cs │ │ │ └── controller/ │ │ │ └── TargetBombController.cs │ │ ├── buff/ │ │ │ ├── ArmoredBuff.cs │ │ │ ├── BleedingBuff.cs │ │ │ ├── BrokenArmorBuff.cs │ │ │ ├── Buff.cs │ │ │ ├── BuffCheckEvent.cs │ │ │ ├── BuffInfo.cs │ │ │ ├── BuffRegistry.cs │ │ │ ├── BuffedBuff.cs │ │ │ ├── BurningBuff.cs │ │ │ ├── CharmedBuff.cs │ │ │ ├── ConfusedBuff.cs │ │ │ ├── FrozenBuff.cs │ │ │ ├── InvincibleBuff.cs │ │ │ ├── InvisibleBuff.cs │ │ │ ├── PoisonBuff.cs │ │ │ ├── ProjectileShaderHelper.cs │ │ │ ├── RageBuff.cs │ │ │ └── SlowBuff.cs │ │ ├── component/ │ │ │ ├── AimComponent.cs │ │ │ ├── AnimationComponent.cs │ │ │ ├── AudioEmitterComponent.cs │ │ │ ├── BodyComponent.cs │ │ │ ├── BombGraphicsComponent.cs │ │ │ ├── BuffsComponent.cs │ │ │ ├── CircleBodyComponent.cs │ │ │ ├── CloseDialogComponent.cs │ │ │ ├── CollisionFilterComponent.cs │ │ │ ├── CursorComponent.cs │ │ │ ├── DoorBodyComponent.cs │ │ │ ├── DropModifier.cs │ │ │ ├── DropsComponent.cs │ │ │ ├── ExplodableComponent.cs │ │ │ ├── ExplodeComponent.cs │ │ │ ├── ExtraAnimationComponent.cs │ │ │ ├── FollowerComponent.cs │ │ │ ├── GamepadComponent.cs │ │ │ ├── HatComponent.cs │ │ │ ├── HealthComponent.cs │ │ │ ├── InteractDialogComponent.cs │ │ │ ├── InteractableComponent.cs │ │ │ ├── InteractableSliceComponent.cs │ │ │ ├── InventoryComponent.cs │ │ │ ├── ItemComponent.cs │ │ │ ├── LockComponent.cs │ │ │ ├── ManaComponent.cs │ │ │ ├── MobAnimationComponent.cs │ │ │ ├── NoCornerBodyComponent.cs │ │ │ ├── OrbitGiverComponent.cs │ │ │ ├── OrbitalComponent.cs │ │ │ ├── OwnerComponent.cs │ │ │ ├── PoolDropsComponent.cs │ │ │ ├── QuackInteractionComponent.cs │ │ │ ├── RandomFrameComponent.cs │ │ │ ├── RectBodyComponent.cs │ │ │ ├── RoomComponent.cs │ │ │ ├── ScalableSliceComponent.cs │ │ │ ├── SensorBodyComponent.cs │ │ │ ├── ShadowComponent.cs │ │ │ ├── SimpleZAnimationComponent.cs │ │ │ ├── SliceComponent.cs │ │ │ ├── SparkEmitterComponent.cs │ │ │ ├── StatsComponent.cs │ │ │ ├── SupportableComponent.cs │ │ │ ├── TextGraphicsComponent.cs │ │ │ ├── TileInteractionComponent.cs │ │ │ ├── WallAnimationComponent.cs │ │ │ ├── ZAnimationComponent.cs │ │ │ ├── ZComponent.cs │ │ │ └── ZSliceComponent.cs │ │ ├── creature/ │ │ │ ├── Creature.cs │ │ │ ├── Decoy.cs │ │ │ ├── Gore.cs │ │ │ ├── SmartState.cs │ │ │ ├── bk/ │ │ │ │ ├── BkGraphicsComponent.cs │ │ │ │ ├── BkOrbital.cs │ │ │ │ ├── BurningKnight.cs │ │ │ │ └── SpawnTrigger.cs │ │ │ ├── drop/ │ │ │ │ ├── AnyDrop.cs │ │ │ │ ├── Drop.cs │ │ │ │ ├── DropInfo.cs │ │ │ │ ├── DropRegistry.cs │ │ │ │ ├── EmptyDrop.cs │ │ │ │ ├── OneOfDrop.cs │ │ │ │ ├── PoolDrop.cs │ │ │ │ ├── SimpleDrop.cs │ │ │ │ └── SingleDrop.cs │ │ │ ├── mob/ │ │ │ │ ├── Dummy.cs │ │ │ │ ├── LoopChance.cs │ │ │ │ ├── Mimic.cs │ │ │ │ ├── Mob.cs │ │ │ │ ├── MobInfo.cs │ │ │ │ ├── MobPair.cs │ │ │ │ ├── MobRegistry.cs │ │ │ │ ├── MobSpawnInfo.cs │ │ │ │ ├── SpawnChance.cs │ │ │ │ ├── boss/ │ │ │ │ │ ├── BkHead.cs │ │ │ │ │ ├── Boss.cs │ │ │ │ │ ├── BossAttack.cs │ │ │ │ │ ├── BossInfo.cs │ │ │ │ │ ├── BossRegistry.cs │ │ │ │ │ ├── DM.cs │ │ │ │ │ ├── IceQueen.cs │ │ │ │ │ ├── OldKing.cs │ │ │ │ │ ├── Pharaoh.cs │ │ │ │ │ ├── QueenBee.cs │ │ │ │ │ └── rooms/ │ │ │ │ │ ├── DmBulletDodgeRoom.cs │ │ │ │ │ ├── DmEndRoom.cs │ │ │ │ │ ├── DmEnemyRoom.cs │ │ │ │ │ ├── DmMazeRoom.cs │ │ │ │ │ ├── DmPadsRoom.cs │ │ │ │ │ ├── DmPlatformRoom.cs │ │ │ │ │ ├── DmRoom.cs │ │ │ │ │ ├── DmRoomRegistry.cs │ │ │ │ │ └── DmSpikeRoom.cs │ │ │ │ ├── castle/ │ │ │ │ │ ├── BabySlime.cs │ │ │ │ │ ├── Bandit.cs │ │ │ │ │ ├── BigSlime.cs │ │ │ │ │ ├── BlueBulletSlime.cs │ │ │ │ │ ├── BulletSlime.cs │ │ │ │ │ ├── Caster.cs │ │ │ │ │ ├── Clown.cs │ │ │ │ │ ├── Crab.cs │ │ │ │ │ ├── Ghost.cs │ │ │ │ │ ├── Gunner.cs │ │ │ │ │ ├── King.cs │ │ │ │ │ ├── Knight.cs │ │ │ │ │ ├── MotherSlime.cs │ │ │ │ │ ├── Rat.cs │ │ │ │ │ ├── SimpleSlime.cs │ │ │ │ │ └── WallCrawler.cs │ │ │ │ ├── cave/ │ │ │ │ │ ├── Broco.cs │ │ │ │ │ ├── EmeraldGunner.cs │ │ │ │ │ └── Thief.cs │ │ │ │ ├── desert/ │ │ │ │ │ ├── Cactus.cs │ │ │ │ │ ├── DesertBulletSlime.cs │ │ │ │ │ ├── DesertSlime.cs │ │ │ │ │ ├── Fly.cs │ │ │ │ │ ├── Maggot.cs │ │ │ │ │ ├── MegaSlime.cs │ │ │ │ │ ├── Mummy.cs │ │ │ │ │ ├── Spelunker.cs │ │ │ │ │ └── Worm.cs │ │ │ │ ├── ice/ │ │ │ │ │ ├── BigSnowball.cs │ │ │ │ │ ├── CupGuy.cs │ │ │ │ │ ├── Dino.cs │ │ │ │ │ ├── IceCrawler.cs │ │ │ │ │ ├── Snowball.cs │ │ │ │ │ ├── Snowflake.cs │ │ │ │ │ ├── Snowman.cs │ │ │ │ │ ├── SnowmanBody.cs │ │ │ │ │ └── Sponge.cs │ │ │ │ ├── jungle/ │ │ │ │ │ ├── Bee.cs │ │ │ │ │ ├── BeeHive.cs │ │ │ │ │ ├── BigBee.cs │ │ │ │ │ ├── BuffedFlower.cs │ │ │ │ │ ├── Explobee.cs │ │ │ │ │ ├── Flower.cs │ │ │ │ │ ├── Sniper.cs │ │ │ │ │ └── Wombat.cs │ │ │ │ ├── library/ │ │ │ │ │ ├── Book.cs │ │ │ │ │ ├── Buffer.cs │ │ │ │ │ ├── Skeleton.cs │ │ │ │ │ └── TeleportingMage.cs │ │ │ │ ├── prefabs/ │ │ │ │ │ ├── Slime.cs │ │ │ │ │ └── WallWalker.cs │ │ │ │ └── prefix/ │ │ │ │ ├── DeathShotPrefix.cs │ │ │ │ ├── EmeraldPrefix.cs │ │ │ │ ├── ExplosivePrefix.cs │ │ │ │ ├── FragilePrefix.cs │ │ │ │ ├── GoldPrefix.cs │ │ │ │ ├── HealthyPrefix.cs │ │ │ │ ├── Prefix.cs │ │ │ │ ├── PrefixRegistry.cs │ │ │ │ └── RegenerativePrefix.cs │ │ │ ├── npc/ │ │ │ │ ├── AccessoryTrader.cs │ │ │ │ ├── ActiveTrader.cs │ │ │ │ ├── Beet.cs │ │ │ │ ├── Bird.cs │ │ │ │ ├── Brastin.cs │ │ │ │ ├── Builder.cs │ │ │ │ ├── DarkMage.cs │ │ │ │ ├── Discord.cs │ │ │ │ ├── Duck.cs │ │ │ │ ├── Elon.cs │ │ │ │ ├── EmeraldGolem.cs │ │ │ │ ├── Granny.cs │ │ │ │ ├── HatTrader.cs │ │ │ │ ├── Isaac.cs │ │ │ │ ├── MaPuzzle.cs │ │ │ │ ├── Maanex.cs │ │ │ │ ├── Maanex2.cs │ │ │ │ ├── Mike.cs │ │ │ │ ├── Milt.cs │ │ │ │ ├── Npc.cs │ │ │ │ ├── NullPtr.cs │ │ │ │ ├── OldMan.cs │ │ │ │ ├── Ord.cs │ │ │ │ ├── ShopKeeper.cs │ │ │ │ ├── ShopNpc.cs │ │ │ │ ├── WeaponTrader.cs │ │ │ │ └── dungeon/ │ │ │ │ ├── Boxy.cs │ │ │ │ ├── DungeonDuck.cs │ │ │ │ ├── DungeonElon.cs │ │ │ │ ├── DungeonShopNpc.cs │ │ │ │ ├── Gobetta.cs │ │ │ │ ├── Nurse.cs │ │ │ │ ├── Roger.cs │ │ │ │ ├── Snek.cs │ │ │ │ ├── TrashGoblin.cs │ │ │ │ └── Vampire.cs │ │ │ ├── pet/ │ │ │ │ ├── AnimatedFollowerPet.cs │ │ │ │ ├── Backpack.cs │ │ │ │ ├── BooGraphicsComponent.cs │ │ │ │ ├── Bubblo.cs │ │ │ │ ├── Crystal.cs │ │ │ │ ├── DiagonalPet.cs │ │ │ │ ├── FollowerPet.cs │ │ │ │ ├── GeneratorPet.cs │ │ │ │ ├── LampPet.cs │ │ │ │ ├── LilBoo.cs │ │ │ │ ├── Pet.cs │ │ │ │ ├── PetRegistry.cs │ │ │ │ ├── RoomBasedPet.cs │ │ │ │ ├── ShieldBuddy.cs │ │ │ │ ├── Shooty.cs │ │ │ │ ├── SnekPet.cs │ │ │ │ ├── SpikedCookie.cs │ │ │ │ ├── Strawberry.cs │ │ │ │ ├── TheEye.cs │ │ │ │ └── Wallet.cs │ │ │ └── player/ │ │ │ ├── ActiveItemComponent.cs │ │ │ ├── ActiveWeaponComponent.cs │ │ │ ├── ConsumablesComponent.cs │ │ │ ├── HeartsComponent.cs │ │ │ ├── InteractorComponent.cs │ │ │ ├── LampComponent.cs │ │ │ ├── LocalPlayer.cs │ │ │ ├── Player.cs │ │ │ ├── PlayerClass.cs │ │ │ ├── PlayerGraphicsComponent.cs │ │ │ ├── PlayerInputComponent.cs │ │ │ └── WeaponComponent.cs │ │ ├── cutscene/ │ │ │ ├── controller/ │ │ │ │ ├── CutsceneController.cs │ │ │ │ └── GobboCutsceneController.cs │ │ │ └── entity/ │ │ │ ├── BabyGobbo.cs │ │ │ ├── CutsceneEntity.cs │ │ │ ├── Gobbo.cs │ │ │ ├── Heinur.cs │ │ │ └── OldGobbo.cs │ │ ├── door/ │ │ │ ├── BossDoor.cs │ │ │ ├── BossLock.cs │ │ │ ├── CageDoor.cs │ │ │ ├── CageLock.cs │ │ │ ├── ChallengeDoor.cs │ │ │ ├── ConditionDoor.cs │ │ │ ├── ConditionLock.cs │ │ │ ├── CustomDoor.cs │ │ │ ├── Door.cs │ │ │ ├── GoldLock.cs │ │ │ ├── HallDoor.cs │ │ │ ├── HallLock.cs │ │ │ ├── HeadDoor.cs │ │ │ ├── IronLock.cs │ │ │ ├── ItemDoor.cs │ │ │ ├── ItemLock.cs │ │ │ ├── LevelDoor.cs │ │ │ ├── LevelLock.cs │ │ │ ├── Lock.cs │ │ │ ├── LockableDoor.cs │ │ │ ├── LockedDoor.cs │ │ │ ├── PayedDoor.cs │ │ │ ├── RedDoor.cs │ │ │ ├── RedLock.cs │ │ │ ├── ScourgedDoor.cs │ │ │ ├── ShopDoor.cs │ │ │ ├── SpecialDoor.cs │ │ │ ├── SpikedDoor.cs │ │ │ ├── TeleportTrigger.cs │ │ │ ├── TreasureDoor.cs │ │ │ ├── VerticalConditionDoor.cs │ │ │ ├── VerticalDoor.cs │ │ │ ├── VerticalHallDoor.cs │ │ │ └── VerticalShopDoor.cs │ │ ├── events/ │ │ │ ├── BombPlacedEvent.cs │ │ │ ├── BuffAddedEvent.cs │ │ │ ├── BuffRemovedEvent.cs │ │ │ ├── BurningKnightDefeatedEvent.cs │ │ │ ├── CollisionEndedEvent.cs │ │ │ ├── CollisionStartedEvent.cs │ │ │ ├── ConsumableAddedEvent.cs │ │ │ ├── ConsumableRemovedEvent.cs │ │ │ ├── DealChanceCalculateEvent.cs │ │ │ ├── DiedEvent.cs │ │ │ ├── DoorClosedEvent.cs │ │ │ ├── DoorOpenedEvent.cs │ │ │ ├── ExplodedEvent.cs │ │ │ ├── FlagCollisionEndEvent.cs │ │ │ ├── FlagCollisionStartEvent.cs │ │ │ ├── GramophoneBrokenEvent.cs │ │ │ ├── HealthModifiedEvent.cs │ │ │ ├── InteractedEvent.cs │ │ │ ├── ItemAddedEvent.cs │ │ │ ├── ItemBoughtEvent.cs │ │ │ ├── ItemCheckEvent.cs │ │ │ ├── ItemPlacedEvent.cs │ │ │ ├── ItemPriceCalculationEvent.cs │ │ │ ├── ItemRemovedEvent.cs │ │ │ ├── ItemTakenEvent.cs │ │ │ ├── ItemUsedEvent.cs │ │ │ ├── KilledEvent.cs │ │ │ ├── LockClosedEvent.cs │ │ │ ├── LockOpenedEvent.cs │ │ │ ├── LostSupportEvent.cs │ │ │ ├── MaxHealthModifiedEvent.cs │ │ │ ├── MobTargetChange.cs │ │ │ ├── NewFloorEvent.cs │ │ │ ├── NewLevelStartedEvent.cs │ │ │ ├── PlayerHurtEvent.cs │ │ │ ├── PlayerRolledEvent.cs │ │ │ ├── PlayerShootEvent.cs │ │ │ ├── PostHealthModifiedEvent.cs │ │ │ ├── ProjectileCreatedEvent.cs │ │ │ ├── QuackEvent.cs │ │ │ ├── RemoveFromPoolUse.cs │ │ │ ├── RevivedEvent.cs │ │ │ ├── RoomChangedEvent.cs │ │ │ ├── RoomClearedEvent.cs │ │ │ ├── SaveEndedEvent.cs │ │ │ ├── SaveStartedEvent.cs │ │ │ ├── SecretRoomFoundEvent.cs │ │ │ ├── TileCollisionEndEvent.cs │ │ │ ├── TileCollisionStartEvent.cs │ │ │ └── WeaponSwappedEvent.cs │ │ ├── fx/ │ │ │ ├── ChasmFx.cs │ │ │ ├── ExplosionLeftOver.cs │ │ │ ├── Firefly.cs │ │ │ ├── InteractFx.cs │ │ │ ├── SplashFx.cs │ │ │ ├── SplashParticle.cs │ │ │ ├── TileFx.cs │ │ │ ├── WaterfallFx.cs │ │ │ └── WindFx.cs │ │ ├── item/ │ │ │ ├── AnimatedItemGraphicsComponent.cs │ │ │ ├── BossStand.cs │ │ │ ├── Chance.cs │ │ │ ├── EmeraldStand.cs │ │ │ ├── Item.cs │ │ │ ├── ItemGraphicsComponent.cs │ │ │ ├── ItemInfo.cs │ │ │ ├── ItemPair.cs │ │ │ ├── ItemPickupFx.cs │ │ │ ├── ItemPool.cs │ │ │ ├── ItemQuality.cs │ │ │ ├── ItemType.cs │ │ │ ├── PriceCalculator.cs │ │ │ ├── RandomItem.cs │ │ │ ├── Reroller.cs │ │ │ ├── RoundItem.cs │ │ │ ├── Scourge.cs │ │ │ ├── SingleChoiceStand.cs │ │ │ ├── SpawnMobsUse.cs │ │ │ ├── Weapon.cs │ │ │ ├── WeaponType.cs │ │ │ ├── WeaponTypeHelper.cs │ │ │ ├── renderer/ │ │ │ │ ├── AngledRenderer.cs │ │ │ │ ├── ItemRenderer.cs │ │ │ │ ├── MovingAngledRenderer.cs │ │ │ │ ├── RendererRegistry.cs │ │ │ │ └── StickRenderer.cs │ │ │ ├── stand/ │ │ │ │ ├── ActiveStand.cs │ │ │ │ ├── ArtifactStand.cs │ │ │ │ ├── BkStand.cs │ │ │ │ ├── BoxyStand.cs │ │ │ │ ├── CustomStand.cs │ │ │ │ ├── DarkMageStand.cs │ │ │ │ ├── GarderobeStand.cs │ │ │ │ ├── GobettaStand.cs │ │ │ │ ├── GrannyStand.cs │ │ │ │ ├── HatStand.cs │ │ │ │ ├── HealChoiceStand.cs │ │ │ │ ├── HealthStand.cs │ │ │ │ ├── ItemStand.cs │ │ │ │ ├── LampStand.cs │ │ │ │ ├── LampUnlockStand.cs │ │ │ │ ├── PermanentStand.cs │ │ │ │ ├── RogerStand.cs │ │ │ │ ├── ScourgedStand.cs │ │ │ │ ├── ShieldChoiceStand.cs │ │ │ │ ├── ShopStand.cs │ │ │ │ ├── SnekStand.cs │ │ │ │ ├── TrashGoblinStand.cs │ │ │ │ ├── VampireStand.cs │ │ │ │ └── WeaponStand.cs │ │ │ ├── use/ │ │ │ │ ├── AddHitboxUse.cs │ │ │ │ ├── AddTorchUse.cs │ │ │ │ ├── AffectDealChanceUse.cs │ │ │ │ ├── BlankUse.cs │ │ │ │ ├── BlindFoldUse.cs │ │ │ │ ├── BlockDamageUse.cs │ │ │ │ ├── BreakPiggyBankUse.cs │ │ │ │ ├── BucketUse.cs │ │ │ │ ├── ChanceToUseWeaponUse.cs │ │ │ │ ├── ConsumeUse.cs │ │ │ │ ├── DetonateBombsUse.cs │ │ │ │ ├── DigUse.cs │ │ │ │ ├── DiscoverSecretRoomsUse.cs │ │ │ │ ├── DiscoverSideRoomsUse.cs │ │ │ │ ├── DoOnEnemyCollisionUse.cs │ │ │ │ ├── DoOnHurtUse.cs │ │ │ │ ├── DoOnNewFloorUse.cs │ │ │ │ ├── DoOnTimerUse.cs │ │ │ │ ├── DoUsesIfUse.cs │ │ │ │ ├── DoWithUse.cs │ │ │ │ ├── DuplicateItemsUse.cs │ │ │ │ ├── DuplicateMobsAndHealUse.cs │ │ │ │ ├── DuplicateMobsUse.cs │ │ │ │ ├── EnableScourgeUse.cs │ │ │ │ ├── ExplodeUse.cs │ │ │ │ ├── FireInAllDirsUse.cs │ │ │ │ ├── GiveBombUse.cs │ │ │ │ ├── GiveBuffImmunityUse.cs │ │ │ │ ├── GiveBuffUse.cs │ │ │ │ ├── GiveEmeraldsUse.cs │ │ │ │ ├── GiveFlightUse.cs │ │ │ │ ├── GiveGoldUse.cs │ │ │ │ ├── GiveHeartContainersUse.cs │ │ │ │ ├── GiveItemUse.cs │ │ │ │ ├── GiveKeyUse.cs │ │ │ │ ├── GiveLaserAimUse.cs │ │ │ │ ├── GivePhaseUse.cs │ │ │ │ ├── GiveRandomPickupUse.cs │ │ │ │ ├── GiveScourgeImmunityUse.cs │ │ │ │ ├── GiveWeaponUse.cs │ │ │ │ ├── GoThonkUse.cs │ │ │ │ ├── InvokeItemsUse.cs │ │ │ │ ├── ItemUse.cs │ │ │ │ ├── KillMobUse.cs │ │ │ │ ├── LeaveLegoUse.cs │ │ │ │ ├── MakeBombsBlankUse.cs │ │ │ │ ├── MakeBombsExplodeOnTouchUse.cs │ │ │ │ ├── MakeBombsHomeUse.cs │ │ │ │ ├── MakeItemsAttactUse.cs │ │ │ │ ├── MakeLayerPassableUse.cs │ │ │ │ ├── MakeProjectileExpandUse.cs │ │ │ │ ├── MakeProjectileReshootUse.cs │ │ │ │ ├── MakeProjectileShrinkUse.cs │ │ │ │ ├── MakeProjectilesBlankOnDeathUse.cs │ │ │ │ ├── MakeProjectilesBoomerangUse.cs │ │ │ │ ├── MakeProjectilesBounceUse.cs │ │ │ │ ├── MakeProjectilesHomeInUse.cs │ │ │ │ ├── MakeProjectilesHurtOnMissUse.cs │ │ │ │ ├── MakeProjectilesKillWithBuffUse.cs │ │ │ │ ├── MakeProjectilesShatternOnDeathUse.cs │ │ │ │ ├── MakeProjectilesSlowDown.cs │ │ │ │ ├── MakeProjectilesSplitOnDeathUse.cs │ │ │ │ ├── MakeProjectilesSplitUse.cs │ │ │ │ ├── MakeRollKickProjectilesUse.cs │ │ │ │ ├── MakeShopRestockUse.cs │ │ │ │ ├── MeleeArcUse.cs │ │ │ │ ├── ModEachAttackUse.cs │ │ │ │ ├── ModifyActiveChargeUse.cs │ │ │ │ ├── ModifyArcUse.cs │ │ │ │ ├── ModifyBombsUse.cs │ │ │ │ ├── ModifyConsumableWeightsUse.cs │ │ │ │ ├── ModifyGameSaveValueUse.cs │ │ │ │ ├── ModifyGenUse.cs │ │ │ │ ├── ModifyHpUse.cs │ │ │ │ ├── ModifyLuckUse.cs │ │ │ │ ├── ModifyManaMaxUse.cs │ │ │ │ ├── ModifyManaUse.cs │ │ │ │ ├── ModifyMaxHpUse.cs │ │ │ │ ├── ModifyProjectileTextureUse.cs │ │ │ │ ├── ModifyProjectilesUse.cs │ │ │ │ ├── ModifyShieldHeartsUse.cs │ │ │ │ ├── ModifyShootUse.cs │ │ │ │ ├── ModifyStatUse.cs │ │ │ │ ├── ModifyStatsUse.cs │ │ │ │ ├── PlaceDecoyUse.cs │ │ │ │ ├── PokemonUse.cs │ │ │ │ ├── PoofUse.cs │ │ │ │ ├── PreventDamageUse.cs │ │ │ │ ├── RandomActiveUse.cs │ │ │ │ ├── RandomUse.cs │ │ │ │ ├── RegenUse.cs │ │ │ │ ├── ReplaceHeartsWithShieldsUse.cs │ │ │ │ ├── RerollAndHideUse.cs │ │ │ │ ├── RerollItemsOnPlayerUse.cs │ │ │ │ ├── RerollItemsUse.cs │ │ │ │ ├── RevealMapUse.cs │ │ │ │ ├── SaleItemsUse.cs │ │ │ │ ├── ScourgeUse.cs │ │ │ │ ├── SetKnockbackModifierUse.cs │ │ │ │ ├── SetMaxHpUse.cs │ │ │ │ ├── SetMusicSpeed.cs │ │ │ │ ├── ShootLaserUse.cs │ │ │ │ ├── ShootQueueUse.cs │ │ │ │ ├── ShootUse.cs │ │ │ │ ├── SimpleShootUse.cs │ │ │ │ ├── SpawnBombUse.cs │ │ │ │ ├── SpawnDropUse.cs │ │ │ │ ├── SpawnItemsUse.cs │ │ │ │ ├── SpawnOrbitalUse.cs │ │ │ │ ├── SpawnPetUse.cs │ │ │ │ ├── SpawnProjectilesUse.cs │ │ │ │ ├── SpeedUpOrbitalsUse.cs │ │ │ │ ├── SuperHotUse.cs │ │ │ │ ├── TeleportToCursorUse.cs │ │ │ │ ├── TeleportToPrevRoomUse.cs │ │ │ │ ├── TeleportToShopUse.cs │ │ │ │ ├── TeleportUse.cs │ │ │ │ ├── TriggerHurtEventUse.cs │ │ │ │ ├── UseOnEventUse.cs │ │ │ │ ├── UseRegistry.cs │ │ │ │ └── parent/ │ │ │ │ ├── DoUsesUse.cs │ │ │ │ └── DoWithTagUse.cs │ │ │ ├── useCheck/ │ │ │ │ ├── ItemUseCheck.cs │ │ │ │ └── ItemUseChecks.cs │ │ │ └── util/ │ │ │ └── MeleeArc.cs │ │ ├── orbital/ │ │ │ ├── AnimatedOrbital.cs │ │ │ ├── Marshmallow.cs │ │ │ ├── Orbital.cs │ │ │ ├── OrbitalRegistry.cs │ │ │ └── Prism.cs │ │ ├── pc/ │ │ │ ├── Controller.cs │ │ │ └── Pico.cs │ │ ├── pool/ │ │ │ └── Pool.cs │ │ ├── projectile/ │ │ │ ├── BasicProjectileGraphicsComponent.cs │ │ │ ├── Laser.cs │ │ │ ├── LaserGraphicsComponent.cs │ │ │ ├── LetterTemplateData.cs │ │ │ ├── Missile.cs │ │ │ ├── OldProjectile.cs │ │ │ ├── Projectile.cs │ │ │ ├── ProjectileBuilder.cs │ │ │ ├── ProjectileCallbacks.cs │ │ │ ├── ProjectileColor.cs │ │ │ ├── ProjectileFlags.cs │ │ │ ├── ProjectileGraphicsComponent.cs │ │ │ ├── ProjectileGraphicsEffect.cs │ │ │ ├── ProjectilePattern.cs │ │ │ ├── ProjectileRegistry.cs │ │ │ ├── ProjectileTemplate.cs │ │ │ ├── controller/ │ │ │ │ ├── BoomerangProjectileController.cs │ │ │ │ ├── ExpandProjectileController.cs │ │ │ │ ├── HsvProjectileController.cs │ │ │ │ ├── ReturnProjectileController.cs │ │ │ │ ├── ShrinkProjectileController.cs │ │ │ │ ├── SlowdownProjectileController.cs │ │ │ │ ├── SmokeProjectileController.cs │ │ │ │ ├── TargetProjectileController.cs │ │ │ │ ├── TimedProjectileController.cs │ │ │ │ └── WhatController.cs │ │ │ └── pattern/ │ │ │ ├── CircleProjectilePattern.cs │ │ │ ├── CircleWithCenterProjectilePattern.cs │ │ │ ├── ExpandingCirclePattern.cs │ │ │ └── KeepShapePattern.cs │ │ ├── room/ │ │ │ ├── Room.cs │ │ │ ├── controllable/ │ │ │ │ ├── AlwaysOnSpikes.cs │ │ │ │ ├── FireTrap.cs │ │ │ │ ├── Piston.cs │ │ │ │ ├── RollingSpike.cs │ │ │ │ ├── RoomControllable.cs │ │ │ │ ├── Support.cs │ │ │ │ ├── platform/ │ │ │ │ │ ├── MovingPlatform.cs │ │ │ │ │ ├── Platform.cs │ │ │ │ │ ├── PlatformBorder.cs │ │ │ │ │ ├── PlatformController.cs │ │ │ │ │ └── SteppingPlatform.cs │ │ │ │ ├── spikes/ │ │ │ │ │ ├── SensingSpikes.cs │ │ │ │ │ └── Spikes.cs │ │ │ │ └── turret/ │ │ │ │ ├── QuadRotatingTurret.cs │ │ │ │ ├── QuadTurret.cs │ │ │ │ ├── RotatingTurret.cs │ │ │ │ └── Turret.cs │ │ │ ├── controller/ │ │ │ │ ├── BossRoomController.cs │ │ │ │ ├── ChallengeRoomController.cs │ │ │ │ ├── FollowingSpikeBallController.cs │ │ │ │ ├── PistonActivatorController.cs │ │ │ │ ├── RoomController.cs │ │ │ │ ├── RoomControllerRegistery.cs │ │ │ │ ├── SpikeFieldController.cs │ │ │ │ ├── TimedPistonSwitchController.cs │ │ │ │ └── TrapRoomController.cs │ │ │ └── input/ │ │ │ ├── Button.cs │ │ │ ├── Lever.cs │ │ │ ├── PreasurePlate.cs │ │ │ └── RoomInput.cs │ │ └── twitch/ │ │ ├── LoginSign.cs │ │ ├── TwitchBridge.cs │ │ ├── TwitchExit.cs │ │ ├── TwitchNpc.cs │ │ ├── TwitchPet.cs │ │ └── happening/ │ │ ├── BkRageHappening.cs │ │ ├── BombHappening.cs │ │ ├── BombingHappening.cs │ │ ├── BuffHappening.cs │ │ ├── ChestHappening.cs │ │ ├── DarknessHappening.cs │ │ ├── FloorResetHappening.cs │ │ ├── GiveShieldHappening.cs │ │ ├── Happening.cs │ │ ├── HappeningRegistry.cs │ │ ├── HealHappening.cs │ │ ├── HurtHappening.cs │ │ ├── ItemGiveHappening.cs │ │ ├── MakeItemsDamageUse.cs │ │ ├── ModifyCoinsHappening.cs │ │ ├── ModifyMaxHpHappening.cs │ │ ├── RandomItemHappening.cs │ │ ├── RandomTypedItemHappening.cs │ │ ├── RerollHappening.cs │ │ ├── ScourgeHappening.cs │ │ ├── SlideHappening.cs │ │ ├── StealWeaponHappening.cs │ │ └── TeleportHappening.cs │ ├── export_achievements.sh │ ├── item_sprites.ase │ ├── level/ │ │ ├── Chasm.cs │ │ ├── ChasmBodyComponent.cs │ │ ├── DoorPlaceholder.cs │ │ ├── Flag.cs │ │ ├── HalfProjectileBodyComponent.cs │ │ ├── HalfProjectileLevel.cs │ │ ├── HalfWall.cs │ │ ├── HalfWallBodyComponent.cs │ │ ├── Level.cs │ │ ├── LevelBodyComponent.cs │ │ ├── LevelTiler.cs │ │ ├── Painter.cs │ │ ├── Patch.cs │ │ ├── ProjectileBodyComponent.cs │ │ ├── ProjectileLevelBody.cs │ │ ├── RegularLevel.cs │ │ ├── Weather.cs │ │ ├── biome/ │ │ │ ├── Biome.cs │ │ │ ├── BiomeAssets.cs │ │ │ ├── BiomeInfo.cs │ │ │ ├── BiomeRegistry.cs │ │ │ ├── CastleBiome.cs │ │ │ ├── CaveBiome.cs │ │ │ ├── DesertBiome.cs │ │ │ ├── HubBiome.cs │ │ │ ├── IceBiome.cs │ │ │ ├── JungleBiome.cs │ │ │ ├── LibraryBiome.cs │ │ │ └── TechBiome.cs │ │ ├── builders/ │ │ │ ├── Builder.cs │ │ │ ├── CastleBuilder.cs │ │ │ ├── InfinityBuilder.cs │ │ │ ├── LineBuilder.cs │ │ │ ├── LoopBuilder.cs │ │ │ ├── RegularBuilder.cs │ │ │ └── SingleRoomBuilder.cs │ │ ├── challenge/ │ │ │ ├── BombOnlyChallenge.cs │ │ │ ├── Challenge.cs │ │ │ └── ChallengeRegistry.cs │ │ ├── cutscene/ │ │ │ ├── CutsceneLevel.cs │ │ │ └── CutsceneRoom.cs │ │ ├── entities/ │ │ │ ├── AchievementStatue.cs │ │ │ ├── Belt.cs │ │ │ ├── BreakableProp.cs │ │ │ ├── Campfire.cs │ │ │ ├── Claw.cs │ │ │ ├── ClawControll.cs │ │ │ ├── ContinueRun.cs │ │ │ ├── Crystal.cs │ │ │ ├── DailySign.cs │ │ │ ├── DownBelt.cs │ │ │ ├── Entrance.cs │ │ │ ├── Exit.cs │ │ │ ├── ExplodingBarrel.cs │ │ │ ├── Gramophone.cs │ │ │ ├── HiddenEntrance.cs │ │ │ ├── HiddenExit.cs │ │ │ ├── Portal.cs │ │ │ ├── Prop.cs │ │ │ ├── RightBelt.cs │ │ │ ├── Safe.cs │ │ │ ├── ShadowedProp.cs │ │ │ ├── Sign.cs │ │ │ ├── SlicedProp.cs │ │ │ ├── SolidProp.cs │ │ │ ├── Stand.cs │ │ │ ├── StatDisplay.cs │ │ │ ├── Teleporter.cs │ │ │ ├── Tombstone.cs │ │ │ ├── UpBelt.cs │ │ │ ├── building/ │ │ │ │ ├── House.cs │ │ │ │ └── Thing.cs │ │ │ ├── chest/ │ │ │ │ ├── AnimatedChest.cs │ │ │ │ ├── Chest.cs │ │ │ │ ├── ChestRegistry.cs │ │ │ │ ├── DoubleChest.cs │ │ │ │ ├── DuckChest.cs │ │ │ │ ├── GlassChest.cs │ │ │ │ ├── GoldChest.cs │ │ │ │ ├── ProtoChest.cs │ │ │ │ ├── RedChest.cs │ │ │ │ ├── ScourgedChest.cs │ │ │ │ ├── StoneChest.cs │ │ │ │ ├── TreasureChest.cs │ │ │ │ ├── TripleChest.cs │ │ │ │ └── WoodenChest.cs │ │ │ ├── decor/ │ │ │ │ ├── BurningStatue.cs │ │ │ │ ├── GrannyDecor.cs │ │ │ │ ├── Lamp.cs │ │ │ │ ├── Torch.cs │ │ │ │ ├── Tree.cs │ │ │ │ └── WallTorch.cs │ │ │ ├── exit/ │ │ │ │ ├── BossRushExit.cs │ │ │ │ ├── ChallengeExit.cs │ │ │ │ ├── DailyRunExit.cs │ │ │ │ ├── ShortcutExit.cs │ │ │ │ └── TutorialExit.cs │ │ │ ├── machine/ │ │ │ │ ├── Charger.cs │ │ │ │ ├── RerollMachine.cs │ │ │ │ └── VendingMachine.cs │ │ │ ├── plant/ │ │ │ │ ├── Plant.cs │ │ │ │ └── PlantGraphicsComponent.cs │ │ │ └── statue/ │ │ │ ├── ChestStatue.cs │ │ │ ├── DiceStatue.cs │ │ │ ├── Fountain.cs │ │ │ ├── GamepadStatue.cs │ │ │ ├── ScourgeStatue.cs │ │ │ ├── Statue.cs │ │ │ ├── StoneStatue.cs │ │ │ ├── SwordStatue.cs │ │ │ ├── WarriorStatue.cs │ │ │ └── Well.cs │ │ ├── floors/ │ │ │ ├── BathFloor.cs │ │ │ ├── ChessFloor.cs │ │ │ ├── DiagonalFloor.cs │ │ │ ├── FancyFloor.cs │ │ │ ├── FloorPainter.cs │ │ │ ├── FloorRegistry.cs │ │ │ ├── GeometryFloor.cs │ │ │ ├── HoneycombFloor.cs │ │ │ ├── LineFloor.cs │ │ │ ├── MazeFloor.cs │ │ │ ├── PatchFloor.cs │ │ │ └── TrippleFloor.cs │ │ ├── hall/ │ │ │ ├── HallBuilder.cs │ │ │ ├── HallLevel.cs │ │ │ └── HallRoom.cs │ │ ├── paintings/ │ │ │ ├── AnimatedPainting.cs │ │ │ ├── Painting.cs │ │ │ └── PaintingRegistry.cs │ │ ├── rooms/ │ │ │ ├── RoomDef.cs │ │ │ ├── RoomInfo.cs │ │ │ ├── RoomRegistry.cs │ │ │ ├── RoomType.cs │ │ │ ├── RoomTypeHelper.cs │ │ │ ├── boss/ │ │ │ │ ├── BossRoom.cs │ │ │ │ ├── ChasmBossRoom.cs │ │ │ │ ├── CollumnsBossRoom.cs │ │ │ │ └── FireTrapBossRoom.cs │ │ │ ├── challenge/ │ │ │ │ └── ChallengeRoom.cs │ │ │ ├── connection/ │ │ │ │ ├── CabbadgeConnectionRoom.cs │ │ │ │ ├── ComplexTunnelRoom.cs │ │ │ │ ├── ConnectionRoom.cs │ │ │ │ ├── HoleConnectionRoom.cs │ │ │ │ ├── IceConnectionRoom.cs │ │ │ │ ├── IntersectionConnectionRoom.cs │ │ │ │ ├── LibraryConnectionRoom.cs │ │ │ │ ├── MazeConnectionRoom.cs │ │ │ │ ├── RingConnectionRoom.cs │ │ │ │ └── TunnelRoom.cs │ │ │ ├── darkmarket/ │ │ │ │ └── DarkMarketRoom.cs │ │ │ ├── entrance/ │ │ │ │ ├── EntranceRoom.cs │ │ │ │ ├── EntranceWallPool.cs │ │ │ │ ├── ExitRoom.cs │ │ │ │ └── PortalEntranceRoom.cs │ │ │ ├── granny/ │ │ │ │ └── GrannyRoom.cs │ │ │ ├── oldman/ │ │ │ │ └── OldManRoom.cs │ │ │ ├── payed/ │ │ │ │ └── PayedRoom.cs │ │ │ ├── preboss/ │ │ │ │ └── PrebossRoom.cs │ │ │ ├── regular/ │ │ │ │ ├── EmptyRoom.cs │ │ │ │ ├── HiveRoom.cs │ │ │ │ ├── ItemTrollRoom.cs │ │ │ │ ├── JungleRoom.cs │ │ │ │ ├── PlatformChaosRoom.cs │ │ │ │ ├── PlatformLineRoom.cs │ │ │ │ ├── PlatformRingRoom.cs │ │ │ │ ├── RegularRoom.cs │ │ │ │ ├── TwoSidesRoom.cs │ │ │ │ └── VerticalRegularRoom.cs │ │ │ ├── scourged/ │ │ │ │ └── ScourgedRoom.cs │ │ │ ├── secret/ │ │ │ │ ├── BirdSecretRoom.cs │ │ │ │ ├── GrannySecretRoom.cs │ │ │ │ ├── SecretChasmRoom.cs │ │ │ │ ├── SecretChestRoom.cs │ │ │ │ ├── SecretDarkMarketEntranceRoom.cs │ │ │ │ ├── SecretEmeraldGolemRoom.cs │ │ │ │ ├── SecretItemRoom.cs │ │ │ │ ├── SecretKeyRoom.cs │ │ │ │ ├── SecretMachineRoom.cs │ │ │ │ ├── SecretRoom.cs │ │ │ │ └── SecretScourgeRoom.cs │ │ │ ├── shop/ │ │ │ │ ├── ShopRoom.cs │ │ │ │ └── sub/ │ │ │ │ ├── ProtoShopRoom.cs │ │ │ │ ├── SnekShopRoom.cs │ │ │ │ ├── StorageRoom.cs │ │ │ │ ├── SubShopRoom.cs │ │ │ │ └── VampireShopRoom.cs │ │ │ ├── special/ │ │ │ │ ├── ChargerRoom.cs │ │ │ │ ├── DarkMarketEntranceRoom.cs │ │ │ │ ├── DesertWellRoom.cs │ │ │ │ ├── HeartRoom.cs │ │ │ │ ├── IdolTrapRoom.cs │ │ │ │ ├── LockedRoom.cs │ │ │ │ ├── NpcKeyRoom.cs │ │ │ │ ├── NpcSaveRoom.cs │ │ │ │ ├── ProtoChestRoom.cs │ │ │ │ ├── SafeRoom.cs │ │ │ │ ├── SpecialRoom.cs │ │ │ │ ├── TombRoom.cs │ │ │ │ ├── VendingRoom.cs │ │ │ │ ├── minigame/ │ │ │ │ │ ├── ChestMinigameRoom.cs │ │ │ │ │ └── ClawMinigameRoom.cs │ │ │ │ ├── npc/ │ │ │ │ │ ├── DuckRoom.cs │ │ │ │ │ ├── ElonRoom.cs │ │ │ │ │ ├── NurseRoom.cs │ │ │ │ │ └── VampireRoom.cs │ │ │ │ ├── shop/ │ │ │ │ │ ├── BoxyShopRoom.cs │ │ │ │ │ ├── GobettaShopRoom.cs │ │ │ │ │ ├── NpcShopRoom.cs │ │ │ │ │ ├── RogerShopRoom.cs │ │ │ │ │ ├── SnekRoom.cs │ │ │ │ │ └── TrashGoblinRoom.cs │ │ │ │ └── statue/ │ │ │ │ ├── ChestStatueRoom.cs │ │ │ │ ├── DiceStatueRoom.cs │ │ │ │ ├── FountainRoom.cs │ │ │ │ ├── ScourgeStatueRoom.cs │ │ │ │ ├── StatueRoom.cs │ │ │ │ ├── StoneStatueRoom.cs │ │ │ │ ├── SwordStatueRoom.cs │ │ │ │ ├── WarriorStatueRoom.cs │ │ │ │ └── WellRoom.cs │ │ │ ├── spiked/ │ │ │ │ └── SpikedRoom.cs │ │ │ ├── trap/ │ │ │ │ ├── CrossTurretPassageRoom.cs │ │ │ │ ├── DangerousPadsRoom.cs │ │ │ │ ├── FollowingSpikeBallRoom.cs │ │ │ │ ├── RollingSpikesRoom.cs │ │ │ │ ├── SpikeMazeRoom.cs │ │ │ │ ├── SpikePassageRoom.cs │ │ │ │ ├── TrapRoom.cs │ │ │ │ ├── TurretPassageRoom.cs │ │ │ │ ├── TurretTrapRoom.cs │ │ │ │ └── VerticalTurretPassageRoom.cs │ │ │ └── treasure/ │ │ │ ├── AcrossTreasureRoom.cs │ │ │ ├── HoleTreasureRoom.cs │ │ │ ├── PadTreasureRoom.cs │ │ │ ├── PlatformTreasureRoom.cs │ │ │ ├── TreasureRoom.cs │ │ │ └── TwoDiagonalTreasureRoom.cs │ │ ├── tile/ │ │ │ ├── Tile.cs │ │ │ ├── TileFlags.cs │ │ │ ├── Tiles.cs │ │ │ ├── Tileset.cs │ │ │ └── Tilesets.cs │ │ ├── tutorial/ │ │ │ ├── TutorialLevel.cs │ │ │ ├── TutorialRoom.cs │ │ │ └── TutorialStand.cs │ │ ├── variant/ │ │ │ ├── ChasmLevelVariant.cs │ │ │ ├── FloodedLevelVariant.cs │ │ │ ├── ForestLevelVariant.cs │ │ │ ├── GoldLevelVariant.cs │ │ │ ├── LevelVariant.cs │ │ │ ├── RaveCaveVariant.cs │ │ │ ├── RegularLevelVariant.cs │ │ │ ├── SandLevelVariant.cs │ │ │ ├── SnowLevelVariant.cs │ │ │ ├── VariantInfo.cs │ │ │ ├── VariantRegistry.cs │ │ │ └── WebbedLevelVariant.cs │ │ └── walls/ │ │ ├── CollumnWall.cs │ │ ├── CollumsWall.cs │ │ ├── CornerWall.cs │ │ ├── CorneredTurretWall.cs │ │ ├── EllipseWalls.cs │ │ ├── MazeWall.cs │ │ ├── PatchWall.cs │ │ ├── PlatformWall.cs │ │ ├── RuinsWall.cs │ │ ├── SegmentedWall.cs │ │ ├── SplitWall.cs │ │ ├── TempleWalls.cs │ │ ├── TurretWall.cs │ │ ├── WallPainter.cs │ │ ├── WallRegistry.cs │ │ └── library/ │ │ ├── LibraryWallPainter.cs │ │ └── TeleportSplitWall.cs │ ├── mockups.ase │ ├── monitor.ase │ ├── packages.config │ ├── physics/ │ │ ├── CollisionFilterEntity.cs │ │ ├── CollisionResult.cs │ │ ├── Physics.cs │ │ └── PhysicsDebugRenderer.cs │ ├── pico.ase │ ├── save/ │ │ ├── EntitySaver.cs │ │ ├── GameSave.cs │ │ ├── GlobalSave.cs │ │ ├── LevelSave.cs │ │ ├── PlayerSave.cs │ │ ├── PrefabData.cs │ │ ├── PrefabSaver.cs │ │ ├── SaveDebug.cs │ │ ├── SaveLock.cs │ │ ├── SaveManager.cs │ │ ├── SaveType.cs │ │ ├── SaveableEntity.cs │ │ ├── Saver.cs │ │ ├── SecretSave.cs │ │ ├── StatisticsSaver.cs │ │ ├── cloud/ │ │ │ ├── CloudFileReader.cs │ │ │ └── CloudFileWriter.cs │ │ └── statistics/ │ │ └── RunStatistics.cs │ ├── state/ │ │ ├── AreaDebug.cs │ │ ├── AssetLoadState.cs │ │ ├── Credits.cs │ │ ├── CutsceneState.cs │ │ ├── DevAssetLoadState.cs │ │ ├── DialogEditorState.cs │ │ ├── Editor.cs │ │ ├── EditorState.cs │ │ ├── InGameAudio.cs │ │ ├── InGameState.cs │ │ ├── ItemEditor.cs │ │ ├── LoadState.cs │ │ ├── LogoRenderer.cs │ │ ├── PhotoCard.cs │ │ ├── PicoState.cs │ │ ├── RoomEditorState.cs │ │ ├── Run.cs │ │ ├── RunType.cs │ │ └── save/ │ │ ├── EntityData.cs │ │ ├── EntityInspector.cs │ │ ├── GameInspector.cs │ │ ├── GlobalInspector.cs │ │ ├── SaveData.cs │ │ ├── SaveExplorerState.cs │ │ ├── SaveGroup.cs │ │ ├── SaveInspector.cs │ │ └── SaveNode.cs │ ├── ui/ │ │ ├── AchievementBanner.cs │ │ ├── ButtonType.cs │ │ ├── FrameRenderer.cs │ │ ├── HealthBar.cs │ │ ├── SaveIndicator.cs │ │ ├── UiAchievement.cs │ │ ├── UiAnimation.cs │ │ ├── UiBanner.cs │ │ ├── UiButton.cs │ │ ├── UiChat.cs │ │ ├── UiCheckbox.cs │ │ ├── UiChoice.cs │ │ ├── UiControl.cs │ │ ├── UiDescriptionBanner.cs │ │ ├── UiEntity.cs │ │ ├── UiError.cs │ │ ├── UiImageButton.cs │ │ ├── UiLabel.cs │ │ ├── UiMap.cs │ │ ├── UiPane.cs │ │ ├── UiSlider.cs │ │ ├── UiTable.cs │ │ ├── UiTableEntry.cs │ │ ├── dialog/ │ │ │ ├── AnswerDialog.cs │ │ │ ├── AnswerType.cs │ │ │ ├── ChoiceDialog.cs │ │ │ ├── CombineDialog.cs │ │ │ ├── Dialog.cs │ │ │ ├── DialogComponent.cs │ │ │ ├── DialogNode.cs │ │ │ ├── EventDialog.cs │ │ │ └── UiDialog.cs │ │ ├── editor/ │ │ │ ├── CursorMode.cs │ │ │ ├── EditorWindow.cs │ │ │ ├── EntityEditor.cs │ │ │ ├── PlaceableEntity.cs │ │ │ ├── TileEditor.cs │ │ │ ├── TileInfo.cs │ │ │ ├── TypeInfo.cs │ │ │ └── command/ │ │ │ ├── Command.cs │ │ │ ├── CommandQueue.cs │ │ │ ├── FillCommand.cs │ │ │ └── SetCommand.cs │ │ ├── imgui/ │ │ │ ├── DebugWindow.cs │ │ │ ├── DialogEditor.cs │ │ │ ├── DrawVertDeclaration.cs │ │ │ ├── ImConnection.cs │ │ │ ├── ImGuiRenderer.cs │ │ │ ├── ImNodes.cs │ │ │ ├── LocaleEditor.cs │ │ │ ├── WindowManager.cs │ │ │ └── node/ │ │ │ ├── ImAnswerNode.cs │ │ │ ├── ImChoiceNode.cs │ │ │ ├── ImDialogNode.cs │ │ │ ├── ImNode.cs │ │ │ ├── ImNodeRegistry.cs │ │ │ ├── ImOrdNode.cs │ │ │ ├── ImTextInputNode.cs │ │ │ ├── ImTextNode.cs │ │ │ └── ImTextOutputNode.cs │ │ ├── inventory/ │ │ │ ├── UiActiveItemSlot.cs │ │ │ ├── UiInventory.cs │ │ │ ├── UiItem.cs │ │ │ └── UiWeaponSlot.cs │ │ └── str/ │ │ ├── Glyph.cs │ │ ├── IconRenderer.cs │ │ ├── StrRenderer.cs │ │ ├── UiString.cs │ │ ├── effect/ │ │ │ ├── BlinkEffect.cs │ │ │ ├── BoldEffect.cs │ │ │ ├── ColorEffect.cs │ │ │ ├── FlipEffect.cs │ │ │ ├── GlyphEffect.cs │ │ │ ├── ItalicEffect.cs │ │ │ ├── RainbowEffect.cs │ │ │ ├── RandomEffect.cs │ │ │ ├── ShakeEffect.cs │ │ │ └── WaveEffect.cs │ │ └── event/ │ │ ├── DelayEvent.cs │ │ ├── GlyphEvent.cs │ │ ├── SkipEvent.cs │ │ ├── SpeedEvent.cs │ │ └── UserEvent.cs │ └── util/ │ ├── AnimationUtil.cs │ ├── ArrayUtils.cs │ ├── BArray.cs │ ├── BiomeTitles.cs │ ├── Birthday.cs │ ├── BitHelper.cs │ ├── CollisionHelper.cs │ ├── Direction.cs │ ├── Directions.cs │ ├── FollowingDriver.cs │ ├── ImJson.cs │ ├── JsonCounter.cs │ ├── Line.cs │ ├── LoadScreenJokes.cs │ ├── LoadScreenTips.cs │ ├── Maze.cs │ ├── PathFinder.cs │ ├── Titles.cs │ ├── Vec2.cs │ └── geometry/ │ ├── Dot.cs │ └── Rect.cs ├── CompileNetFrameworkOnLinux.md ├── Desktop/ │ ├── Desktop.csproj │ ├── DesktopApp.cs │ ├── Program.cs │ ├── Properties/ │ │ └── AssemblyInfo.cs │ ├── README.md │ ├── integration/ │ │ ├── Integration.cs │ │ ├── crash/ │ │ │ └── CrashReporter.cs │ │ ├── discord/ │ │ │ ├── DiscordIntegration.cs │ │ │ └── DiscordRpc.cs │ │ ├── rgb/ │ │ │ └── RgbIntegration.cs │ │ ├── steam/ │ │ │ └── SteamIntegration.cs │ │ ├── twitch/ │ │ │ ├── HappeningOption.cs │ │ │ ├── TwitchContoller.cs │ │ │ └── TwitchIntegration.cs │ │ └── twitch_todo.md │ └── packages.config ├── LICENSE ├── Lens/ │ ├── Cloner.cs │ ├── Display.cs │ ├── Engine.cs │ ├── Lens.csproj │ ├── MonoGame.Framework.dll.config │ ├── Program.cs │ ├── Properties/ │ │ └── AssemblyInfo.cs │ ├── README.md │ ├── Version.cs │ ├── assets/ │ │ ├── Animations.cs │ │ ├── Assets.cs │ │ ├── Audio.cs │ │ ├── Effects.cs │ │ ├── Locale.cs │ │ └── Textures.cs │ ├── core/ │ │ ├── ConsoleCore.cs │ │ ├── Core.cs │ │ ├── DesktopCore.cs │ │ ├── PS4Core.cs │ │ ├── SwitchCore.cs │ │ └── XBoxCore.cs │ ├── entity/ │ │ ├── Area.cs │ │ ├── BitTag.cs │ │ ├── Entity.cs │ │ ├── EntityList.cs │ │ ├── Event.cs │ │ ├── EventListener.cs │ │ ├── Subscriber.cs │ │ ├── TagLists.cs │ │ └── component/ │ │ ├── Component.cs │ │ ├── SaveableComponent.cs │ │ ├── graphics/ │ │ │ ├── GraphicsComponent.cs │ │ │ └── ImageComponent.cs │ │ └── logic/ │ │ ├── EntityState.cs │ │ ├── InterestingComponent.cs │ │ ├── ShakeComponent.cs │ │ ├── StateChangedEvent.cs │ │ └── StateComponent.cs │ ├── game/ │ │ └── GameState.cs │ ├── graphics/ │ │ ├── ColorUtils.cs │ │ ├── Graphics.cs │ │ ├── TextureRegion.cs │ │ ├── animation/ │ │ │ ├── Animation.cs │ │ │ ├── AnimationData.cs │ │ │ ├── AnimationDirection.cs │ │ │ ├── AnimationFrame.cs │ │ │ ├── AnimationTag.cs │ │ │ ├── ColorSet.cs │ │ │ └── ColorSets.cs │ │ └── gamerenderer/ │ │ ├── DefaultGameRenderer.cs │ │ ├── GameRenderer.cs │ │ ├── NativeGameRenderer.cs │ │ └── PixelPerfectGameRenderer.cs │ ├── input/ │ │ ├── GamepadData.cs │ │ ├── Input.cs │ │ ├── InputButton.cs │ │ ├── InputComponent.cs │ │ ├── KeyboardData.cs │ │ ├── MouseButtons.cs │ │ └── MouseData.cs │ ├── lightJson/ │ │ ├── JsonArray.cs │ │ ├── JsonObject.cs │ │ ├── JsonValue.cs │ │ ├── JsonValueType.cs │ │ ├── README.md │ │ └── Serialization/ │ │ ├── JsonParseException.cs │ │ ├── JsonReader.cs │ │ ├── JsonSerializationException.cs │ │ ├── JsonWriter.cs │ │ ├── TextPosition.cs │ │ └── TextScanner.cs │ ├── packages.config │ └── util/ │ ├── FrameCounter.cs │ ├── Log.cs │ ├── MathUtils.cs │ ├── Noise.cs │ ├── NumberExtensions.cs │ ├── VectorExtension.cs │ ├── Web.cs │ ├── camera/ │ │ ├── Camera.cs │ │ ├── CameraDriver.cs │ │ └── CustomCameraJumper.cs │ ├── file/ │ │ ├── FileHandle.cs │ │ ├── FileReader.cs │ │ └── FileWriter.cs │ ├── math/ │ │ ├── Calc.cs │ │ └── Rnd.cs │ ├── pool/ │ │ ├── DisposablePool.cs │ │ └── Pool.cs │ ├── timer/ │ │ ├── Timer.cs │ │ └── TimerTask.cs │ └── tween/ │ ├── Ease.cs │ ├── Tween.cs │ ├── TweenTask.cs │ └── TweenValue.cs ├── Lens.sln ├── README.md ├── VelcroPhysics/ │ ├── BreakableBody.cs │ ├── Collision/ │ │ ├── AABBHelper.cs │ │ ├── Broadphase/ │ │ │ ├── DynamicTree.cs │ │ │ ├── DynamicTreeBroadPhase.cs │ │ │ ├── IBroadPhase.cs │ │ │ ├── Pair.cs │ │ │ └── TreeNode.cs │ │ ├── ContactSystem/ │ │ │ ├── Contact.cs │ │ │ ├── ContactEdge.cs │ │ │ ├── ContactFeature.cs │ │ │ ├── ContactFeatureType.cs │ │ │ ├── ContactFlags.cs │ │ │ ├── ContactID.cs │ │ │ ├── ContactManager.cs │ │ │ └── ContactType.cs │ │ ├── Distance/ │ │ │ ├── DistanceGJK.cs │ │ │ ├── DistanceInput.cs │ │ │ ├── DistanceOutput.cs │ │ │ └── DistanceProxy.cs │ │ ├── Filtering/ │ │ │ ├── Category.cs │ │ │ └── Filter.cs │ │ ├── Handlers/ │ │ │ ├── AfterCollisionHandler.cs │ │ │ ├── BeforeCollisionHandler.cs │ │ │ ├── BeginContactHandler.cs │ │ │ ├── BroadphaseHandler.cs │ │ │ ├── CollisionFilterHandler.cs │ │ │ ├── EndContactHandler.cs │ │ │ ├── OnCollisionHandler.cs │ │ │ └── OnSeparationHandler.cs │ │ ├── Narrowphase/ │ │ │ ├── ClipVertex.cs │ │ │ ├── CollideCircle.cs │ │ │ ├── CollideEdge.cs │ │ │ ├── CollidePolygon.cs │ │ │ ├── Collision.cs │ │ │ ├── EPAxis.cs │ │ │ ├── EPAxisType.cs │ │ │ ├── EPCollider.cs │ │ │ ├── Manifold.cs │ │ │ ├── ManifoldPoint.cs │ │ │ ├── ManifoldType.cs │ │ │ ├── PointState.cs │ │ │ ├── ReferenceFace.cs │ │ │ ├── Simplex.cs │ │ │ ├── SimplexCache.cs │ │ │ ├── SimplexVertex.cs │ │ │ └── WorldManifold.cs │ │ ├── RayCast/ │ │ │ ├── RayCastInput.cs │ │ │ └── RayCastOutput.cs │ │ ├── RayCastHelper.cs │ │ ├── Shapes/ │ │ │ ├── ChainShape.cs │ │ │ ├── CircleShape.cs │ │ │ ├── EdgeShape.cs │ │ │ ├── MassData.cs │ │ │ ├── PolygonShape.cs │ │ │ ├── Shape.cs │ │ │ └── ShapeType.cs │ │ ├── TOI/ │ │ │ ├── SeparationFunction.cs │ │ │ ├── SeparationFunctionType.cs │ │ │ ├── Sweep.cs │ │ │ ├── TOIInput.cs │ │ │ ├── TOIOutput.cs │ │ │ ├── TOIOutputState.cs │ │ │ └── TimeOfImpact.cs │ │ └── TestPointHelper.cs │ ├── Dynamics/ │ │ ├── Body.cs │ │ ├── BodyFlags.cs │ │ ├── BodyType.cs │ │ ├── Fixture.cs │ │ ├── FixtureProxy.cs │ │ ├── Handlers/ │ │ │ ├── BodyHandler.cs │ │ │ ├── ControllerHandler.cs │ │ │ ├── FixtureHandler.cs │ │ │ ├── JointHandler.cs │ │ │ ├── PostSolveHandler.cs │ │ │ └── PreSolveHandler.cs │ │ ├── Joints/ │ │ │ ├── AngleJoint.cs │ │ │ ├── DistanceJoint.cs │ │ │ ├── FixedMouseJoint.cs │ │ │ ├── FrictionJoint.cs │ │ │ ├── GearJoint.cs │ │ │ ├── Joint.cs │ │ │ ├── JointEdge.cs │ │ │ ├── JointType.cs │ │ │ ├── LimitState.cs │ │ │ ├── MotorJoint.cs │ │ │ ├── PrismaticJoint.cs │ │ │ ├── PulleyJoint.cs │ │ │ ├── RevoluteJoint.cs │ │ │ ├── RopeJoint.cs │ │ │ ├── WeldJoint.cs │ │ │ └── WheelJoint.cs │ │ ├── Solver/ │ │ │ ├── ContactPositionConstraint.cs │ │ │ ├── ContactSolver.cs │ │ │ ├── ContactVelocityConstraint.cs │ │ │ ├── Island.cs │ │ │ ├── Position.cs │ │ │ ├── PositionSolverManifold.cs │ │ │ ├── SolverData.cs │ │ │ ├── Velocity.cs │ │ │ └── VelocityConstraintPoint.cs │ │ ├── TimeStep.cs │ │ └── World.cs │ ├── Extensions/ │ │ ├── Controllers/ │ │ │ ├── Buoyancy/ │ │ │ │ └── BuoyancyController.cs │ │ │ ├── ControllerBase/ │ │ │ │ ├── Controller.cs │ │ │ │ ├── ControllerFilter.cs │ │ │ │ └── ControllerType.cs │ │ │ ├── Gravity/ │ │ │ │ ├── GravityController.cs │ │ │ │ └── GravityType.cs │ │ │ ├── Velocity/ │ │ │ │ └── VelocityLimitController.cs │ │ │ └── Wind/ │ │ │ ├── AbstractForceController.cs │ │ │ └── SimpleWindForce.cs │ │ ├── DebugView/ │ │ │ ├── DebugViewBase.cs │ │ │ └── DebugViewFlags.cs │ │ └── PhysicsLogics/ │ │ ├── Explosion/ │ │ │ ├── RayDataComparer.cs │ │ │ ├── RealExplosion.cs │ │ │ └── SimpleExplosion.cs │ │ └── PhysicsLogicBase/ │ │ ├── FilterData.cs │ │ ├── PhysicsLogic.cs │ │ ├── PhysicsLogicFilter.cs │ │ ├── PhysicsLogicType.cs │ │ └── ShapeData.cs │ ├── Factories/ │ │ ├── BodyFactory.cs │ │ ├── FixtureFactory.cs │ │ └── JointFactory.cs │ ├── Primitives/ │ │ ├── Curve.cs │ │ ├── CurveContinuity.cs │ │ ├── CurveKey.cs │ │ ├── CurveKeyCollection.cs │ │ ├── CurveLoopType.cs │ │ ├── CurveTangent.cs │ │ ├── MathHelper.cs │ │ ├── Matrix.cs │ │ ├── Vector2.cs │ │ └── Vector3.cs │ ├── Properties/ │ │ └── AssemblyInfo.cs │ ├── README.md │ ├── Settings.cs │ ├── Shared/ │ │ ├── AABB.cs │ │ ├── Benchmark.cs │ │ ├── BenchmarkRun.cs │ │ ├── Contracts/ │ │ │ ├── Contract.cs │ │ │ ├── EnsuresException.cs │ │ │ └── RequiredException.cs │ │ ├── Graph.cs │ │ ├── GraphNode.cs │ │ ├── Mat22.cs │ │ ├── Mat33.cs │ │ ├── Optimization/ │ │ │ ├── FixedArray2.cs │ │ │ ├── FixedArray3.cs │ │ │ └── IPoolable.cs │ │ ├── PolygonError.cs │ │ ├── Pool.cs │ │ ├── Rot.cs │ │ ├── Transform.cs │ │ └── Vertices.cs │ ├── Templates/ │ │ ├── BodyTemplate.cs │ │ ├── FixtureTemplate.cs │ │ ├── IDefaults.cs │ │ ├── Joints/ │ │ │ ├── DistanceJointTemplate.cs │ │ │ ├── FrictionJointTemplate.cs │ │ │ ├── GearJointTemplate.cs │ │ │ ├── JointTemplate.cs │ │ │ ├── MotorJointTemplate.cs │ │ │ ├── MouseJointTemplate.cs │ │ │ ├── PrismaticJointTemplate.cs │ │ │ ├── PulleyJointTemplate.cs │ │ │ ├── RevoluteJointTemplate.cs │ │ │ ├── RopeJointTemplate.cs │ │ │ ├── WeldJointTemplate.cs │ │ │ └── WheelJointTemplate.cs │ │ └── Shapes/ │ │ ├── ChainShapeTemplate.cs │ │ ├── CircleShapeTemplate.cs │ │ ├── EdgeShapeTemplate.cs │ │ ├── PolygonShapeTemplate.cs │ │ └── ShapeTemplate.cs │ ├── Tools/ │ │ ├── ConvexHull/ │ │ │ ├── ChainHull/ │ │ │ │ └── ChainHull.cs │ │ │ ├── GiftWrap/ │ │ │ │ └── GiftWrap.cs │ │ │ └── Melkman/ │ │ │ └── Melkman.cs │ │ ├── Cutting/ │ │ │ ├── Simple/ │ │ │ │ ├── CuttingTools.cs │ │ │ │ ├── PolyClipError.cs │ │ │ │ └── PolyClipType.cs │ │ │ └── YuPengClipper.cs │ │ ├── PathGenerator/ │ │ │ ├── LinkFactory.cs │ │ │ ├── Path.cs │ │ │ └── PathManager.cs │ │ ├── PolygonManipulation/ │ │ │ ├── SimpleCombiner.cs │ │ │ └── SimplifyTools.cs │ │ ├── TextureTools/ │ │ │ ├── MarchingSquares.cs │ │ │ ├── Terrain.cs │ │ │ ├── TextureConverter.cs │ │ │ └── VerticesDetectionType.cs │ │ └── Triangulation/ │ │ ├── Bayazit/ │ │ │ └── BayazitDecomposer.cs │ │ ├── Delaunay/ │ │ │ ├── CDTDecomposer.cs │ │ │ ├── Delaunay/ │ │ │ │ ├── DelaunayTriangle.cs │ │ │ │ └── Sweep/ │ │ │ │ ├── AdvancingFront.cs │ │ │ │ ├── AdvancingFrontNode.cs │ │ │ │ ├── DTSweep.cs │ │ │ │ ├── DTSweepConstraint.cs │ │ │ │ ├── DTSweepContext.cs │ │ │ │ ├── DTSweepPointComparator.cs │ │ │ │ └── PointOnEdgeException.cs │ │ │ ├── Orientation.cs │ │ │ ├── Polygon/ │ │ │ │ ├── Polygon.cs │ │ │ │ ├── PolygonPoint.cs │ │ │ │ └── PolygonSet.cs │ │ │ ├── Sets/ │ │ │ │ ├── ConstrainedPointSet.cs │ │ │ │ └── PointSet.cs │ │ │ ├── Triangulatable.cs │ │ │ ├── TriangulationConstraint.cs │ │ │ ├── TriangulationContext.cs │ │ │ ├── TriangulationMode.cs │ │ │ ├── TriangulationPoint.cs │ │ │ ├── TriangulationUtil.cs │ │ │ └── Util/ │ │ │ ├── PointGenerator.cs │ │ │ └── PolygonGenerator.cs │ │ ├── Earclip/ │ │ │ ├── EarclipDecomposer.cs │ │ │ └── Triangle.cs │ │ ├── FlipCode/ │ │ │ └── FlipcodeDecomposer.cs │ │ ├── Seidel/ │ │ │ ├── Edge.cs │ │ │ ├── MonotoneMountain.cs │ │ │ ├── Node.cs │ │ │ ├── Point.cs │ │ │ ├── QueryGraph.cs │ │ │ ├── SeidelDecomposer.cs │ │ │ ├── Sink.cs │ │ │ ├── Trapezoid.cs │ │ │ ├── TrapezoidalMap.cs │ │ │ ├── Triangulator.cs │ │ │ ├── XNode.cs │ │ │ └── YNode.cs │ │ └── TriangulationBase/ │ │ ├── Triangulate.cs │ │ └── TriangulationAlgorithm.cs │ ├── Utilities/ │ │ ├── ConvertUnits.cs │ │ ├── LineUtils.cs │ │ ├── MathUtils.cs │ │ └── PolygonUtils.cs │ ├── VelcroPhysics.MonoGame.csproj │ ├── VelcroPhysics.csproj │ └── packages.config └── changes.md