├── .gitignore
├── .idea
├── .gitignore
├── .name
├── artifacts
│ ├── NuBuildGDXLinuxARM64_jar.xml
│ └── NuBuildGDX_jar.xml
├── libraries
│ ├── annotations_24_0_1.xml
│ ├── gdx_1_9_14.xml
│ ├── gdx_backend_lwjgl3_1_9_14.xml
│ ├── gdx_platform_1_9_14_natives_desktop.xml
│ ├── jinput_2_0_10_natives_all.xml
│ ├── jinput_2_0_9.xml
│ ├── jna_5_15_0.xml
│ ├── jna_platform_5_15_0.xml
│ ├── lwjgl_3_3_4.xml
│ ├── lwjgl_3_3_4_natives_freebsd.xml
│ ├── lwjgl_3_3_4_natives_linux.xml
│ ├── lwjgl_3_3_4_natives_linux_arm64.xml
│ ├── lwjgl_3_3_4_natives_macos.xml
│ ├── lwjgl_3_3_4_natives_macos_arm64.xml
│ ├── lwjgl_3_3_4_natives_windows.xml
│ ├── lwjgl_3_3_4_natives_windows_arm64.xml
│ ├── lwjgl_glfw_3_3_4.xml
│ ├── lwjgl_glfw_3_3_4_natives_freebsd.xml
│ ├── lwjgl_glfw_3_3_4_natives_linux.xml
│ ├── lwjgl_glfw_3_3_4_natives_linux_arm64.xml
│ ├── lwjgl_glfw_3_3_4_natives_macos.xml
│ ├── lwjgl_glfw_3_3_4_natives_macos_arm64.xml
│ ├── lwjgl_glfw_3_3_4_natives_windows.xml
│ └── lwjgl_glfw_3_3_4_natives_windows_arm64.xml
├── misc.xml
├── modules.xml
└── vcs.xml
├── Games
├── Blood
│ ├── blood128.png
│ ├── blood16.png
│ └── blood32.png
├── Duke3D
│ ├── duke128.png
│ ├── duke16.png
│ └── duke32.png
├── Lot7P
│ ├── lot7p128.png
│ ├── lot7p16.png
│ └── lot7p32.png
├── Nam
│ ├── nam128.png
│ ├── nam16.png
│ └── nam32.png
├── PS
│ ├── ps128.png
│ ├── ps16.png
│ └── ps32.png
├── RR
│ ├── rr128.png
│ ├── rr16.png
│ └── rr32.png
├── RRRA
│ ├── rr128.png
│ ├── rr16.png
│ └── rr32.png
├── SW
│ ├── sw128.png
│ ├── sw16.png
│ └── sw32.png
├── Tekwar
│ ├── tekwar128.png
│ ├── tekwar16.png
│ └── tekwar32.png
├── WH
│ ├── wh128.png
│ ├── wh16.png
│ └── wh32.png
├── WH2
│ ├── whii128.png
│ ├── whii16.png
│ └── whii32.png
├── build128.png
├── build16.png
├── build32.png
├── iconopen.png
├── iconsettings.png
├── logodiscord.png
├── logoduke4.png
├── logom210.png
└── logopaypal.png
├── Headers
├── headerblood.png
├── headerbuild.png
├── headerduke.png
├── headerlot7p.png
├── headernam.png
├── headernapalm.png
├── headerps.png
├── headerra.png
├── headerrr.png
├── headersw.png
├── headertw.png
├── headerwh.png
├── headerwh2.png
└── headerwwii.png
├── LICENSE
├── META-INF
├── MANIFEST.MF
└── MANIFEST.manifest
├── NuBuildGDX.iml
├── README.md
├── bloodgdx.dat
├── buildlic.txt
├── dukegdx.dat
├── gpl3.txt
├── libs
├── annotations-24.0.1.jar
├── arm64linux
│ ├── libgdxarm64.so
│ ├── libglfw.so
│ └── liblwjgl.so
├── gdx-1.9.14.jar
├── gdx-backend-lwjgl3-1.9.14.jar
├── gdx-platform-1.9.14-natives-desktop.jar
├── jinput-2.0.10-natives-all.jar
├── jinput-2.0.9.jar
├── jna-5.15.0.jar
├── jna-platform-5.15.0.jar
├── libopenal64.so
├── libopenalarm64.so
├── lwjgl-3.3.4-natives-freebsd.jar
├── lwjgl-3.3.4-natives-linux-arm32.jar
├── lwjgl-3.3.4-natives-linux-arm64.jar
├── lwjgl-3.3.4-natives-linux.jar
├── lwjgl-3.3.4-natives-macos-arm64.jar
├── lwjgl-3.3.4-natives-macos.jar
├── lwjgl-3.3.4-natives-windows-arm64.jar
├── lwjgl-3.3.4-natives-windows.jar
├── lwjgl-3.3.4.jar
├── lwjgl-glfw-3.3.4-natives-freebsd.jar
├── lwjgl-glfw-3.3.4-natives-linux-arm32.jar
├── lwjgl-glfw-3.3.4-natives-linux-arm64.jar
├── lwjgl-glfw-3.3.4-natives-linux.jar
├── lwjgl-glfw-3.3.4-natives-macos-arm64.jar
├── lwjgl-glfw-3.3.4-natives-macos.jar
├── lwjgl-glfw-3.3.4-natives-windows-arm64.jar
├── lwjgl-glfw-3.3.4-natives-windows.jar
├── lwjgl-glfw-3.3.4.jar
└── soft_oal.dll
├── lspgdx.dat
├── nuclear.ico
├── psgdx.dat
├── rrgdx.dat
├── src
├── META-INF
│ └── MANIFEST.MF
├── com
│ └── jcraft
│ │ ├── jogg
│ │ ├── Buffer.java
│ │ ├── Packet.java
│ │ ├── Page.java
│ │ ├── StreamState.java
│ │ └── SyncState.java
│ │ └── jorbis
│ │ ├── Block.java
│ │ ├── CodeBook.java
│ │ ├── Comment.java
│ │ ├── Drft.java
│ │ ├── DspState.java
│ │ ├── Floor0.java
│ │ ├── Floor1.java
│ │ ├── FuncFloor.java
│ │ ├── FuncMapping.java
│ │ ├── FuncResidue.java
│ │ ├── FuncTime.java
│ │ ├── Info.java
│ │ ├── InfoMode.java
│ │ ├── JOrbisException.java
│ │ ├── Lookup.java
│ │ ├── Lpc.java
│ │ ├── Lsp.java
│ │ ├── Mapping0.java
│ │ ├── Mdct.java
│ │ ├── PsyInfo.java
│ │ ├── PsyLook.java
│ │ ├── Residue0.java
│ │ ├── Residue1.java
│ │ ├── Residue2.java
│ │ ├── StaticCodeBook.java
│ │ ├── Time0.java
│ │ ├── Util.java
│ │ └── VorbisFile.java
├── net
│ └── miginfocom
│ │ ├── layout
│ │ ├── AC.java
│ │ ├── BoundSize.java
│ │ ├── CC.java
│ │ ├── ComponentWrapper.java
│ │ ├── ConstraintParser.java
│ │ ├── ContainerWrapper.java
│ │ ├── DimConstraint.java
│ │ ├── Grid.java
│ │ ├── IDEUtil.java
│ │ ├── InCellGapProvider.java
│ │ ├── LC.java
│ │ ├── LayoutCallback.java
│ │ ├── LayoutUtil.java
│ │ ├── LinkHandler.java
│ │ ├── PlatformDefaults.java
│ │ ├── ResizeConstraint.java
│ │ ├── UnitConverter.java
│ │ └── UnitValue.java
│ │ └── swing
│ │ ├── MigLayout.java
│ │ ├── SwingComponentWrapper.java
│ │ └── SwingContainerWrapper.java
└── ru
│ └── m210projects
│ ├── Blood
│ ├── AI
│ │ ├── AIBAT.java
│ │ ├── AIBEAST.java
│ │ ├── AIBONEEL.java
│ │ ├── AIBURN.java
│ │ ├── AICALEB.java
│ │ ├── AICERBERUS.java
│ │ ├── AICULTIST.java
│ │ ├── AIGARG.java
│ │ ├── AIGHOST.java
│ │ ├── AIGILLBEAST.java
│ │ ├── AIHAND.java
│ │ ├── AIHOUND.java
│ │ ├── AIINNOCENT.java
│ │ ├── AIPOD.java
│ │ ├── AIRAT.java
│ │ ├── AISPID.java
│ │ ├── AISTATE.java
│ │ ├── AISTATEFUNC.java
│ │ ├── AITCHERNOBOG.java
│ │ ├── AIUNICULT.java
│ │ ├── AIZOMBA.java
│ │ ├── AIZOMBF.java
│ │ ├── Ai.java
│ │ ├── AxeZombie.java
│ │ └── GeneticDude.java
│ ├── Actor.java
│ ├── Cheats.java
│ ├── Config.java
│ ├── DB.java
│ ├── EVENT.java
│ ├── Factory
│ │ ├── BLSliderDrawable.java
│ │ ├── BloodEngine.java
│ │ ├── BloodFactory.java
│ │ ├── BloodInput.java
│ │ ├── BloodMapSettings.java
│ │ ├── BloodMenuHandler.java
│ │ ├── BloodNetwork.java
│ │ ├── BloodOSDFunc.java
│ │ ├── BloodSoftware.java
│ │ └── BloodTextureManager.java
│ ├── Fire.java
│ ├── Fonts
│ │ ├── BloodFont.java
│ │ ├── QFNFont.java
│ │ └── QFont.java
│ ├── Gameutils.java
│ ├── Gib.java
│ ├── Globals.java
│ ├── LEVELS.java
│ ├── LOADSAVE.java
│ ├── Main.java
│ ├── Menus
│ │ ├── BLMenuAudio.java
│ │ ├── BLMenuCreate.java
│ │ ├── BLMenuJoin.java
│ │ ├── BLMenuJoystick.java
│ │ ├── BLMenuLoad.java
│ │ ├── BLMenuMenuKeyboard.java
│ │ ├── BLMenuMouse.java
│ │ ├── BLMenuMultiplayer.java
│ │ ├── BLMenuSave.java
│ │ ├── BLMenuVideoMode.java
│ │ ├── BLUserContent.java
│ │ ├── EpisodeButton.java
│ │ ├── MainMenu.java
│ │ ├── MenuControls.java
│ │ ├── MenuCorruptGame.java
│ │ ├── MenuCredits.java
│ │ ├── MenuCustom.java
│ │ ├── MenuDifficulty.java
│ │ ├── MenuGame.java
│ │ ├── MenuGameSet.java
│ │ ├── MenuHelp.java
│ │ ├── MenuInterfaceSet.java
│ │ ├── MenuKeyboardSet.java
│ │ ├── MenuNetwork.java
│ │ ├── MenuNewAddon.java
│ │ ├── MenuNewGame.java
│ │ ├── MenuOptions.java
│ │ ├── MenuQTitle.java
│ │ ├── MenuQav.java
│ │ └── MenuQuit.java
│ ├── Mirror.java
│ ├── PLAYER.java
│ ├── PROFILE.java
│ ├── PriorityQueue
│ │ ├── BPriorityQueue.java
│ │ ├── IPriorityQueue.java
│ │ ├── JPriorityQueue.java
│ │ └── PriorityItem.java
│ ├── QAV.java
│ ├── RFScript.java
│ ├── SECTORFX.java
│ ├── SOUND.java
│ ├── Screen.java
│ ├── Screens
│ │ ├── CutsceneScreen.java
│ │ ├── DemoScreen.java
│ │ ├── DisconnectScreen.java
│ │ ├── GameScreen.java
│ │ ├── LoadingScreen.java
│ │ ├── LogoScreen.java
│ │ ├── MenuScreen.java
│ │ ├── NetScreen.java
│ │ ├── PrecacheScreen.java
│ │ └── StatisticScreen.java
│ ├── Strings.java
│ ├── Tile.java
│ ├── Trig.java
│ ├── Trigger.java
│ ├── Types
│ │ ├── AMBIENT.java
│ │ ├── AMMOINFO.java
│ │ ├── AMMOITEMDATA.java
│ │ ├── ARMORITEMDATA.java
│ │ ├── BURN.java
│ │ ├── BUSY.java
│ │ ├── BUSYPROC.java
│ │ ├── BitHandler.java
│ │ ├── BloodDef.java
│ │ ├── BloodIniFile.java
│ │ ├── BloodTile.java
│ │ ├── CALLPROC.java
│ │ ├── CHARINFO.java
│ │ ├── DAMAGEINFO.java
│ │ ├── DEMO.java
│ │ ├── DudeInfo.java
│ │ ├── EFFECT.java
│ │ ├── EXPLODE.java
│ │ ├── EpisodeInfo.java
│ │ ├── FragInfo.java
│ │ ├── GAMEINFO.java
│ │ ├── GENDUDESND.java
│ │ ├── HANDANIM.java
│ │ ├── Hud
│ │ │ ├── AltHud.java
│ │ │ ├── FullHud.java
│ │ │ ├── HudRenderer.java
│ │ │ ├── HudScaledRenderer.java
│ │ │ ├── MiniHud.java
│ │ │ └── SplitHud.java
│ │ ├── INPUT.java
│ │ ├── INVITEM.java
│ │ ├── ITEMDATA.java
│ │ ├── LOADITEM.java
│ │ ├── LSInfo.java
│ │ ├── MapInfo.java
│ │ ├── MissileType.java
│ │ ├── NETINFO.java
│ │ ├── PLOCATION.java
│ │ ├── POSTPONE.java
│ │ ├── POSTURE.java
│ │ ├── POWERUPINFO.java
│ │ ├── QAVCALLBACKFUNC.java
│ │ ├── QUOTE.java
│ │ ├── SAMPLE2D.java
│ │ ├── SFX.java
│ │ ├── SOUNDEFFECT.java
│ │ ├── SPRITEHIT.java
│ │ ├── SPRITEMASS.java
│ │ ├── SURFACE.java
│ │ ├── SafeLoader.java
│ │ ├── ScreenEffect.java
│ │ ├── Seq
│ │ │ ├── ActiveList.java
│ │ │ ├── CeilingInst.java
│ │ │ ├── FloorInst.java
│ │ │ ├── MaskedWallInst.java
│ │ │ ├── SeqFrame.java
│ │ │ ├── SeqHandling.java
│ │ │ ├── SeqInst.java
│ │ │ ├── SeqType.java
│ │ │ ├── SpriteInst.java
│ │ │ └── WallInst.java
│ │ ├── THINGINFO.java
│ │ ├── TeslaData.java
│ │ ├── VECTORDATA.java
│ │ ├── WEAPONDATA.java
│ │ ├── WEAPONITEMDATA.java
│ │ ├── WeaponAim.java
│ │ ├── XSECTOR.java
│ │ ├── XSPRITE.java
│ │ ├── XWALL.java
│ │ └── ZONE.java
│ ├── VERSION.java
│ ├── View.java
│ ├── Warp.java
│ ├── Weapon.java
│ └── desktop
│ │ └── DesktopLauncher.java
│ ├── Build
│ ├── Architecture
│ │ ├── ApplicationFactory.java
│ │ ├── BuildApplication.java
│ │ ├── BuildConfiguration.java
│ │ ├── BuildController.java
│ │ ├── BuildFrame.java
│ │ ├── BuildGdx.java
│ │ ├── BuildGraphics.java
│ │ ├── BuildInput.java
│ │ └── BuildMessage.java
│ ├── Audio
│ │ ├── BuildAudio.java
│ │ ├── DummyMusic.java
│ │ ├── DummySound.java
│ │ ├── HMIMIDIP.java
│ │ ├── LoopInfo.java
│ │ ├── Music.java
│ │ ├── MusicSource.java
│ │ ├── Sound.java
│ │ ├── SoundData.java
│ │ ├── Source.java
│ │ └── SourceCallback.java
│ ├── Board.java
│ ├── CRC32.java
│ ├── Engine.java
│ ├── FileHandle
│ │ ├── BufferResource.java
│ │ ├── Cache1D.java
│ │ ├── Compat.java
│ │ ├── DataResource.java
│ │ ├── DirectoryEntry.java
│ │ ├── FEntryResource.java
│ │ ├── FileEntry.java
│ │ ├── FileResource.java
│ │ ├── FileUtils.java
│ │ ├── Group.java
│ │ ├── GroupResource.java
│ │ ├── GrpGroup.java
│ │ ├── LZWDecoder.java
│ │ ├── PackedZipGroup.java
│ │ ├── Resource.java
│ │ ├── RffGroup.java
│ │ ├── UserGroup.java
│ │ └── ZipGroup.java
│ ├── Gameutils.java
│ ├── Input
│ │ ├── BuildControllers.java
│ │ ├── ButtonMap.java
│ │ ├── InputCallback.java
│ │ ├── KeyInput.java
│ │ ├── Keymap.java
│ │ └── TestController.java
│ ├── Loader
│ │ └── WAVLoader.java
│ ├── Net
│ │ ├── ISocket.java
│ │ ├── Mmulti.java
│ │ ├── NetInfo.java
│ │ ├── UDPServer.java
│ │ ├── UDPSocket.java
│ │ └── WaifUPnp
│ │ │ ├── Gateway.java
│ │ │ ├── GatewayFinder.java
│ │ │ └── UPnP.java
│ ├── OnSceenDisplay
│ │ ├── Console.java
│ │ ├── DEFOSDFUNC.java
│ │ ├── OSDCOMMAND.java
│ │ ├── OSDCVARFUNC.java
│ │ └── OSDFunc.java
│ ├── Pattern
│ │ ├── BuildControls.java
│ │ ├── BuildEngine.java
│ │ ├── BuildFactory.java
│ │ ├── BuildFont.java
│ │ ├── BuildGame.java
│ │ ├── BuildNet.java
│ │ ├── CommonMenus
│ │ │ ├── MenuAudio.java
│ │ │ ├── MenuControls.java
│ │ │ ├── MenuCreate.java
│ │ │ ├── MenuJoin.java
│ │ │ ├── MenuJoystick.java
│ │ │ ├── MenuKeyboard.java
│ │ │ ├── MenuLoadSave.java
│ │ │ ├── MenuMouse.java
│ │ │ ├── MenuMultiplayer.java
│ │ │ ├── MenuRendererSettings.java
│ │ │ └── MenuVideoMode.java
│ │ ├── Date.java
│ │ ├── FontHandler.java
│ │ ├── MenuItems
│ │ │ ├── BuildMenu.java
│ │ │ ├── BuildMenuList.java
│ │ │ ├── DummyItem.java
│ │ │ ├── MenuButton.java
│ │ │ ├── MenuConteiner.java
│ │ │ ├── MenuFileBrowser.java
│ │ │ ├── MenuHandler.java
│ │ │ ├── MenuItem.java
│ │ │ ├── MenuJoyList.java
│ │ │ ├── MenuKeyboardList.java
│ │ │ ├── MenuList.java
│ │ │ ├── MenuPicnum.java
│ │ │ ├── MenuProc.java
│ │ │ ├── MenuResolutionList.java
│ │ │ ├── MenuScroller.java
│ │ │ ├── MenuSlider.java
│ │ │ ├── MenuSlotList.java
│ │ │ ├── MenuSwitch.java
│ │ │ ├── MenuText.java
│ │ │ ├── MenuTextField.java
│ │ │ ├── MenuTitle.java
│ │ │ ├── MenuVariants.java
│ │ │ └── SliderDrawable.java
│ │ ├── ScreenAdapters
│ │ │ ├── ConnectAdapter.java
│ │ │ ├── GameAdapter.java
│ │ │ ├── InitScreen.java
│ │ │ ├── LoadingAdapter.java
│ │ │ ├── LogoScreen.java
│ │ │ ├── MenuAdapter.java
│ │ │ ├── MovieScreen.java
│ │ │ ├── PrecacheAdapter.java
│ │ │ └── SkippableAdapter.java
│ │ └── Tools
│ │ │ ├── IniFile.java
│ │ │ ├── Interpolation.java
│ │ │ ├── NaturalComparator.java
│ │ │ └── SaveManager.java
│ ├── Pragmas.java
│ ├── Render
│ │ ├── DefaultMapSettings.java
│ │ ├── GLFog.java
│ │ ├── GLRenderer.java
│ │ ├── IOverheadMapSettings.java
│ │ ├── ModelHandle
│ │ │ ├── GLModel.java
│ │ │ ├── MDInfo.java
│ │ │ ├── MDModel
│ │ │ │ ├── MD2
│ │ │ │ │ ├── MD2Builder.java
│ │ │ │ │ ├── MD2Frame.java
│ │ │ │ │ ├── MD2Header.java
│ │ │ │ │ ├── MD2Info.java
│ │ │ │ │ ├── MD2ModelGL10.java
│ │ │ │ │ ├── MD2ModelGL20.java
│ │ │ │ │ └── MD2Triangle.java
│ │ │ │ ├── MD3
│ │ │ │ │ ├── MD3Builder.java
│ │ │ │ │ ├── MD3Frame.java
│ │ │ │ │ ├── MD3Header.java
│ │ │ │ │ ├── MD3Info.java
│ │ │ │ │ ├── MD3ModelGL10.java
│ │ │ │ │ ├── MD3ModelGL20.java
│ │ │ │ │ ├── MD3Shader.java
│ │ │ │ │ ├── MD3Surface.java
│ │ │ │ │ └── MD3Vertice.java
│ │ │ │ ├── MDAnimation.java
│ │ │ │ ├── MDModel.java
│ │ │ │ └── MDSkinmap.java
│ │ │ ├── ModelInfo.java
│ │ │ ├── Voxel
│ │ │ │ ├── GLVoxel.java
│ │ │ │ ├── VoxelBuilder.java
│ │ │ │ ├── VoxelData.java
│ │ │ │ ├── VoxelGL10.java
│ │ │ │ ├── VoxelGL20.java
│ │ │ │ └── VoxelSkin.java
│ │ │ └── VoxelInfo.java
│ │ ├── OrphoRenderer.java
│ │ ├── ParameterManager.java
│ │ ├── Renderer.java
│ │ ├── Software
│ │ │ ├── A.java
│ │ │ ├── Ac.java
│ │ │ ├── JniA.java
│ │ │ ├── PermFifo.java
│ │ │ ├── Software.java
│ │ │ └── SoftwareOrpho.java
│ │ ├── TextureHandle
│ │ │ ├── DummyTileData.java
│ │ │ ├── GLTile.java
│ │ │ ├── GLTileArray.java
│ │ │ ├── Hicreplctyp.java
│ │ │ ├── IndexedShader.java
│ │ │ ├── IndexedTileData.java
│ │ │ ├── PixmapTileData.java
│ │ │ ├── RGBTileData.java
│ │ │ ├── TextureManager.java
│ │ │ ├── TileAtlas.java
│ │ │ └── TileData.java
│ │ ├── Types
│ │ │ ├── FadeEffect.java
│ │ │ ├── GL10.java
│ │ │ ├── GLFilter.java
│ │ │ ├── Hudtyp.java
│ │ │ ├── Palette.java
│ │ │ ├── Spriteext.java
│ │ │ └── Tile2model.java
│ │ └── VideoMode.java
│ ├── Script
│ │ ├── AudioInfo.java
│ │ ├── CueScript.java
│ │ ├── DefScript.java
│ │ ├── MapHackInfo.java
│ │ ├── Maphack.java
│ │ ├── ModelsInfo.java
│ │ ├── Scriptfile.java
│ │ └── TextureHDInfo.java
│ ├── Settings
│ │ ├── BuildConfig.java
│ │ ├── BuildSettings.java
│ │ └── GLSettings.java
│ ├── Strhandler.java
│ ├── StringUtils.java
│ ├── Types
│ │ ├── BuildPos.java
│ │ ├── BuildVariable.java
│ │ ├── Hitscan.java
│ │ ├── InvalidVersionException.java
│ │ ├── LinkedList.java
│ │ ├── LittleEndian.java
│ │ ├── MD4.java
│ │ ├── MemLog.java
│ │ ├── Neartag.java
│ │ ├── Palette.java
│ │ ├── PropertyIgnoreCase.java
│ │ ├── QuickSort.java
│ │ ├── RuntimeArray.java
│ │ ├── SECTOR.java
│ │ ├── SPRITE.java
│ │ ├── SmallTextFont.java
│ │ ├── TextFont.java
│ │ ├── ThreadProcessor.java
│ │ ├── Tile.java
│ │ ├── TileFont.java
│ │ ├── Timer.java
│ │ └── WALL.java
│ └── desktop
│ │ ├── AWT
│ │ ├── AWTGraphics.java
│ │ ├── AWTInput.java
│ │ ├── AWTMouse.java
│ │ ├── JCanvas.java
│ │ ├── JDisplay.java
│ │ ├── MouseInterface.java
│ │ └── Sync.java
│ │ ├── Controllers
│ │ ├── JController.java
│ │ └── JControllers.java
│ │ ├── DesktopFactory.java
│ │ ├── DesktopMessage.java
│ │ └── audio
│ │ ├── ALAudio.java
│ │ ├── ALMusicDrv.java
│ │ ├── ALMusicSource.java
│ │ ├── ALSoundDrv.java
│ │ ├── ALSource.java
│ │ ├── GdxAL.java
│ │ ├── midi
│ │ ├── MidiMusicModule.java
│ │ ├── MidiMusicSource.java
│ │ ├── MidiReceiver.java
│ │ └── MidiSequencer.java
│ │ └── nopenal
│ │ ├── AL.java
│ │ ├── AL10.java
│ │ ├── AL11.java
│ │ ├── ALC10.java
│ │ ├── ALC11.java
│ │ ├── ALCcontext.java
│ │ ├── ALCdevice.java
│ │ ├── EXTAlaw.java
│ │ ├── EXTBFormat.java
│ │ ├── EXTCapture.java
│ │ ├── EXTDedicated.java
│ │ ├── EXTDefaultFilterOrder.java
│ │ ├── EXTDisconnect.java
│ │ ├── EXTDouble.java
│ │ ├── EXTEfx.java
│ │ ├── EXTExponentDistance.java
│ │ ├── EXTFloat32.java
│ │ ├── EXTIma4.java
│ │ ├── EXTLinearDistance.java
│ │ ├── EXTMCFormats.java
│ │ ├── EXTMulaw.java
│ │ ├── EXTMulawBFormat.java
│ │ ├── EXTMulawMCFormats.java
│ │ ├── EXTOffset.java
│ │ ├── EXTSourceDistanceModel.java
│ │ ├── EXTSourceRadius.java
│ │ ├── EXTStaticBuffer.java
│ │ ├── EXTStereoAngles.java
│ │ ├── EXTThreadLocalContext.java
│ │ ├── EXTVorbis.java
│ │ ├── EnumerateAllExt.java
│ │ ├── LOKIAudioChannel.java
│ │ ├── LOKIIMAADPCM.java
│ │ ├── LOKIQuadriphonic.java
│ │ ├── LOKIWAVEFormat.java
│ │ ├── SOFTBlockAlignment.java
│ │ ├── SOFTDeferredUpdates.java
│ │ ├── SOFTDirectChannels.java
│ │ ├── SOFTGainClampEx.java
│ │ ├── SOFTHRTF.java
│ │ ├── SOFTLoopPoints.java
│ │ ├── SOFTLoopback.java
│ │ ├── SOFTMSADPCM.java
│ │ ├── SOFTOutputLimiter.java
│ │ ├── SOFTPauseDevice.java
│ │ ├── SOFTSourceLatency.java
│ │ ├── SOFTSourceLength.java
│ │ ├── SOFTSourceResampler.java
│ │ ├── SOFTSourceSpatialize.java
│ │ └── SharedLibraryAL.java
│ ├── BuildSmacker
│ ├── BitBuffer.java
│ ├── Frame.java
│ ├── Header.java
│ ├── HuffmanTree.java
│ ├── SMKAudio.java
│ └── SMKFile.java
│ ├── Duke3D
│ ├── Actors.java
│ ├── Animate.java
│ ├── Cheats.java
│ ├── Config.java
│ ├── Factory
│ │ ├── DukeEngine.java
│ │ ├── DukeFactory.java
│ │ ├── DukeInput.java
│ │ ├── DukeMapSettings.java
│ │ ├── DukeMenuHandler.java
│ │ ├── DukeNetwork.java
│ │ ├── DukeOSDFunc.java
│ │ ├── DukeSliderDrawable.java
│ │ └── DukeSoftware.java
│ ├── Fonts
│ │ ├── GameFont.java
│ │ ├── MenuFont.java
│ │ ├── MiniFont.java
│ │ └── StandartFont.java
│ ├── Gamedef.java
│ ├── Gameutils.java
│ ├── Globals.java
│ ├── Input.java
│ ├── LoadSave.java
│ ├── Main.java
│ ├── Menus
│ │ ├── CreditsMenu.java
│ │ ├── DMenuCreate.java
│ │ ├── DMenuJoin.java
│ │ ├── DMenuJoystick.java
│ │ ├── DMenuLoad.java
│ │ ├── DMenuMenuKeyboard.java
│ │ ├── DMenuMouse.java
│ │ ├── DMenuMultiplayer.java
│ │ ├── DMenuSave.java
│ │ ├── DMenuVideoMode.java
│ │ ├── DUserContent.java
│ │ ├── DifficultyMenu.java
│ │ ├── DukeTitle.java
│ │ ├── EpisodeButton.java
│ │ ├── GameMenu.java
│ │ ├── HelpMenu.java
│ │ ├── InterfaceMenu.java
│ │ ├── MainMenu.java
│ │ ├── MenuControls.java
│ │ ├── MenuCorruptGame.java
│ │ ├── MenuGameSetup.java
│ │ ├── MenuPage.java
│ │ ├── NetworkMenu.java
│ │ ├── NewAddonMenu.java
│ │ ├── NewGameMenu.java
│ │ ├── OptionsMenu.java
│ │ ├── QTitleMenu.java
│ │ ├── QuitMenu.java
│ │ └── SoundMenu.java
│ ├── Names.java
│ ├── Player.java
│ ├── Premap.java
│ ├── ResourceHandler.java
│ ├── Screen.java
│ ├── Screens
│ │ ├── AnmScreen.java
│ │ ├── DemoScreen.java
│ │ ├── DisconnectScreen.java
│ │ ├── EndScreen.java
│ │ ├── GameScreen.java
│ │ ├── LoadingScreen.java
│ │ ├── LogoAScreen.java
│ │ ├── LogoBScreen.java
│ │ ├── MenuScreen.java
│ │ ├── NetScreen.java
│ │ ├── PrecacheScreen.java
│ │ └── StatisticScreen.java
│ ├── Sector.java
│ ├── SoundDefs.java
│ ├── Sounds.java
│ ├── Spawn.java
│ ├── Types
│ │ ├── ANIMATION.java
│ │ ├── AnimFile.java
│ │ ├── Animwalltype.java
│ │ ├── DemoFile.java
│ │ ├── DevCommScript.java
│ │ ├── EpisodeInfo.java
│ │ ├── GameInfo.java
│ │ ├── LSInfo.java
│ │ ├── LumpInfo.java
│ │ ├── MapInfo.java
│ │ ├── NetInfo.java
│ │ ├── PLocation.java
│ │ ├── PlayerOrig.java
│ │ ├── PlayerStruct.java
│ │ ├── RTS.java
│ │ ├── SafeLoader.java
│ │ ├── Sample.java
│ │ ├── Script.java
│ │ ├── SoundOwner.java
│ │ ├── UserDefs.java
│ │ ├── VOC.java
│ │ └── Weaponhit.java
│ ├── View.java
│ ├── Weapons.java
│ └── desktop
│ │ └── DesktopLauncher.java
│ ├── LSP
│ ├── Animate.java
│ ├── Config.java
│ ├── Enemies.java
│ ├── Factory
│ │ ├── LSPEngine.java
│ │ ├── LSPFactory.java
│ │ ├── LSPInput.java
│ │ ├── LSPMapSettings.java
│ │ ├── LSPMenuHandler.java
│ │ ├── LSPNetwork.java
│ │ ├── LSPOSDFunc.java
│ │ ├── LSPSliderDrawable.java
│ │ └── LSPSoftware.java
│ ├── Fonts
│ │ ├── FontA.java
│ │ ├── MenuFont.java
│ │ └── StandartFont.java
│ ├── GdxResources.java
│ ├── Globals.java
│ ├── LoadSave.java
│ ├── Main.java
│ ├── Menus
│ │ ├── AdvertisingMenu.java
│ │ ├── GameMenu.java
│ │ ├── ItemPCX.java
│ │ ├── LSPMenuAudio.java
│ │ ├── LSPMenuJoystick.java
│ │ ├── LSPMenuLoad.java
│ │ ├── LSPMenuMenuKeyboard.java
│ │ ├── LSPMenuMouse.java
│ │ ├── LSPMenuQTitle.java
│ │ ├── LSPMenuSave.java
│ │ ├── LSPMenuUserContent.java
│ │ ├── LSPMenuVideoMode.java
│ │ ├── MainMenu.java
│ │ ├── MenuControls.java
│ │ ├── MenuCorruptGame.java
│ │ ├── MenuGameSet.java
│ │ ├── MenuInterfaceSet.java
│ │ ├── MenuKeyboardSet.java
│ │ ├── MenuLastLoad.java
│ │ ├── MenuOptions.java
│ │ └── MenuQuit.java
│ ├── Player.java
│ ├── Quotes.java
│ ├── Screens
│ │ ├── DemoScreen.java
│ │ ├── GameScreen.java
│ │ ├── IntroScreen.java
│ │ ├── LoadingScreen.java
│ │ ├── MenuScreen.java
│ │ ├── MovieScreen.java
│ │ ├── PrecacheScreen.java
│ │ └── StatisticScreen.java
│ ├── Sectors.java
│ ├── Sounds.java
│ ├── Sprites.java
│ ├── Types
│ │ ├── ANIMATION.java
│ │ ├── DemoFile.java
│ │ ├── Input.java
│ │ ├── LSInfo.java
│ │ ├── LSPGroup.java
│ │ ├── MovieFile.java
│ │ ├── PCXFile.java
│ │ ├── PlayerStruct.java
│ │ ├── SECTORV4.java
│ │ ├── SafeLoader.java
│ │ ├── SwingDoor.java
│ │ ├── VOC.java
│ │ └── WALLV4.java
│ ├── View.java
│ ├── Weapons.java
│ └── desktop
│ │ └── DesktopLauncher.java
│ ├── Launcher
│ └── desktop
│ │ ├── BoundsPopupMenuListener.java
│ │ ├── CheckFiles.java
│ │ ├── ComboItem.java
│ │ ├── Components
│ │ ├── About.java
│ │ ├── BloodPanel.java
│ │ ├── Buttons
│ │ │ ├── AboutButton.java
│ │ │ ├── FrameButton.java
│ │ │ ├── GameButton.java
│ │ │ ├── OpenButton.java
│ │ │ └── SettingsButton.java
│ │ ├── DirectoryBrowser.java
│ │ ├── DukePanel.java
│ │ ├── FramePanel.java
│ │ ├── GamePanel.java
│ │ ├── ImagePanel.java
│ │ ├── LSPPanel.java
│ │ ├── NamPanel.java
│ │ ├── PSPanel.java
│ │ ├── RRPanel.java
│ │ ├── RRRAPanel.java
│ │ ├── SWPanel.java
│ │ ├── Settings.java
│ │ ├── TekwarPanel.java
│ │ ├── WH2Panel.java
│ │ └── WHPanel.java
│ │ ├── Frame.java
│ │ ├── GameEntries
│ │ ├── BloodEntry.java
│ │ ├── DisabledEntry.java
│ │ ├── DukeEntry.java
│ │ ├── GameEntry.java
│ │ ├── LSPEntry.java
│ │ ├── NamEntry.java
│ │ ├── PSlaveEntry.java
│ │ ├── RREntry.java
│ │ ├── RRRAEntry.java
│ │ ├── ResFile.java
│ │ ├── SWEntry.java
│ │ ├── TekwarEntry.java
│ │ ├── WH2Entry.java
│ │ └── WHEntry.java
│ │ ├── GameServices.java
│ │ ├── JLauncher.java
│ │ ├── Main.java
│ │ ├── PopupActionListener.java
│ │ └── WinReg.java
│ ├── Powerslave
│ ├── Anim.java
│ ├── Bullet.java
│ ├── Cheats.java
│ ├── Cinema.java
│ ├── Config.java
│ ├── Enemies
│ │ ├── Anubis.java
│ │ ├── Enemy.java
│ │ ├── Fish.java
│ │ ├── LavaDude.java
│ │ ├── Lion.java
│ │ ├── Mummy.java
│ │ ├── Queen.java
│ │ ├── Ra.java
│ │ ├── Rat.java
│ │ ├── Rex.java
│ │ ├── Roach.java
│ │ ├── Scorp.java
│ │ ├── Set.java
│ │ ├── Spider.java
│ │ └── Wasp.java
│ ├── Energy.java
│ ├── Factory
│ │ ├── PSEngine.java
│ │ ├── PSFactory.java
│ │ ├── PSInput.java
│ │ ├── PSMapSettings.java
│ │ ├── PSMenuHandler.java
│ │ ├── PSNetwork.java
│ │ ├── PSOSDFunc.java
│ │ ├── PSSliderDrawable.java
│ │ └── PSSoftware.java
│ ├── Fonts
│ │ ├── FontA.java
│ │ ├── GameFont.java
│ │ ├── MenuFont.java
│ │ └── StandartFont.java
│ ├── Globals.java
│ ├── Grenade.java
│ ├── Light.java
│ ├── LoadSave.java
│ ├── Main.java
│ ├── Map.java
│ ├── Menus
│ │ ├── MainMenu.java
│ │ ├── MenuControls.java
│ │ ├── MenuCorruptGame.java
│ │ ├── MenuEndGame.java
│ │ ├── MenuGame.java
│ │ ├── MenuGameSet.java
│ │ ├── MenuInterfaceSet.java
│ │ ├── MenuKeyboardSet.java
│ │ ├── MenuOptions.java
│ │ ├── MenuQTitle.java
│ │ ├── MenuQuit.java
│ │ ├── NewAddon.java
│ │ ├── NewGame.java
│ │ ├── PSButton.java
│ │ ├── PSMenuAudio.java
│ │ ├── PSMenuJoystick.java
│ │ ├── PSMenuLoad.java
│ │ ├── PSMenuMenuKeyboard.java
│ │ ├── PSMenuMouse.java
│ │ ├── PSMenuSave.java
│ │ ├── PSMenuUserContent.java
│ │ ├── PSMenuVideoMode.java
│ │ └── PSTitle.java
│ ├── Object.java
│ ├── Palette.java
│ ├── Player.java
│ ├── Random.java
│ ├── RunList.java
│ ├── Screens
│ │ ├── CinemaScreen.java
│ │ ├── DemoScreen.java
│ │ ├── GameScreen.java
│ │ ├── LoadingScreen.java
│ │ ├── LogoScreen2.java
│ │ ├── MapScreen.java
│ │ ├── MenuScreen.java
│ │ ├── MovieScreen.java
│ │ ├── PSLogoScreen.java
│ │ └── PrecacheScreen.java
│ ├── Sector.java
│ ├── Seq.java
│ ├── Slide.java
│ ├── Snake.java
│ ├── Sound.java
│ ├── SpiritHead.java
│ ├── Sprites.java
│ ├── Switch.java
│ ├── Type
│ │ ├── AnimStruct.java
│ │ ├── BlockInfo.java
│ │ ├── BobStruct.java
│ │ ├── BubbleMachineStruct.java
│ │ ├── BubbleStruct.java
│ │ ├── BulletInfo.java
│ │ ├── BulletStruct.java
│ │ ├── Channel.java
│ │ ├── DemoFile.java
│ │ ├── DripStruct.java
│ │ ├── ElevStruct.java
│ │ ├── EpisodeInfo.java
│ │ ├── FishChunk.java
│ │ ├── FlashStruct.java
│ │ ├── FlickerStruct.java
│ │ ├── FlowStruct.java
│ │ ├── FuncProc.java
│ │ ├── GrenadeStruct.java
│ │ ├── GrowStruct.java
│ │ ├── Input.java
│ │ ├── ItemAnimStruct.java
│ │ ├── LSInfo.java
│ │ ├── MapInfo.java
│ │ ├── MoveSectStruct.java
│ │ ├── ObjectStruct.java
│ │ ├── PLocation.java
│ │ ├── PlayerSave.java
│ │ ├── PlayerStruct.java
│ │ ├── RaStruct.java
│ │ ├── RunData.java
│ │ ├── SafeLoader.java
│ │ ├── SnakeStruct.java
│ │ ├── StatusAnim.java
│ │ ├── SwitchStruct.java
│ │ ├── TrailPointStruct.java
│ │ ├── TrailStruct.java
│ │ ├── TrapStruct.java
│ │ ├── VOC.java
│ │ ├── WallFaceStruct.java
│ │ └── WeaponInfo.java
│ ├── View.java
│ ├── Weapons.java
│ └── desktop
│ │ └── DesktopLauncher.java
│ ├── Redneck
│ ├── Actors.java
│ ├── Animate.java
│ ├── Cheats.java
│ ├── Config.java
│ ├── Factory
│ │ ├── RREngine.java
│ │ ├── RRFactory.java
│ │ ├── RRInput.java
│ │ ├── RRMapSettings.java
│ │ ├── RRMenuHandler.java
│ │ ├── RRNetwork.java
│ │ ├── RROSDFunc.java
│ │ ├── RRSliderDrawable.java
│ │ └── RRSoftware.java
│ ├── Fonts
│ │ ├── GameFont.java
│ │ ├── MenuFont.java
│ │ ├── MiniFont.java
│ │ └── StandartFont.java
│ ├── Gamedef.java
│ ├── Gameutils.java
│ ├── Globals.java
│ ├── Input.java
│ ├── LoadSave.java
│ ├── Main.java
│ ├── Menus
│ │ ├── CreditsMenu.java
│ │ ├── DifficultyMenu.java
│ │ ├── EpisodeButton.java
│ │ ├── GameMenu.java
│ │ ├── HelpMenu.java
│ │ ├── InterfaceMenu.java
│ │ ├── MainMenu.java
│ │ ├── MenuControls.java
│ │ ├── MenuCorruptGame.java
│ │ ├── MenuGameSetup.java
│ │ ├── MenuPage.java
│ │ ├── NetworkMenu.java
│ │ ├── NewAddonMenu.java
│ │ ├── NewGameMenu.java
│ │ ├── OptionsMenu.java
│ │ ├── QTitleMenu.java
│ │ ├── QuitMenu.java
│ │ ├── RMenuCreate.java
│ │ ├── RMenuJoin.java
│ │ ├── RMenuJoystick.java
│ │ ├── RMenuLoad.java
│ │ ├── RMenuMenuKeyboard.java
│ │ ├── RMenuMouse.java
│ │ ├── RMenuMultiplayer.java
│ │ ├── RMenuSave.java
│ │ ├── RMenuVideoMode.java
│ │ ├── RRTitle.java
│ │ ├── RUserContent.java
│ │ ├── SoundMenu.java
│ │ └── TrackPlayerMenu.java
│ ├── Names.java
│ ├── Player.java
│ ├── Premap.java
│ ├── ResourceHandler.java
│ ├── Screen.java
│ ├── Screens
│ │ ├── AnmScreen.java
│ │ ├── DemoScreen.java
│ │ ├── DisconnectScreen.java
│ │ ├── EndScreen.java
│ │ ├── GameScreen.java
│ │ ├── LoadingScreen.java
│ │ ├── MVEScreen.java
│ │ ├── MenuScreen.java
│ │ ├── NetScreen.java
│ │ ├── PrecacheScreen.java
│ │ └── StatisticScreen.java
│ ├── Sector.java
│ ├── SoundDefs.java
│ ├── Sounds.java
│ ├── Spawn.java
│ ├── Types
│ │ ├── ANIMATION.java
│ │ ├── AnimFile.java
│ │ ├── Animwalltype.java
│ │ ├── DemoFile.java
│ │ ├── EpisodeInfo.java
│ │ ├── GameInfo.java
│ │ ├── LSInfo.java
│ │ ├── LumpInfo.java
│ │ ├── MVEFile.java
│ │ ├── MapInfo.java
│ │ ├── NetInfo.java
│ │ ├── PLocation.java
│ │ ├── PlayerOrig.java
│ │ ├── PlayerStruct.java
│ │ ├── RTS.java
│ │ ├── SafeLoader.java
│ │ ├── Sample.java
│ │ ├── Script.java
│ │ ├── SoundOwner.java
│ │ ├── UserDefs.java
│ │ ├── VOC.java
│ │ └── Weaponhit.java
│ ├── View.java
│ ├── Weapons.java
│ └── desktop
│ │ └── DesktopLauncher.java
│ ├── Tekwar
│ ├── Animate.java
│ ├── Config.java
│ ├── Factory
│ │ ├── TekControl.java
│ │ ├── TekEngine.java
│ │ ├── TekFactory.java
│ │ ├── TekMapSettings.java
│ │ ├── TekMenuHandler.java
│ │ ├── TekNetwork.java
│ │ ├── TekSoftware.java
│ │ └── TekwarOSDFunc.java
│ ├── Fonts
│ │ ├── MenuFont.java
│ │ ├── StandartFont.java
│ │ ├── TekFontA.java
│ │ └── TekFontB.java
│ ├── Globals.java
│ ├── Main.java
│ ├── Menus
│ │ ├── MainMenu.java
│ │ ├── MenuAbort.java
│ │ ├── MenuCorruptGame.java
│ │ ├── MenuGame.java
│ │ ├── MenuGameSet.java
│ │ ├── MenuHelp.java
│ │ ├── MenuInterfaceSet.java
│ │ ├── MenuLastLoad.java
│ │ ├── MenuOptions.java
│ │ ├── MenuQuit.java
│ │ ├── MenuUserContent.java
│ │ ├── TekMenuAudio.java
│ │ ├── TekMenuControls.java
│ │ ├── TekMenuJoystick.java
│ │ ├── TekMenuKeyboard.java
│ │ ├── TekMenuLoad.java
│ │ ├── TekMenuMouse.java
│ │ ├── TekMenuSave.java
│ │ ├── TekMenuVideoMode.java
│ │ └── TekSliderDrawable.java
│ ├── Names.java
│ ├── Player.java
│ ├── Screens
│ │ ├── CreditsScreen.java
│ │ ├── CutsceneScreen.java
│ │ ├── GameScreen.java
│ │ ├── LoadingScreen.java
│ │ ├── MissionScreen.java
│ │ ├── PracticScreen.java
│ │ ├── PrecacheScreen.java
│ │ └── SmkMenu.java
│ ├── Tekchng.java
│ ├── Tekgun.java
│ ├── Tekldsv.java
│ ├── Tekmap.java
│ ├── Tekprep.java
│ ├── Teksnd.java
│ ├── Tekspr.java
│ ├── Tekstat.java
│ ├── Tektag.java
│ ├── Types
│ │ ├── ANIMATION.java
│ │ ├── Animpic.java
│ │ ├── Delayfunc.java
│ │ ├── Demo.java
│ │ ├── Doortype.java
│ │ ├── Elevatortype.java
│ │ ├── Floordoor.java
│ │ ├── Guntype.java
│ │ ├── Input.java
│ │ ├── LSInfo.java
│ │ ├── Mapsndfxtype.java
│ │ ├── SafeLoader.java
│ │ ├── Sectoreffect.java
│ │ ├── Sectorvehicle.java
│ │ ├── Songtype.java
│ │ ├── Soundtype.java
│ │ ├── SpriteXT.java
│ │ ├── Spriteelev.java
│ │ ├── Startspottype.java
│ │ ├── XTsavetype.java
│ │ └── XTtrailertype.java
│ ├── View.java
│ └── desktop
│ │ └── DesktopLauncher.java
│ ├── Wang
│ ├── Actor.java
│ ├── Ai.java
│ ├── Border.java
│ ├── Break.java
│ ├── Cheats.java
│ ├── Config.java
│ ├── CopySect.java
│ ├── Digi.java
│ ├── Draw.java
│ ├── Enemies
│ │ ├── Bunny.java
│ │ ├── Coolg.java
│ │ ├── Coolie.java
│ │ ├── Decision.java
│ │ ├── Eel.java
│ │ ├── GirlNinj.java
│ │ ├── Goro.java
│ │ ├── Hornet.java
│ │ ├── Lava.java
│ │ ├── Ninja.java
│ │ ├── Personality.java
│ │ ├── Ripper.java
│ │ ├── Ripper2.java
│ │ ├── Serp.java
│ │ ├── Skel.java
│ │ ├── Skull.java
│ │ ├── Sumo.java
│ │ ├── Zilla.java
│ │ └── Zombie.java
│ ├── Factory
│ │ ├── WangEngine.java
│ │ ├── WangFactory.java
│ │ ├── WangInput.java
│ │ ├── WangInterpolation.java
│ │ ├── WangMapSettings.java
│ │ ├── WangMenuHandler.java
│ │ ├── WangNetwork.java
│ │ ├── WangOSDFunc.java
│ │ ├── WangSliderDrawable.java
│ │ └── WangSoftware.java
│ ├── Fonts
│ │ ├── GameFont.java
│ │ ├── MenuFont.java
│ │ ├── MiniFont.java
│ │ └── StandartFont.java
│ ├── Game.java
│ ├── Gameutils.java
│ ├── Inv.java
│ ├── JPlayer.java
│ ├── JSector.java
│ ├── JTags.java
│ ├── JWeapon.java
│ ├── Light.java
│ ├── LoadSave.java
│ ├── MClip.java
│ ├── Main.java
│ ├── Menus
│ │ ├── MenuControls.java
│ │ ├── MenuCorruptGame.java
│ │ ├── MenuCredits.java
│ │ ├── MenuDifficulty.java
│ │ ├── MenuGame.java
│ │ ├── MenuGameSetup.java
│ │ ├── MenuInterface.java
│ │ ├── MenuJoystick.java
│ │ ├── MenuLastLoad.java
│ │ ├── MenuLoad.java
│ │ ├── MenuMain.java
│ │ ├── MenuMenuKeyboard.java
│ │ ├── MenuMouse.java
│ │ ├── MenuNewAddon.java
│ │ ├── MenuNewGame.java
│ │ ├── MenuOptions.java
│ │ ├── MenuPage.java
│ │ ├── MenuQuit.java
│ │ ├── MenuSave.java
│ │ ├── MenuSound.java
│ │ ├── MenuUserContent.java
│ │ ├── MenuVideoMode.java
│ │ ├── Network
│ │ │ ├── MenuCreate.java
│ │ │ ├── MenuJoin.java
│ │ │ ├── MenuMultiplayer.java
│ │ │ ├── MenuNetwork.java
│ │ │ └── NetInfo.java
│ │ ├── WangEpisodeButton.java
│ │ ├── WangSwitch.java
│ │ └── WangTitle.java
│ ├── MiscActr.java
│ ├── Morth.java
│ ├── Names.java
│ ├── Palette.java
│ ├── Panel.java
│ ├── Player.java
│ ├── Quake.java
│ ├── Rooms.java
│ ├── Rotator.java
│ ├── Screens
│ │ ├── AnmScreen.java
│ │ ├── CreditsScreen.java
│ │ ├── DemoScreen.java
│ │ ├── DisconnectScreen.java
│ │ ├── GameScreen.java
│ │ ├── LoadingScreen.java
│ │ ├── LogoAScreen.java
│ │ ├── MenuScreen.java
│ │ ├── NetScreen.java
│ │ ├── PrecacheScreen.java
│ │ └── StatisticScreen.java
│ ├── Sector.java
│ ├── Shrap.java
│ ├── Slidor.java
│ ├── Sound.java
│ ├── Spike.java
│ ├── Sprites.java
│ ├── Stag.java
│ ├── Tags.java
│ ├── Text.java
│ ├── Track.java
│ ├── Type
│ │ ├── ATTRIBUTE.java
│ │ ├── Actor_Action_Set.java
│ │ ├── Amb_Info.java
│ │ ├── Anim.java
│ │ ├── AnimFile.java
│ │ ├── Animator.java
│ │ ├── Break_Info.java
│ │ ├── CustomScript.java
│ │ ├── DAMAGE_DATA.java
│ │ ├── DemoFile.java
│ │ ├── EpisodeInfo.java
│ │ ├── GameInfo.java
│ │ ├── INVENTORY_DATA.java
│ │ ├── Input.java
│ │ ├── LONGp.java
│ │ ├── LSInfo.java
│ │ ├── LastLevelUser.java
│ │ ├── LevelInfo.java
│ │ ├── List.java
│ │ ├── LumpInfo.java
│ │ ├── MirrorType.java
│ │ ├── MyTypes.java
│ │ ├── NEAR_TAG_INFO.java
│ │ ├── OrgTile.java
│ │ ├── PANEL_SPRITE_OVERLAY.java
│ │ ├── Panel_Sprite.java
│ │ ├── Panel_Sprite_Func.java
│ │ ├── Panel_State.java
│ │ ├── ParentalStruct.java
│ │ ├── PlayerStr.java
│ │ ├── Predict.java
│ │ ├── RTS.java
│ │ ├── Remote_Control.java
│ │ ├── ResourceHandler.java
│ │ ├── RotatorStr.java
│ │ ├── SHRAP.java
│ │ ├── SINE_WALL.java
│ │ ├── SINE_WAVE_FLOOR.java
│ │ ├── SafeLoader.java
│ │ ├── Save.java
│ │ ├── Saveable.java
│ │ ├── Sect_User.java
│ │ ├── Sector_Object.java
│ │ ├── Spring_Board.java
│ │ ├── State.java
│ │ ├── TRACK.java
│ │ ├── TRACK_POINT.java
│ │ ├── Target_Sort.java
│ │ ├── USER.java
│ │ ├── VOC.java
│ │ ├── VOC3D.java
│ │ ├── VOC_INFO.java
│ │ ├── Vector2i.java
│ │ ├── Vector3i.java
│ │ └── VoxelScript.java
│ ├── Vator.java
│ ├── Vis.java
│ ├── WallMove.java
│ ├── Warp.java
│ ├── Weapon.java
│ ├── Weapons
│ │ ├── Chops.java
│ │ ├── Fist.java
│ │ ├── Grenade.java
│ │ ├── Heart.java
│ │ ├── HotHead.java
│ │ ├── Micro.java
│ │ ├── Mine.java
│ │ ├── Rail.java
│ │ ├── Shotgun.java
│ │ ├── Star.java
│ │ ├── Sword.java
│ │ └── Uzi.java
│ └── desktop
│ │ └── DesktopLauncher.java
│ └── Witchaven
│ ├── AI
│ ├── AIDemon.java
│ ├── AIDevil.java
│ ├── AIDragon.java
│ ├── AIFatwitch.java
│ ├── AIFish.java
│ ├── AIFred.java
│ ├── AIGoblin.java
│ ├── AIGonzo.java
│ ├── AIGron.java
│ ├── AIGuardian.java
│ ├── AIImp.java
│ ├── AIJudy.java
│ ├── AIKatie.java
│ ├── AIKobold.java
│ ├── AIKurt.java
│ ├── AIMinotaur.java
│ ├── AINewguy.java
│ ├── AIRat.java
│ ├── AISkeleton.java
│ ├── AISkully.java
│ ├── AISpider.java
│ ├── AIState.java
│ ├── AIWillow.java
│ ├── Ai.java
│ ├── Enemy.java
│ └── EnemyInfo.java
│ ├── Animate.java
│ ├── Config.java
│ ├── Factory
│ ├── WH2MenuHandler.java
│ ├── WHControl.java
│ ├── WHEngine.java
│ ├── WHFactory.java
│ ├── WHMapSettings.java
│ ├── WHMenuHandler.java
│ ├── WHNetwork.java
│ ├── WHOSDFunc.java
│ ├── WHSliderDrawable.java
│ └── WHSoftware.java
│ ├── Fonts
│ ├── HealthFont.java
│ ├── MenuFont.java
│ ├── PotionFont.java
│ ├── ScoreFont.java
│ ├── StandartFont.java
│ ├── TheFont.java
│ └── WH2Fonts.java
│ ├── Globals.java
│ ├── Items.java
│ ├── Main.java
│ ├── Menu
│ ├── GameMenu.java
│ ├── MainMenu.java
│ ├── MenuCorruptGame.java
│ ├── MenuGameSetup.java
│ ├── MenuInterfaceSet.java
│ ├── MenuOptions.java
│ ├── MenuQuit.java
│ ├── WHMenuAudio.java
│ ├── WHMenuControls.java
│ ├── WHMenuJoystick.java
│ ├── WHMenuKeyboard.java
│ ├── WHMenuLoad.java
│ ├── WHMenuMouse.java
│ ├── WHMenuNewGame.java
│ ├── WHMenuQTitle.java
│ ├── WHMenuSave.java
│ ├── WHMenuUserContent.java
│ ├── WHMenuVideoMode.java
│ ├── WHSwitch.java
│ └── WHTitle.java
│ ├── Names.java
│ ├── Potions.java
│ ├── Screens
│ ├── CutsceneScreen.java
│ ├── GameScreen.java
│ ├── LoadingScreen.java
│ ├── MenuScreen.java
│ ├── PrecacheScreen.java
│ ├── StatisticsScreen.java
│ └── VictoryScreen.java
│ ├── Spellbooks.java
│ ├── Types
│ ├── ANIMATION.java
│ ├── Ambsounds.java
│ ├── Delayitem.java
│ ├── EpisodeInfo.java
│ ├── Input.java
│ ├── Item.java
│ ├── LSInfo.java
│ ├── MapInfo.java
│ ├── PLAYER.java
│ ├── PLOCATION.java
│ ├── SWINGDOOR.java
│ ├── SafeLoader.java
│ ├── Songtype.java
│ ├── Soundtype.java
│ └── WEAPON.java
│ ├── WH1Names.java
│ ├── WH2MUS.java
│ ├── WH2Names.java
│ ├── WHANI.java
│ ├── WHFX.java
│ ├── WHOBJ.java
│ ├── WHPLR.java
│ ├── WHSND.java
│ ├── WHScreen.java
│ ├── WHTAG.java
│ ├── Weapons.java
│ ├── Whldsv.java
│ ├── Whmap.java
│ └── desktop
│ └── DesktopLauncher.java
├── swgdx.dat
├── twgdx.dat
└── whgdx.dat
/.gitignore:
--------------------------------------------------------------------------------
1 | ### IntelliJ IDEA ###
2 | out/
3 | !**/src/main/**/out/
4 | !**/src/test/**/out/
5 |
6 | ### Eclipse ###
7 | .apt_generated
8 | .classpath
9 | .factorypath
10 | .project
11 | .settings
12 | .springBeans
13 | .sts4-cache
14 | bin/
15 | !**/src/main/**/bin/
16 | !**/src/test/**/bin/
17 |
18 | ### NetBeans ###
19 | /nbproject/private/
20 | /nbbuild/
21 | /dist/
22 | /nbdist/
23 | /.nb-gradle/
24 |
25 | ### VS Code ###
26 | .vscode/
27 |
28 | ### Mac OS ###
29 | .DS_Store
--------------------------------------------------------------------------------
/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 |
--------------------------------------------------------------------------------
/.idea/.name:
--------------------------------------------------------------------------------
1 | NuBuildGDX.iml
--------------------------------------------------------------------------------
/.idea/libraries/annotations_24_0_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/gdx_1_9_14.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/gdx_backend_lwjgl3_1_9_14.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/gdx_platform_1_9_14_natives_desktop.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/jinput_2_0_10_natives_all.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/jinput_2_0_9.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/jna_5_15_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/jna_platform_5_15_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4_natives_freebsd.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4_natives_linux.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4_natives_linux_arm64.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4_natives_macos.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4_natives_macos_arm64.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4_natives_windows.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_3_3_4_natives_windows_arm64.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4_natives_freebsd.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4_natives_linux.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4_natives_linux_arm64.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4_natives_macos.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4_natives_macos_arm64.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4_natives_windows.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/lwjgl_glfw_3_3_4_natives_windows_arm64.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Games/Blood/blood128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Blood/blood128.png
--------------------------------------------------------------------------------
/Games/Blood/blood16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Blood/blood16.png
--------------------------------------------------------------------------------
/Games/Blood/blood32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Blood/blood32.png
--------------------------------------------------------------------------------
/Games/Duke3D/duke128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Duke3D/duke128.png
--------------------------------------------------------------------------------
/Games/Duke3D/duke16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Duke3D/duke16.png
--------------------------------------------------------------------------------
/Games/Duke3D/duke32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Duke3D/duke32.png
--------------------------------------------------------------------------------
/Games/Lot7P/lot7p128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Lot7P/lot7p128.png
--------------------------------------------------------------------------------
/Games/Lot7P/lot7p16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Lot7P/lot7p16.png
--------------------------------------------------------------------------------
/Games/Lot7P/lot7p32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Lot7P/lot7p32.png
--------------------------------------------------------------------------------
/Games/Nam/nam128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Nam/nam128.png
--------------------------------------------------------------------------------
/Games/Nam/nam16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Nam/nam16.png
--------------------------------------------------------------------------------
/Games/Nam/nam32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Nam/nam32.png
--------------------------------------------------------------------------------
/Games/PS/ps128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/PS/ps128.png
--------------------------------------------------------------------------------
/Games/PS/ps16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/PS/ps16.png
--------------------------------------------------------------------------------
/Games/PS/ps32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/PS/ps32.png
--------------------------------------------------------------------------------
/Games/RR/rr128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/RR/rr128.png
--------------------------------------------------------------------------------
/Games/RR/rr16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/RR/rr16.png
--------------------------------------------------------------------------------
/Games/RR/rr32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/RR/rr32.png
--------------------------------------------------------------------------------
/Games/RRRA/rr128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/RRRA/rr128.png
--------------------------------------------------------------------------------
/Games/RRRA/rr16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/RRRA/rr16.png
--------------------------------------------------------------------------------
/Games/RRRA/rr32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/RRRA/rr32.png
--------------------------------------------------------------------------------
/Games/SW/sw128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/SW/sw128.png
--------------------------------------------------------------------------------
/Games/SW/sw16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/SW/sw16.png
--------------------------------------------------------------------------------
/Games/SW/sw32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/SW/sw32.png
--------------------------------------------------------------------------------
/Games/Tekwar/tekwar128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Tekwar/tekwar128.png
--------------------------------------------------------------------------------
/Games/Tekwar/tekwar16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Tekwar/tekwar16.png
--------------------------------------------------------------------------------
/Games/Tekwar/tekwar32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/Tekwar/tekwar32.png
--------------------------------------------------------------------------------
/Games/WH/wh128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/WH/wh128.png
--------------------------------------------------------------------------------
/Games/WH/wh16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/WH/wh16.png
--------------------------------------------------------------------------------
/Games/WH/wh32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/WH/wh32.png
--------------------------------------------------------------------------------
/Games/WH2/whii128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/WH2/whii128.png
--------------------------------------------------------------------------------
/Games/WH2/whii16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/WH2/whii16.png
--------------------------------------------------------------------------------
/Games/WH2/whii32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/WH2/whii32.png
--------------------------------------------------------------------------------
/Games/build128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/build128.png
--------------------------------------------------------------------------------
/Games/build16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/build16.png
--------------------------------------------------------------------------------
/Games/build32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/build32.png
--------------------------------------------------------------------------------
/Games/iconopen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/iconopen.png
--------------------------------------------------------------------------------
/Games/iconsettings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/iconsettings.png
--------------------------------------------------------------------------------
/Games/logodiscord.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/logodiscord.png
--------------------------------------------------------------------------------
/Games/logoduke4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/logoduke4.png
--------------------------------------------------------------------------------
/Games/logom210.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/logom210.png
--------------------------------------------------------------------------------
/Games/logopaypal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Games/logopaypal.png
--------------------------------------------------------------------------------
/Headers/headerblood.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerblood.png
--------------------------------------------------------------------------------
/Headers/headerbuild.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerbuild.png
--------------------------------------------------------------------------------
/Headers/headerduke.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerduke.png
--------------------------------------------------------------------------------
/Headers/headerlot7p.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerlot7p.png
--------------------------------------------------------------------------------
/Headers/headernam.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headernam.png
--------------------------------------------------------------------------------
/Headers/headernapalm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headernapalm.png
--------------------------------------------------------------------------------
/Headers/headerps.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerps.png
--------------------------------------------------------------------------------
/Headers/headerra.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerra.png
--------------------------------------------------------------------------------
/Headers/headerrr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerrr.png
--------------------------------------------------------------------------------
/Headers/headersw.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headersw.png
--------------------------------------------------------------------------------
/Headers/headertw.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headertw.png
--------------------------------------------------------------------------------
/Headers/headerwh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerwh.png
--------------------------------------------------------------------------------
/Headers/headerwh2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerwh2.png
--------------------------------------------------------------------------------
/Headers/headerwwii.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/Headers/headerwwii.png
--------------------------------------------------------------------------------
/META-INF/MANIFEST.MF:
--------------------------------------------------------------------------------
1 | Manifest-Version: 1.0
2 | Main-Class: ru.m210projects.Launcher.desktop.Main
3 |
4 |
--------------------------------------------------------------------------------
/META-INF/MANIFEST.manifest:
--------------------------------------------------------------------------------
1 | Manifest-Version: 1.0
2 | Main-Class: ru.m210projects.Launcher.desktop.Main
3 |
4 |
--------------------------------------------------------------------------------
/bloodgdx.dat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/bloodgdx.dat
--------------------------------------------------------------------------------
/dukegdx.dat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/dukegdx.dat
--------------------------------------------------------------------------------
/libs/annotations-24.0.1.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/annotations-24.0.1.jar
--------------------------------------------------------------------------------
/libs/arm64linux/libgdxarm64.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/arm64linux/libgdxarm64.so
--------------------------------------------------------------------------------
/libs/arm64linux/libglfw.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/arm64linux/libglfw.so
--------------------------------------------------------------------------------
/libs/arm64linux/liblwjgl.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/arm64linux/liblwjgl.so
--------------------------------------------------------------------------------
/libs/gdx-1.9.14.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/gdx-1.9.14.jar
--------------------------------------------------------------------------------
/libs/gdx-backend-lwjgl3-1.9.14.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/gdx-backend-lwjgl3-1.9.14.jar
--------------------------------------------------------------------------------
/libs/gdx-platform-1.9.14-natives-desktop.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/gdx-platform-1.9.14-natives-desktop.jar
--------------------------------------------------------------------------------
/libs/jinput-2.0.10-natives-all.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/jinput-2.0.10-natives-all.jar
--------------------------------------------------------------------------------
/libs/jinput-2.0.9.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/jinput-2.0.9.jar
--------------------------------------------------------------------------------
/libs/jna-5.15.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/jna-5.15.0.jar
--------------------------------------------------------------------------------
/libs/jna-platform-5.15.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/jna-platform-5.15.0.jar
--------------------------------------------------------------------------------
/libs/libopenal64.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/libopenal64.so
--------------------------------------------------------------------------------
/libs/libopenalarm64.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/libopenalarm64.so
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-freebsd.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-freebsd.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-linux-arm32.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-linux-arm32.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-linux-arm64.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-linux-arm64.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-linux.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-linux.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-macos-arm64.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-macos-arm64.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-macos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-macos.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-windows-arm64.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-windows-arm64.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4-natives-windows.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4-natives-windows.jar
--------------------------------------------------------------------------------
/libs/lwjgl-3.3.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-3.3.4.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-freebsd.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-freebsd.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-linux-arm32.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-linux-arm32.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-linux-arm64.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-linux-arm64.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-linux.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-linux.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-macos-arm64.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-macos-arm64.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-macos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-macos.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-windows-arm64.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-windows-arm64.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4-natives-windows.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4-natives-windows.jar
--------------------------------------------------------------------------------
/libs/lwjgl-glfw-3.3.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/lwjgl-glfw-3.3.4.jar
--------------------------------------------------------------------------------
/libs/soft_oal.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/libs/soft_oal.dll
--------------------------------------------------------------------------------
/lspgdx.dat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/lspgdx.dat
--------------------------------------------------------------------------------
/nuclear.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/nuclear.ico
--------------------------------------------------------------------------------
/psgdx.dat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/psgdx.dat
--------------------------------------------------------------------------------
/rrgdx.dat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/atsb/NuBuildGDX/5cbf4d17e41cf0887885925b64259b2fc0592968/rrgdx.dat
--------------------------------------------------------------------------------
/src/META-INF/MANIFEST.MF:
--------------------------------------------------------------------------------
1 | Manifest-Version: 1.0
2 | Main-Class: ru.m210projects.Launcher.desktop.Main
3 |
4 |
--------------------------------------------------------------------------------
/src/com/jcraft/jorbis/Util.java:
--------------------------------------------------------------------------------
1 | package com.jcraft.jorbis;
2 |
3 | class Util{
4 | static int ilog(int v){
5 | int ret=0;
6 | while(v!=0){
7 | ret++;
8 | v>>>=1;
9 | }
10 | return (ret);
11 | }
12 |
13 | static int ilog2(int v){
14 | int ret=0;
15 | while(v>1){
16 | ret++;
17 | v>>>=1;
18 | }
19 | return (ret);
20 | }
21 |
22 | static int icount(int v){
23 | int ret=0;
24 | while(v!=0){
25 | ret+=(v&1);
26 | v>>>=1;
27 | }
28 | return (ret);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/AI/AISTATEFUNC.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.AI;
18 |
19 | import ru.m210projects.Blood.Types.XSPRITE;
20 | import ru.m210projects.Build.Types.SPRITE;
21 |
22 | public interface AISTATEFUNC {
23 | enum Type { none, idle, recoil, search, tgoto, attack, other }
24 |
25 | void enter(SPRITE sprite, XSPRITE xsprite);
26 | void move(SPRITE sprite, XSPRITE xsprite);
27 | void think(SPRITE sprite, XSPRITE xsprite);
28 | void callback(int nXSprite);
29 | }
30 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Factory/BloodSoftware.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Blood.Factory;
2 |
3 | import ru.m210projects.Build.Engine;
4 | import ru.m210projects.Build.Render.Software.Software;
5 |
6 | public class BloodSoftware extends Software {
7 |
8 | public BloodSoftware(Engine engine) {
9 | super(engine, new BloodMapSettings());
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Menus/MenuCredits.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Menus;
18 |
19 | import ru.m210projects.Build.Pattern.MenuItems.BuildMenu;
20 |
21 | public class MenuCredits extends BuildMenu {
22 |
23 | public MenuCredits()
24 | {
25 | MenuQav QAVCredits = new MenuQav(160, 100, "CREDITS.QAV");
26 | QAVCredits.clearScreen = true;
27 | QAVCredits.flags |= (8 | 2);
28 |
29 | addItem(QAVCredits, true);
30 | }
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/PriorityQueue/IPriorityQueue.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.PriorityQueue;
18 |
19 | public interface IPriorityQueue {
20 |
21 | void flush();
22 |
23 | void Insert(long time, int event);
24 |
25 | int Remove();
26 |
27 | void checkList(int nIndex, int nType);
28 |
29 | void checkList(int nIndex, int nType, int funcId);
30 |
31 | boolean Check(long time);
32 |
33 | int getSize();
34 |
35 | PriorityItem getItem(int i);
36 | }
37 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/AMMOINFO.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class AMMOINFO {
20 | public int max;
21 | public int vectorType;
22 |
23 | public AMMOINFO(int max, int vectorType, int unk) {
24 | this.max = max;
25 | this.vectorType = vectorType;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/ARMORITEMDATA.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class ARMORITEMDATA {
20 | public int[] count;
21 | public int[] max;
22 |
23 | public ARMORITEMDATA(int[] count, int[] max) {
24 | this.count = count;
25 | this.max = max;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/BURN.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class BURN {
20 | public int nTile;
21 | public int nFlags;
22 | public int nPal;
23 | public int zoom;
24 | public int x, y;
25 |
26 | public BURN(int nTile, int nFlags, int nPal, int zoom, int x, int y) {
27 | this.nTile = nTile;
28 | this.nFlags = nFlags;
29 | this.nPal = nPal;
30 | this.zoom = zoom;
31 | this.x = x;
32 | this.y = y;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/BUSY.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class BUSY {
20 | public int nIndex;
21 | public int nDelta;
22 | public int nBusy;
23 | public int busyProc;
24 |
25 | public void clear()
26 | {
27 | nIndex = 0;
28 | nDelta = 0;
29 | nBusy = 0;
30 | busyProc = 0;
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/BUSYPROC.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public interface BUSYPROC {
20 | int run(int nIndex, int nBusy);
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/CALLPROC.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public interface CALLPROC {
20 | void run(int nIndex);
21 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/DAMAGEINFO.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class DAMAGEINFO {
20 | public int nArmorType;
21 | public int[] nSoundID;
22 | public DAMAGEINFO(int nArmorType, int[] nSoundID)
23 | {
24 | this.nArmorType = nArmorType;
25 | this.nSoundID = nSoundID;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/FragInfo.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class FragInfo {
20 |
21 | public String text;
22 | public String text2;
23 | public int nSound;
24 |
25 | public FragInfo(int nSound, String text, String text2)
26 | {
27 | this.nSound = nSound;
28 | this.text = text;
29 | this.text2 = text2;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/GENDUDESND.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Blood.Types;
2 |
3 | public class GENDUDESND {
4 | public int defaultSndId;
5 | public int randomRange;
6 | public int sndIdOffset; // relative to data3
7 | public boolean aiPlaySound; // false = sfxStart3DSound();
8 |
9 | public GENDUDESND (int defSnd, int rndRange, int sndOffs, boolean aiSnd) {
10 |
11 | this.defaultSndId = defSnd;
12 | this.randomRange = rndRange;
13 | this.sndIdOffset = sndOffs;
14 | this.aiPlaySound = aiSnd;
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/HANDANIM.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | import ru.m210projects.Blood.QAV;
20 |
21 | public class HANDANIM {
22 | public QAV pQAV;
23 | public int duration;
24 | public int clock;
25 | }
26 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/INVITEM.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class INVITEM {
20 | public boolean activated;
21 | public int amount;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/LOADITEM.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class LOADITEM {
20 | public int index;
21 | public String name;
22 | public LOADITEM(int index, String name ) {
23 | this.name = name;
24 | this.index = index;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/POSTPONE.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class POSTPONE {
20 | public short nSprite;
21 | public short nStatus;
22 |
23 | public void clear() {
24 | nSprite = 0;
25 | nStatus = 0;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/POWERUPINFO.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class POWERUPINFO {
20 | public int addPower;
21 | public int maxPower;
22 | public int picnum;
23 | public boolean isUnique;
24 |
25 | public POWERUPINFO(int picnum, boolean isUnique, int addPower, int maxPower) {
26 | this.addPower = addPower;
27 | this.maxPower = maxPower;
28 | this.picnum = picnum;
29 | this.isUnique = isUnique;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/QAVCALLBACKFUNC.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public interface QAVCALLBACKFUNC {
20 | void run(int triggerId, Object data);
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/QUOTE.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class QUOTE {
20 | public String messageText;
21 | public int messageTime;
22 | public int pal;
23 | }
24 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/SAMPLE2D.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | import java.nio.ByteBuffer;
20 |
21 | import ru.m210projects.Build.Audio.Source;
22 |
23 | public class SAMPLE2D {
24 | public Source hVoice;
25 | public int loop;
26 | public ByteBuffer hResource;
27 |
28 | public SAMPLE2D()
29 | {
30 | hVoice = null;
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/SPRITEHIT.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class SPRITEHIT {
20 | public int moveHit;
21 | public int ceilHit;
22 | public int floorHit;
23 |
24 | public void clear() {
25 | moveHit = 0;
26 | ceilHit = 0;
27 | floorHit = 0;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/SPRITEMASS.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Blood.Types;
2 |
3 | public class SPRITEMASS {
4 | public int seqId;
5 | public int mass;
6 | public short xrepeat;
7 | public short yrepeat;
8 | public int clipdist; // mass multiplier
9 | }
10 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/SURFACE.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class SURFACE {
20 | public int nEffect1;
21 | public int nEffect2;
22 | public int nEffect3;
23 | public int nSoundId;
24 |
25 | public SURFACE(int nEffect1, int nEffect2, int nEffect3, int nSoundId) {
26 | this.nEffect1 = nEffect1;
27 | this.nEffect2 = nEffect2;
28 | this.nEffect3 = nEffect3;
29 | this.nSoundId = nSoundId;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/Seq/CeilingInst.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Blood.Types.Seq;
2 |
3 | import static ru.m210projects.Blood.DB.kMaxXSectors;
4 | import static ru.m210projects.Blood.DB.xsector;
5 | import static ru.m210projects.Blood.Globals.kMaxSectors;
6 | import static ru.m210projects.Blood.Main.game;
7 | import static ru.m210projects.Build.Engine.sector;
8 |
9 | import ru.m210projects.Build.Types.SECTOR;
10 |
11 | public class CeilingInst extends SeqInst {
12 | @Override
13 | protected void updateInstance(int index) {
14 | if(!(index > 0 && index < kMaxXSectors))
15 | game.dassert("nXSector > 0 && nXSector < kMaxXSectors");
16 | int nSector = xsector[index].reference;
17 | if(!(nSector >= 0 && nSector < kMaxSectors))
18 | game.dassert("nSector >= 0 && nSector < kMaxSectors");
19 | SECTOR pSector = sector[nSector];
20 | if(pSector.extra != index)
21 | game.dassert("pSector.extra == nXSector");
22 |
23 | SeqFrame pFrame = pSequence.getFrame(frameIndex);
24 |
25 | pSector.ceilingpicnum = (short)pFrame.nTile;
26 | pSector.ceilingshade = pFrame.shade;
27 | pSector.ceilingpal = (short)pFrame.pal;
28 | }
29 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/Seq/FloorInst.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Blood.Types.Seq;
2 |
3 | import static ru.m210projects.Blood.DB.kMaxXSectors;
4 | import static ru.m210projects.Blood.DB.xsector;
5 | import static ru.m210projects.Blood.Globals.kMaxSectors;
6 | import static ru.m210projects.Blood.Main.game;
7 | import static ru.m210projects.Build.Engine.sector;
8 |
9 | import ru.m210projects.Build.Types.SECTOR;
10 |
11 | public class FloorInst extends SeqInst {
12 |
13 | @Override
14 | protected void updateInstance(int index) {
15 | if(!(index > 0 && index < kMaxXSectors))
16 | game.dassert("nXSector > 0 && nXSector < kMaxXSectors");
17 | int nSector = xsector[index].reference;
18 | if(!(nSector >= 0 && nSector < kMaxSectors))
19 | game.dassert("nSector >= 0 && nSector < kMaxSectors");
20 | SECTOR pSector = sector[nSector];
21 | if(pSector.extra != index)
22 | game.dassert("pSector.extra == nXSector");
23 |
24 | SeqFrame pFrame = pSequence.getFrame(frameIndex);
25 |
26 | pSector.floorpicnum = (short)pFrame.nTile;
27 | pSector.floorshade = pFrame.shade;
28 | pSector.floorpal = (short)pFrame.pal;
29 | }
30 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/WEAPONDATA.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class WEAPONDATA {
20 | public int update;
21 | public int ammoType;
22 |
23 | public WEAPONDATA(int update, int ammoType) {
24 | this.update = update;
25 | this.ammoType = ammoType;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Blood/Types/ZONE.java:
--------------------------------------------------------------------------------
1 | // This file is part of BloodGDX.
2 | // Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BloodGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BloodGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BloodGDX. If not, see .
16 |
17 | package ru.m210projects.Blood.Types;
18 |
19 | public class ZONE {
20 | public long x;
21 | public long y;
22 | public long z;
23 | public short sector;
24 | public short angle;
25 |
26 | public void clear() {
27 | x = y = z = 0;
28 | sector = angle = 0;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Architecture/BuildInput.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2020 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Architecture;
18 |
19 | import com.badlogic.gdx.Input;
20 |
21 | public interface BuildInput extends Input {
22 |
23 | void init(BuildFrame frame);
24 |
25 | void dispose();
26 |
27 | void update();
28 |
29 | void processEvents();
30 |
31 | void processMessages();
32 |
33 | boolean cursorHandler();
34 |
35 | int getDWheel();
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Architecture/BuildMessage.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2020 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Architecture;
18 |
19 | public interface BuildMessage {
20 |
21 | enum MessageType { Question, Info, Crash }
22 |
23 | void setFrame(BuildFrame frame);
24 |
25 | boolean show(String header, String text, MessageType type);
26 |
27 | void dispose();
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Audio/Music.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 |
18 | package ru.m210projects.Build.Audio;
19 |
20 | public interface Music {
21 | MusicSource newMusic(byte[] data);
22 | MusicSource newMusic(String name);
23 |
24 | void setVolume(float volume);
25 | boolean init();
26 | boolean isInited();
27 | String getName();
28 | void update();
29 | void dispose();
30 | }
31 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Audio/MusicSource.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Audio;
18 |
19 | public abstract class MusicSource {
20 |
21 | public abstract void play(boolean loop);
22 | public abstract void stop();
23 | public abstract void pause();
24 | public abstract void resume();
25 | public abstract void dispose();
26 | public abstract void update();
27 |
28 | public abstract boolean isLooping();
29 | public abstract boolean isPlaying();
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Audio/SoundData.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2020 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Audio;
18 |
19 | import java.nio.ByteBuffer;
20 |
21 | public class SoundData {
22 |
23 | public int rate;
24 | public int channels;
25 | public int bits;
26 | public ByteBuffer data;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Audio/SourceCallback.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Audio;
18 |
19 | public interface SourceCallback {
20 | void run(T ch);
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Input/InputCallback.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Input;
18 |
19 | public interface InputCallback {
20 | int run(int ch);
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Net/ISocket.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Net;
18 |
19 | public interface ISocket {
20 | Object recvfrom(byte[] dabuf, int bufsiz);
21 | void sendto(Object sockaddr, byte[] dabuf, int bufsiz);
22 | void dispose();
23 | }
24 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Net/NetInfo.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Net;
2 |
3 | public class NetInfo {
4 | public String myip;
5 | public String extip;
6 | public String serverip;
7 | public String message;
8 | public int port;
9 | public int netready;
10 | public int plready = 1;
11 | public Thread waitThread;
12 | public boolean useUPnP;
13 | public int uPnPPort = -1;
14 |
15 | private String lastMessage;
16 |
17 | public void clear()
18 | {
19 | myip = extip = serverip = message = null;
20 | port = netready = 0;
21 | plready = 1;
22 | }
23 |
24 | public boolean waiting()
25 | {
26 | return waitThread.isAlive();
27 | }
28 |
29 | public boolean IsNewMessage()
30 | {
31 | boolean out = !message.equals(lastMessage);
32 | lastMessage = message;
33 | return out;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Net/UDPServer.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Net;
18 |
19 | import java.net.InetSocketAddress;
20 |
21 | public class UDPServer extends UDPSocket {
22 | public UDPServer(int port) throws Throwable {
23 | super(port);
24 | sock.bind(new InetSocketAddress(port));
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/OnSceenDisplay/OSDCVARFUNC.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.OnSceenDisplay;
18 |
19 | public interface OSDCVARFUNC {
20 | void execute();
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Pattern/FontHandler.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Pattern;
2 |
3 | public abstract class FontHandler {
4 |
5 | protected BuildFont[] fonts;
6 | protected final int nFonts;
7 |
8 | public FontHandler(int nFonts)
9 | {
10 | this.nFonts = nFonts;
11 | fonts = new BuildFont[nFonts];
12 | }
13 |
14 | protected abstract BuildFont init(int i);
15 |
16 | public BuildFont getFont(int i) {
17 | if(i < 0 && i >= nFonts)
18 | throw new IllegalArgumentException("Wrong font number");
19 |
20 | if(fonts[i] == null)
21 | fonts[i] = init(i);
22 | return fonts[i];
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Pattern/MenuItems/DummyItem.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Pattern.MenuItems;
2 |
3 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler.MenuOpt;
4 |
5 | public class DummyItem extends MenuItem {
6 |
7 | public DummyItem() {
8 | super(null, null);
9 | }
10 |
11 | @Override
12 | public void draw(MenuHandler handler) {
13 | }
14 |
15 | @Override
16 | public boolean callback(MenuHandler handler, MenuOpt opt) {
17 | return false;
18 | }
19 |
20 | @Override
21 | public boolean mouseAction(int mx, int my) {
22 | return false;
23 | }
24 |
25 | @Override
26 | public void open() {
27 | }
28 |
29 | @Override
30 | public void close() {
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Pattern/MenuItems/MenuProc.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Pattern.MenuItems;
18 |
19 | public interface MenuProc {
20 | void run(MenuHandler handler, MenuItem pItem);
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/IOverheadMapSettings.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Render;
2 |
3 | public interface IOverheadMapSettings {
4 |
5 | enum MapView {
6 | Polygons, Lines
7 | }
8 |
9 | boolean isFullMap();
10 |
11 | boolean isScrollMode();
12 |
13 | int getViewPlayer();
14 |
15 | boolean isShowSprites(MapView view);
16 |
17 | boolean isShowFloorSprites();
18 |
19 | boolean isShowRedWalls();
20 |
21 | boolean isShowAllPlayers();
22 |
23 | boolean isSpriteVisible(MapView view, int index);
24 |
25 | boolean isWallVisible(int w, int ses);
26 |
27 | int getWallColor(int w, int sec);
28 |
29 | int getWallX(int w);
30 |
31 | int getWallY(int w);
32 |
33 | int getSpriteColor(int s);
34 |
35 | int getSpriteX(int spr);
36 |
37 | int getSpriteY(int spr);
38 |
39 | int getSpritePicnum(int spr);
40 |
41 | int getPlayerSprite(int player);
42 |
43 | int getPlayerPicnum(int player);
44 |
45 | int getPlayerZoom(int player, int czoom);
46 |
47 | }
48 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/GLModel.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Render.ModelHandle;
2 |
3 | import java.util.Iterator;
4 |
5 | import com.badlogic.gdx.graphics.glutils.ShaderProgram;
6 |
7 | import ru.m210projects.Build.Render.ModelHandle.ModelInfo.Type;
8 | import ru.m210projects.Build.Render.TextureHandle.GLTile;
9 |
10 | public interface GLModel {
11 |
12 | boolean render(int pal, int shade, int skinnum, int visibility, float alpha);
13 |
14 | ShaderProgram getShader();
15 |
16 | void dispose();
17 |
18 | Iterator getSkins();
19 |
20 | void clearSkins();
21 |
22 | Type getType();
23 |
24 | boolean isRotating();
25 |
26 | boolean isTintAffected();
27 |
28 | float getScale();
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MD2/MD2Frame.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Render.ModelHandle.MDModel.MD2;
18 |
19 | public class MD2Frame {
20 | public float[][] vertices;
21 | public String name;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MD2/MD2Triangle.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Render.ModelHandle.MDModel.MD2;
18 |
19 | public class MD2Triangle {
20 | public short[] vertices = new short[3];
21 | public short[] texCoords = new short[3];
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MD3/MD3Frame.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Render.ModelHandle.MDModel.MD3;
18 |
19 | import com.badlogic.gdx.math.Vector3;
20 |
21 | public class MD3Frame{
22 | public Vector3 min;
23 | public Vector3 max;
24 | public Vector3 origin;
25 | public Float radius;
26 | public String name;
27 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MD3/MD3Header.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Render.ModelHandle.MDModel.MD3;
18 |
19 | public class MD3Header
20 | {
21 | public int ident;
22 | public int version;
23 | public String filename;
24 | public int flags;
25 | public int numFrames;
26 | public int numTags;
27 | public int numSurfaces;
28 | public int numSkins;
29 | public int offsetFrames;
30 | public int offsetTags;
31 | public int offsetSurfaces;
32 | public int offsetEnd;
33 | }
34 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MD3/MD3Shader.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Render.ModelHandle.MDModel.MD3;
18 |
19 | public class MD3Shader {
20 | String name;
21 | int index;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MD3/MD3Vertice.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Render.ModelHandle.MDModel.MD3;
18 |
19 | public class MD3Vertice {
20 | public short x, y, z, nlat, nlng;
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MDAnimation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * MDAnimation for Polymost
3 | * by Jonathon Fowler
4 | * See the included license file "BUILDLIC.TXT" for license info.
5 | *
6 | * This file has been ported to Java by Alexander Makarov-[M210] (m210-2007@mail.ru)
7 | */
8 |
9 | package ru.m210projects.Build.Render.ModelHandle.MDModel;
10 |
11 | public class MDAnimation {
12 |
13 | public static final int MDANIM_LOOP = 0;
14 | public static final int MDANIM_ONESHOT = 1;
15 | public static long mdtims, omdtims;
16 | public static int mdpause;
17 |
18 | public int startframe, endframe;
19 | public int fpssc, flags;
20 | public MDAnimation next;
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/MDModel/MDSkinmap.java:
--------------------------------------------------------------------------------
1 | /*
2 | * MDSkinmap for Polymost
3 | * by Jonathon Fowler
4 | * See the included license file "BUILDLIC.TXT" for license info.
5 | *
6 | * This file has been ported to Java by Alexander Makarov-[M210] (m210-2007@mail.ru)
7 | */
8 |
9 | package ru.m210projects.Build.Render.ModelHandle.MDModel;
10 |
11 | import ru.m210projects.Build.Render.TextureHandle.GLTile;
12 |
13 | public class MDSkinmap {
14 | public int palette; // Build palette number
15 | public int skinnum, surfnum; // Skin identifier, surface number
16 |
17 | public GLTile texid;
18 | public String fn; // Skin filename
19 | public MDSkinmap next;
20 | public float param, specpower, specfactor;
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/ModelInfo.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Render.ModelHandle;
2 |
3 | public class ModelInfo {
4 |
5 | public static final int MD_ROTATE = 2;
6 |
7 | public enum Type {
8 | Voxel, Md2, Md3
9 | }
10 |
11 | protected final String filename;
12 | protected final Type type;
13 |
14 | protected int flags;
15 | protected float scale;
16 | // yoffset differs from zadd in that it does not follow cstat&8 y-flipping
17 | protected float yoffset, zadd;
18 |
19 | public ModelInfo(String filename, Type type) {
20 | this.filename = filename;
21 | this.type = type;
22 | }
23 |
24 | public String getFilename() {
25 | return filename;
26 | }
27 |
28 | public Type getType() {
29 | return type;
30 | }
31 |
32 | public int getFlags() {
33 | return flags;
34 | }
35 |
36 | public void setMisc(float scale, float zadd, float yoffset, int flags) {
37 | this.scale = scale;
38 | this.zadd = zadd;
39 | this.yoffset = yoffset;
40 | this.flags = flags;
41 | }
42 |
43 | public boolean isRotating() {
44 | return (flags & MD_ROTATE) != 0;
45 | }
46 |
47 | public float getScale() {
48 | return scale;
49 | }
50 |
51 | public float getYOffset(boolean yflipping) {
52 | return !yflipping ? yoffset : zadd;
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/Voxel/VoxelSkin.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Render.ModelHandle.Voxel;
2 |
3 | import static ru.m210projects.Build.Engine.curpalette;
4 | import static ru.m210projects.Build.Engine.palookup;
5 |
6 | import ru.m210projects.Build.Render.TextureHandle.DummyTileData;
7 | import ru.m210projects.Build.Types.Tile;
8 |
9 | public class VoxelSkin extends DummyTileData {
10 |
11 | public VoxelSkin(PixelFormat fmt, Tile tile, int dapal) {
12 | super(fmt, tile.getWidth(), tile.getHeight());
13 |
14 | if (fmt != PixelFormat.Pal8) {
15 | int wpptr, wp, dacol;
16 | for (int x, y = 0; y < height; y++) {
17 | wpptr = y * width;
18 | for (x = 0; x < width; x++, wpptr++) {
19 | wp = wpptr << 2;
20 | dacol = tile.data[wpptr] & 0xFF;
21 | dacol = palookup[dapal][dacol] & 0xFF;
22 |
23 | data.putInt(wp, curpalette.getRGB(dacol) + (255 << 24));
24 | }
25 | }
26 | } else
27 | data.put(tile.data, 0, width * height);
28 | }
29 |
30 | @Override
31 | public boolean isClamped() {
32 | return true;
33 | }
34 |
35 | @Override
36 | public boolean hasAlpha() {
37 | return false;
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/ModelHandle/VoxelInfo.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.Render.ModelHandle;
2 |
3 | import ru.m210projects.Build.Render.ModelHandle.Voxel.VoxelData;
4 |
5 | public class VoxelInfo extends ModelInfo {
6 |
7 | protected VoxelData vox;
8 | public VoxelInfo(VoxelData vox) {
9 | super(null, Type.Voxel);
10 | this.vox = vox;
11 | this.scale = 65536.0f;
12 | }
13 |
14 | public VoxelData getData() {
15 | return vox;
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/Software/PermFifo.java:
--------------------------------------------------------------------------------
1 | // "Build Engine & Tools" Copyright (c) 1993-1997 Ken Silverman
2 | // Ken Silverman's official web site: "http://www.advsys.net/ken"
3 | // See the included license file "BUILDLIC.TXT" for license info.
4 | //
5 | // This file has been modified from Ken Silverman's original release
6 | // by Jonathon Fowler (jf@jonof.id.au)
7 | // by Alexander Makarov-[M210] (m210-2007@mail.ru)
8 |
9 | package ru.m210projects.Build.Render.Software;
10 |
11 | public class PermFifo {
12 | public int sx, sy, z;
13 | public short a, picnum;
14 | public short dashade;
15 | public short dapalnum, dastat, pagesleft;
16 | public int cx1, cy1, cx2, cy2;
17 | public int uniqid; //JF extension
18 | }
19 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Render/Types/Hudtyp.java:
--------------------------------------------------------------------------------
1 | /*
2 | * High-colour textures support for Polymost
3 | * by Jonathon Fowler
4 | * See the included license file "BUILDLIC.TXT" for license info.
5 | */
6 |
7 | package ru.m210projects.Build.Render.Types;
8 |
9 | public class Hudtyp {
10 | public float xadd, yadd, zadd;
11 | public short angadd, flags, fov;
12 |
13 | @Override
14 | public Hudtyp clone() {
15 | Hudtyp out = new Hudtyp();
16 |
17 | out.xadd = xadd;
18 | out.yadd = yadd;
19 | out.zadd = zadd;
20 |
21 | out.angadd = angadd;
22 | out.flags = flags;
23 | out.fov = fov;
24 |
25 | return out;
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/StringUtils.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2017-2020 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build;
18 |
19 | public class StringUtils {
20 |
21 | public static String toUnicode(String t) {
22 | if(t == null)
23 | return null;
24 | return t.replaceAll("[^\\p{L}\\p{Nd}\\W_]+|\0", ""); //return t.replaceAll("[^a-zA-Z0-9_. /-]", "");
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Types/BuildPos.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Types;
18 |
19 | public class BuildPos {
20 |
21 | public int x, y, z;
22 | public short ang, sectnum;
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Types/Hitscan.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Types;
18 |
19 | public class Hitscan {
20 | public int hitx = -1, hity = -1, hitz = -1;
21 | public short hitsect = -1, hitwall = -1, hitsprite = -1;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/Types/Neartag.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Build.Types;
18 |
19 | public class Neartag {
20 | public int taghitdist;
21 | public short tagsector, tagwall, tagsprite;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/ALCcontext.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.desktop.audio.nopenal;
2 |
3 | import java.nio.IntBuffer;
4 |
5 | import org.lwjgl.BufferUtils;
6 |
7 | import com.sun.jna.PointerType;
8 |
9 | public class ALCcontext extends PointerType {
10 |
11 | /**
12 | * Creates an attribute list in a ByteBuffer
13 | * @param contextFrequency Frequency to add
14 | * @param contextRefresh Refresh rate to add
15 | * @param contextSynchronized Whether to synchronize the context
16 | * @return attribute list
17 | */
18 | static IntBuffer createAttributeList(int contextFrequency, int contextRefresh, int contextSynchronized) {
19 | IntBuffer attribList = BufferUtils.createIntBuffer(7);
20 |
21 | attribList.put(ALC10.ALC_FREQUENCY);
22 | attribList.put(contextFrequency);
23 | attribList.put(ALC10.ALC_REFRESH);
24 | attribList.put(contextRefresh);
25 | attribList.put(ALC10.ALC_SYNC);
26 | attribList.put(contextSynchronized);
27 | attribList.put(0); //terminating int
28 |
29 | return attribList;
30 | }
31 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/ALCdevice.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Build.desktop.audio.nopenal;
2 |
3 | import com.sun.jna.PointerType;
4 |
5 | public class ALCdevice extends PointerType {}
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTAlaw.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_ALAW} extension. */
9 | public final class EXTAlaw {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_MONO_ALAW_EXT = 0x10016,
14 | AL_FORMAT_STEREO_ALAW_EXT = 0x10017;
15 |
16 | private EXTAlaw() {}
17 |
18 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTDefaultFilterOrder.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the {@code ALC_EXT_DEFAULT_FILTER_ORDER} extension.
10 | *
11 | *
This extension allows the default filter order (i.e. slope) to be selected at context creation time. Attibute {@link #ALC_DEFAULT_FILTER_ORDER DEFAULT_FILTER_ORDER} can be used with a
12 | * value of 1 (for -6dB/oct) or 2 (for -12dB/oct).
13 | *
14 | *
{@link #ALC_DEFAULT_FILTER_ORDER DEFAULT_FILTER_ORDER} can also be used with {@link ALC10#alcGetIntegerv GetIntegerv} to find out the current default filter order.
15 | */
16 | public final class EXTDefaultFilterOrder {
17 |
18 | /** {@code ALC_EXT_DEFAULT_FILTER_ORDER} tokens. */
19 | public static final int ALC_DEFAULT_FILTER_ORDER = 0x1100;
20 |
21 | private EXTDefaultFilterOrder() {}
22 |
23 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTDouble.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_DOUBLE} extension. */
9 | public final class EXTDouble {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_MONO_DOUBLE_EXT = 0x10012,
14 | AL_FORMAT_STEREO_DOUBLE_EXT = 0x10013;
15 |
16 | private EXTDouble() {}
17 |
18 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTExponentDistance.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the {@code AL_EXT_EXPONENT_DISTANCE} extension.
10 | *
11 | *
An OpenAL 1.1 implementation will always support the {@code AL_EXT_EXPONENT_DISTANCE} extension. This allows an application written to the OpenAL 1.0 specification to
12 | * access the exponent distance abilities.
13 | */
14 | public final class EXTExponentDistance {
15 |
16 | /** {@code AL_EXT_EXPONENT_DISTANCE} tokens. */
17 | public static final int
18 | AL_EXPONENT_DISTANCE = 0xD005,
19 | AL_EXPONENT_DISTANCE_CLAMPED = 0xD006;
20 |
21 | private EXTExponentDistance() {}
22 |
23 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTFloat32.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_FLOAT32} extension. */
9 | public final class EXTFloat32 {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_MONO_FLOAT32 = 0x10010,
14 | AL_FORMAT_STEREO_FLOAT32 = 0x10011;
15 |
16 | private EXTFloat32() {}
17 |
18 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTIma4.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_IMA4} extension. */
9 | public final class EXTIma4 {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_MONO_IMA4 = 0x1300,
14 | AL_FORMAT_STEREO_IMA4 = 0x1301;
15 |
16 | private EXTIma4() {}
17 |
18 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTLinearDistance.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the {@code AL_EXT_LINEAR_DISTANCE} extension.
10 | *
11 | *
An OpenAL 1.1 implementation will always support the {@code AL_EXT_LINEAR_DISTANCE} extension. This allows an application written to the OpenAL 1.0 specification to
12 | * access the offset abilities.
13 | */
14 | public final class EXTLinearDistance {
15 |
16 | /** {@code AL_EXT_LINEAR_DISTANCE} tokens. */
17 | public static final int
18 | AL_LINEAR_DISTANCE = 0xD003,
19 | AL_LINEAR_DISTANCE_CLAMPED = 0xD004;
20 |
21 | private EXTLinearDistance() {}
22 |
23 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTMCFormats.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_MCFORMATS} extension. */
9 | public final class EXTMCFormats {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_QUAD8 = 0x1204,
14 | AL_FORMAT_QUAD16 = 0x1205,
15 | AL_FORMAT_QUAD32 = 0x1206,
16 | AL_FORMAT_REAR8 = 0x1207,
17 | AL_FORMAT_REAR16 = 0x1208,
18 | AL_FORMAT_REAR32 = 0x1209,
19 | AL_FORMAT_51CHN8 = 0x120A,
20 | AL_FORMAT_51CHN16 = 0x120B,
21 | AL_FORMAT_51CHN32 = 0x120C,
22 | AL_FORMAT_61CHN8 = 0x120D,
23 | AL_FORMAT_61CHN16 = 0x120E,
24 | AL_FORMAT_61CHN32 = 0x120F,
25 | AL_FORMAT_71CHN8 = 0x1210,
26 | AL_FORMAT_71CHN16 = 0x1211,
27 | AL_FORMAT_71CHN32 = 0x1212;
28 |
29 | private EXTMCFormats() {}
30 |
31 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTMulaw.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_MULAW} extension. */
9 | public final class EXTMulaw {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_MONO_MULAW_EXT = 0x10014,
14 | AL_FORMAT_STEREO_MULAW_EXT = 0x10015;
15 |
16 | private EXTMulaw() {}
17 |
18 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTMulawBFormat.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the {@code AL_EXT_MULAW_BFORMAT} extension.
10 | *
11 | *
This extension implies two MULAW formats are available, based on 2D and 3D Ambisonic B-Format.
12 | *
13 | *
See {@link EXTBFormat EXT_BFORMAT} for a discussion of the channel numberings and meanings.
14 | */
15 | public final class EXTMulawBFormat {
16 |
17 | /** Buffer formats. */
18 | public static final int
19 | AL_FORMAT_BFORMAT2D_MULAW = 0x10031,
20 | AL_FORMAT_BFORMAT3D_MULAW = 0x10032;
21 |
22 | private EXTMulawBFormat() {}
23 |
24 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTMulawMCFormats.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_MULAW_MCFORMATS} extension. */
9 | public final class EXTMulawMCFormats {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_MONO_MULAW = 0x10014,
14 | AL_FORMAT_STEREO_MULAW = 0x10015,
15 | AL_FORMAT_QUAD_MULAW = 0x10021,
16 | AL_FORMAT_REAR_MULAW = 0x10022,
17 | AL_FORMAT_51CHN_MULAW = 0x10023,
18 | AL_FORMAT_61CHN_MULAW = 0x10024,
19 | AL_FORMAT_71CHN_MULAW = 0x10025;
20 |
21 | private EXTMulawMCFormats() {}
22 |
23 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTOffset.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the {@code AL_EXT_OFFSET} extension.
10 | *
11 | *
An OpenAL 1.1 implementation will always support the {@code AL_EXT_OFFSET} extension. This allows an application written to the OpenAL 1.0 specification to
12 | * access the offset abilities.
13 | */
14 | public final class EXTOffset {
15 |
16 | /** {@code AL_EXT_OFFSET} tokens. */
17 | public static final int
18 | AL_SEC_OFFSET = 0x1024,
19 | AL_SAMPLE_OFFSET = 0x1025,
20 | AL_BYTE_OFFSET = 0x1026;
21 |
22 | private EXTOffset() {}
23 |
24 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTSourceDistanceModel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the EXT_source_distance_model extension.
10 | *
11 | *
This extension allows each source to specify a distance model, instead of being restricted to one distance model for every source in the context. It
12 | * provides a mechanism for applications to apply different models to each source, without the burden of manually applying the attenuation through the
13 | * source gain.
14 | */
15 | public final class EXTSourceDistanceModel {
16 |
17 | /** Accepted by the {@code target} parameter of {@link AL10#alEnable Enable}, {@link AL10#alDisable Disable}, and {@link AL10#alIsEnabled IsEnabled}. */
18 | public static final int AL_SOURCE_DISTANCE_MODEL = 0x200;
19 |
20 | private EXTSourceDistanceModel() {}
21 |
22 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTSourceRadius.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the {@code AL_EXT_SOURCE_RADIUS} extension.
10 | *
11 | *
This extension allows any mono source to be changed to be a "large" source with a radius. The source has a raised cosine shape.
12 | */
13 | public final class EXTSourceRadius {
14 |
15 | /**
16 | * Can be used with {@link AL10#alSourcef Sourcef} to set the source radius. Units are consistent with the coordinate system in use. The value must be at least zero. Use
17 | * a value of zero to reset to a point source.
18 | */
19 | public static final int AL_SOURCE_RADIUS = 0x1031;
20 |
21 | private EXTSourceRadius() {}
22 |
23 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTStereoAngles.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the {@code AL_EXT_STEREO_ANGLES} extension.
10 | *
11 | *
This extension allows any stereo source to be "steered" by setting the angles at which the left and right channels should play.
12 | */
13 | public final class EXTStereoAngles {
14 |
15 | /**
16 | * Can be used with {@link AL10#alSourcefv Sourcefv} and two angles. The angles are specified anticlockwise relative to the real front, so a normal 60degree front stage is
17 | * specified with {@code alSourcefv(sid,AL_STEREO_ANGLES,+M_PI/6,-M_PI/6)}.
18 | *
19 | *
Angles are always specified in radians, anticlockwise relative to the real front ({@link AL10#AL_SOURCE_RELATIVE SOURCE_RELATIVE} is not supported).
20 | */
21 | public static final int AL_STEREO_ANGLES = 0x1030;
22 |
23 | private EXTStereoAngles() {}
24 |
25 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/EXTVorbis.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_EXT_vorbis} extension. */
9 | public final class EXTVorbis {
10 |
11 | /** {@code AL_EXT_vorbis} tokens. */
12 | public static final int AL_FORMAT_VORBIS_EXT = 0x10003;
13 |
14 | private EXTVorbis() {}
15 |
16 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/LOKIAudioChannel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code ALC_LOKI_audio_channel} extension. */
9 | public final class LOKIAudioChannel {
10 |
11 | /** {@code ALC_LOKI_audio_channel} tokens. */
12 | public static final int
13 | ALC_CHAN_MAIN_LOKI = 0x500001,
14 | ALC_CHAN_PCM_LOKI = 0x500002,
15 | ALC_CHAN_CD_LOKI = 0x500003;
16 |
17 | private LOKIAudioChannel() {}
18 |
19 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/LOKIIMAADPCM.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_LOKI_IMA_ADPCM} extension. */
9 | public final class LOKIIMAADPCM {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_IMA_ADPCM_MONO16_EXT = 0x10000,
14 | AL_FORMAT_IMA_ADPCM_STEREO16_EXT = 0x10001;
15 |
16 | private LOKIIMAADPCM() {}
17 |
18 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/LOKIQuadriphonic.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_LOKI_quadriphonic} extension. */
9 | public final class LOKIQuadriphonic {
10 |
11 | /** Buffer formats. */
12 | public static final int
13 | AL_FORMAT_QUAD8_LOKI = 0x10004,
14 | AL_FORMAT_QUAD16_LOKI = 0x10005;
15 |
16 | private LOKIQuadriphonic() {}
17 |
18 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/LOKIWAVEFormat.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /** Native bindings to the {@code AL_LOKI_WAVE_format} extension. */
9 | public final class LOKIWAVEFormat {
10 |
11 | /** Buffer formats. */
12 | public static final int AL_FORMAT_WAVE_EXT = 0x10002;
13 |
14 | private LOKIWAVEFormat() {}
15 |
16 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/SOFTBlockAlignment.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the SOFT_block_alignment extension.
10 | *
11 | *
This extension provides a mechanism for specifying block alignment properties for sample data. This is useful for, though not strictly limited to,
12 | * ADPCM compression where the block alignment is specified in the media file header instead of the data stream, and controls the decoding process.
13 | */
14 | public final class SOFTBlockAlignment {
15 |
16 | /** Accepted by the {@code paramName} parameter of {@link AL11#alBufferi Bufferi}, {@link AL11#alBufferiv Bufferiv}, {@link AL10#alGetBufferi GetBufferi}, and {@link AL11#alGetBufferiv GetBufferiv}. */
17 | public static final int
18 | AL_UNPACK_BLOCK_ALIGNMENT_SOFT = 0x200C,
19 | AL_PACK_BLOCK_ALIGNMENT_SOFT = 0x200D;
20 |
21 | private SOFTBlockAlignment() {}
22 |
23 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/SOFTLoopPoints.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the SOFT_loop_points extension.
10 | *
11 | *
This extension allows an application to specify the offsets at which a buffer loops. Unextended OpenAL only allows for a source to loop a whole buffer,
12 | * or all buffers of a queue, which is not desirable for sounds that may want a lead-in or lead-out along with the looping portion.
13 | */
14 | public final class SOFTLoopPoints {
15 |
16 | /** Accepted by the {@code paramName} parameter of {@link AL11#alBufferiv Bufferiv} and {@link AL11#alGetBufferiv GetBufferiv}. */
17 | public static final int AL_LOOP_POINTS_SOFT = 0x2015;
18 |
19 | private SOFTLoopPoints() {}
20 |
21 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/SOFTMSADPCM.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the SOFT_MSADPCM extension.
10 | *
11 | *
This extension adds support for MSADPCM compressed sample formats.
12 | */
13 | public final class SOFTMSADPCM {
14 |
15 | /** Accepted by the {@code format} parameter of {@link AL10#alBufferData BufferData}. */
16 | public static final int
17 | AL_FORMAT_MONO_MSADPCM_SOFT = 0x1302,
18 | AL_FORMAT_STEREO_MSADPCM_SOFT = 0x1303;
19 |
20 | private SOFTMSADPCM() {}
21 |
22 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Build/desktop/audio/nopenal/SOFTOutputLimiter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright LWJGL. All rights reserved.
3 | * License terms: https://www.lwjgl.org/license
4 | * MACHINE GENERATED FILE, DO NOT EDIT
5 | */
6 | package ru.m210projects.Build.desktop.audio.nopenal;
7 |
8 | /**
9 | * Native bindings to the SOFT_output_limiter extension.
10 | *
11 | *
This extension allows an application to control OpenAL Soft's output limiter. OpenAL Soft 1.18 adds an output limiter to prevent excessive clipping on
12 | * the output, and this extension allows applications to turn it off or on.
13 | */
14 | public final class SOFTOutputLimiter {
15 |
16 | /** Accepted as part of the {@code attrList} parameter of {@link ALC10#alcCreateContext CreateContext} and {@link SOFTHRTF#alcResetDeviceSOFT ResetDeviceSOFT}, and as the {@code paramName} parameter of {@link AL10#alGetIntegerv GetIntegerv}. */
17 | public static final int ALC_OUTPUT_LIMITER_SOFT = 0x199A;
18 |
19 | private SOFTOutputLimiter() {}
20 |
21 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/BuildSmacker/Frame.java:
--------------------------------------------------------------------------------
1 | // This file is part of BuildSmacker.
2 | // Copyright (C) 2020 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // BuildSmacker is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // BuildSmacker is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with BuildSmacker. If not, see .
16 |
17 | package ru.m210projects.BuildSmacker;
18 |
19 | import java.nio.ByteBuffer;
20 |
21 | public class Frame {
22 |
23 | public ByteBuffer buf;
24 | public int size;
25 | public byte flags;
26 |
27 | public Frame(int size)
28 | {
29 | this.size = size;
30 | }
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Duke3D/Factory/DukeSoftware.java:
--------------------------------------------------------------------------------
1 | // This file is part of DukeGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // DukeGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // DukeGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with DukeGDX. If not, see .
16 |
17 | package ru.m210projects.Duke3D.Factory;
18 |
19 | import ru.m210projects.Build.Engine;
20 | import ru.m210projects.Build.Render.Software.Software;
21 |
22 | public class DukeSoftware extends Software {
23 |
24 | public DukeSoftware(Engine engine) {
25 | super(engine, new DukeMapSettings());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Duke3D/Types/Animwalltype.java:
--------------------------------------------------------------------------------
1 | // This file is part of DukeGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // DukeGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // DukeGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with DukeGDX. If not, see .
16 |
17 | package ru.m210projects.Duke3D.Types;
18 |
19 | public class Animwalltype {
20 | public short wallnum;
21 | public int tag;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Duke3D/Types/LumpInfo.java:
--------------------------------------------------------------------------------
1 | // This file is part of DukeGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // DukeGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // DukeGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with DukeGDX. If not, see .
16 |
17 | package ru.m210projects.Duke3D.Types;
18 |
19 | import ru.m210projects.Build.FileHandle.Resource;
20 |
21 | public class LumpInfo {
22 |
23 | public String name;
24 | public Resource handle;
25 | public int position, size;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Duke3D/Types/Sample.java:
--------------------------------------------------------------------------------
1 | // This file is part of DukeGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // DukeGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // DukeGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with DukeGDX. If not, see .
16 |
17 | package ru.m210projects.Duke3D.Types;
18 |
19 | import java.nio.ByteBuffer;
20 |
21 | public class Sample {
22 | public ByteBuffer ptr;
23 | public int lock;
24 | public int length, num;
25 |
26 | public int bits, rate;
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Duke3D/Types/SoundOwner.java:
--------------------------------------------------------------------------------
1 | // This file is part of DukeGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // DukeGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // DukeGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with DukeGDX. If not, see .
16 |
17 | package ru.m210projects.Duke3D.Types;
18 |
19 | import ru.m210projects.Build.Audio.Source;
20 |
21 | public class SoundOwner {
22 | public int i;
23 | public Source voice;
24 | }
25 |
--------------------------------------------------------------------------------
/src/ru/m210projects/LSP/Factory/LSPSoftware.java:
--------------------------------------------------------------------------------
1 | // This file is part of LSPGDX.
2 | // Copyright (C) 2020 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // LSPGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // LSPGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with LSPGDX. If not, see .
16 |
17 | package ru.m210projects.LSP.Factory;
18 |
19 | import ru.m210projects.Build.Engine;
20 | import ru.m210projects.Build.Render.Software.Software;
21 |
22 | public class LSPSoftware extends Software {
23 |
24 | public LSPSoftware(Engine engine) {
25 | super(engine, new LSPMapSettings());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/LSP/GdxResources.java:
--------------------------------------------------------------------------------
1 | // This file is part of LSPGDX.
2 | // Copyright (C) 2020 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // LSPGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // LSPGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with LSPGDX. If not, see .
16 |
17 | package ru.m210projects.LSP;
18 |
19 | public class GdxResources {
20 |
21 | public static final int BACKBUTTON = 9216;
22 | public static final int BACKSCALE = 16384;
23 | public static final int MOUSECURSOR = 9217;
24 | public static final int RESERVED1 = 9218;
25 | public static final int RESERVED2 = 9219;
26 |
27 | public static final int LOGO = 9220;
28 | public static final int MENUFONT = 9221;
29 |
30 | public static final String appdef = "lspgdx.def";
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Launcher/desktop/CheckFiles.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Launcher.desktop;
2 |
3 | public class CheckFiles {
4 | private boolean value;
5 | private String label;
6 |
7 | public CheckFiles(boolean value, String label) {
8 | this.value = value;
9 | this.label = label;
10 | }
11 |
12 | public boolean getValue() {
13 | return this.value;
14 | }
15 |
16 | public String getLabel() {
17 | return this.label;
18 | }
19 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Launcher/desktop/ComboItem.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Launcher.desktop;
2 |
3 | public class ComboItem {
4 | private String value;
5 | private String label;
6 |
7 | public ComboItem(String value, String label) {
8 | this.value = value;
9 | this.label = label;
10 | }
11 |
12 | public String getValue() {
13 | return this.value;
14 | }
15 |
16 | public String getLabel() {
17 | return this.label;
18 | }
19 |
20 | @Override
21 | public String toString() {
22 | return label;
23 | }
24 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Launcher/desktop/GameEntries/DisabledEntry.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Launcher.desktop.GameEntries;
2 |
3 | import ru.m210projects.Build.Pattern.BuildGame;
4 | import ru.m210projects.Build.Settings.BuildConfig;
5 |
6 | public abstract class DisabledEntry extends GameEntry {
7 |
8 | public DisabledEntry(String appname) {
9 | super(appname, "v0.0");
10 | }
11 |
12 | @Override
13 | public ResFile[] getResourceFiles() {
14 | ResFile[] resources = {
15 | new ResFile("")
16 | };
17 | return resources;
18 | }
19 |
20 | @Override
21 | public String[] getIcons() {
22 | return null;
23 | }
24 |
25 | @Override
26 | public BuildConfig buildConfig(String path) {
27 | return null;
28 | }
29 |
30 | @Override
31 | public BuildGame getGame(String[] args) {
32 | return null;
33 | }
34 |
35 | @Override
36 | public void startGame(String gamePath) {
37 |
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Launcher/desktop/GameEntries/ResFile.java:
--------------------------------------------------------------------------------
1 | //This file is part of BuildGDX.
2 | //Copyright (C) 2017-2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | //BuildGDX is free software: you can redistribute it and/or modify
5 | //it under the terms of the GNU General Public License as published by
6 | //the Free Software Foundation, either version 3 of the License, or
7 | //(at your option) any later version.
8 | //
9 | //BuildGDX is distributed in the hope that it will be useful,
10 | //but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | //GNU General Public License for more details.
13 | //
14 | //You should have received a copy of the GNU General Public License
15 | //along with BuildGDX. If not, see .
16 |
17 | package ru.m210projects.Launcher.desktop.GameEntries;
18 |
19 | public class ResFile {
20 |
21 | public int checksum = -1;
22 | public long date = -1; //file.lastModified()
23 | public String name;
24 |
25 | public ResFile(String name)
26 | {
27 | this.name = name;
28 | }
29 |
30 | public ResFile(String name, long date, int checksum)
31 | {
32 | this.name = name;
33 | this.date = date;
34 | this.checksum = checksum;
35 | }
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Launcher/desktop/PopupActionListener.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Launcher.desktop;
2 |
3 | import java.awt.event.ActionEvent;
4 | import java.awt.event.ActionListener;
5 |
6 | import javax.swing.event.PopupMenuEvent;
7 | import javax.swing.event.PopupMenuListener;
8 |
9 | class PopupActionListener implements ActionListener {
10 | public void actionPerformed(ActionEvent actionEvent) {
11 | System.out.println("Selected: " + actionEvent.getActionCommand());
12 | }
13 | }
14 |
15 | class MyPopupMenuListener implements PopupMenuListener {
16 | public void popupMenuCanceled(PopupMenuEvent popupMenuEvent) {
17 | System.out.println("Canceled");
18 | }
19 |
20 | public void popupMenuWillBecomeInvisible(PopupMenuEvent popupMenuEvent) {
21 | System.out.println("Becoming Invisible");
22 | }
23 |
24 | public void popupMenuWillBecomeVisible(PopupMenuEvent popupMenuEvent) {
25 | System.out.println("Becoming Visible");
26 | }
27 | }
--------------------------------------------------------------------------------
/src/ru/m210projects/Powerslave/Factory/PSSoftware.java:
--------------------------------------------------------------------------------
1 | // This file is part of PowerslaveGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // PowerslaveGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // PowerslaveGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with PowerslaveGDX. If not, see .
16 |
17 | package ru.m210projects.Powerslave.Factory;
18 |
19 | import ru.m210projects.Build.Engine;
20 | import ru.m210projects.Build.Render.Software.Software;
21 |
22 | public class PSSoftware extends Software {
23 |
24 | public PSSoftware(Engine engine) {
25 | super(engine, new PSMapSettings());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Powerslave/Type/FuncProc.java:
--------------------------------------------------------------------------------
1 | // This file is part of PowerslaveGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // PowerslaveGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // PowerslaveGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with PowerslaveGDX. If not, see .
16 | package ru.m210projects.Powerslave.Type;
17 |
18 | public interface FuncProc {
19 |
20 | public void run(int a1, int a2, int RunPtr);
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Powerslave/Type/ItemAnimStruct.java:
--------------------------------------------------------------------------------
1 | // This file is part of PowerslaveGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // PowerslaveGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // PowerslaveGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with PowerslaveGDX. If not, see .
16 |
17 | package ru.m210projects.Powerslave.Type;
18 |
19 | public class ItemAnimStruct {
20 | public short field_0;
21 | public short field_2;
22 |
23 | public ItemAnimStruct(int field_0, int field_2)
24 | {
25 | this.field_0 = (short) field_0;
26 | this.field_2 = (short) field_2;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Powerslave/Type/PlayerSave.java:
--------------------------------------------------------------------------------
1 | // This file is part of PowerslaveGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // PowerslaveGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // PowerslaveGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with PowerslaveGDX. If not, see .
16 |
17 | package ru.m210projects.Powerslave.Type;
18 |
19 | public class PlayerSave {
20 | public int x, y, z;
21 | public short sect, ang;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Redneck/Factory/RRSoftware.java:
--------------------------------------------------------------------------------
1 | // This file is part of DukeGDX.
2 | // Copyright (C) 2019 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // DukeGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // DukeGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with DukeGDX. If not, see .
16 |
17 | package ru.m210projects.Redneck.Factory;
18 |
19 | import ru.m210projects.Build.Engine;
20 | import ru.m210projects.Build.Render.Software.Software;
21 |
22 | public class RRSoftware extends Software {
23 |
24 | public RRSoftware(Engine engine) {
25 | super(engine, new RRMapSettings());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Redneck/Types/Animwalltype.java:
--------------------------------------------------------------------------------
1 | // This file is part of RedneckGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // RedneckGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // RedneckGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with RedneckGDX. If not, see .
16 |
17 | package ru.m210projects.Redneck.Types;
18 |
19 | public class Animwalltype {
20 | public short wallnum;
21 | public int tag;
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Redneck/Types/LumpInfo.java:
--------------------------------------------------------------------------------
1 | // This file is part of RedneckGDX.
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // RedneckGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // RedneckGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with RedneckGDX. If not, see .
16 |
17 | package ru.m210projects.Redneck.Types;
18 |
19 | import ru.m210projects.Build.FileHandle.Resource;
20 |
21 | public class LumpInfo {
22 |
23 | public String name;
24 | public int position, size;
25 | public Resource handle;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Redneck/Types/Sample.java:
--------------------------------------------------------------------------------
1 | // This file is part of RedneckGDX
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // RedneckGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // RedneckGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with RedneckGDX. If not, see .
16 |
17 | package ru.m210projects.Redneck.Types;
18 |
19 | import java.nio.ByteBuffer;
20 |
21 | public class Sample {
22 | public ByteBuffer ptr;
23 | public int lock;
24 | public int length, num;
25 |
26 | public int bits, rate;
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Redneck/Types/SoundOwner.java:
--------------------------------------------------------------------------------
1 | // This file is part of RedneckGDX
2 | // Copyright (C) 2017-2018 Alexander Makarov-[M210] (m210-2007@mail.ru)
3 | //
4 | // RedneckGDX is free software: you can redistribute it and/or modify
5 | // it under the terms of the GNU General Public License as published by
6 | // the Free Software Foundation, either version 3 of the License, or
7 | // (at your option) any later version.
8 | //
9 | // RedneckGDX is distributed in the hope that it will be useful,
10 | // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 | // GNU General Public License for more details.
13 | //
14 | // You should have received a copy of the GNU General Public License
15 | // along with RedneckGDX. If not, see .
16 |
17 | package ru.m210projects.Redneck.Types;
18 |
19 | import ru.m210projects.Build.Audio.Source;
20 |
21 | public class SoundOwner {
22 | public int i;
23 | public Source voice;
24 | }
25 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Factory/TekNetwork.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Factory;
2 |
3 | import ru.m210projects.Build.Pattern.BuildGame;
4 | import ru.m210projects.Build.Pattern.BuildNet;
5 | import ru.m210projects.Tekwar.Types.Input;
6 |
7 | public class TekNetwork extends BuildNet {
8 |
9 | public TekNetwork(BuildGame game) {
10 | super(game);
11 | }
12 |
13 | @Override
14 | public NetInput newInstance() {
15 | return new Input();
16 | }
17 |
18 | @Override
19 | public int GetPackets(byte[] data, int ptr, int len, int nPlayer) {
20 | // TODO Auto-generated method stub
21 | return 0;
22 | }
23 |
24 | @Override
25 | public void UpdatePrediction(NetInput input) {
26 | // TODO Auto-generated method stub
27 |
28 | }
29 |
30 | @Override
31 | public void CalcChecksum() {
32 | // TODO Auto-generated method stub
33 |
34 | }
35 |
36 | @Override
37 | public void CorrectPrediction() {
38 | // TODO Auto-generated method stub
39 |
40 | }
41 |
42 | @Override
43 | public void ComputerInput(int i) {
44 | // TODO Auto-generated method stub
45 |
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Menus/MenuAbort.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Menus;
2 |
3 | import ru.m210projects.Build.Pattern.BuildGame;
4 | import ru.m210projects.Build.Pattern.MenuItems.BuildMenu;
5 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler;
6 | import ru.m210projects.Build.Pattern.MenuItems.MenuText;
7 | import ru.m210projects.Build.Pattern.MenuItems.MenuVariants;
8 |
9 | import static ru.m210projects.Tekwar.Tekmap.*;
10 |
11 | public class MenuAbort extends BuildMenu {
12 |
13 | public MenuAbort(final BuildGame game)
14 | {
15 | MenuText QuitQuestion = new MenuText("Abort mission?", game.getFont(0), 160, 50, 1);
16 | QuitQuestion.pal = 3;
17 | MenuVariants QuitVariants = new MenuVariants(game.pEngine, "[Y/N]", game.getFont(0), 160, 60) {
18 | @Override
19 | public void positive(MenuHandler menu) {
20 | gameover = 1;
21 | game.pInput.ctrlResetKeyStatus();
22 | menu.mClose();
23 | }
24 | };
25 | QuitVariants.pal = 3;
26 |
27 | addItem(QuitQuestion, false);
28 | addItem(QuitVariants, true);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Menus/MenuQuit.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Menus;
2 |
3 | import static ru.m210projects.Tekwar.Main.*;
4 | import ru.m210projects.Build.Pattern.BuildGame;
5 | import ru.m210projects.Build.Pattern.MenuItems.BuildMenu;
6 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler;
7 | import ru.m210projects.Build.Pattern.MenuItems.MenuText;
8 | import ru.m210projects.Build.Pattern.MenuItems.MenuTitle;
9 | import ru.m210projects.Build.Pattern.MenuItems.MenuVariants;
10 |
11 | public class MenuQuit extends BuildMenu {
12 |
13 | public MenuQuit(final BuildGame game)
14 | {
15 | MenuTitle QuitTitle = new MenuTitle(game.pEngine, "Quit game", game.getFont(0), 160, 15, -1);
16 | QuitTitle.pal = 3;
17 | MenuText QuitQuestion = new MenuText("Do you really want to quit?", game.getFont(0), 160, 50, 1);
18 | QuitQuestion.pal = 3;
19 | MenuVariants QuitVariants = new MenuVariants(game.pEngine, "[Y/N]", game.getFont(0), 160, 60) {
20 | @Override
21 | public void positive(MenuHandler menu) {
22 | game.changeScreen(gCreditsScreen);
23 | menu.mClose();
24 | }
25 | };
26 | QuitVariants.pal = 3;
27 | addItem(QuitTitle, false);
28 | addItem(QuitQuestion, false);
29 | addItem(QuitVariants, true);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Menus/TekMenuMouse.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Menus;
2 |
3 | import ru.m210projects.Build.Pattern.BuildGame;
4 | import ru.m210projects.Build.Pattern.CommonMenus.MenuMouse;
5 | import ru.m210projects.Build.Pattern.MenuItems.MenuTitle;
6 |
7 | public class TekMenuMouse extends MenuMouse {
8 |
9 | public TekMenuMouse(BuildGame app) {
10 | super(app, 40, 20, 240, app.getFont(0).getHeight() + 4, app.getFont(0).getHeight(), app.getFont(0), 0);
11 | }
12 |
13 | @Override
14 | public MenuTitle getTitle(BuildGame app, String text) {
15 | MenuTitle title = new MenuTitle(app.pEngine, text, app.getFont(0), 160, 15, -1);
16 | title.pal = 3;
17 |
18 | return title;
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Screens/LoadingScreen.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Screens;
2 |
3 | import static ru.m210projects.Build.Engine.xdim;
4 | import static ru.m210projects.Build.Engine.ydim;
5 | import static ru.m210projects.Tekwar.Names.BACKGROUND;
6 |
7 | import ru.m210projects.Build.Pattern.BuildFont.TextAlign;
8 | import ru.m210projects.Build.Pattern.BuildGame;
9 | import ru.m210projects.Build.Pattern.ScreenAdapters.LoadingAdapter;
10 | import ru.m210projects.Build.Types.Tile;
11 |
12 | public class LoadingScreen extends LoadingAdapter {
13 |
14 | public LoadingScreen(BuildGame game) {
15 | super(game);
16 | }
17 |
18 | @Override
19 | public void draw(String title, float delta) {
20 | Tile pic = engine.getTile(BACKGROUND);
21 |
22 | int frames = xdim / pic.getWidth();
23 | int x = 160;
24 | for (int i = 0; i <= frames; i++) {
25 | engine.rotatesprite(x << 16, 100 << 16, 0x10000, 0, BACKGROUND, 0, 0, 2 + 8 + 256, 0, 0, xdim - 1,
26 | ydim - 1);
27 | x += pic.getWidth();
28 | }
29 |
30 | game.getFont(0).drawText(160, 100, "Loading...".toCharArray(), 0, 0, TextAlign.Center, 0, false);
31 | }
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/ANIMATION.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | public class ANIMATION {
4 |
5 | public static final int WALLX = 1 << 0;
6 | public static final int WALLY = 1 << 1;
7 | public static final int FLOORZ = 1 << 2;
8 | public static final int CEILZ = 1 << 3;
9 |
10 | public Object ptr;
11 | public short id;
12 | public byte type;
13 | public int goal;
14 | public int vel;
15 | public int acc;
16 |
17 | public ANIMATION copy(ANIMATION src)
18 | {
19 | this.ptr = src.ptr;
20 | this.id = src.id;
21 | this.type = src.type;
22 | this.goal = src.goal;
23 | this.vel = src.vel;
24 | this.acc = src.acc;
25 |
26 | return this;
27 | }
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/Delayfunc.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import java.nio.ByteBuffer;
4 | import java.nio.ByteOrder;
5 |
6 | import ru.m210projects.Build.FileHandle.Resource;
7 |
8 | public class Delayfunc {
9 |
10 | private static ByteBuffer buffer;
11 | public static final int sizeof = 8;
12 |
13 | public short func;
14 | public int tics;
15 | public short parm;
16 |
17 | public void set(Delayfunc src) {
18 | func = src.func;
19 | tics = src.tics;
20 | parm = src.parm;
21 | }
22 |
23 | public void load(Resource bb) {
24 | func = bb.readShort();
25 | tics = bb.readInt();
26 | parm = bb.readShort();
27 | }
28 |
29 | public void set(int var) {
30 | func = (short) var;
31 | tics = var;
32 | parm = (short) var;
33 | }
34 |
35 | public byte[] getBytes()
36 | {
37 | if(buffer == null) {
38 | buffer = ByteBuffer.allocate(sizeof);
39 | buffer.order( ByteOrder.LITTLE_ENDIAN);
40 | }
41 | buffer.clear();
42 |
43 | buffer.putShort(func);
44 | buffer.putInt(tics);
45 | buffer.putShort(parm);
46 |
47 | return buffer.array();
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/Demo.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import static ru.m210projects.Build.Engine.*;
4 |
5 |
6 | public class Demo {
7 |
8 | public static boolean recstat;
9 | public static int reccnt;
10 |
11 | public static Input pDemoInput[][] = new Input[16384][MAXPLAYERS];
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/Elevatortype.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import java.nio.ByteBuffer;
4 | import java.nio.ByteOrder;
5 |
6 | import ru.m210projects.Build.FileHandle.Resource;
7 |
8 | public class Elevatortype {
9 |
10 | private static ByteBuffer buffer;
11 | public static final byte sizeof = 8;
12 |
13 | public int hilevel;
14 | public int lolevel;
15 |
16 | public void reset() {
17 | hilevel = 0;
18 | lolevel = 0;
19 | }
20 |
21 | public void load(Resource bb) {
22 | hilevel = bb.readInt();
23 | lolevel = bb.readInt();
24 | }
25 |
26 | public byte[] getBytes()
27 | {
28 | if(buffer == null) {
29 | buffer = ByteBuffer.allocate(sizeof);
30 | buffer.order( ByteOrder.LITTLE_ENDIAN);
31 | }
32 | buffer.clear();
33 |
34 | buffer.putInt(hilevel);
35 | buffer.putInt(lolevel);
36 |
37 | return buffer.array();
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/Guntype.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | public class Guntype {
4 | public short pic; // gun frame when carrying weapon
5 | public short firepic; // 1st gun frame when firing weapon
6 | public short endfirepic; // last gun frame when firing weapon
7 | public byte rep; // 1=automatic weapon, 0=semi-automatic
8 | public byte[] action; // 8 frame action bytes - 1=shootgun()
9 | public byte pos; // position on screen 0=center, 1=left, 2=right
10 | public short tics;
11 |
12 | public Guntype(int pic, int firepic, int endfirepic, int rep, byte[] action, int pos, int tics) {
13 | this.pic = (short) pic;
14 | this.firepic = (short) firepic;
15 | this.endfirepic = (short) endfirepic;
16 | this.rep = (byte) rep;
17 | this.action = action;
18 | this.pos = (byte) pos;
19 | this.tics = (short) tics;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/LSInfo.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import ru.m210projects.Build.FileHandle.Resource;
4 |
5 | public class LSInfo {
6 | public int level;
7 | public int skill;
8 | public String info;
9 | public String date;
10 |
11 | public void read(Resource bb)
12 | {
13 | level = bb.readInt();
14 | skill = bb.readInt();
15 | update();
16 | }
17 |
18 | public void update()
19 | {
20 | info = "Map:" + level + " / Skill:" + skill;
21 | }
22 |
23 | public void clear()
24 | {
25 | skill = 0;
26 | level = 0;
27 | info = "Empty slot";
28 | date = null;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/Songtype.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import ru.m210projects.Build.Audio.MusicSource;
4 |
5 | public class Songtype {
6 | public MusicSource handle;
7 | // public int handle;
8 | public int offset;
9 | public byte[] buffer;
10 | public int length;
11 | }
12 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/Soundtype.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import ru.m210projects.Build.Audio.Source;
4 |
5 | public class Soundtype {
6 | public Source hVoice;
7 |
8 | public int sndnum;
9 | public int x, y;
10 | public short type;
11 | public float loop;
12 | }
13 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/Startspottype.java:
--------------------------------------------------------------------------------
1 |
2 | package ru.m210projects.Tekwar.Types;
3 |
4 | public class Startspottype {
5 | public int x;
6 | public int y;
7 | public int z;
8 | public short sectnum;
9 | }
10 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/XTsavetype.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import static ru.m210projects.Tekwar.Tekprep.spriteXT;
4 |
5 | import ru.m210projects.Build.FileHandle.Resource;
6 |
7 | public class XTsavetype {
8 | public static final int sizeof = 2 + SpriteXT.sizeof;
9 | public short XTnum;
10 |
11 | public boolean load(Resource data) {
12 | Short val = data.readShort();
13 | if(val == null) return false;
14 |
15 | XTnum = val;
16 | spriteXT[XTnum].load(data);
17 | return true;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Tekwar/Types/XTtrailertype.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Tekwar.Types;
2 |
3 | import ru.m210projects.Build.Types.LittleEndian;
4 |
5 | public class XTtrailertype {
6 | public static final int sizeof = 34;
7 | public int numXTs; //4
8 | public int start; //8
9 | public String mapname; //[13] 21
10 | public String ID; //[13] 34
11 |
12 | public void load(byte[] data)
13 | {
14 | numXTs = LittleEndian.getInt(data, 0);
15 | start = LittleEndian.getInt(data, 4);
16 | mapname = new String(data, 8, 13);
17 | ID = new String(data, 21, 13);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Enemies/Decision.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Enemies;
2 |
3 | import ru.m210projects.Wang.Type.Animator;
4 |
5 | public class Decision {
6 | public short range;
7 | public Animator action;
8 |
9 | public Decision(int range, Animator action)
10 | {
11 | this.range = (short) range;
12 | this.action = action;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Enemies/Personality.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Enemies;
2 |
3 | import ru.m210projects.Wang.Type.Saveable;
4 |
5 | public class Personality extends Saveable {
6 |
7 | public final Decision[] Battle;
8 | public final Decision[] Offense;
9 | public final Decision[] Broadcast;
10 | public final Decision[] Surprised;
11 | public final Decision[] Evasive;
12 | public final Decision[] LostTarget;
13 | public final Decision[] CloseRange;
14 | public final Decision[] TouchTarget;
15 |
16 | public Personality(Decision[] Battle, Decision[] Offense, Decision[] Broadcast, Decision[] Surprised, Decision[] Evasive,
17 | Decision[] LostTarget, Decision[] CloseRange, Decision[] TouchTarget) {
18 | this.Battle = Battle;
19 | this.Offense = Offense;
20 | this.Broadcast = Broadcast;
21 | this.Surprised = Surprised;
22 | this.Evasive = Evasive;
23 | this.LostTarget = LostTarget;
24 | this.CloseRange = CloseRange;
25 | this.TouchTarget = TouchTarget;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Factory/WangInterpolation.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Factory;
2 |
3 | import ru.m210projects.Build.Pattern.Tools.Interpolation;
4 | import ru.m210projects.Build.Types.SPRITE;
5 |
6 | public abstract class WangInterpolation extends Interpolation {
7 |
8 | public abstract int getSkipValue();
9 |
10 | public abstract int getSkipMax();
11 |
12 | public void requestUpdating() {
13 | if(getSkipValue() != (getSkipMax() - 1)) return;
14 | requestUpdating = true;
15 | }
16 |
17 | @Override
18 | public void dospriteinterp(SPRITE tsp, int smoothratio) {
19 | smoothratio += getSkipValue() << 16;
20 | smoothratio /= getSkipMax();
21 |
22 | super.dospriteinterp(tsp, smoothratio);
23 | }
24 |
25 | @Override
26 | public void dointerpolations(float smoothratio) {
27 | smoothratio += getSkipValue() << 16;
28 | smoothratio /= getSkipMax();
29 |
30 | super.dointerpolations(smoothratio);
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Factory/WangSoftware.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Factory;
2 |
3 | import ru.m210projects.Build.Engine;
4 | import ru.m210projects.Build.Render.Software.Software;
5 |
6 | public class WangSoftware extends Software {
7 |
8 | public WangSoftware(Engine engine) {
9 | super(engine, new WangMapSettings());
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Fonts/MiniFont.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Fonts;
2 |
3 | import static ru.m210projects.Wang.Names.MINIFONT;
4 |
5 | import ru.m210projects.Build.Engine;
6 | import ru.m210projects.Build.Pattern.BuildFont;
7 |
8 | public class MiniFont extends BuildFont {
9 |
10 | public MiniFont(Engine draw) {
11 | super(draw, draw.getTile(MINIFONT).getHeight() + 2, 65536, 8 | 16);
12 |
13 | this.addChar(' ', nSpace, 5, nScale, 0, 0);
14 | int nTile = MINIFONT;
15 |
16 | for(int i = 0; i < 64; i++) {
17 | char symbol = (char) (i + '!');
18 | int w = draw.getTile(nTile + i).getWidth();
19 | if(w != 0)
20 | this.addChar(symbol, nTile + i, w + 1, nScale, 0, 0);
21 | }
22 | for(int i = 64; i < 90; i++) {
23 | char symbol = (char) (i + '!');
24 | int w = draw.getTile(nTile + i - 32).getWidth();
25 | if(w != 0)
26 | this.addChar(symbol, nTile + i - 32, w + 1, nScale, 0, 0);
27 | }
28 | for(int i = 90; i < 95; i++) {
29 | char symbol = (char) (i + '!');
30 | int w = draw.getTile(nTile + i).getWidth();
31 | if(w != 0)
32 | this.addChar(symbol, nTile + i, w + 1, nScale, 0, 0);
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/MenuCredits.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import ru.m210projects.Build.Pattern.MenuItems.BuildMenu;
4 | import ru.m210projects.Wang.Main;
5 |
6 | public class MenuCredits extends BuildMenu {
7 |
8 | public MenuCredits(Main app)
9 | {
10 | MenuPage mPages[] = new MenuPage[6];
11 |
12 | mPages[0] = new MenuPage(0, 0, 5262);
13 | mPages[1] = new MenuPage(0, 0, 5261);
14 | mPages[2] = new MenuPage(0, 0, 4979);
15 |
16 | mPages[3] = new MenuPage(0, 0, 5111);
17 | mPages[4] = new MenuPage(0, 0, 5118);
18 | mPages[5] = new MenuPage(0, 0, 5113);
19 |
20 | for(int i = 0; i < mPages.length; i++) {
21 | mPages[i].flags |= 10;
22 | addItem(mPages[i], i == 0);
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/MenuJoystick.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import ru.m210projects.Wang.Main;
4 | import ru.m210projects.Build.Input.Keymap;
5 | import ru.m210projects.Build.Pattern.BuildGame;
6 | import ru.m210projects.Build.Pattern.MenuItems.MenuTitle;
7 |
8 | public class MenuJoystick extends ru.m210projects.Build.Pattern.CommonMenus.MenuJoystick {
9 |
10 | public MenuJoystick(Main app) {
11 | super(app, 35, 50, 250, 10, 15, app.getFont(1), 14);
12 |
13 | mList.menupal = 19;
14 |
15 | mJoyKey.align = 0;
16 | mJoyKey.x = 35;
17 |
18 | mJoyDevices.listFont = app.getFont(0);
19 | mList.pal_left = mList.pal_right = 16;
20 | mText.font = mText2.font = app.getFont(1);
21 | mText.y -= 10;
22 | mText2.y -= 10;
23 | }
24 |
25 | @Override
26 | public MenuTitle getTitle(BuildGame app, String text) {
27 | return new WangTitle(text);
28 | }
29 |
30 | @Override
31 | public String keyNames(int keycode) {
32 | return Keymap.toString(keycode);
33 | }
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/MenuMenuKeyboard.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import ru.m210projects.Wang.Main;
4 |
5 | import static com.badlogic.gdx.Input.Keys.BACKSPACE;
6 |
7 | import ru.m210projects.Build.Input.Keymap;
8 | import ru.m210projects.Build.Pattern.BuildGame;
9 | import ru.m210projects.Build.Pattern.CommonMenus.MenuKeyboard;
10 | import ru.m210projects.Build.Pattern.MenuItems.MenuTitle;
11 |
12 | public class MenuMenuKeyboard extends MenuKeyboard {
13 |
14 | public MenuMenuKeyboard(Main app) {
15 | super(app, 35, 40, 250, 14, app.getFont(1));
16 |
17 | mList.pal_left = 20;
18 | mList.pal_right = 16;
19 |
20 | mText.y -= 10;
21 | mText.pal = 16;
22 | mText2.y -= 10;
23 | mText2.pal = 16;
24 | }
25 |
26 | @Override
27 | public MenuTitle getTitle(BuildGame app, String text) {
28 | return new WangTitle(text);
29 | }
30 |
31 | @Override
32 | public String keyNames(int keycode) {
33 |
34 | if(keycode == BACKSPACE)
35 | return "BkSpace";
36 |
37 | return Keymap.toString(keycode);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/MenuMouse.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import ru.m210projects.Wang.Main;
4 | import ru.m210projects.Build.Pattern.BuildGame;
5 | import ru.m210projects.Build.Pattern.MenuItems.MenuTitle;
6 |
7 | public class MenuMouse extends ru.m210projects.Build.Pattern.CommonMenus.MenuMouse {
8 |
9 | public MenuMouse(Main app) {
10 | super(app, 35, 40, 250, 10, 5, app.getFont(1), 0);
11 |
12 | mMove.text = "Forw/Backw speed".toCharArray();
13 | mAdvance.align = 0;
14 | mAdvance.x = 35;
15 | }
16 |
17 | @Override
18 | public MenuTitle getTitle(BuildGame app, String text) {
19 | return new WangTitle(text);
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/MenuOptions.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import static ru.m210projects.Wang.Factory.WangMenuHandler.*;
4 |
5 | import ru.m210projects.Build.Pattern.MenuItems.BuildMenu;
6 | import ru.m210projects.Build.Pattern.MenuItems.MenuButton;
7 | import ru.m210projects.Wang.Main;
8 | import ru.m210projects.Wang.Factory.WangMenuHandler;
9 |
10 | public class MenuOptions extends BuildMenu {
11 |
12 | public MenuOptions(Main app)
13 | {
14 | final WangMenuHandler menu = (WangMenuHandler) app.menu;
15 | int pos = 30;
16 |
17 | addItem(new WangTitle("Options"), false);
18 | addItem(new MenuButton("GAME SETUP", app.getFont(2), 55, pos += 16, 320, 0, 0, new MenuGameSetup(app), 1, null, 0), true);
19 | addItem(new MenuButton("INTERFACE SETUP", app.getFont(2), 55, pos += 16, 320, 0, 0, new MenuInterface(app), 1, null, 0), false);
20 | addItem(new MenuButton("AUDIO SETUP", app.getFont(2), 55, pos += 16, 320, 0, 0, menu.mMenus[SOUNDSET], 1, null, 0), false);
21 | addItem(new MenuButton("VIDEO SETUP", app.getFont(2), 55, pos += 16, 320, 0, 0, new MenuVideoMode(app), 1, null, 0), false);
22 | addItem(new MenuButton("CONTROL SETUP", app.getFont(2), 55, pos += 16, 320, 0, 0, new MenuControls(app), 1, null, 0), false);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/MenuPage.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import static ru.m210projects.Build.Engine.xdim;
4 | import static ru.m210projects.Build.Engine.ydim;
5 | import static ru.m210projects.Wang.Main.engine;
6 |
7 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler;
8 | import ru.m210projects.Build.Pattern.MenuItems.MenuTitle;
9 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler.MenuOpt;
10 |
11 | public class MenuPage extends MenuTitle {
12 |
13 | public MenuPage(int x, int y, int nTile) {
14 | super(engine, null, null, x, y, nTile);
15 | }
16 |
17 | @Override
18 | public void draw(MenuHandler handler) {
19 | engine.rotatesprite(x << 16, y << 16, 65536, 0, nTile, -128, 0, 10 | 16, 0, 0, xdim - 1, ydim - 1);
20 | }
21 |
22 | @Override
23 | public boolean callback(MenuHandler handler, MenuOpt opt) {
24 | switch(opt) {
25 | case LEFT:
26 | case BSPACE:
27 | case RMB:
28 | m_pMenu.mNavUp();
29 | return false;
30 | case RIGHT:
31 | case ENTER:
32 | case SPACE:
33 | case LMB:
34 | m_pMenu.mNavDown();
35 | return false;
36 | case UP:
37 | case DW:
38 | case ESC:
39 | case DELETE:
40 | return m_pMenu.mNavigation(opt);
41 | default:
42 | return false;
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/Network/MenuMultiplayer.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus.Network;
2 |
3 | import ru.m210projects.Build.Pattern.MenuItems.BuildMenu;
4 | import ru.m210projects.Build.Pattern.MenuItems.MenuButton;
5 | import ru.m210projects.Wang.Main;
6 | import ru.m210projects.Wang.Menus.WangTitle;
7 |
8 | public class MenuMultiplayer extends BuildMenu {
9 |
10 | public MenuMultiplayer(Main app) {
11 | int pos = 45;
12 |
13 | addItem(new WangTitle("Multiplayer"), false);
14 | addItem(new MenuButton("New game", app.getFont(2), 55, pos += 17, 240, 0, 0, new MenuCreate(app), -1, null, 0), true);
15 | addItem(new MenuButton("Join a game", app.getFont(2), 55, pos += 17, 240, 0, 0, new MenuJoin(app), -1, null, 0), false);
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/WangEpisodeButton.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import ru.m210projects.Build.Pattern.BuildFont.TextAlign;
4 | import ru.m210projects.Build.Pattern.MenuItems.MenuButton;
5 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler;
6 | import ru.m210projects.Build.Pattern.MenuItems.MenuProc;
7 | import ru.m210projects.Wang.Main;
8 | import ru.m210projects.Wang.Type.GameInfo;
9 |
10 | public class WangEpisodeButton extends MenuButton {
11 |
12 | private Main app;
13 | public GameInfo game;
14 | private String description;
15 |
16 | public WangEpisodeButton(Main app, int x, int y, GameInfo info, MenuProc newEpProc, int epnum)
17 | {
18 | super(info.episode[epnum].Title, app.getFont(2), x, y, 320, 0, 0, null, -1, newEpProc, epnum);
19 |
20 | this.app = app;
21 | this.description = info.episode[epnum].Description;
22 | game = info;
23 | }
24 |
25 | @Override
26 | public void draw(MenuHandler handler) {
27 | super.draw(handler);
28 |
29 | app.getFont(1).drawText(x, y + 17, description, 0, 4, TextAlign.Left, 2, false);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/WangSwitch.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 |
4 | import static ru.m210projects.Build.Engine.*;
5 | import static ru.m210projects.Wang.Main.*;
6 |
7 | import ru.m210projects.Build.Pattern.BuildFont;
8 | import ru.m210projects.Build.Pattern.BuildFont.TextAlign;
9 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler;
10 | import ru.m210projects.Build.Pattern.MenuItems.MenuProc;
11 | import ru.m210projects.Build.Pattern.MenuItems.MenuSwitch;
12 | import ru.m210projects.Build.Types.Tile;
13 |
14 | public class WangSwitch extends MenuSwitch {
15 |
16 | public WangSwitch(Object text, BuildFont font, int x, int y, int width, boolean value, MenuProc callback) {
17 | super(text, font, x, y, width, value, callback, null, null);
18 | }
19 |
20 | @Override
21 | public void draw(MenuHandler handler) {
22 | int shade = handler.getShade(this);
23 | if ( text != null )
24 | font.drawText(x, y, text, shade, 16, TextAlign.Left, 2, fontShadow);
25 |
26 | Tile pic = engine.getTile(2849);
27 | engine.rotatesprite((x + width - 1 - pic.getWidth()) << 16, (y + (font.getHeight() - pic.getHeight()) / 2) << 16, 65536, 0, 2849, value ? 0 : 20, 0, 10, 0, 0, xdim-1, ydim-1);
28 | handler.mPostDraw(this);
29 | }
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Menus/WangTitle.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Menus;
2 |
3 | import static ru.m210projects.Build.Engine.*;
4 | import static ru.m210projects.Wang.Main.*;
5 |
6 | import ru.m210projects.Build.Pattern.BuildFont.TextAlign;
7 | import ru.m210projects.Build.Pattern.MenuItems.MenuHandler;
8 | import ru.m210projects.Build.Pattern.MenuItems.MenuTitle;
9 |
10 | public class WangTitle extends MenuTitle {
11 |
12 | public WangTitle(Object text) {
13 | super(engine, text, game.getFont(2), 160, 10, 2427);
14 | }
15 |
16 | @Override
17 | public void draw(MenuHandler handler) {
18 | if ( text != null )
19 | {
20 | draw.rotatesprite(x << 16, y << 16, 65536, 0, nTile, 0, 0, 10, 0, 0, xdim - 1, ydim - 1);
21 | font.drawText(x, y - (draw.getTile(2427).getHeight() - font.getHeight()) / 2, text, -128, 0, TextAlign.Center, 2, fontShadow);
22 | }
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Screens/LogoAScreen.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Screens;
2 |
3 | import static ru.m210projects.Wang.Main.gs;
4 | import static ru.m210projects.Wang.Names.THREED_REALMS_PIC;
5 | import static ru.m210projects.Wang.Sound.CDAudio_Play;
6 | import static ru.m210projects.Wang.Sound.StopSound;
7 |
8 | import ru.m210projects.Build.Architecture.BuildGdx;
9 | import ru.m210projects.Build.FileHandle.Resource;
10 | import ru.m210projects.Build.Pattern.BuildGame;
11 | import ru.m210projects.Build.Pattern.ScreenAdapters.LogoScreen;
12 | import ru.m210projects.Build.Render.GLRenderer.GLInvalidateFlag;
13 |
14 | public class LogoAScreen extends LogoScreen {
15 |
16 | public LogoAScreen(BuildGame game, float gShowTime)
17 | {
18 | super(game, gShowTime);
19 | this.setTile(THREED_REALMS_PIC);
20 | }
21 |
22 | @Override
23 | public void show()
24 | {
25 | super.show();
26 |
27 | StopSound();
28 | CDAudio_Play(2, true);
29 |
30 | Resource fil = BuildGdx.cache.open("3drealms.pal", 0);
31 | if(fil != null) {
32 | byte[] pal = new byte[768];
33 | fil.read(pal);
34 | fil.close();
35 | engine.setbrightness(gs.brightness, pal, GLInvalidateFlag.All);
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Type/ATTRIBUTE.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Type;
2 |
3 | import ru.m210projects.Wang.Ai.Attrib_Snds;
4 |
5 | public class ATTRIBUTE extends Saveable {
6 |
7 | public final short[] Speed;
8 | public final short[] TicAdjust;
9 | public final int MaxWeapons;
10 | private final int[] Sounds;
11 |
12 | public ATTRIBUTE(short[] Speed, short[] TicAdjust, int MaxWeapons, int[] Sounds) {
13 | this.Speed = Speed;
14 | this.TicAdjust = TicAdjust;
15 | this.MaxWeapons = MaxWeapons;
16 | this.Sounds = Sounds;
17 | }
18 |
19 | public int getSound(Attrib_Snds ndx)
20 | {
21 | int index = ndx.ordinal();
22 | if(index < Sounds.length)
23 | return Sounds[index];
24 | return 0;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Type/Amb_Info.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Type;
2 |
3 | public class Amb_Info {
4 | public int name;
5 | public int diginame;
6 | public int ambient_flags;
7 | public int maxtics; // When tics reaches this number next
8 |
9 | public Amb_Info(int name, int diginame, int ambient_flags, int maxtics)
10 | {
11 | this.name = name;
12 | this.diginame = diginame;
13 | this.ambient_flags = ambient_flags;
14 | this.maxtics = maxtics;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Type/Animator.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Type;
2 |
3 | public abstract class Animator extends Saveable {
4 |
5 | public abstract boolean invoke(int spr);
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/src/ru/m210projects/Wang/Type/Break_Info.java:
--------------------------------------------------------------------------------
1 | package ru.m210projects.Wang.Type;
2 |
3 | public class Break_Info implements Comparable