├── .gitattributes
├── .gitignore
├── .travis.yml
├── HEADER.txt
├── LICENSE.txt
├── api
├── pom.xml
└── src
│ ├── main
│ └── java
│ │ └── org
│ │ └── spout
│ │ └── api
│ │ ├── Client.java
│ │ ├── ClientOnly.java
│ │ ├── Engine.java
│ │ ├── Platform.java
│ │ ├── Server.java
│ │ ├── ServerOnly.java
│ │ ├── Spout.java
│ │ ├── ai
│ │ ├── AStarGoal.java
│ │ ├── AStarMachine.java
│ │ ├── AStarNode.java
│ │ ├── AStarStorage.java
│ │ ├── Agent.java
│ │ ├── Plan.java
│ │ ├── Sensor.java
│ │ ├── SimpleAStarStorage.java
│ │ ├── UnboundedAStarGoal.java
│ │ ├── goap
│ │ │ ├── Action.java
│ │ │ ├── ActionPlan.java
│ │ │ ├── ActionPlanner.java
│ │ │ ├── Goal.java
│ │ │ ├── GoapAIComponent.java
│ │ │ ├── PlannerAgent.java
│ │ │ ├── PlannerGoal.java
│ │ │ ├── PlannerNode.java
│ │ │ ├── SimpleActionPlanner.java
│ │ │ └── WorldState.java
│ │ └── pathfinder
│ │ │ ├── AbstractBlockSource.java
│ │ │ ├── BlockExaminer.java
│ │ │ ├── BlockSource.java
│ │ │ ├── Path.java
│ │ │ ├── PathPoint.java
│ │ │ ├── SpoutBlockSource.java
│ │ │ ├── VectorGoal.java
│ │ │ └── VectorNode.java
│ │ ├── audio
│ │ ├── Sound.java
│ │ ├── SoundListener.java
│ │ ├── SoundManager.java
│ │ ├── SoundSource.java
│ │ └── SoundState.java
│ │ ├── collision
│ │ └── SpoutContactInfo.java
│ │ ├── command
│ │ ├── Command.java
│ │ ├── CommandArguments.java
│ │ ├── CommandBatch.java
│ │ ├── CommandFlags.java
│ │ ├── CommandManager.java
│ │ ├── CommandSource.java
│ │ ├── Executor.java
│ │ ├── annotated
│ │ │ ├── AnnotatedCommandExecutor.java
│ │ │ ├── AnnotatedCommandExecutorFactory.java
│ │ │ ├── Binding.java
│ │ │ ├── CommandDescription.java
│ │ │ ├── Filter.java
│ │ │ ├── Flag.java
│ │ │ ├── Permissible.java
│ │ │ └── Platforms.java
│ │ └── filter
│ │ │ ├── CommandFilter.java
│ │ │ ├── CommandSourceFilter.java
│ │ │ └── PlayerFilter.java
│ │ ├── component
│ │ ├── BaseComponentOwner.java
│ │ ├── BlockComponentOwner.java
│ │ ├── Component.java
│ │ ├── ComponentOwner.java
│ │ ├── block
│ │ │ └── BlockComponent.java
│ │ ├── entity
│ │ │ ├── AIComponent.java
│ │ │ ├── AnimationComponent.java
│ │ │ ├── CameraComponent.java
│ │ │ ├── EntityComponent.java
│ │ │ ├── InteractComponent.java
│ │ │ ├── ModelComponent.java
│ │ │ ├── NavigationComponent.java
│ │ │ ├── NetworkComponent.java
│ │ │ ├── PhysicsComponent.java
│ │ │ ├── PlayerNetworkComponent.java
│ │ │ └── TextModelComponent.java
│ │ ├── widget
│ │ │ ├── ControlComponent.java
│ │ │ ├── LabelComponent.java
│ │ │ ├── RenderPartComponent.java
│ │ │ ├── RenderPartPacksComponent.java
│ │ │ ├── SliderComponent.java
│ │ │ ├── SpinnerComponent.java
│ │ │ ├── TextFieldComponent.java
│ │ │ ├── WidgetComponent.java
│ │ │ ├── button
│ │ │ │ ├── ButtonComponent.java
│ │ │ │ ├── CheckBoxComponent.java
│ │ │ │ └── RadioComponent.java
│ │ │ └── list
│ │ │ │ ├── ComboBoxComponent.java
│ │ │ │ └── ItemListComponent.java
│ │ └── world
│ │ │ ├── SkydomeComponent.java
│ │ │ └── WorldComponent.java
│ │ ├── data
│ │ ├── Data.java
│ │ ├── DataProvider.java
│ │ ├── DataSubject.java
│ │ ├── DataValue.java
│ │ ├── ValueHolder.java
│ │ ├── ValueHolderBase.java
│ │ └── defaultedkeys
│ │ │ └── ItemStackDefaultedKey.java
│ │ ├── datatable
│ │ ├── ManagedHashMap.java
│ │ ├── ManagedMap.java
│ │ ├── SerializableHashMap.java
│ │ ├── SerializableMap.java
│ │ └── delta
│ │ │ └── DeltaMap.java
│ │ ├── entity
│ │ ├── Entity.java
│ │ ├── EntityPrefab.java
│ │ ├── EntitySnapshot.java
│ │ ├── Player.java
│ │ ├── PlayerSnapshot.java
│ │ ├── spawn
│ │ │ ├── CircleSpawnArrangement.java
│ │ │ ├── DiscSpawnArrangement.java
│ │ │ ├── GenericSpawnArrangement.java
│ │ │ ├── SpawnArrangement.java
│ │ │ └── SpiralSpawnArrangement.java
│ │ └── state
│ │ │ └── PlayerInputState.java
│ │ ├── event
│ │ ├── Cancellable.java
│ │ ├── Cause.java
│ │ ├── Event.java
│ │ ├── EventExecutor.java
│ │ ├── EventHandler.java
│ │ ├── EventManager.java
│ │ ├── HandlerList.java
│ │ ├── Listener.java
│ │ ├── ListenerRegistration.java
│ │ ├── Order.java
│ │ ├── ProtocolEvent.java
│ │ ├── Result.java
│ │ ├── SimpleEventManager.java
│ │ ├── audio
│ │ │ ├── SoundBindEvent.java
│ │ │ ├── SoundDisposeEvent.java
│ │ │ ├── SoundEvent.java
│ │ │ └── SoundStateChangeEvent.java
│ │ ├── block
│ │ │ ├── BlockChangeEvent.java
│ │ │ ├── BlockEvent.java
│ │ │ └── CuboidChangeEvent.java
│ │ ├── cause
│ │ │ ├── BlockCause.java
│ │ │ ├── EntityCause.java
│ │ │ ├── MaterialCause.java
│ │ │ ├── PlayerCause.java
│ │ │ ├── PluginCause.java
│ │ │ └── WorldCause.java
│ │ ├── chunk
│ │ │ ├── ChunkEvent.java
│ │ │ ├── ChunkLoadEvent.java
│ │ │ ├── ChunkPopulateEvent.java
│ │ │ ├── ChunkUnloadEvent.java
│ │ │ └── ChunkUpdatedEvent.java
│ │ ├── engine
│ │ │ ├── EngineStartEvent.java
│ │ │ └── EngineStopEvent.java
│ │ ├── entity
│ │ │ ├── AbstractEntityEvent.java
│ │ │ ├── AnimationEndEvent.java
│ │ │ ├── EntityChangeWorldEvent.java
│ │ │ ├── EntityCollideBlockEvent.java
│ │ │ ├── EntityCollideEntityEvent.java
│ │ │ ├── EntityCollideEvent.java
│ │ │ ├── EntityDespawnEvent.java
│ │ │ ├── EntityEvent.java
│ │ │ ├── EntityHiddenEvent.java
│ │ │ ├── EntityInteractBlockEvent.java
│ │ │ ├── EntityInteractEntityEvent.java
│ │ │ ├── EntityInteractEvent.java
│ │ │ ├── EntityShownEvent.java
│ │ │ ├── EntitySpawnEvent.java
│ │ │ └── EntityTeleportEvent.java
│ │ ├── inventory
│ │ │ ├── InventoryCloseEvent.java
│ │ │ ├── InventoryEvent.java
│ │ │ └── InventoryOpenEvent.java
│ │ ├── object
│ │ │ ├── Eventable.java
│ │ │ ├── EventableBase.java
│ │ │ ├── EventableListener.java
│ │ │ └── ObjectEvent.java
│ │ ├── player
│ │ │ ├── AbstractPlayerEvent.java
│ │ │ ├── Action.java
│ │ │ ├── ClientPlayerConnectedEvent.java
│ │ │ ├── PlayerBanKickEvent.java
│ │ │ ├── PlayerChatEvent.java
│ │ │ ├── PlayerConnectEvent.java
│ │ │ ├── PlayerEvent.java
│ │ │ ├── PlayerInteractBlockEvent.java
│ │ │ ├── PlayerInteractEntityEvent.java
│ │ │ ├── PlayerJoinEvent.java
│ │ │ ├── PlayerKickEvent.java
│ │ │ ├── PlayerLeaveEvent.java
│ │ │ ├── PlayerLoginEvent.java
│ │ │ ├── PlayerWhitelistKickEvent.java
│ │ │ └── input
│ │ │ │ ├── PlayerClickEvent.java
│ │ │ │ ├── PlayerInputEvent.java
│ │ │ │ └── PlayerKeyEvent.java
│ │ ├── server
│ │ │ ├── CompletionRequestEvent.java
│ │ │ ├── NodeBasedEvent.java
│ │ │ ├── PreCommandEvent.java
│ │ │ ├── RetrieveDataEvent.java
│ │ │ ├── access
│ │ │ │ ├── BanChangeEvent.java
│ │ │ │ └── WhitelistChangeEvent.java
│ │ │ ├── permissions
│ │ │ │ ├── PermissionGetAllWithNodeEvent.java
│ │ │ │ ├── PermissionGroupsEvent.java
│ │ │ │ └── PermissionNodeEvent.java
│ │ │ ├── plugin
│ │ │ │ ├── PluginDisableEvent.java
│ │ │ │ ├── PluginEnableEvent.java
│ │ │ │ └── PluginEvent.java
│ │ │ ├── protection
│ │ │ │ ├── EntityCanBeHarmedEvent.java
│ │ │ │ ├── EntityCanBreakEvent.java
│ │ │ │ ├── EntityCanBuildEvent.java
│ │ │ │ ├── EntityCanInteractBlockEvent.java
│ │ │ │ ├── EntityCanInteractEntityEvent.java
│ │ │ │ ├── EntityEnterProtection.java
│ │ │ │ └── EntityLeaveProtection.java
│ │ │ └── service
│ │ │ │ ├── ServiceEvent.java
│ │ │ │ ├── ServiceRegisterEvent.java
│ │ │ │ ├── ServiceUnregisterEvent.java
│ │ │ │ └── economy
│ │ │ │ ├── AccountChangeEvent.java
│ │ │ │ └── EconomyEvent.java
│ │ ├── storage
│ │ │ ├── PlayerLoadEvent.java
│ │ │ └── PlayerSaveEvent.java
│ │ └── world
│ │ │ ├── AbstractWorldEvent.java
│ │ │ ├── EntityEnterWorldEvent.java
│ │ │ ├── EntityExitWorldEvent.java
│ │ │ ├── RegionLoadEvent.java
│ │ │ ├── RegionUnloadEvent.java
│ │ │ ├── WorldEvent.java
│ │ │ ├── WorldLoadEvent.java
│ │ │ ├── WorldSaveEvent.java
│ │ │ └── WorldUnloadEvent.java
│ │ ├── exception
│ │ ├── ArgumentParseException.java
│ │ ├── BoneNotFoundException.java
│ │ ├── CommandException.java
│ │ ├── CommandUsageException.java
│ │ ├── ComputerIsPotatoException.java
│ │ ├── EventException.java
│ │ ├── IllegalPluginAccessException.java
│ │ ├── IllegalTickSequenceException.java
│ │ ├── InvalidControllerException.java
│ │ ├── InvalidDescriptionFileException.java
│ │ ├── InvalidPluginException.java
│ │ ├── MissingCommandException.java
│ │ ├── RestrictedClassException.java
│ │ ├── SpoutException.java
│ │ ├── SpoutRuntimeException.java
│ │ ├── UnknownDependencyException.java
│ │ ├── UnknownPacketException.java
│ │ ├── UnknownSoftDependencyException.java
│ │ └── WrappedCommandException.java
│ │ ├── generator
│ │ ├── EmptyWorldGenerator.java
│ │ ├── FlatWorldGenerator.java
│ │ ├── GeneratorPopulator.java
│ │ ├── LayeredWorldGenerator.java
│ │ ├── Populator.java
│ │ ├── WorldGenerator.java
│ │ ├── WorldGeneratorObject.java
│ │ ├── WorldGeneratorUtils.java
│ │ └── biome
│ │ │ ├── Biome.java
│ │ │ ├── BiomeGenerator.java
│ │ │ ├── BiomeManager.java
│ │ │ ├── BiomeMap.java
│ │ │ ├── BiomePopulator.java
│ │ │ ├── BiomeRegistry.java
│ │ │ ├── BiomeSelector.java
│ │ │ ├── Decorator.java
│ │ │ ├── EmptyBiomeManager.java
│ │ │ ├── Simple2DBiomeManager.java
│ │ │ ├── WrappedBiomeManager.java
│ │ │ └── selector
│ │ │ ├── BiomeSelectorLayer.java
│ │ │ ├── LayeredBiomeSelector.java
│ │ │ ├── LayeredBiomeSelectorElement.java
│ │ │ ├── NoiseRangeLayer.java
│ │ │ ├── PerBlockBiomeSelector.java
│ │ │ ├── PerlinRangeLayer.java
│ │ │ ├── RidgedMultiRangeLayer.java
│ │ │ └── VoronoiLayer.java
│ │ ├── geo
│ │ ├── AreaBlockAccess.java
│ │ ├── AreaBlockSource.java
│ │ ├── AreaChunkAccess.java
│ │ ├── AreaPhysicsAccess.java
│ │ ├── AreaRegionAccess.java
│ │ ├── LoadOption.java
│ │ ├── LocalAreaAccess.java
│ │ ├── Protection.java
│ │ ├── World.java
│ │ ├── WorldSource.java
│ │ ├── cuboid
│ │ │ ├── Block.java
│ │ │ ├── BlockComponentContainer.java
│ │ │ ├── BlockContainer.java
│ │ │ ├── Chunk.java
│ │ │ ├── ChunkSnapshot.java
│ │ │ ├── ChunkSnapshotModel.java
│ │ │ ├── ContainerFillOrder.java
│ │ │ ├── Cube.java
│ │ │ ├── CubicContainer.java
│ │ │ ├── Cuboid.java
│ │ │ ├── LightContainer.java
│ │ │ ├── Region.java
│ │ │ ├── UpdateOption.java
│ │ │ ├── Voxel.java
│ │ │ └── reference
│ │ │ │ └── RegionReference.java
│ │ └── discrete
│ │ │ ├── Point.java
│ │ │ ├── Transform.java
│ │ │ └── Transform2D.java
│ │ ├── gui
│ │ ├── Container.java
│ │ ├── DebugHud.java
│ │ ├── FocusReason.java
│ │ ├── Focusable.java
│ │ ├── FullScreen.java
│ │ ├── RenderPartContainer.java
│ │ ├── Screen.java
│ │ ├── ScreenStack.java
│ │ ├── Widget.java
│ │ └── render
│ │ │ ├── RenderPart.java
│ │ │ └── RenderPartPack.java
│ │ ├── input
│ │ ├── Binding.java
│ │ ├── InputActionExecutor.java
│ │ ├── InputManager.java
│ │ ├── Keyboard.java
│ │ ├── LocalBinding.java
│ │ ├── Mouse.java
│ │ └── MovementExecutor.java
│ │ ├── inventory
│ │ ├── Container.java
│ │ ├── Inventory.java
│ │ ├── InventoryViewer.java
│ │ ├── ItemStack.java
│ │ ├── Slot.java
│ │ ├── recipe
│ │ │ ├── Recipe.java
│ │ │ ├── RecipeBuilder.java
│ │ │ ├── RecipeManager.java
│ │ │ ├── RecipeTree.java
│ │ │ ├── ShapedRecipe.java
│ │ │ ├── ShapelessRecipe.java
│ │ │ ├── SimpleRecipeManager.java
│ │ │ └── SmeltedRecipe.java
│ │ ├── shape
│ │ │ ├── Cube.java
│ │ │ └── Grid.java
│ │ └── util
│ │ │ ├── CubeIterator.java
│ │ │ ├── GridIterator.java
│ │ │ └── InventoryIterator.java
│ │ ├── io
│ │ ├── CRCStore.java
│ │ ├── CRCStoreRunnable.java
│ │ ├── FileUtil.java
│ │ ├── bytearrayarray
│ │ │ ├── BAAClosedException.java
│ │ │ ├── BAAException.java
│ │ │ ├── BAAOpenInProgress.java
│ │ │ ├── BAAWrapper.java
│ │ │ └── ByteArrayArray.java
│ │ ├── nbt
│ │ │ ├── QuaternionTag.java
│ │ │ ├── TransformTag.java
│ │ │ ├── UUIDTag.java
│ │ │ └── Vector3Tag.java
│ │ ├── regionfile
│ │ │ ├── CachedRandomAccessFile.java
│ │ │ ├── MappedRandomAccessFile.java
│ │ │ ├── SRFBlockLock.java
│ │ │ ├── SRFClosedException.java
│ │ │ ├── SRFException.java
│ │ │ ├── SRFOutputStream.java
│ │ │ ├── SRFReentrantReadWriteLock.java
│ │ │ └── SimpleRegionFile.java
│ │ └── store
│ │ │ ├── map
│ │ │ ├── MemoryStoreMap.java
│ │ │ └── SimpleStoreMap.java
│ │ │ └── simple
│ │ │ ├── BinaryFileStore.java
│ │ │ ├── FlatFileStore.java
│ │ │ ├── MemoryStore.java
│ │ │ └── SimpleStore.java
│ │ ├── lang
│ │ ├── CommonPluginDictionary.java
│ │ ├── DefaultNumberHandler.java
│ │ ├── JavaPluginDictionary.java
│ │ ├── LanguageDictionary.java
│ │ ├── Locale.java
│ │ ├── LocaleNumberHandler.java
│ │ ├── PluginDictionary.java
│ │ └── Translation.java
│ │ ├── lighting
│ │ ├── ByteArrayCuboidLightBuffer.java
│ │ ├── LightingManager.java
│ │ ├── LightingRegistry.java
│ │ └── Modifiable.java
│ │ ├── map
│ │ ├── DefaultedHashMap.java
│ │ ├── DefaultedKey.java
│ │ ├── DefaultedKeyArray.java
│ │ ├── DefaultedKeyFactory.java
│ │ ├── DefaultedKeyImpl.java
│ │ └── DefaultedMap.java
│ │ ├── material
│ │ ├── BlockMaterial.java
│ │ ├── DynamicMaterial.java
│ │ ├── DynamicUpdateEntry.java
│ │ ├── Material.java
│ │ ├── MaterialRegistry.java
│ │ ├── Placeable.java
│ │ ├── basic
│ │ │ ├── Air.java
│ │ │ └── Solid.java
│ │ ├── block
│ │ │ ├── BlockFace.java
│ │ │ ├── BlockFaces.java
│ │ │ ├── BlockFullState.java
│ │ │ └── BlockSnapshot.java
│ │ └── range
│ │ │ ├── CubicEffectRange.java
│ │ │ ├── CuboidEffectRange.java
│ │ │ ├── DiamondEffectRange.java
│ │ │ ├── EffectIterator.java
│ │ │ ├── EffectRange.java
│ │ │ ├── EffectRangeImpl.java
│ │ │ ├── ListEffectRange.java
│ │ │ └── PlusEffectRange.java
│ │ ├── math
│ │ ├── BitSize.java
│ │ ├── IntVector2.java
│ │ ├── IntVector3.java
│ │ ├── IntVector4.java
│ │ ├── ReactConverter.java
│ │ └── Rectangle.java
│ │ ├── meta
│ │ ├── SpoutMetaPlugin.java
│ │ └── SpoutMetaPluginDictionary.java
│ │ ├── model
│ │ ├── Model.java
│ │ ├── animation
│ │ │ ├── Animation.java
│ │ │ ├── AnimationPlayed.java
│ │ │ ├── Bone.java
│ │ │ ├── BoneTransform.java
│ │ │ └── Skeleton.java
│ │ └── mesh
│ │ │ ├── CubeMeshFactory.java
│ │ │ ├── Mesh.java
│ │ │ ├── MeshFace.java
│ │ │ ├── OrientedMesh.java
│ │ │ ├── OrientedMeshFace.java
│ │ │ └── Vertex.java
│ │ ├── permissions
│ │ ├── DefaultPermissions.java
│ │ └── PermissionsSubject.java
│ │ ├── plugin
│ │ ├── LoadOrder.java
│ │ ├── Plugin.java
│ │ ├── PluginClassLoader.java
│ │ ├── PluginDescriptionFile.java
│ │ ├── PluginLoader.java
│ │ ├── PluginLogger.java
│ │ ├── PluginManager.java
│ │ ├── security
│ │ │ ├── PluginSecurityManager.java
│ │ │ └── Secure.java
│ │ └── services
│ │ │ ├── EconomyService.java
│ │ │ ├── ProtectionService.java
│ │ │ ├── ServiceManager.java
│ │ │ └── ServiceProvider.java
│ │ ├── protocol
│ │ ├── ByteBufferChannelProcessor.java
│ │ ├── ChannelProcessor.java
│ │ ├── ClientSession.java
│ │ ├── CodecLookupService.java
│ │ ├── CommonChannelInitializer.java
│ │ ├── CommonChannelProcessor.java
│ │ ├── CommonDecoder.java
│ │ ├── CommonEncoder.java
│ │ ├── CommonHandler.java
│ │ ├── HandlerLookupService.java
│ │ ├── Message.java
│ │ ├── MessageCodec.java
│ │ ├── MessageHandler.java
│ │ ├── MessagePrintingHandler.java
│ │ ├── PortBinding.java
│ │ ├── PreprocessReplayingDecoder.java
│ │ ├── ProcessingEncoder.java
│ │ ├── ProcessorHandler.java
│ │ ├── ProcessorSetupMessage.java
│ │ ├── Protocol.java
│ │ ├── SendMode.java
│ │ ├── ServerSession.java
│ │ ├── Session.java
│ │ ├── SessionRegistry.java
│ │ ├── builder
│ │ │ ├── CompoundMessageField.java
│ │ │ ├── FieldRef.java
│ │ │ ├── FixedMessageField.java
│ │ │ ├── GenericMessage.java
│ │ │ ├── MessageField.java
│ │ │ ├── MessageFieldImpl.java
│ │ │ └── NullMessageField.java
│ │ ├── dynamicid
│ │ │ ├── DynamicMessageDecoder.java
│ │ │ ├── DynamicMessageEncoder.java
│ │ │ └── DynamicWrapperMessage.java
│ │ ├── event
│ │ │ ├── BlockUpdateEvent.java
│ │ │ ├── ChunkDatatableSendEvent.java
│ │ │ ├── ChunkFreeEvent.java
│ │ │ ├── ChunkInitEvent.java
│ │ │ ├── ChunkSendEvent.java
│ │ │ ├── EntityUpdateEvent.java
│ │ │ └── WorldChangeProtocolEvent.java
│ │ ├── proxy
│ │ │ ├── ConnectionInfo.java
│ │ │ ├── ConnectionInfoMessage.java
│ │ │ ├── ProxyStartMessage.java
│ │ │ ├── RedirectMessage.java
│ │ │ └── TransformableMessage.java
│ │ ├── replayable
│ │ │ ├── ReplayableByteBuf.java
│ │ │ └── ReplayableException.java
│ │ └── reposition
│ │ │ ├── NullRepositionManager.java
│ │ │ ├── RepositionManager.java
│ │ │ └── RepositionManagerImpl.java
│ │ ├── render
│ │ ├── BufferContainer.java
│ │ ├── Camera.java
│ │ ├── Font.java
│ │ ├── RenderMaterial.java
│ │ ├── RenderMode.java
│ │ ├── Renderer.java
│ │ ├── SpoutRenderMaterials.java
│ │ ├── Texture.java
│ │ ├── ViewFrustum.java
│ │ ├── effect
│ │ │ ├── BufferEffect.java
│ │ │ ├── EntityEffect.java
│ │ │ ├── MeshEffect.java
│ │ │ ├── RenderEffect.java
│ │ │ ├── SnapshotEntity.java
│ │ │ ├── SnapshotMesh.java
│ │ │ └── SnapshotRender.java
│ │ └── shader
│ │ │ ├── Shader.java
│ │ │ └── VertexBuffer.java
│ │ ├── resource
│ │ ├── FileSystem.java
│ │ ├── LoaderNotFoundException.java
│ │ ├── ResourceLoader.java
│ │ ├── ResourceNotFoundException.java
│ │ ├── ResourcePathResolver.java
│ │ └── SpoutModels.java
│ │ ├── scheduler
│ │ ├── ParallelRunnable.java
│ │ ├── Scheduler.java
│ │ ├── SnapshotLock.java
│ │ ├── Task.java
│ │ ├── TaskManager.java
│ │ ├── TaskPriority.java
│ │ ├── TickStage.java
│ │ └── Worker.java
│ │ ├── security
│ │ ├── EncryptionChannelProcessor.java
│ │ └── SecurityHandler.java
│ │ ├── signal
│ │ ├── Signal.java
│ │ ├── SignalInterface.java
│ │ ├── SignalObject.java
│ │ ├── SignalObjectDelegate.java
│ │ ├── SignalSubscriberObject.java
│ │ ├── SubscriberInterface.java
│ │ └── SubscriberObject.java
│ │ ├── tickable
│ │ ├── BasicTickable.java
│ │ ├── TickPriority.java
│ │ └── Tickable.java
│ │ └── util
│ │ ├── BlockIterator.java
│ │ ├── ByteBufUtils.java
│ │ ├── CubicIterator.java
│ │ ├── FlatIterator.java
│ │ ├── IntVector3Array.java
│ │ ├── IntVector3CompositeIterator.java
│ │ ├── IntVector3CuboidArray.java
│ │ ├── ListFile.java
│ │ ├── LogicUtil.java
│ │ ├── Named.java
│ │ ├── OutwardIterator.java
│ │ ├── Parameter.java
│ │ ├── ReflectionUtils.java
│ │ ├── SimpleStoredMap.java
│ │ ├── SpoutToStringStyle.java
│ │ ├── StoredMap.java
│ │ ├── StringToUniqueIntegerMap.java
│ │ ├── StringUtil.java
│ │ ├── SyncedMapEvent.java
│ │ ├── SyncedMapRegistry.java
│ │ ├── SyncedStringMap.java
│ │ ├── VarInt.java
│ │ ├── access
│ │ ├── AccessManager.java
│ │ └── BanType.java
│ │ ├── bytebit
│ │ ├── ByteBitMask.java
│ │ └── ByteBitSet.java
│ │ ├── concurrent
│ │ ├── AtomicFloat.java
│ │ ├── AtomicIntegerHelper.java
│ │ ├── AtomicSequenceNumber.java
│ │ ├── OptimisticReadWriteLock.java
│ │ └── SpinLock.java
│ │ ├── cuboid
│ │ ├── AlignedCuboidBlockMaterialBuffer.java
│ │ ├── AlignedCuboidNibbleLightBuffer.java
│ │ ├── ChunkCuboidLightBufferWrapper.java
│ │ ├── CuboidBlockMaterialBuffer.java
│ │ ├── CuboidBuffer.java
│ │ ├── CuboidLightBuffer.java
│ │ ├── CuboidNibbleLightBuffer.java
│ │ ├── CuboidShortBuffer.java
│ │ ├── ImmutableCuboidBlockMaterialBuffer.java
│ │ ├── ImmutableHeightMapBuffer.java
│ │ ├── LocalRegionChunkCuboidBlockMaterialBufferWrapper.java
│ │ ├── LocalRegionChunkCuboidLightBufferWrapper.java
│ │ ├── LocalRegionChunkHeightMapBufferWrapper.java
│ │ ├── NullCuboidLightBuffer.java
│ │ ├── UniformImmutableCuboidBlockMaterialBuffer.java
│ │ └── procedure
│ │ │ └── CuboidBlockMaterialProcedure.java
│ │ ├── flag
│ │ ├── Flag.java
│ │ ├── FlagBoolean.java
│ │ ├── FlagBundle.java
│ │ ├── FlagContainer.java
│ │ ├── FlagData.java
│ │ └── FlagSingle.java
│ │ ├── future
│ │ └── SimpleFuture.java
│ │ ├── hashing
│ │ ├── ArrayHash.java
│ │ ├── ByteShortByteHashed.java
│ │ ├── ByteTripleHashed.java
│ │ ├── Int10TripleHashed.java
│ │ ├── Int21TripleHashed.java
│ │ ├── IntPairHashed.java
│ │ ├── NibblePairHashed.java
│ │ ├── NibbleQuadHashed.java
│ │ ├── ShortPairHashed.java
│ │ └── SignedTenBitTripleHashed.java
│ │ ├── list
│ │ ├── ByteCircularBufferFIFO.java
│ │ ├── IntVector3ExpandableFIFO.java
│ │ ├── IntVector3FIFO.java
│ │ ├── IntVector3Stack.java
│ │ ├── IntVector4ExpandableFIFO.java
│ │ ├── TNibbleQuadList.java
│ │ └── concurrent
│ │ │ ├── ConcurrentList.java
│ │ │ ├── ConcurrentLongPriorityQueue.java
│ │ │ ├── LongPrioritized.java
│ │ │ ├── RedirectableConcurrentLinkedQueue.java
│ │ │ ├── UnprotectedCopyOnUpdateArray.java
│ │ │ └── setqueue
│ │ │ ├── SetQueue.java
│ │ │ ├── SetQueueElement.java
│ │ │ └── SetQueueFullException.java
│ │ ├── map
│ │ ├── TByteShortByteKeyedDoubleHashMap.java
│ │ ├── TByteShortByteKeyedFloatHashMap.java
│ │ ├── TByteShortByteKeyedHashSet.java
│ │ ├── TByteShortByteKeyedIntHashMap.java
│ │ ├── TByteShortByteKeyedLongHashMap.java
│ │ ├── TByteShortByteKeyedObjectHashMap.java
│ │ ├── TByteTripleDoubleHashMap.java
│ │ ├── TByteTripleFloatHashMap.java
│ │ ├── TByteTripleIntHashMap.java
│ │ ├── TByteTripleLongHashMap.java
│ │ ├── TByteTripleObjectHashMap.java
│ │ ├── TInt21TripleObjectHashMap.java
│ │ ├── TInt21TripleObjectHashMapOfMaps.java
│ │ ├── TIntPairDoubleHashMap.java
│ │ ├── TIntPairFloatHashMap.java
│ │ ├── TIntPairIntHashMap.java
│ │ ├── TIntPairLongHashMap.java
│ │ ├── TIntPairObjectHashMap.java
│ │ ├── TNibbleQuadObjectHashMap.java
│ │ ├── TNibbleQuadShortHashMap.java
│ │ ├── TUnmodifiableInt21TripleObjectHashMap.java
│ │ ├── WeakValueHashMap.java
│ │ └── concurrent
│ │ │ ├── AtomicBlockStore.java
│ │ │ ├── AtomicByteArray.java
│ │ │ ├── AtomicIntArrayStore.java
│ │ │ ├── AtomicShortArray.java
│ │ │ ├── AtomicVariableWidthArray.java
│ │ │ ├── BlockLinkable.java
│ │ │ ├── TSyncInt21TripleObjectHashMap.java
│ │ │ ├── TSyncIntObjectHashMap.java
│ │ │ ├── TSyncIntObjectMap.java
│ │ │ ├── TSyncIntPairObjectHashMap.java
│ │ │ ├── TSyncLongObjectHashMap.java
│ │ │ ├── TSyncLongObjectMap.java
│ │ │ ├── TripleIntObjectMap.java
│ │ │ ├── TripleIntObjectReferenceArrayMap.java
│ │ │ └── palette
│ │ │ ├── AtomicIntShortSingleUseHashMap.java
│ │ │ ├── AtomicPaletteBlockStore.java
│ │ │ ├── AtomicShortIntArray.java
│ │ │ ├── AtomicShortIntBackingArray.java
│ │ │ ├── AtomicShortIntDirectBackingArray.java
│ │ │ ├── AtomicShortIntPaletteBackingArray.java
│ │ │ ├── AtomicShortIntUniformBackingArray.java
│ │ │ ├── IntegerDataInputStreamCallable.java
│ │ │ └── PaletteFullException.java
│ │ ├── sanitation
│ │ └── SafeCast.java
│ │ ├── set
│ │ ├── TByteTripleHashSet.java
│ │ ├── TInt10Procedure.java
│ │ ├── TInt10TripleSet.java
│ │ ├── TInt21HashSet.java
│ │ ├── TInt21TripleHashSet.java
│ │ ├── TIntPairHashSet.java
│ │ ├── TNibbleDualHashSet.java
│ │ ├── TNibbleQuadHashSet.java
│ │ └── concurrent
│ │ │ ├── TSyncByteTripleHashSet.java
│ │ │ ├── TSyncInt21HashSet.java
│ │ │ ├── TSyncIntHashSet.java
│ │ │ ├── TSyncIntPairHashSet.java
│ │ │ └── TSyncLongHashSet.java
│ │ ├── string
│ │ └── DamerauLevenshteinAlgorithm.java
│ │ ├── thread
│ │ └── annotation
│ │ │ ├── DelayedWrite.java
│ │ │ ├── LiveRead.java
│ │ │ ├── LiveWrite.java
│ │ │ ├── MainThreadOnly.java
│ │ │ ├── SnapshotRead.java
│ │ │ └── Threadsafe.java
│ │ └── typechecker
│ │ ├── CollectionTypeChecker.java
│ │ ├── MapTypeChecker.java
│ │ └── TypeChecker.java
│ └── test
│ ├── java
│ └── org
│ │ └── spout
│ │ └── api
│ │ ├── SerializableTest.java
│ │ ├── ai
│ │ └── VectorNodeTest.java
│ │ ├── block
│ │ ├── BlockFaceTest.java
│ │ └── BlockFacesTest.java
│ │ ├── command
│ │ ├── CommandArgumentsTest.java
│ │ ├── CommandFlagsTest.java
│ │ ├── CommandTest.java
│ │ └── annotated
│ │ │ └── AnnotatedCommandTest.java
│ │ ├── component
│ │ └── ComponentTest.java
│ │ ├── data
│ │ ├── DataProviderTest.java
│ │ └── DataSubjectTest.java
│ │ ├── datatable
│ │ └── SerializableHashMapTest.java
│ │ ├── event
│ │ ├── EventHandlerListTest.java
│ │ └── SimpleEventManagerTest.java
│ │ ├── faker
│ │ ├── EngineFaker.java
│ │ └── WorldFaker.java
│ │ ├── geo
│ │ ├── CuboidTest.java
│ │ ├── cuboid
│ │ │ └── ContainerFillOrderTest.java
│ │ └── discrete
│ │ │ └── TransformTest.java
│ │ ├── inventory
│ │ ├── InventoryTest.java
│ │ └── recipe
│ │ │ ├── RecipeBuilderTest.java
│ │ │ ├── RecipeTreeTest.java
│ │ │ ├── ShapedRecipeTest.java
│ │ │ └── ShapelessRecipeTest.java
│ │ ├── io
│ │ ├── regionfile
│ │ │ ├── CachedRandomAccessFileTest.java
│ │ │ └── SimpleRegionFileTest.java
│ │ └── store
│ │ │ ├── BinaryFileStoreTest.java
│ │ │ ├── FlatFileStoreTest.java
│ │ │ └── MemoryStoreTest.java
│ │ ├── lang
│ │ ├── LanguageTest.java
│ │ └── keymap.yml
│ │ ├── math
│ │ ├── ReactConverterTest.java
│ │ └── TestUtils.java
│ │ ├── plugin
│ │ └── PluginDescriptionFileTest.java
│ │ ├── protocol
│ │ ├── ByteBufferChannelProcessorTest.java
│ │ ├── PreprocessReplayingDecoderTest.java
│ │ └── fake
│ │ │ ├── ChannelHandlerContextFaker.java
│ │ │ └── FakeChannelHandlerContext.java
│ │ ├── render
│ │ └── ViewFrustumTest.java
│ │ ├── signal
│ │ └── SignalTest.java
│ │ └── util
│ │ ├── ByteBufUtilsTest.java
│ │ ├── CubicIteratorTest.java
│ │ ├── FlatIteratorTest.java
│ │ ├── IntVector3ArrayTest.java
│ │ ├── IntVector3CompositeIteratorTest.java
│ │ ├── IntVector3CuboidArrayTest.java
│ │ ├── NBTMapperTest.java
│ │ ├── OutwardIteratorTest.java
│ │ ├── StringToUniqueIntegerMapTest.java
│ │ ├── StringUtilTest.java
│ │ ├── VarIntTest.java
│ │ ├── concurrent
│ │ ├── AtomicFloatTest.java
│ │ ├── AtomicIntegerHelperTest.java
│ │ └── OptimisticReadWriteLockTest.java
│ │ ├── cuboid
│ │ ├── CuboidBlockMaterialBufferTest.java
│ │ └── CuboidNibbleLightBufferTest.java
│ │ ├── hashing
│ │ ├── ByteShortByteHashedTest.java
│ │ ├── ByteTripleHashedTest.java
│ │ ├── Int10TripleHashedTest.java
│ │ ├── Int21TripleHashedTest.java
│ │ ├── IntPairHashedTest.java
│ │ ├── NibblePairHashedTest.java
│ │ └── NibbleQuadHashedTest.java
│ │ ├── list
│ │ ├── ByteCircularBufferFIFOTest.java
│ │ ├── IntVector3ExpandableFIFOTest.java
│ │ ├── IntVector3FIFOTest.java
│ │ ├── IntVector3StackTest.java
│ │ ├── IntVector4ExpandableFIFOTest.java
│ │ └── concurrent
│ │ │ ├── ConcurrentListTest.java
│ │ │ ├── ConcurrentLongPriorityQueueTest.java
│ │ │ ├── UnprotectedCopyOnUpdateArrayTest.java
│ │ │ └── setqueue
│ │ │ └── SetQueueTest.java
│ │ ├── map
│ │ ├── TInt21TripleObjectHashMapofMapsTest.java
│ │ ├── WeakValueHashMapTest.java
│ │ └── concurrent
│ │ │ ├── AtomicByteArrayTest.java
│ │ │ ├── AtomicIntReferenceArrayStoreTest.java
│ │ │ ├── AtomicShortArrayTest.java
│ │ │ ├── AtomicShortIntArrayTest.java
│ │ │ ├── AtomicVariableWidthArrayTest.java
│ │ │ ├── TSyncIntObjectHashMapTest.java
│ │ │ ├── TSyncLongObjectHashMapTest.java
│ │ │ └── TripleIntObjectReferenceArrayMapTest.java
│ │ ├── sanitation
│ │ └── SafeCastTest.java
│ │ ├── set
│ │ ├── Int10TripleSetTest.java
│ │ └── concurrent
│ │ │ ├── TSyncIntHashSetTest.java
│ │ │ └── TSyncLongHashSetTest.java
│ │ ├── string
│ │ └── DamerauLevenshteinAlgorithmTest.java
│ │ └── typechecker
│ │ └── TypeCheckerTest.java
│ └── resources
│ ├── full_properties.yml
│ ├── keymap.yml
│ ├── lang-DE_DE.yml
│ ├── missing_author_properties.yml
│ ├── missing_main_properties.yml
│ ├── missing_name_properties.yml
│ ├── missing_platform_properties.yml
│ ├── missing_version_properties.yml
│ ├── misspelled_properties.yml
│ └── valid_properties.yml
├── engine
├── pom.xml
├── src
│ ├── main
│ │ ├── java
│ │ │ └── org
│ │ │ │ └── spout
│ │ │ │ └── engine
│ │ │ │ ├── SpoutApplication.java
│ │ │ │ ├── SpoutClient.java
│ │ │ │ ├── SpoutConfiguration.java
│ │ │ │ ├── SpoutEngine.java
│ │ │ │ ├── SpoutProxy.java
│ │ │ │ ├── SpoutRenderer.java
│ │ │ │ ├── SpoutServer.java
│ │ │ │ ├── audio
│ │ │ │ ├── AudioConfiguration.java
│ │ │ │ ├── SpoutSoundListener.java
│ │ │ │ ├── SpoutSoundManager.java
│ │ │ │ └── SpoutSoundSource.java
│ │ │ │ ├── batcher
│ │ │ │ ├── ChunkMeshBatchAggregator.java
│ │ │ │ ├── GL11SpriteBatch.java
│ │ │ │ └── SpriteBatch.java
│ │ │ │ ├── command
│ │ │ │ ├── AnnotatedCommandExecutorTest.java
│ │ │ │ ├── ClientCommands.java
│ │ │ │ ├── CommonCommands.java
│ │ │ │ ├── InputCommands.java
│ │ │ │ ├── MessagingCommands.java
│ │ │ │ ├── RendererCommands.java
│ │ │ │ ├── ServerCommands.java
│ │ │ │ └── TestCommands.java
│ │ │ │ ├── component
│ │ │ │ └── entity
│ │ │ │ │ ├── ClientTextModelComponent.java
│ │ │ │ │ ├── SpoutAnimationComponent.java
│ │ │ │ │ ├── SpoutFallbackMovementComponent.java
│ │ │ │ │ ├── SpoutModelComponent.java
│ │ │ │ │ ├── SpoutPhysicsComponent.java
│ │ │ │ │ └── SpoutPlayerNetworkComponent.java
│ │ │ │ ├── console
│ │ │ │ ├── ConsoleCommandSource.java
│ │ │ │ ├── ConsoleManager.java
│ │ │ │ └── SpoutCommandCompleter.java
│ │ │ │ ├── effects
│ │ │ │ └── SSAOPostProcessEffect.java
│ │ │ │ ├── entity
│ │ │ │ ├── EntityManager.java
│ │ │ │ ├── SpoutClientPlayer.java
│ │ │ │ ├── SpoutEntity.java
│ │ │ │ ├── SpoutEntitySnapshot.java
│ │ │ │ ├── SpoutPlayer.java
│ │ │ │ └── SpoutPlayerSnapshot.java
│ │ │ │ ├── filesystem
│ │ │ │ ├── ChunkDataForRegion.java
│ │ │ │ ├── ClientFileSystem.java
│ │ │ │ ├── CommonFileSystem.java
│ │ │ │ ├── ServerFileSystem.java
│ │ │ │ ├── path
│ │ │ │ │ ├── FilePathResolver.java
│ │ │ │ │ ├── JarFilePathResolver.java
│ │ │ │ │ └── ZipFilePathResolver.java
│ │ │ │ ├── resource
│ │ │ │ │ ├── ClientEntityPrefab.java
│ │ │ │ │ ├── ClientFont.java
│ │ │ │ │ ├── ClientModel.java
│ │ │ │ │ ├── ClientRenderMaterial.java
│ │ │ │ │ ├── ClientRenderTexture.java
│ │ │ │ │ ├── ClientSound.java
│ │ │ │ │ ├── ClientTexture.java
│ │ │ │ │ ├── ClientTextureHandle.java
│ │ │ │ │ ├── ServerTexture.java
│ │ │ │ │ └── loader
│ │ │ │ │ │ ├── AnimationLoader.java
│ │ │ │ │ │ ├── BlockMeshLoader.java
│ │ │ │ │ │ ├── CommandBatchLoader.java
│ │ │ │ │ │ ├── CubeMeshLoader.java
│ │ │ │ │ │ ├── EntityPrefabLoader.java
│ │ │ │ │ │ ├── FontLoader.java
│ │ │ │ │ │ ├── MeshLoader.java
│ │ │ │ │ │ ├── ModelLoader.java
│ │ │ │ │ │ ├── RenderMaterialLoader.java
│ │ │ │ │ │ ├── ShaderLoader.java
│ │ │ │ │ │ ├── SkeletonLoader.java
│ │ │ │ │ │ ├── SoundLoader.java
│ │ │ │ │ │ └── TextureLoader.java
│ │ │ │ └── versioned
│ │ │ │ │ ├── ChunkFiles.java
│ │ │ │ │ ├── ColumnFiles.java
│ │ │ │ │ ├── EntityFiles.java
│ │ │ │ │ ├── PlayerFiles.java
│ │ │ │ │ └── WorldFiles.java
│ │ │ │ ├── gui
│ │ │ │ ├── DebugScreen.java
│ │ │ │ ├── DevConsole.java
│ │ │ │ ├── SpoutScreenStack.java
│ │ │ │ └── SpoutWidget.java
│ │ │ │ ├── input
│ │ │ │ ├── SpoutInputConfiguration.java
│ │ │ │ └── SpoutInputManager.java
│ │ │ │ ├── listener
│ │ │ │ ├── SpoutProxyListener.java
│ │ │ │ ├── SpoutServerListener.java
│ │ │ │ └── channel
│ │ │ │ │ └── SpoutProxyConnectListener.java
│ │ │ │ ├── mesh
│ │ │ │ ├── BaseMesh.java
│ │ │ │ └── ChunkMesh.java
│ │ │ │ ├── protocol
│ │ │ │ ├── NetworkSendThread.java
│ │ │ │ ├── NetworkSendThreadPool.java
│ │ │ │ ├── PortBindingImpl.java
│ │ │ │ ├── PortBindings.java
│ │ │ │ ├── SpoutClientSession.java
│ │ │ │ ├── SpoutProxySession.java
│ │ │ │ ├── SpoutServerSession.java
│ │ │ │ ├── SpoutSession.java
│ │ │ │ ├── SpoutSessionRegistry.java
│ │ │ │ └── builtin
│ │ │ │ │ ├── SpoutProtocol.java
│ │ │ │ │ ├── codec
│ │ │ │ │ ├── BlockUpdateCodec.java
│ │ │ │ │ ├── ChunkDataCodec.java
│ │ │ │ │ ├── ChunkDatatableCodec.java
│ │ │ │ │ ├── ClickRequestCodec.java
│ │ │ │ │ ├── ClickResponseCodec.java
│ │ │ │ │ ├── CommandCodec.java
│ │ │ │ │ ├── CuboidBlockUpdateCodec.java
│ │ │ │ │ ├── EntityDatatableCodec.java
│ │ │ │ │ ├── LoginCodec.java
│ │ │ │ │ ├── ReadyCodec.java
│ │ │ │ │ ├── SyncedMapCodec.java
│ │ │ │ │ ├── UpdateEntityCodec.java
│ │ │ │ │ └── WorldChangeCodec.java
│ │ │ │ │ ├── handler
│ │ │ │ │ ├── BlockUpdateMessageHandler.java
│ │ │ │ │ ├── ChunkDataMessageHandler.java
│ │ │ │ │ ├── ChunkDatatableMessageHandler.java
│ │ │ │ │ ├── ClickRequestMessageHandler.java
│ │ │ │ │ ├── ClickResponseMessageHandler.java
│ │ │ │ │ ├── CommandMessageHandler.java
│ │ │ │ │ ├── CuboidBlockUpdateMessageHandler.java
│ │ │ │ │ ├── EntityDatatableMessageHandler.java
│ │ │ │ │ ├── LoginMessageHandler.java
│ │ │ │ │ ├── ReadyMessageHandler.java
│ │ │ │ │ ├── SyncedMapMessageHandler.java
│ │ │ │ │ ├── UpdateEntityMessageHandler.java
│ │ │ │ │ └── WorldChangeMessageHandler.java
│ │ │ │ │ └── message
│ │ │ │ │ ├── BlockUpdateMessage.java
│ │ │ │ │ ├── ChunkDataMessage.java
│ │ │ │ │ ├── ChunkDatatableMessage.java
│ │ │ │ │ ├── ClickRequestMessage.java
│ │ │ │ │ ├── ClickResponseMessage.java
│ │ │ │ │ ├── CommandMessage.java
│ │ │ │ │ ├── CuboidBlockUpdateMessage.java
│ │ │ │ │ ├── DatatableMessage.java
│ │ │ │ │ ├── EntityDatatableMessage.java
│ │ │ │ │ ├── LoginMessage.java
│ │ │ │ │ ├── ReadyMessage.java
│ │ │ │ │ ├── SpoutMessage.java
│ │ │ │ │ ├── SyncedMapMessage.java
│ │ │ │ │ ├── UpdateEntityMessage.java
│ │ │ │ │ └── WorldChangeMessage.java
│ │ │ │ ├── renderer
│ │ │ │ ├── BatchVertexRenderer.java
│ │ │ │ ├── EntityRenderer.java
│ │ │ │ ├── GL20BatchVertexRenderer.java
│ │ │ │ ├── GL30BatchVertexRenderer.java
│ │ │ │ ├── GL40BatchVertexRenderer.java
│ │ │ │ ├── GLBufferContainer.java
│ │ │ │ ├── GLES20BatchVertexRenderer.java
│ │ │ │ ├── WorldRenderer.java
│ │ │ │ ├── shader
│ │ │ │ │ ├── BasicShader.java
│ │ │ │ │ ├── ClientShader.java
│ │ │ │ │ ├── EmptyShader.java
│ │ │ │ │ ├── ShaderCompileException.java
│ │ │ │ │ ├── ShaderHelper.java
│ │ │ │ │ ├── ShaderVariableNotFoundException.java
│ │ │ │ │ ├── SpoutShader.java
│ │ │ │ │ └── variables
│ │ │ │ │ │ ├── AttributeShaderVariable.java
│ │ │ │ │ │ ├── ColorShaderVariable.java
│ │ │ │ │ │ ├── FloatShaderVariable.java
│ │ │ │ │ │ ├── IntShaderVariable.java
│ │ │ │ │ │ ├── Mat2ShaderVariable.java
│ │ │ │ │ │ ├── Mat3ShaderVariable.java
│ │ │ │ │ │ ├── Mat4ArrayShaderVariable.java
│ │ │ │ │ │ ├── Mat4ShaderVariable.java
│ │ │ │ │ │ ├── ShaderVariable.java
│ │ │ │ │ │ ├── TextureSamplerShaderVariable.java
│ │ │ │ │ │ ├── Vec2ShaderVariable.java
│ │ │ │ │ │ ├── Vec3ShaderVariable.java
│ │ │ │ │ │ ├── Vec4ShaderVariable.java
│ │ │ │ │ │ └── Vector3ArrayShaderVariable.java
│ │ │ │ ├── vertexbuffer
│ │ │ │ │ └── SpoutFloatBuffer.java
│ │ │ │ └── vertexformat
│ │ │ │ │ ├── PositionColor.java
│ │ │ │ │ ├── PositionNormalTexture.java
│ │ │ │ │ └── vertexattributes
│ │ │ │ │ └── VertexAttributes.java
│ │ │ │ ├── scheduler
│ │ │ │ ├── SchedulerSyncExecutorThread.java
│ │ │ │ ├── SpoutParallelTaskManager.java
│ │ │ │ ├── SpoutScheduler.java
│ │ │ │ ├── SpoutTask.java
│ │ │ │ ├── SpoutTaskManager.java
│ │ │ │ ├── SpoutWorker.java
│ │ │ │ ├── TaskPriorityQueue.java
│ │ │ │ └── parallel
│ │ │ │ │ ├── ParallelTaskInfo.java
│ │ │ │ │ └── RegionIdPair.java
│ │ │ │ ├── util
│ │ │ │ ├── ChunkModel.java
│ │ │ │ ├── ChunkSnapshotModel.java
│ │ │ │ ├── DeadlockMonitor.java
│ │ │ │ ├── MacOSXUtils.java
│ │ │ │ ├── Perlin2D.java
│ │ │ │ ├── RectangularPacker.java
│ │ │ │ ├── StackTrace.java
│ │ │ │ ├── StringUtil.java
│ │ │ │ ├── TextWrapper.java
│ │ │ │ ├── TicklockMonitor.java
│ │ │ │ ├── TripleInt.java
│ │ │ │ ├── access
│ │ │ │ │ └── SpoutAccessManager.java
│ │ │ │ ├── argument
│ │ │ │ │ ├── EnumConverter.java
│ │ │ │ │ ├── PlatformConverter.java
│ │ │ │ │ └── RenderModeConverter.java
│ │ │ │ ├── packed
│ │ │ │ │ └── PackedCoords.java
│ │ │ │ └── thread
│ │ │ │ │ ├── AsyncExecutorUtils.java
│ │ │ │ │ ├── AsyncManager.java
│ │ │ │ │ ├── coretasks
│ │ │ │ │ ├── CopySnapshotTask.java
│ │ │ │ │ ├── DynamicUpdatesTask.java
│ │ │ │ │ ├── FinalizeTask.java
│ │ │ │ │ ├── GlobalManagerRunnableFactory.java
│ │ │ │ │ ├── LightingTask.java
│ │ │ │ │ ├── ManagerRunnable.java
│ │ │ │ │ ├── ManagerRunnableFactory.java
│ │ │ │ │ ├── PhysicsTask.java
│ │ │ │ │ ├── PreSnapshotTask.java
│ │ │ │ │ ├── SequencedManagerRunnableFactory.java
│ │ │ │ │ └── StartTickTask.java
│ │ │ │ │ ├── lock
│ │ │ │ │ └── SpoutSnapshotLock.java
│ │ │ │ │ ├── snapshotable
│ │ │ │ │ ├── SnapshotManager.java
│ │ │ │ │ ├── SnapshotUpdate.java
│ │ │ │ │ ├── Snapshotable.java
│ │ │ │ │ ├── SnapshotableArrayList.java
│ │ │ │ │ ├── SnapshotableBoolean.java
│ │ │ │ │ ├── SnapshotableByte.java
│ │ │ │ │ ├── SnapshotableByteArray.java
│ │ │ │ │ ├── SnapshotableDouble.java
│ │ │ │ │ ├── SnapshotableFloat.java
│ │ │ │ │ ├── SnapshotableHashMap.java
│ │ │ │ │ ├── SnapshotableHashSet.java
│ │ │ │ │ ├── SnapshotableInt.java
│ │ │ │ │ ├── SnapshotableLinkedHashMap.java
│ │ │ │ │ ├── SnapshotableLong.java
│ │ │ │ │ ├── SnapshotableReference.java
│ │ │ │ │ ├── SnapshotableShort.java
│ │ │ │ │ ├── SnapshotableShortArray.java
│ │ │ │ │ └── SnapshotableTripleIntHashMap.java
│ │ │ │ │ └── threadfactory
│ │ │ │ │ └── NamedThreadFactory.java
│ │ │ │ └── world
│ │ │ │ ├── MemoryReclamationThread.java
│ │ │ │ ├── RegionFileManager.java
│ │ │ │ ├── RegionGenerator.java
│ │ │ │ ├── RegionSource.java
│ │ │ │ ├── SpoutBlock.java
│ │ │ │ ├── SpoutChunk.java
│ │ │ │ ├── SpoutChunkSnapshot.java
│ │ │ │ ├── SpoutChunkSnapshotFuture.java
│ │ │ │ ├── SpoutChunkSnapshotModel.java
│ │ │ │ ├── SpoutClientWorld.java
│ │ │ │ ├── SpoutColumn.java
│ │ │ │ ├── SpoutRegion.java
│ │ │ │ ├── SpoutServerWorld.java
│ │ │ │ ├── SpoutWorld.java
│ │ │ │ ├── WorldSavingThread.java
│ │ │ │ ├── collision
│ │ │ │ ├── SpoutCollisionListener.java
│ │ │ │ └── SpoutLinkedWorldInfo.java
│ │ │ │ ├── dynamic
│ │ │ │ ├── ChunkPoint.java
│ │ │ │ ├── DynamicBlockUpdate.java
│ │ │ │ └── DynamicBlockUpdateTree.java
│ │ │ │ └── physics
│ │ │ │ ├── PhysicsQueue.java
│ │ │ │ ├── PhysicsUpdate.java
│ │ │ │ └── UpdateQueue.java
│ │ └── resources
│ │ │ ├── entities
│ │ │ └── Spouty
│ │ │ │ ├── spouty.obj
│ │ │ │ ├── spouty.png
│ │ │ │ ├── spouty.sam
│ │ │ │ ├── spouty.sep
│ │ │ │ ├── spouty.ske
│ │ │ │ ├── spouty.smt
│ │ │ │ ├── spouty.spm
│ │ │ │ ├── spouty
│ │ │ │ ├── spouty.obj
│ │ │ │ ├── spouty.sam
│ │ │ │ └── spouty.ske
│ │ │ │ └── spouty2.sam
│ │ │ ├── exporter
│ │ │ └── Spout.rtpl
│ │ │ ├── fallbacks
│ │ │ ├── cube.uvs
│ │ │ ├── entity.sep
│ │ │ ├── fallback.120.frag
│ │ │ ├── fallback.120.vert
│ │ │ ├── fallback.330.frag
│ │ │ ├── fallback.330.vert
│ │ │ ├── fallback.obj
│ │ │ ├── fallback.png
│ │ │ ├── fallback.spm
│ │ │ ├── fallback.ssf
│ │ │ └── generic.smt
│ │ │ ├── fonts
│ │ │ └── ubuntu
│ │ │ │ ├── Ubuntu-B.ttf
│ │ │ │ ├── Ubuntu-BI.ttf
│ │ │ │ ├── Ubuntu-C.ttf
│ │ │ │ ├── Ubuntu-L.ttf
│ │ │ │ ├── Ubuntu-LI.ttf
│ │ │ │ ├── Ubuntu-M.ttf
│ │ │ │ ├── Ubuntu-MI.ttf
│ │ │ │ ├── Ubuntu-R.ttf
│ │ │ │ ├── Ubuntu-RI.ttf
│ │ │ │ ├── UbuntuMono-B.ttf
│ │ │ │ ├── UbuntuMono-BI.ttf
│ │ │ │ ├── UbuntuMono-R.ttf
│ │ │ │ └── UbuntuMono-RI.ttf
│ │ │ ├── lang
│ │ │ ├── keymap.yml
│ │ │ └── lang-DE_DE.yml
│ │ │ ├── materials
│ │ │ ├── BasicMaterial.smt
│ │ │ ├── ExampleMaterial.smt
│ │ │ ├── FontMaterial.smt
│ │ │ ├── GUIColorMaterial.smt
│ │ │ ├── GUIMaterial.smt
│ │ │ ├── SkydomeMaterial.smt
│ │ │ ├── SolidBlock.smt
│ │ │ ├── SphericalSkydome.smt
│ │ │ ├── UnknownBlock.smt
│ │ │ └── postprocess
│ │ │ │ └── ssao.smt
│ │ │ ├── models
│ │ │ ├── basic
│ │ │ │ ├── solidBlue.uvs
│ │ │ │ ├── solidBrown.uvs
│ │ │ │ ├── solidGray.uvs
│ │ │ │ ├── solidGreen.uvs
│ │ │ │ ├── solidLightGreen.uvs
│ │ │ │ ├── solidRed.uvs
│ │ │ │ └── solidSkyBlue.uvs
│ │ │ ├── defaultskydome.spm
│ │ │ ├── entity
│ │ │ │ └── model.sam
│ │ │ ├── meshes
│ │ │ │ ├── block.uvs
│ │ │ │ ├── cube.obj
│ │ │ │ ├── dirt.obj
│ │ │ │ ├── grass.obj
│ │ │ │ ├── skydome.obj
│ │ │ │ ├── skydome2.obj
│ │ │ │ └── stone.obj
│ │ │ ├── solidBlue.spm
│ │ │ ├── solidBrown.spm
│ │ │ ├── solidGray.spm
│ │ │ ├── solidGreen.spm
│ │ │ ├── solidLightGreen.spm
│ │ │ ├── solidRed.spm
│ │ │ ├── solidSkyBlue.spm
│ │ │ ├── sphereical_skydome.spm
│ │ │ └── unknownblock.spm
│ │ │ ├── natives
│ │ │ ├── linux.txt
│ │ │ ├── osx.txt
│ │ │ └── windows.txt
│ │ │ ├── scripts
│ │ │ ├── runclient.bat
│ │ │ ├── runclient.sh
│ │ │ ├── runserver.bat
│ │ │ └── runserver.sh
│ │ │ ├── shaders
│ │ │ ├── basic.120.frag
│ │ │ ├── basic.120.vert
│ │ │ ├── basic.330.frag
│ │ │ ├── basic.330.vert
│ │ │ ├── basic.ssf
│ │ │ ├── bones1b1a
│ │ │ │ ├── bones.120.vert
│ │ │ │ ├── bones.330.vert
│ │ │ │ └── bones.ssf
│ │ │ ├── bones2b1a
│ │ │ │ ├── bones.ssf
│ │ │ │ ├── bones2.120.vert
│ │ │ │ └── bones2.330.vert
│ │ │ ├── bones2b2a
│ │ │ │ ├── bones.120.vert
│ │ │ │ ├── bones.330.vert
│ │ │ │ └── bones.ssf
│ │ │ ├── bones2b2aInstanced
│ │ │ │ ├── bones.120.vert
│ │ │ │ ├── bones.330.vert
│ │ │ │ └── bones.ssf
│ │ │ ├── diffuse.120.frag
│ │ │ ├── diffuse.330.frag
│ │ │ ├── diffuse.ssf
│ │ │ ├── gui.basic.120.vert
│ │ │ ├── gui.basic.330.vert
│ │ │ ├── guiColorShader.120.frag
│ │ │ ├── guiColorShader.330.frag
│ │ │ ├── guiColorShader.ssf
│ │ │ ├── guiShader.120.frag
│ │ │ ├── guiShader.330.frag
│ │ │ ├── guiShader.ssf
│ │ │ ├── postprocess
│ │ │ │ ├── ssao.120.frag
│ │ │ │ ├── ssao.330.frag
│ │ │ │ ├── ssao.330.vert
│ │ │ │ ├── ssao.ssf
│ │ │ │ ├── ssao_blur.120.frag
│ │ │ │ └── ssao_blur.330.frag
│ │ │ ├── skyShader.120.frag
│ │ │ ├── skyShader.120.vert
│ │ │ ├── skyShader.330.frag
│ │ │ ├── skyShader.330.vert
│ │ │ ├── skyShader.ssf
│ │ │ ├── textShader.120.frag
│ │ │ ├── textShader.330.frag
│ │ │ └── textShader.ssf
│ │ │ └── textures
│ │ │ ├── colorTerrain.png
│ │ │ ├── orange.32.png
│ │ │ ├── skydome_cloudy.png
│ │ │ ├── sphereical_noon.png
│ │ │ └── testsky.png
│ └── test
│ │ └── java
│ │ └── org
│ │ └── spout
│ │ └── engine
│ │ ├── SerializableTest.java
│ │ ├── batcher
│ │ └── ChunkMeshBatchTest.java
│ │ ├── faker
│ │ ├── ChunkFaker.java
│ │ ├── EngineFaker.java
│ │ ├── RegionFaker.java
│ │ ├── SchedulerFaker.java
│ │ └── WorldFaker.java
│ │ ├── gui
│ │ └── FocusTest.java
│ │ ├── protocol
│ │ ├── BaseProtocolTest.java
│ │ └── SpoutProtocolTest.java
│ │ ├── util
│ │ └── packed
│ │ │ └── PackedCoordsTest.java
│ │ └── world
│ │ └── dynamic
│ │ ├── DynamicBlockUpdateTest.java
│ │ └── DynamicBlockUpdateTreeTest.java
└── tools
│ ├── SAM exporter
│ └── io_anim_sam
│ │ └── __init__.py
│ └── SKE exporter
│ └── io_anim_ske
│ └── __init__.py
├── logging
├── pom.xml
└── src
│ └── main
│ └── java
│ └── org
│ └── spout
│ └── logging
│ ├── LoggerOutputStream.java
│ ├── MessageFormatter.java
│ ├── file
│ └── RotatingFileHandler.java
│ └── jline
│ ├── CommandCallback.java
│ └── JLineHandler.java
├── math
├── README.md
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── org
│ │ │ └── spout
│ │ │ └── math
│ │ │ ├── HashFunctions.java
│ │ │ └── TrigMath.java
│ ├── template
│ │ └── org
│ │ │ └── spout
│ │ │ └── math
│ │ │ ├── GenericMath.template
│ │ │ ├── imaginary
│ │ │ ├── Complex_E_.template
│ │ │ ├── Imaginary_E_.template
│ │ │ └── Quaternion_E_.template
│ │ │ ├── matrix
│ │ │ ├── Matrix2_E_.template
│ │ │ ├── Matrix3_E_.template
│ │ │ ├── Matrix4_E_.template
│ │ │ ├── MatrixN_E_.template
│ │ │ └── Matrix_E_.template
│ │ │ └── vector
│ │ │ ├── Vector2_E_.template
│ │ │ ├── Vector3_E_.template
│ │ │ ├── Vector4_E_.template
│ │ │ ├── VectorN_E_.template
│ │ │ └── Vector_E_.template
│ └── templatei
│ │ └── org
│ │ └── spout
│ │ └── math
│ │ └── vector
│ │ ├── Vector2_E_.template
│ │ ├── Vector3_E_.template
│ │ ├── Vector4_E_.template
│ │ ├── VectorN_E_.template
│ │ └── Vector_E_.template
│ └── test
│ ├── java
│ └── org
│ │ └── spout
│ │ └── math
│ │ └── test
│ │ ├── GenericMathTest.java
│ │ └── TrigMathTest.java
│ ├── template
│ └── org
│ │ └── spout
│ │ └── math
│ │ └── test
│ │ ├── TestUtil_E_.template
│ │ ├── imaginary
│ │ ├── Complex_E_Test.template
│ │ └── Quaternion_E_Test.template
│ │ ├── matrix
│ │ ├── Matrix2_E_Test.template
│ │ ├── Matrix3_E_Test.template
│ │ ├── Matrix4_E_Test.template
│ │ └── MatrixN_E_Test.template
│ │ └── vector
│ │ ├── Vector2_E_Test.template
│ │ ├── Vector3_E_Test.template
│ │ ├── Vector4_E_Test.template
│ │ └── VectorN_E_Test.template
│ └── templatei
│ └── org
│ └── spout
│ └── math
│ └── test
│ ├── TestUtil_E_.template
│ └── vector
│ ├── Vector2_E_Test.template
│ ├── Vector3_E_Test.template
│ ├── Vector4_E_Test.template
│ └── VectorN_E_Test.template
└── pom.xml
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Normalize as LF in the repository, OS native locally
2 | * text=auto
3 | *.java text
4 |
5 | # Binary files that should not be modified
6 | *.dat binary
7 | *.db binary
8 | *.icns binary
9 | *.ico binary
10 | *.key binary
11 | *.jks binary
12 | *.jpg binary
13 | *.png binary
14 | *.ttf binary
15 | *.wav binary
16 | JavaApplicationStub binary
17 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Build #
2 | #########
3 | MANIFEST.MF
4 | dependency-reduced-pom.xml
5 |
6 | # Compiled #
7 | ############
8 | bin
9 | build
10 | dist
11 | lib
12 | out
13 | target
14 | *.com
15 | *.class
16 | *.dll
17 | *.exe
18 | *.o
19 | *.so
20 |
21 | # Databases #
22 | #############
23 | *.db
24 | *.sql
25 | *.sqlite
26 |
27 | # Packages #
28 | ############
29 | *.7z
30 | *.dmg
31 | *.gz
32 | *.iso
33 | *.jar
34 | *.rar
35 | *.tar
36 | *.zip
37 |
38 | # Repository #
39 | ##############
40 | .git
41 |
42 | # Logging #
43 | ###########
44 | /logs
45 | *.log
46 |
47 | # Misc #
48 | ########
49 | *.bak
50 |
51 | # System #
52 | ##########
53 | .DS_Store
54 | ehthumbs.db
55 | Thumbs.db
56 |
57 | # Project #
58 | ###########
59 | .classpath
60 | .externalToolBuilders
61 | .idea
62 | .project
63 | .settings
64 | nbproject
65 | atlassian-ide-plugin.xml
66 | build.xml
67 | nb-configuration.xml
68 | *.iml
69 | *.ipr
70 | *.iws
71 |
72 | # Runtime #
73 | ###########
74 | /cache
75 | /config
76 | /data
77 | /natives
78 | /plugins
79 | /resources
80 | /update
81 | /updates
82 | /worlds
83 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | # Source language and JDK version to use.
2 | language: java
3 | jdk: oraclejdk7
4 |
5 | # Compile and package JAR and set build properties.
6 | install: mvn package -DbuildNumber=$TRAVIS_BUILD_NUMBER -DciSystem=travis -Dcommit=${TRAVIS_COMMIT:0:7}
7 | after_success:
8 | # Get files for use with build, namely the custom Maven settings.xml.
9 | - "git clone https://github.com/SpoutDev/travis-ci-resources.git target/travis"
10 | # Check if commit s not a pull request, if git repo is official, and if branch is master. If checks pass, deploy artifacts to Maven repository.
11 | - "[[ $TRAVIS_PULL_REQUEST == false ]] && [[ $TRAVIS_REPO_SLUG == SpoutDev/Spout ]] && [[ $TRAVIS_BRANCH == master ]] && mvn deploy --settings target/travis/settings.xml"
12 |
13 | notifications:
14 | # Disable build status email notifications, until the issue with forks is fixed.
15 | email: false
16 | webhooks:
17 | # Send build information and status to Notifico.
18 | - http://n.tkte.ch/h/518/lFp1AJUSCBcaAgv_Xui6rHYB
19 |
20 | env:
21 | global:
22 | - secure: "xszG/f9V08yaLDcLVuaa2L8Rb9TM9tGzAAt4cFsCWypDZnxcT/OMiSFCFYqMOGY6jLrhtXumIMokd99OyXwpR0aIAOOtknfsQK6MZU/Di5bSSWDpNWaqU+xX6jxjj5onfiHvj189JQqsOGpjpseeQNfJ8OgvMBBxzM6sDY4PApM="
23 | - secure: "M43n6ukI0KvXFvrxmfpU3YgF/jKXIVPhsFxbYKoUX0B0DPua11Ms8L62uFlLUJkDa0B9vcuGZcgD5qxVrrHED+8SxnJVT9OjuSAyGvIAGE7EHTqEZxwClW03Jvurged1LwdrAH9LKFifa+do3dDGQCWZ47RbO2v2URZjABazRJk="
24 |
--------------------------------------------------------------------------------
/HEADER.txt:
--------------------------------------------------------------------------------
1 | This file is part of Spout.
2 |
3 | Copyright (c) ${inceptionYear} ${organization} <${url}/>
4 | Spout is licensed under the Spout License Version 1.
5 |
6 | Spout is free software: you can redistribute it and/or modify it under
7 | the terms of the GNU Lesser General Public License as published by the Free
8 | Software Foundation, either version 3 of the License, or (at your option)
9 | any later version.
10 |
11 | In addition, 180 days after any changes are published, you can use the
12 | software, incorporating those changes, under the terms of the MIT license,
13 | as described in the Spout License Version 1.
14 |
15 | Spout is distributed in the hope that it will be useful, but WITHOUT ANY
16 | WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17 | FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
18 | more details.
19 |
20 | You should have received a copy of the GNU Lesser General Public License,
21 | the MIT license and the Spout License Version 1 along with this program.
22 | If not, see for the GNU Lesser General Public
23 | License and see for the full license, including
24 | the MIT license.
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/Platform.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api;
28 |
29 | /**
30 | * Platform describes whether the plugin was written for the client, the server, or for both.
31 | */
32 | public enum Platform {
33 | SERVER,
34 | CLIENT,
35 | PROXY;
36 | }
37 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/AStarStorage.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai;
28 |
29 | public interface AStarStorage {
30 | void close(AStarNode node);
31 |
32 | AStarNode getBestNode();
33 |
34 | void open(AStarNode node);
35 |
36 | AStarNode removeBestNode();
37 |
38 | boolean shouldExamine(AStarNode neighbour);
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/Agent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai;
28 |
29 | public interface Agent {
30 | }
31 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/Plan.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai;
28 |
29 | public interface Plan {
30 | boolean isComplete();
31 |
32 | void update(T t);
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/Sensor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai;
28 |
29 | import org.spout.api.ai.goap.WorldState;
30 |
31 | public interface Sensor {
32 | WorldState generateState();
33 | }
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/UnboundedAStarGoal.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai;
28 |
29 | public abstract class UnboundedAStarGoal implements AStarGoal {
30 | @Override
31 | public float getInitialCost(T node) {
32 | return 0;
33 | }
34 |
35 | @Override
36 | public boolean isFinished(T node) {
37 | return false;
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/goap/Action.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai.goap;
28 |
29 | public interface Action {
30 | void activate();
31 |
32 | boolean evaluateContextPreconditions();
33 |
34 | float getCost();
35 |
36 | WorldState getEffects();
37 |
38 | WorldState getPreconditions();
39 |
40 | boolean isComplete();
41 |
42 | void update();
43 | }
44 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/goap/ActionPlanner.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai.goap;
28 |
29 | public interface ActionPlanner {
30 | Iterable getAvailableActions();
31 |
32 | float getCostModifierFor(Action action);
33 |
34 | void update();
35 |
36 | void registerAction(Action action);
37 |
38 | void registerGoal(Goal goal);
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/goap/Goal.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai.goap;
28 |
29 | public interface Goal {
30 | WorldState getGoalState();
31 |
32 | int getPriority();
33 |
34 | boolean shouldContinue();
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/pathfinder/AbstractBlockSource.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai.pathfinder;
28 |
29 | import org.spout.api.material.Material;
30 |
31 | public abstract class AbstractBlockSource implements BlockSource {
32 | @Override
33 | public Material getMaterialAt(int x, int y, int z) {
34 | return Material.get(getBlockTypeIdAt(x, y, z));
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/pathfinder/BlockExaminer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai.pathfinder;
28 |
29 | public interface BlockExaminer {
30 | float getCost(BlockSource source, PathPoint point);
31 |
32 | boolean isPassable(BlockSource source, PathPoint point);
33 | }
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/pathfinder/BlockSource.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai.pathfinder;
28 |
29 | import org.spout.api.material.Material;
30 | import org.spout.math.vector.Vector3f;
31 |
32 | public interface BlockSource {
33 | int getBlockTypeIdAt(int x, int y, int z);
34 |
35 | int getBlockTypeIdAt(Vector3f pos);
36 |
37 | Material getMaterialAt(int x, int y, int z);
38 |
39 | Material getMaterialAt(Vector3f pos);
40 | }
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/ai/pathfinder/PathPoint.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.ai.pathfinder;
28 |
29 | import org.spout.api.entity.Entity;
30 | import org.spout.api.geo.cuboid.Block;
31 | import org.spout.math.vector.Vector3f;
32 |
33 | public interface PathPoint {
34 | void addCallback(PathCallback callback);
35 |
36 | Vector3f getVector();
37 |
38 | public static interface PathCallback {
39 | void run(Entity entity, Block point);
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/command/filter/PlayerFilter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.command.filter;
28 |
29 | import org.spout.api.entity.Player;
30 |
31 | public class PlayerFilter extends CommandSourceFilter {
32 | public PlayerFilter() {
33 | super(Player.class);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/component/entity/AIComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.component.entity;
28 |
29 | public abstract class AIComponent extends EntityComponent {
30 | }
31 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/component/widget/SliderComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.component.widget;
28 |
29 | /**
30 | * Represents an element that has a sliding mechanism between zero and one float values.
31 | */
32 | public class SliderComponent extends WidgetComponent {
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/component/widget/SpinnerComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.component.widget;
28 |
29 | /**
30 | * Represents an element that has multiple values that are set with arrows.
31 | */
32 | public class SpinnerComponent extends WidgetComponent {
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/component/widget/list/ComboBoxComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.component.widget.list;
28 |
29 | import org.spout.api.component.widget.WidgetComponent;
30 |
31 | /**
32 | * Represents an element with a drop down menu.
33 | */
34 | public class ComboBoxComponent extends WidgetComponent {
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/component/widget/list/ItemListComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.component.widget.list;
28 |
29 | import org.spout.api.component.widget.WidgetComponent;
30 |
31 | /**
32 | * Represents a element that has multiple "items" in it.
33 | */
34 | public class ItemListComponent extends WidgetComponent {
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/entity/PlayerSnapshot.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.entity;
28 |
29 | import org.spout.api.util.Named;
30 |
31 | /**
32 | * Represents a snapshot of player state at a UTC timestamp, with immutable values
33 | */
34 | public interface PlayerSnapshot extends EntitySnapshot, Named {
35 | @Override
36 | public Player getReference();
37 | }
38 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/EventExecutor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event;
28 |
29 | import org.spout.api.exception.EventException;
30 |
31 | public interface EventExecutor {
32 | public void execute(Event event) throws EventException;
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/Listener.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event;
28 |
29 | /**
30 | * An empty interface that all event handler classes have to implement.
31 | */
32 | public interface Listener {
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/audio/SoundEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.audio;
28 |
29 | import org.spout.api.audio.SoundSource;
30 | import org.spout.api.event.Event;
31 |
32 | public abstract class SoundEvent extends Event {
33 | private final SoundSource source;
34 |
35 | public SoundEvent(SoundSource source) {
36 | this.source = source;
37 | }
38 |
39 | public SoundSource getSource() {
40 | return source;
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/entity/EntityEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.entity;
28 |
29 | import org.spout.api.entity.Entity;
30 |
31 | /**
32 | * @author zml2008
33 | */
34 | public interface EntityEvent {
35 | /**
36 | * Gets the entity associated with this event.
37 | *
38 | * @return The entity associated with the event.
39 | */
40 | Entity getEntity();
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/object/EventableListener.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.object;
28 |
29 | /**
30 | * Listener for eventable object listeners
31 | */
32 | public interface EventableListener {
33 | public void onEvent(T event);
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/object/ObjectEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.object;
28 |
29 | @SuppressWarnings ("rawtypes")
30 | public class ObjectEvent {
31 | private final T associatedObject;
32 |
33 | public ObjectEvent(T associatedObject) {
34 | this.associatedObject = associatedObject;
35 | }
36 |
37 | public T getAssociatedObject() {
38 | return associatedObject;
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/player/Action.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.player;
28 |
29 | public enum Action {
30 | LEFT_CLICK,
31 | RIGHT_CLICK,
32 | }
33 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/player/PlayerEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.player;
28 |
29 | import org.spout.api.entity.Player;
30 |
31 | /**
32 | * @author zml2008
33 | */
34 | public interface PlayerEvent {
35 | Player getPlayer();
36 | }
37 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/player/input/PlayerInputEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.player.input;
28 |
29 | import org.spout.api.entity.Player;
30 | import org.spout.api.event.player.AbstractPlayerEvent;
31 |
32 | public abstract class PlayerInputEvent extends AbstractPlayerEvent {
33 | public PlayerInputEvent(Player p) {
34 | super(p);
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/event/world/WorldEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.event.world;
28 |
29 | import org.spout.api.geo.World;
30 |
31 | /**
32 | * @author zml2008
33 | */
34 | public interface WorldEvent {
35 | /**
36 | * Gets the world associated with this event.
37 | *
38 | * @return The world associated with the event.
39 | */
40 | World getWorld();
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/exception/BoneNotFoundException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.exception;
28 |
29 | public class BoneNotFoundException extends RuntimeException {
30 | private static final long serialVersionUID = 1L;
31 |
32 | public BoneNotFoundException(String m) {
33 | super(m);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/exception/ComputerIsPotatoException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.exception;
28 |
29 | /**
30 | * Thrown when your computer does not support a specific feature.
31 | */
32 | public class ComputerIsPotatoException extends RuntimeException {
33 | /**
34 | *
35 | */
36 | private static final long serialVersionUID = 1L;
37 |
38 | public ComputerIsPotatoException(String message) {
39 | super(message);
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/exception/EventException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.exception;
28 |
29 | @SuppressWarnings ("serial")
30 | public class EventException extends Exception {
31 | public EventException(String message) {
32 | super(message);
33 | }
34 |
35 | public EventException(String message, Throwable cause) {
36 | super(message, cause);
37 | }
38 |
39 | public EventException(Throwable cause) {
40 | super(cause);
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/exception/IllegalPluginAccessException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.exception;
28 |
29 | public class IllegalPluginAccessException extends RuntimeException {
30 | private static final long serialVersionUID = -3181800705877027623L;
31 |
32 | public IllegalPluginAccessException() {
33 | }
34 |
35 | public IllegalPluginAccessException(String msg) {
36 | super(msg);
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/generator/biome/Decorator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.generator.biome;
28 |
29 | import org.spout.api.generator.Populator;
30 |
31 | /**
32 | * Biome level abstraction layer
33 | */
34 | public abstract class Decorator extends Populator {
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/generator/biome/selector/LayeredBiomeSelectorElement.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.generator.biome.selector;
28 |
29 | /**
30 | * Represents an element of {@link org.spout.api.generator.biome.selector.LayeredBiomeSelector}, which is either a {@link org.spout.api.generator.biome.Biome} or a {@link BiomeSelectorLayer}.
31 | */
32 | public interface LayeredBiomeSelectorElement {
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/geo/WorldSource.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.geo;
28 |
29 | /**
30 | * Represents an object that can be contained within a {@link World}
31 | */
32 | public interface WorldSource {
33 | /**
34 | * Gets the World
35 | *
36 | * @return the World
37 | */
38 | public World getWorld();
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/geo/cuboid/BlockContainer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.geo.cuboid;
28 |
29 | public interface BlockContainer extends CubicContainer {
30 | /**
31 | * Sets the state for the next block in the sequence.
32 | */
33 | public void setBlockFullState(int state);
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/geo/cuboid/Cube.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.geo.cuboid;
28 |
29 | import org.spout.api.geo.discrete.Point;
30 | import org.spout.math.vector.Vector3f;
31 |
32 | /**
33 | * Represents a Cube that is located somewhere in a world.
34 | */
35 | public class Cube extends Cuboid {
36 | public Cube(Point base, float size) {
37 | super(base, new Vector3f(size, size, size));
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/geo/cuboid/CubicContainer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.geo.cuboid;
28 |
29 | public interface CubicContainer {
30 | /**
31 | * Gets the fill order for the container
32 | */
33 | public ContainerFillOrder getOrder();
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/geo/cuboid/LightContainer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.geo.cuboid;
28 |
29 | public interface LightContainer extends CubicContainer {
30 | /**
31 | * Sets the nibble light level for the next block in the sequence.
32 | */
33 | public void setLightLevel(byte light);
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/gui/FullScreen.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.gui;
28 |
29 | /**
30 | * Represents a screen the takes up the entire window.
31 | */
32 | public class FullScreen extends Screen {
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/input/Mouse.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.input;
28 |
29 | public final class Mouse {
30 | public static final int BUTTON_LEFT = 0;
31 | public static final int BUTTON_RIGHT = 1;
32 | public static final int BUTTON_MIDDLE = 2;
33 | // dummy ids
34 | public static final int SCROLL_UP = Integer.MAX_VALUE;
35 | public static final int SCROLL_DOWN = SCROLL_UP - 1;
36 |
37 | private Mouse() {
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/inventory/Container.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.inventory;
28 |
29 | /**
30 | * Represents anything that has an inventory.
31 | */
32 | public interface Container {
33 | /**
34 | * Gets the inventory of this entity
35 | *
36 | * @return The Inventory of this entity
37 | */
38 | public Inventory getInventory();
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/inventory/recipe/SmeltedRecipe.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.inventory.recipe;
28 |
29 | public class SmeltedRecipe extends ShapelessRecipe {
30 | //TODO: why does this class exist?
31 | public SmeltedRecipe(RecipeBuilder builder) {
32 | super(builder);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/io/CRCStoreRunnable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.io;
28 |
29 | public interface CRCStoreRunnable extends Runnable {
30 | public void setCRC(Long CRC);
31 | }
32 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/io/regionfile/SRFException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.io.regionfile;
28 |
29 | import org.spout.api.io.bytearrayarray.BAAException;
30 |
31 | public class SRFException extends BAAException {
32 | private static final long serialVersionUID = 1L;
33 |
34 | public SRFException(String message, Throwable t) {
35 | super(message, t);
36 | }
37 |
38 | public SRFException(String message) {
39 | super(message);
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/lighting/Modifiable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.lighting;
28 |
29 | public interface Modifiable {
30 | /**
31 | * Marks this object as modified
32 | */
33 | public void setModified();
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/map/DefaultedKey.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.map;
28 |
29 | import java.io.Serializable;
30 |
31 | public interface DefaultedKey {
32 | public T getDefaultValue();
33 |
34 | public String getKeyString();
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/material/range/CubicEffectRange.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.material.range;
28 |
29 | public class CubicEffectRange extends EffectRangeImpl {
30 | private final int range;
31 |
32 | public CubicEffectRange(int range) {
33 | super(range);
34 | this.range = range;
35 | }
36 |
37 | @Override
38 | public void initEffectIterator(EffectIterator i) {
39 | i.resetAsCubicIterator(range);
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/model/mesh/Mesh.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.model.mesh;
28 |
29 | public interface Mesh {
30 | }
31 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/plugin/LoadOrder.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.plugin;
28 |
29 | /**
30 | * Determines the load order for Plugins
31 | */
32 | public enum LoadOrder {
33 | /**
34 | * Loaded after the World is loaded
35 | */
36 | POSTWORLD,
37 | /**
38 | * Loaded at Server/Client startup
39 | */
40 | STARTUP
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/ClientSession.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol;
28 |
29 | import org.spout.api.Client;
30 |
31 | /**
32 | * Represents a connection to server.
Controls the state, protocol and channels of a connection to a server.
33 | */
34 | public interface ClientSession extends Session {
35 | @Override
36 | public Client getEngine();
37 | }
38 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/PortBinding.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol;
28 |
29 | import java.net.SocketAddress;
30 |
31 | /**
32 | * Represents a bound address that the server is connected to.
33 | */
34 | public interface PortBinding {
35 | public Protocol getProtocol();
36 |
37 | public SocketAddress getAddress();
38 | }
39 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/ProcessorHandler.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol;
28 |
29 | /**
30 | * Represents a processor handler.
31 | */
32 | public interface ProcessorHandler {
33 | /**
34 | * Sets the processor to be used to process the packets
35 | */
36 | public void setProcessor(ChannelProcessor processor);
37 | }
38 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/ServerSession.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol;
28 |
29 | import org.spout.api.Server;
30 |
31 | /**
32 | * Represents a connection to the client.
Controls the state, protocol and channels of a connection to the client.
33 | */
34 | public interface ServerSession extends Session {
35 | @Override
36 | public Server getEngine();
37 | }
38 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/SessionRegistry.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol;
28 |
29 | public interface SessionRegistry {
30 | /**
31 | * Adds a new session.
32 | *
33 | * @param session The session to add.
34 | */
35 | public void add(Session session);
36 |
37 | /**
38 | * Removes a session.
39 | *
40 | * @param session The session to remove.
41 | */
42 | public void remove(Session session);
43 | }
44 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/builder/FieldRef.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol.builder;
28 |
29 | public class FieldRef {
30 | private final int index;
31 |
32 | public FieldRef(int index) {
33 | this.index = index;
34 | }
35 |
36 | public int getIndex() {
37 | return index;
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/proxy/ConnectionInfo.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol.proxy;
28 |
29 | public interface ConnectionInfo {
30 | public String getIdentifier();
31 | }
32 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/proxy/ProxyStartMessage.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol.proxy;
28 |
29 | import org.spout.api.protocol.Message;
30 |
31 | public interface ProxyStartMessage extends Message {
32 | }
33 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/proxy/TransformableMessage.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol.proxy;
28 |
29 | import org.spout.api.protocol.Message;
30 |
31 | public interface TransformableMessage extends Message {
32 | public Message transform(boolean upstream, int connects, ConnectionInfo info, ConnectionInfo auxChannelInfo);
33 | }
34 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/protocol/replayable/ReplayableException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.protocol.replayable;
28 |
29 | public class ReplayableException extends RuntimeException {
30 | private static final long serialVersionUID = 13424275234247532L;
31 |
32 | public ReplayableException(String message) {
33 | super(message);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/render/RenderMode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.render;
28 |
29 | /**
30 | * Render Mode for the client
31 | *
32 | * GL20 - OpenGL 2.0 Client Profile GL30 - OpenGL 3.2 Client Profile (Default) GL40 - OpenGL 4.0 Client Profile GLES20 - OpenGL ES 2.0 Client Profile
33 | */
34 | public enum RenderMode {
35 | GL20,
36 | GL30,
37 | GL40,
38 | GLES20;
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/render/effect/BufferEffect.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.render.effect;
28 |
29 | import org.spout.api.geo.cuboid.ChunkSnapshotModel;
30 | import org.spout.api.render.BufferContainer;
31 |
32 | public interface BufferEffect {
33 | public abstract void post(ChunkSnapshotModel chunkModel, BufferContainer value);
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/render/effect/EntityEffect.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.render.effect;
28 |
29 | public interface EntityEffect {
30 | /**
31 | * Called right before rendering an entity
32 | */
33 | public abstract void preRenderEntity(SnapshotEntity snapshotEntity);
34 |
35 | /**
36 | * Called right after rendering an entity
37 | */
38 | public abstract void postRenderEntity(SnapshotEntity snapshotEntity);
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/render/effect/MeshEffect.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.render.effect;
28 |
29 | public interface MeshEffect {
30 | /**
31 | * Called right before generate a mesh
32 | */
33 | public abstract void preMesh(SnapshotMesh snapshotMesh);
34 |
35 | /**
36 | * Called right after generate a mesh
37 | */
38 | public abstract void postMesh(SnapshotMesh snapshotMesh);
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/render/effect/RenderEffect.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.render.effect;
28 |
29 | public interface RenderEffect {
30 | /**
31 | * Called right before rendering
32 | */
33 | public abstract void preRender(SnapshotRender snapshotRender);
34 |
35 | /**
36 | * Called right after rendering
37 | */
38 | public abstract void postRender(SnapshotRender snapshotRender);
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/render/effect/SnapshotRender.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.render.effect;
28 |
29 | import org.spout.api.render.RenderMaterial;
30 |
31 | public class SnapshotRender {
32 | private final RenderMaterial material;
33 |
34 | public SnapshotRender(RenderMaterial material) {
35 | this.material = material;
36 | }
37 |
38 | public RenderMaterial getMaterial() {
39 | return material;
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/resource/ResourceNotFoundException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.resource;
28 |
29 | /**
30 | * Called when a resource is non-existant in a specified location.
31 | */
32 | public class ResourceNotFoundException extends Exception {
33 | private static final long serialVersionUID = 1L;
34 |
35 | public ResourceNotFoundException(String resource) {
36 | super("Cannot find: " + resource);
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/signal/SubscriberInterface.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.signal;
28 |
29 | public interface SubscriberInterface {
30 | /**
31 | * @return the object that has sent the currently handled signal
32 | */
33 | public SignalInterface sender();
34 |
35 | /**
36 | * Sets the sender
37 | */
38 | public void setSender(SignalInterface sender);
39 | }
40 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/signal/SubscriberObject.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.signal;
28 |
29 | public class SubscriberObject implements SubscriberInterface {
30 | SignalInterface sender = null;
31 |
32 | @Override
33 | public SignalInterface sender() {
34 | return sender;
35 | }
36 |
37 | @Override
38 | public void setSender(SignalInterface sender) {
39 | this.sender = sender;
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/tickable/BasicTickable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.tickable;
28 |
29 | public abstract class BasicTickable implements Tickable {
30 | @Override
31 | public final void tick(float dt) {
32 | if (canTick()) {
33 | onTick(dt);
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/Named.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util;
28 |
29 | /**
30 | * Represents an object that has a name
31 | */
32 | public interface Named {
33 | public String getName();
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/access/BanType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.access;
28 |
29 | public enum BanType {
30 | IP,
31 | PLAYER;
32 | }
33 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/bytebit/ByteBitMask.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.bytebit;
28 |
29 | public interface ByteBitMask {
30 | /**
31 | * Gets the bit byte mask for this object
32 | *
33 | * @return the bit mask
34 | */
35 | public byte getMask();
36 | }
37 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/list/concurrent/LongPrioritized.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.list.concurrent;
28 |
29 | public interface LongPrioritized {
30 | /**
31 | * Gets the priority of this object
32 | */
33 | public long getPriority();
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/list/concurrent/setqueue/SetQueueFullException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.list.concurrent.setqueue;
28 |
29 | public class SetQueueFullException extends IllegalStateException {
30 | private static final long serialVersionUID = 1L;
31 |
32 | public SetQueueFullException(String message) {
33 | super(message);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/map/concurrent/palette/IntegerDataInputStreamCallable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.map.concurrent.palette;
28 |
29 | import java.io.DataInputStream;
30 | import java.io.IOException;
31 |
32 | public interface IntegerDataInputStreamCallable {
33 | public T call(int x, DataInputStream din) throws IOException;
34 | }
35 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/map/concurrent/palette/PaletteFullException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.map.concurrent.palette;
28 |
29 | public class PaletteFullException extends Exception {
30 | private static final long serialVersionUID = 1L;
31 |
32 | public PaletteFullException(String message) {
33 | super(message);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/thread/annotation/MainThreadOnly.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.thread.annotation;
28 |
29 | public @interface MainThreadOnly {
30 | public String author() default "SpoutDev";
31 |
32 | public String version() default "1.0";
33 |
34 | public String shortDescription() default "Indicates that the method may only be called from the main thread";
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/main/java/org/spout/api/util/thread/annotation/Threadsafe.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.api.util.thread.annotation;
28 |
29 | public @interface Threadsafe {
30 | public String author() default "SpoutDev";
31 |
32 | public String version() default "1.0";
33 |
34 | public String shortDescription() default "Indicates that the method is inherently thread-safe.";
35 | }
36 |
--------------------------------------------------------------------------------
/api/src/test/java/org/spout/api/lang/keymap.yml:
--------------------------------------------------------------------------------
1 | nextId: 3
2 | ids:
3 | 1:
4 | class: org.spout.api.lang.LanguageTest
5 | string: Testing %0!
6 | 2:
7 | class: org.spout.api.lang.LanguageTest
8 | string: 'We have got %n item(s)'
--------------------------------------------------------------------------------
/api/src/test/resources/full_properties.yml:
--------------------------------------------------------------------------------
1 | codedlocale: de
2 | softdepends: [baz, foo, bar]
3 | depend: [foo, bar]
4 | main: com.example.main.Main
5 | load: postworld
6 | platform: SERVER
7 | reload: true
8 | website: www.example.com?param=test
9 | author: [JaneDoe, JohnDoe, Foo, Bar, Baz]
10 | description: This is a really long description...
11 | version: 9999.9999
12 | name: TestProperties12
13 | data:
14 | test_key: testData
15 | other_key: 1234
16 | false: true
--------------------------------------------------------------------------------
/api/src/test/resources/keymap.yml:
--------------------------------------------------------------------------------
1 | nextId: 3
2 | ids:
3 | 1:
4 | class: org.spout.api.lang.LanguageTest
5 | string: Testing %0!
6 | 2:
7 | class: org.spout.api.lang.LanguageTest
8 | string: 'We have got %n item(s)'
--------------------------------------------------------------------------------
/api/src/test/resources/lang-DE_DE.yml:
--------------------------------------------------------------------------------
1 | locale: de_DE
2 | strings:
3 | 1: Teste %0!
4 | 2:
5 | singular: 'Wir haben %n Einheit'
6 | plural: 'Wir haben %n Einheiten'
--------------------------------------------------------------------------------
/api/src/test/resources/missing_author_properties.yml:
--------------------------------------------------------------------------------
1 | version: 1.0
2 | description: Dummy Description
3 | website: www.example.com
4 | main: com.example
5 | load: startup
6 | platform: ALL
7 | data:
8 | test_key: testData
9 |
--------------------------------------------------------------------------------
/api/src/test/resources/missing_main_properties.yml:
--------------------------------------------------------------------------------
1 | name: TestProperties
2 | version: 2.0
3 | description: Dummy Description
4 | website: www.example.com
5 | authors: [JohnDoe, JaneDoe]
6 | platform: CLIENT
--------------------------------------------------------------------------------
/api/src/test/resources/missing_name_properties.yml:
--------------------------------------------------------------------------------
1 | name: TestProperties
2 | version: 2.0
3 | description: Dummy Description
4 | website: www.example.com
5 | main: com.example
--------------------------------------------------------------------------------
/api/src/test/resources/missing_platform_properties.yml:
--------------------------------------------------------------------------------
1 | name: TestProperties
2 | version: 1.0
3 | description: Dummy Description
4 | website: www.example.com
5 | author: JohnDoe
6 | main: com.example
7 | load: startup
--------------------------------------------------------------------------------
/api/src/test/resources/missing_version_properties.yml:
--------------------------------------------------------------------------------
1 | name: TestProperties
2 | description: Dummy Description
3 | website: www.example.com
4 | author: JohnDoe
5 | main: com.example
6 | load: startup
7 | platform: ALL
8 | data:
9 | test_key: testData
10 |
--------------------------------------------------------------------------------
/api/src/test/resources/misspelled_properties.yml:
--------------------------------------------------------------------------------
1 | codedLocale: de
2 | softDepend: [baz, foo, bar]
3 | depen: [foo, bar]
4 | main: com.example.main.Main
5 | Load: postworld
6 | platform: SERVER
7 | reload: true
8 | websites: www.example.com?param=test
9 | author: [JaneDoe, JohnDoe, Foo, Bar, Baz]
10 | description: This is a really long description...
11 | version: 9999.9999
12 | name: TestProperties12
13 | data:
14 | test_key: testData
15 | other_key: 1234
16 | false: true
--------------------------------------------------------------------------------
/api/src/test/resources/valid_properties.yml:
--------------------------------------------------------------------------------
1 | name: TestProperties
2 | version: 1.0
3 | description: Dummy Description
4 | website: www.example.com
5 |
6 | author: JohnDoe
7 |
8 | main: com.example
9 | load: startup
10 | platform: ALL
11 |
12 | data:
13 | test_key: testData
14 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/protocol/builtin/message/ReadyMessage.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.protocol.builtin.message;
28 |
29 | public class ReadyMessage extends SpoutMessage {
30 | public static final ReadyMessage INSTANCE = new ReadyMessage();
31 |
32 | @Override
33 | public boolean requiresPlayer() {
34 | return false;
35 | }
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/renderer/shader/EmptyShader.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.renderer.shader;
28 |
29 | /**
30 | * Empty Shader for 1.1 only. Do not use this for 3.0 ever.
31 | */
32 | public class EmptyShader extends ClientShader {
33 | public EmptyShader() {
34 | super(null, null);
35 | }
36 |
37 | @Override
38 | public void assign() {
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/renderer/shader/ShaderCompileException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.renderer.shader;
28 |
29 | public class ShaderCompileException extends RuntimeException {
30 | private static final long serialVersionUID = 1L;
31 |
32 | public ShaderCompileException(String text) {
33 | super(text);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/scheduler/SchedulerSyncExecutorThread.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.scheduler;
28 |
29 | public class SchedulerSyncExecutorThread extends Thread {
30 | public SchedulerSyncExecutorThread(Runnable r, String name) {
31 | super(r, name);
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/util/StackTrace.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.util;
28 |
29 | public class StackTrace {
30 | public static void printStackTrace() {
31 | try {
32 | throw new RuntimeException("Stack trace");
33 | } catch (Exception e) {
34 | e.printStackTrace();
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/util/argument/PlatformConverter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.util.argument;
28 |
29 | import org.spout.api.Platform;
30 |
31 | public class PlatformConverter extends EnumConverter {
32 | public PlatformConverter() {
33 | super(Platform.class);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/util/argument/RenderModeConverter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.util.argument;
28 |
29 | import org.spout.api.render.RenderMode;
30 |
31 | public class RenderModeConverter extends EnumConverter {
32 | public RenderModeConverter() {
33 | super(RenderMode.class);
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/util/thread/coretasks/GlobalManagerRunnableFactory.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.util.thread.coretasks;
28 |
29 | public abstract class GlobalManagerRunnableFactory implements ManagerRunnableFactory {
30 | @Override
31 | public int getMaxSequence() {
32 | return -1;
33 | }
34 |
35 | @Override
36 | public int getMinSequence() {
37 | return -1;
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/util/thread/coretasks/ManagerRunnableFactory.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.util.thread.coretasks;
28 |
29 | import org.spout.engine.util.thread.AsyncManager;
30 |
31 | public interface ManagerRunnableFactory {
32 | public ManagerRunnable getTask(AsyncManager manager, int sequence);
33 |
34 | public int getMaxSequence();
35 |
36 | public int getMinSequence();
37 | }
38 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/util/thread/coretasks/SequencedManagerRunnableFactory.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.util.thread.coretasks;
28 |
29 | public abstract class SequencedManagerRunnableFactory implements ManagerRunnableFactory {
30 | @Override
31 | public int getMaxSequence() {
32 | return 27;
33 | }
34 |
35 | @Override
36 | public int getMinSequence() {
37 | return -1;
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/engine/src/main/java/org/spout/engine/util/thread/snapshotable/Snapshotable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.engine.util.thread.snapshotable;
28 |
29 | public interface Snapshotable {
30 | /**
31 | * Copies the next value to the snapshot value
32 | */
33 | public void copySnapshot();
34 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/entities/Spouty/spouty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/entities/Spouty/spouty.png
--------------------------------------------------------------------------------
/engine/src/main/resources/entities/Spouty/spouty.sep:
--------------------------------------------------------------------------------
1 | Name: "Spouty"
2 | Components:
3 | - org.spout.engine.component.entity.SpoutAnimationComponent
4 | - org.spout.engine.component.entity.SpoutModelComponent
5 | Data:
6 | Health: 20
7 | Damages: 1
8 | Size: 1
9 | Model: model://Spout/entities/Spouty/spouty.spm
10 |
--------------------------------------------------------------------------------
/engine/src/main/resources/entities/Spouty/spouty.ske:
--------------------------------------------------------------------------------
1 | body:
2 | children:
3 | rightArm:
4 | vertices: 32 33 34 35 36 37 38 39
5 | weight: 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
6 | leftArm:
7 | vertices: 40 41 42 43 44 45 46 47
8 | weight: 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
9 | head:
10 | vertices: 8 9 10 11 12 13 14 15 48 49 50 51 52 53 54 55
11 | weight: 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
12 | leftLeg:
13 | vertices: 16 17 18 19 20 21 22 23
14 | weight: 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
15 | rightLeg:
16 | vertices: 24 25 26 27 28 29 30 31
17 | weight: 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
18 | vertices: 0 1 2 3 4 5 6 7
19 | weight: 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
20 |
--------------------------------------------------------------------------------
/engine/src/main/resources/entities/Spouty/spouty.smt:
--------------------------------------------------------------------------------
1 | Shader: shader://Spout/shaders/bones2b2a/bones.ssf
2 |
3 | MaterialParams:
4 | Diffuse: texture://Spout/entities/Spouty/spouty.png
5 | BlendColor: color(1,1,1,1)
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/entities/Spouty/spouty.spm:
--------------------------------------------------------------------------------
1 | Mesh: mesh://Spout/entities/Spouty/spouty.obj
2 | Material: material://Spout/entities/Spouty/spouty.smt
3 | Skeleton: skeleton://Spout/entities/Spouty/spouty.ske
4 | Animation:
5 | animatest1: animation://Spout/entities/Spouty/spouty.sam
6 | animatest2: animation://Spout/entities/Spouty/spouty2.sam
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/entities/Spouty/spouty/spouty.ske:
--------------------------------------------------------------------------------
1 | body:
2 | children:
3 | rightLeg:
4 | vertices: 32 33 34 35 36 37 38 39
5 | weight: 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
6 | leftLeg:
7 | vertices: 24 25 26 27 28 29 30 31
8 | weight: 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
9 | leftArm:
10 | vertices: 16 17 18 19 20 21 22 23
11 | weight: 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
12 | rightArm:
13 | vertices: 40 41 42 43 44 45 46 47
14 | weight: 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
15 | head:
16 | vertices: 8 9 10 11 12 13 14 15 48 49 50 51 52 53 54 55
17 | weight: 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
18 | vertices: 0 1 2 3 4 5 6 7
19 | weight: 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
20 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/cube.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 16 16
4 | size 1 1
5 | rect 1 0
6 | rect 2 0
7 | rect 3 0
8 | rect 4 0
9 | rect 5 0
10 | rect 6 0
11 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/entity.sep:
--------------------------------------------------------------------------------
1 | Name: "FallbackEntity"
2 | Components:
3 | - org.spout.engine.component.entity.SpoutModelComponent
4 | Data:
5 | notnull: 1
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/fallback.120.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | uniform sampler2D Diffuse;
4 |
5 | varying vec4 color;
6 | varying vec2 uvcoord;
7 |
8 | void main()
9 | {
10 | //gl_FragColor = color;
11 | gl_FragColor = texture2D(Diffuse, uvcoord);
12 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/fallback.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec4 vNormal;
6 | attribute vec2 vTexCoord;
7 |
8 | varying vec4 color;
9 | varying vec4 normal;
10 | varying vec2 uvcoord;
11 |
12 | uniform mat4 Projection;
13 | uniform mat4 View;
14 | uniform mat4 Model;
15 |
16 | void main()
17 | {
18 | gl_Position = Projection * View * Model * vPosition;
19 |
20 | uvcoord = vTexCoord;
21 | color = vColor;
22 | normal = vNormal;
23 | }
24 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/fallback.330.frag:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | in vec2 uvcoord;
4 | uniform sampler2D Diffuse;
5 |
6 | layout(location=0) out vec4 outputColor;
7 |
8 | void main()
9 | {
10 | outputColor = texture(Diffuse, uvcoord);
11 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/fallback.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 |
8 | out vec4 color;
9 | out vec4 normal;
10 | out vec2 uvcoord;
11 |
12 | uniform mat4 Projection;
13 | uniform mat4 View;
14 | uniform mat4 Model;
15 |
16 | void main()
17 | {
18 | gl_Position = Projection * View * Model * vPosition;
19 |
20 | uvcoord = vTexCoord;
21 | color = vColor;
22 | normal = vNormal;
23 | }
24 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/fallback.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fallbacks/fallback.png
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/fallback.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/fallbacks/cube.uvs
2 | Material: material://Spout/fallbacks/generic.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/fallback.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/fallbacks/fallback.330.vert
3 | Fragment: file://Spout/fallbacks/fallback.330.frag
4 | GL20:
5 | Vertex: file://Spout/fallbacks/fallback.120.vert
6 | Fragment: file://Spout/fallbacks/fallback.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fallbacks/generic.smt:
--------------------------------------------------------------------------------
1 | Shader: shader://Spout/fallbacks/fallback.ssf
2 |
3 | MaterialParams:
4 | Diffuse: texture://Spout/fallbacks/fallback.png
5 |
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-B.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-B.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-BI.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-BI.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-C.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-C.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-L.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-L.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-LI.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-LI.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-M.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-M.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-MI.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-MI.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-R.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-R.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/Ubuntu-RI.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/Ubuntu-RI.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/UbuntuMono-B.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/UbuntuMono-B.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/UbuntuMono-BI.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/UbuntuMono-BI.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/UbuntuMono-R.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/UbuntuMono-R.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/fonts/ubuntu/UbuntuMono-RI.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/fonts/ubuntu/UbuntuMono-RI.ttf
--------------------------------------------------------------------------------
/engine/src/main/resources/lang/lang-DE_DE.yml:
--------------------------------------------------------------------------------
1 | locale: DE_DE
2 | strings:
3 | 0: 'Fehler beim Laden der Konfiguration: %0'
4 | 1: Spout startet im %0-Modus.
5 | 2: Version %0 (implementiert SpoutAPI %1).
6 | 3: Diese Software ist im Alpha-Status, sodass einige Komponenten
7 | 4: fehlerhaft sein können oder gar nicht funktionieren. Bitte melde alle Fehler auf
8 | 5: http://issues.spout.org
9 | 6: Debug-Modus aktiviert! Dieser Modus ist nur für Entwickler vorgesehen
10 | 7: 'Fehler beim Laden von %0: %1'
11 | 8: Generiere eine neue Welt mit Namen [%0]
12 | 9: Spout fährt herunter
13 | 10: Server hält an
14 | 11: Fertig geladen, bereit für Spieler.
15 | 12: 'Fehler beim Laden der port-bindings: %0'
16 | 13: Keine port-bindings registriert! Clients werden sich nicht zum Server verbinden können.
17 | 14: 'Fehler beim Binden auf die Adresse %0. Läuft bereits ein anderer Server an dieser Adresse?'
18 | 15: 'Binde zu Adresse: %0...'
19 | 17: hello
20 | 16: 'Konnte den UPnP-Service nicht aktivieren: %0'
21 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/BasicMaterial.smt:
--------------------------------------------------------------------------------
1 | # Valid shader descriptor. Renderer will select the shader version depending on which mode the client is started in
2 | Shader: shader://Spout/shaders/basic.ssf
3 |
4 | RenderState:
5 | # Whether or not to use the Depth Buffer for rendering this material. Defaults to True.
6 | Depth: true
7 | # View and projection matricies. Used to override the rendering mode to a static matrix.
8 | # null matrix uses Main Camera
9 | # Defaults to null.
10 | Projection: null
11 | View: null
12 |
13 | # Parameters for the Shader.
14 | # Accepted Types:
15 | # - int
16 | # - float/double
17 | # - Vectors
18 | # - vec2(0,0)
19 | # - vec3(0,0,0)
20 | # - vec4(0,0,0,0)
21 | # - Colors
22 | # -RGB: color(0,0,0)
23 | # -RGBA: color(0,0,0,0)
24 | # - Matrix (***NOT IMPLEMENTED***)(Only square matricies supported)
25 | # - mat2(0,0,0,0)
26 | # - mat3(0,0,0, 0,0,0, 0,0,0)
27 | # - mat4(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0)
28 | # - Textures
29 | # - texture://PLUGIN/path/to/texture
30 | # - supported extensions: gif, png, jpg, bmp
31 |
32 | # Names match up to the name in the shader.
33 |
34 | MaterialParams:
35 | Diffuse: texture://Spout/resources/fallbacks/fallback.png
36 | BlendColor: color(1,1,1,1)
37 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/ExampleMaterial.smt:
--------------------------------------------------------------------------------
1 | # Valid shader descriptor. Renderer will select the shader version depending on which mode the client is started in
2 | Shader: shader://Spout/shaders/guiShader.ssf
3 |
4 | RenderState:
5 | # Whether or not to use the Depth Buffer for rendering this material. Defaults to True.
6 | Depth: true
7 | # View and projection matricies. Used to override the rendering mode to a static matrix.
8 | # null matrix uses Main Camera
9 | # Defaults to null.
10 | Projection: null
11 | View: null
12 |
13 | # Parameters for the Shader.
14 | # Accepted Types:
15 | # - int
16 | # - float/double
17 | # - Vectors
18 | # - vec2(0,0)
19 | # - vec3(0,0,0)
20 | # - vec4(0,0,0,0)
21 | # - Colors
22 | # -RGB: color(0,0,0)
23 | # -RGBA: color(0,0,0,0)
24 | # - Matrix (***NOT IMPLEMENTED***)(Only square matricies supported)
25 | # - mat2(0,0,0,0)
26 | # - mat3(0,0,0, 0,0,0, 0,0,0)
27 | # - mat4(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0)
28 | # - Textures
29 | # - texture://PLUGIN/path/to/texture
30 | # - supported extensions: gif, png, jpg, bmp
31 |
32 | # Names match up to the name in the shader.
33 |
34 | MaterialParams:
35 | Diffuse: texture://Spout/fallbacks/fallback.png
36 | BlendColor: color(1,1,1,1)
37 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/FontMaterial.smt:
--------------------------------------------------------------------------------
1 | # Valid shader descriptor. Renderer will select the shader version depending on which mode the client is started in
2 | Shader: shader://Spout/shaders/textShader.ssf
3 |
4 | RenderState:
5 | # Whether or not to use the Depth Buffer for rendering this material. Defaults to True.
6 | Depth: true
7 | # View and projection matricies. Used to override the rendering mode to a static matrix.
8 | # null matrix uses Main Camera
9 | # Defaults to null.
10 | Projection: null
11 | View: null
12 |
13 | # Parameters for the Shader.
14 | # Accepted Types:
15 | # - int
16 | # - float/double
17 | # - Vectors
18 | # - vec2(0,0)
19 | # - vec3(0,0,0)
20 | # - vec4(0,0,0,0)
21 | # - Colors
22 | # -RGB: color(0,0,0)
23 | # -RGBA: color(0,0,0,0)
24 | # - Matrix (***NOT IMPLEMENTED***)(Only square matricies supported)
25 | # - mat2(0,0,0,0)
26 | # - mat3(0,0,0, 0,0,0, 0,0,0)
27 | # - mat4(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0)
28 | # - Textures
29 | # - texture://PLUGIN/path/to/texture
30 | # - supported extensions: gif, png, jpg, bmp
31 |
32 | # Names match up to the name in the shader.
33 |
34 | MaterialParams:
35 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/GUIColorMaterial.smt:
--------------------------------------------------------------------------------
1 | Shader: shader://Spout/shaders/guiColorShader.ssf
2 | MaterialParams:
3 | Color: color(1,1,1,1)
4 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/GUIMaterial.smt:
--------------------------------------------------------------------------------
1 | # Valid shader descriptor. Renderer will select the shader version depending on which mode the client is started in
2 | Shader: shader://Spout/shaders/guiShader.ssf
3 |
4 | RenderState:
5 | # Whether or not to use the Depth Buffer for rendering this material. Defaults to True.
6 | Depth: true
7 | # View and projection matricies. Used to override the rendering mode to a static matrix.
8 | # null matrix uses Main Camera
9 | # Defaults to null.
10 | Projection: null
11 | View: null
12 |
13 | # Parameters for the Shader.
14 | # Accepted Types:
15 | # - int
16 | # - float/double
17 | # - Vectors
18 | # - vec2(0,0)
19 | # - vec3(0,0,0)
20 | # - vec4(0,0,0,0)
21 | # - Colors
22 | # -RGB: color(0,0,0)
23 | # -RGBA: color(0,0,0,0)
24 | # - Matrix (***NOT IMPLEMENTED***)(Only square matricies supported)
25 | # - mat2(0,0,0,0)
26 | # - mat3(0,0,0, 0,0,0, 0,0,0)
27 | # - mat4(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0)
28 | # - Textures
29 | # - texture://PLUGIN/path/to/texture
30 | # - supported extensions: gif, png, jpg, bmp
31 |
32 | # Names match up to the name in the shader.
33 |
34 | MaterialParams:
35 | Diffuse: texture://Spout/materials/testui.png
36 | BlendColor: color(1,1,1,1)
37 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/SkydomeMaterial.smt:
--------------------------------------------------------------------------------
1 | # Valid shader descriptor. Renderer will select the shader version depending on which mode the client is started in
2 | Shader: shader://Spout/shaders/skyShader.ssf
3 |
4 | RenderState:
5 | # Whether or not to use the Depth Buffer for rendering this material. Defaults to True.
6 | Depth: true
7 | # View and projection matricies. Used to override the rendering mode to a static matrix.
8 | # null matrix uses Main Camera
9 | # Defaults to null.
10 | Projection: null
11 | View: null
12 | Depth: false
13 |
14 | # Parameters for the Shader.
15 | # Accepted Types:
16 | # - int
17 | # - float/double
18 | # - Vectors
19 | # - vec2(0,0)
20 | # - vec3(0,0,0)
21 | # - vec4(0,0,0,0)
22 | # - Colors
23 | # -RGB: color(0,0,0)
24 | # -RGBA: color(0,0,0,0)
25 | # - Matrix (***NOT IMPLEMENTED***)(Only square matricies supported)
26 | # - mat2(0,0,0,0)
27 | # - mat3(0,0,0, 0,0,0, 0,0,0)
28 | # - mat4(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0)
29 | # - Textures
30 | # - texture://PLUGIN/path/to/texture
31 | # - supported extensions: gif, png, jpg, bmp
32 |
33 | # Names match up to the name in the shader.
34 |
35 | MaterialParams:
36 | Diffuse: texture://Spout/textures/testsky.png
37 | BlendColor: color(1,1,1,1)
38 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/SolidBlock.smt:
--------------------------------------------------------------------------------
1 | Shader: shader://Spout/shaders/diffuse.ssf
2 |
3 | MaterialParams:
4 | Diffuse: texture://Spout/textures/colorTerrain.png
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/SphericalSkydome.smt:
--------------------------------------------------------------------------------
1 | # Valid shader descriptor. Renderer will select the shader version depending on which mode the client is started in
2 | Shader: shader://Spout/shaders/skyShader.ssf
3 |
4 | RenderState:
5 | # Whether or not to use the Depth Buffer for rendering this material. Defaults to True.
6 | Depth: true
7 | # View and projection matricies. Used to override the rendering mode to a static matrix.
8 | # null matrix uses Main Camera
9 | # Defaults to null.
10 | Projection: null
11 | View: null
12 | Depth: false
13 |
14 | # Parameters for the Shader.
15 | # Accepted Types:
16 | # - int
17 | # - float/double
18 | # - Vectors
19 | # - vec2(0,0)
20 | # - vec3(0,0,0)
21 | # - vec4(0,0,0,0)
22 | # - Colors
23 | # -RGB: color(0,0,0)
24 | # -RGBA: color(0,0,0,0)
25 | # - Matrix (***NOT IMPLEMENTED***)(Only square matricies supported)
26 | # - mat2(0,0,0,0)
27 | # - mat3(0,0,0, 0,0,0, 0,0,0)
28 | # - mat4(0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0)
29 | # - Textures
30 | # - texture://PLUGIN/path/to/texture
31 | # - supported extensions: gif, png, jpg, bmp
32 |
33 | # Names match up to the name in the shader.
34 |
35 | MaterialParams:
36 | Diffuse: texture://Spout/textures/skydome_cloudy.png
37 | BlendColor: color(1,1,1,1)
38 |
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/UnknownBlock.smt:
--------------------------------------------------------------------------------
1 | Shader: shader://Spout/fallbacks/fallback.ssf
2 |
3 | MaterialParams:
4 | Diffuse: texture://Spout/textures/orange.32.png
--------------------------------------------------------------------------------
/engine/src/main/resources/materials/postprocess/ssao.smt:
--------------------------------------------------------------------------------
1 | # Valid shader descriptor. Renderer will select the shader version depending on which mode the client is started in
2 | Shader: shader://Spout/shaders/postprocess/ssao.ssf
3 |
4 | RenderState:
5 | # Whether or not to use the Depth Buffer for rendering this material. Defaults to True.
6 | Depth: true
7 | # View and projection matricies. Used to override the rendering mode to a static matrix.
8 | # null matrix uses Main Camera
9 | # Defaults to null.
10 | Projection: null
11 | View: null
12 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/basic/solidBlue.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 4 4
4 | size 1 1
5 | rect 2 0
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/basic/solidBrown.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 4 4
4 | size 1 1
5 | rect 0 2
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/basic/solidGray.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 4 4
4 | size 1 1
5 | rect 1 2
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/basic/solidGreen.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 4 4
4 | size 1 1
5 | rect 1 1
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/basic/solidLightGreen.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 4 4
4 | size 1 1
5 | rect 2 0
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/basic/solidRed.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 4 4
4 | size 1 1
5 | rect 0 0
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/basic/solidSkyBlue.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 4 4
4 | size 1 1
5 | rect 3 0
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/defaultskydome.spm:
--------------------------------------------------------------------------------
1 | Mesh: mesh://Spout/models/meshes/skydome.obj
2 | Material: material://Spout/materials/SkydomeMaterial.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/meshes/block.uvs:
--------------------------------------------------------------------------------
1 | # Spout uvs file
2 | # See TextureMeshLoader
3 | scale 1 1
4 | size 1 1
5 | rect 1 0
6 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/meshes/cube.obj:
--------------------------------------------------------------------------------
1 | # Blender v2.62 (sub 0) OBJ File: ''
2 | # www.blender.org
3 | v 1.000000 0.000000 0.000000
4 | v 1.000000 0.000000 1.000000
5 | v 0.000000 0.000000 1.000000
6 | v 0.000000 0.000000 0.000000
7 | v 1.000000 1.000000 0.000000
8 | v 1.000000 1.000000 1.000000
9 | v 0.000000 1.000000 1.000000
10 | v 0.000000 1.000000 0.000000
11 | vn 0.000000 -1.000000 0.000000
12 | vn 0.000000 1.000000 0.000000
13 | vn 1.000000 0.000000 0.000000
14 | vn 0.000000 0.000000 1.000000
15 | vn -1.000000 0.000000 0.000000
16 | vn 0.000000 0.000000 -1.000000
17 | f 1//1 2//1 3//1
18 | f 1//1 3//1 4//1
19 | f 5//2 8//2 7//2
20 | f 5//2 7//2 6//2
21 | f 1//3 5//3 6//3
22 | f 1//3 6//3 2//3
23 | f 2//4 6//4 7//4
24 | f 2//4 7//4 3//4
25 | f 3//5 7//5 8//5
26 | f 3//5 8//5 4//5
27 | f 5//6 1//6 4//6
28 | f 5//6 4//6 8//6
29 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/meshes/dirt.obj:
--------------------------------------------------------------------------------
1 | # Blender3D v249 OBJ File:
2 | # www.blender3d.org
3 | v 1.000000 -0.000000 -1.000000
4 | v 1.000000 0.000000 0.000000
5 | v -0.000000 -0.000000 -0.000000
6 | v 0.000000 -0.000000 -1.000000
7 | v 1.000000 1.000000 -1.000000
8 | v 0.999999 1.000000 0.000001
9 | v -0.000000 1.000000 -0.000000
10 | v 0.000000 1.000000 -1.000000
11 | vt 0.187500 1.000000
12 | vt 0.187500 0.937500
13 | vt 0.125000 1.000000
14 | vt 0.125000 0.937500
15 | vn 0.000000 0.000000 -1.000000
16 | vn -1.000000 -0.000000 -0.000000
17 | vn -0.000000 -0.000001 1.000000
18 | vn -0.000001 0.000000 1.000000
19 | vn 1.000000 -0.000000 0.000000
20 | vn 1.000000 0.000001 0.000001
21 | vn 0.000000 1.000000 -0.000000
22 | vn -0.000000 -1.000000 0.000000
23 | usemtl Material_terrain.png
24 | s off
25 | f 5/1/1 1/2/1 8/3/1
26 | f 1/2/1 4/4/1 8/3/1
27 | f 3/4/2 7/3/2 8/1/2
28 | f 3/4/2 8/1/2 4/2/2
29 | f 2/2/3 6/1/3 3/4/3
30 | f 6/1/4 7/3/4 3/4/4
31 | f 1/2/5 5/1/5 2/4/5
32 | f 5/1/6 6/3/6 2/4/6
33 | f 5/3/7 8/1/7 6/4/7
34 | f 8/1/7 7/2/7 6/4/7
35 | f 1/3/8 2/4/8 3/2/8
36 | f 1/3/8 3/2/8 4/1/8
37 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/meshes/grass.obj:
--------------------------------------------------------------------------------
1 | # Blender3D v249 OBJ File:
2 | # www.blender3d.org
3 | v 1.000000 -0.000000 -1.000000
4 | v 1.000000 0.000000 0.000000
5 | v -0.000000 -0.000000 -0.000000
6 | v 0.000000 -0.000000 -1.000000
7 | v 1.000000 1.000000 -1.000000
8 | v 0.999999 1.000000 0.000001
9 | v -0.000000 1.000000 -0.000000
10 | v 0.000000 1.000000 -1.000000
11 | vt 0.250000 1.000000
12 | vt 0.250000 0.937500
13 | vt 0.187500 1.000000
14 | vt 0.187500 0.937500
15 | vt 0.125000 1.000000
16 | vt 0.125000 0.937500
17 | vn 0.000000 0.000000 -1.000000
18 | vn -1.000000 -0.000000 -0.000000
19 | vn -0.000000 -0.000001 1.000000
20 | vn -0.000001 0.000000 1.000000
21 | vn 1.000000 -0.000000 0.000000
22 | vn 1.000000 0.000001 0.000001
23 | vn 0.000000 1.000000 -0.000000
24 | vn -0.000000 -1.000000 0.000000
25 | usemtl Material_terrain.png
26 | s off
27 | f 5/1/1 1/2/1 8/3/1
28 | f 1/2/1 4/4/1 8/3/1
29 | f 3/4/2 7/3/2 8/1/2
30 | f 3/4/2 8/1/2 4/2/2
31 | f 2/2/3 6/1/3 3/4/3
32 | f 6/1/4 7/3/4 3/4/4
33 | f 1/2/5 5/1/5 2/4/5
34 | f 5/1/6 6/3/6 2/4/6
35 | f 5/3/7 8/5/7 6/4/7
36 | f 8/5/7 7/6/7 6/4/7
37 | f 1/3/8 2/4/8 3/6/8
38 | f 1/3/8 3/6/8 4/5/8
39 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/meshes/stone.obj:
--------------------------------------------------------------------------------
1 | # Blender3D v249 OBJ File:
2 | # www.blender3d.org
3 | v 1.000000 0.000000 0.000000
4 | v 1.000000 0.000000 1.000000
5 | v 0.000000 0.000000 1.000000
6 | v 0.000000 0.000000 0.000000
7 | v 1.000000 1.000000 0.000000
8 | v 1.000000 1.000000 1.000000
9 | v 0.000000 1.000000 1.000000
10 | v 0.000000 1.000000 0.000000
11 | vt 0.125000 1.000000
12 | vt 0.125000 0.937500
13 | vt 0.062500 1.000000
14 | vt 0.062500 0.937500
15 | vn 0.000000 0.000000 -1.000000
16 | vn -1.000000 -0.000000 -0.000000
17 | vn -0.000000 -0.000001 1.000000
18 | vn -0.000001 0.000000 1.000000
19 | vn 1.000000 -0.000000 0.000000
20 | vn 1.000000 0.000001 0.000001
21 | vn 0.000000 1.000000 -0.000000
22 | vn -0.000000 -1.000000 0.000000
23 | usemtl Material_terrain.png
24 | s off
25 | f 5/1/1 1/2/1 8/3/1
26 | f 1/2/1 4/4/1 8/3/1
27 | f 3/4/2 7/3/2 8/1/2
28 | f 3/4/2 8/1/2 4/2/2
29 | f 2/2/3 6/1/3 3/4/3
30 | f 6/1/4 7/3/4 3/4/4
31 | f 1/2/5 5/1/5 2/4/5
32 | f 5/1/6 6/3/6 2/4/6
33 | f 5/3/7 8/1/7 6/4/7
34 | f 8/1/7 7/2/7 6/4/7
35 | f 1/3/8 2/4/8 3/2/8
36 | f 1/3/8 3/2/8 4/1/8
37 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/solidBlue.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/basic/solidBlue.uvs
2 | Material: material://Spout/materials/SolidBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/solidBrown.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/basic/solidBrown.uvs
2 | Material: material://Spout/materials/SolidBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/solidGray.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/basic/solidGray.uvs
2 | Material: material://Spout/materials/SolidBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/solidGreen.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/basic/solidGreen.uvs
2 | Material: material://Spout/materials/SolidBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/solidLightGreen.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/basic/solidLightGreen.uvs
2 | Material: material://Spout/materials/SolidBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/solidRed.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/basic/solidRed.uvs
2 | Material: material://Spout/materials/SolidBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/solidSkyBlue.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/basic/solidSkyBlue.uvs
2 | Material: material://Spout/materials/SolidBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/sphereical_skydome.spm:
--------------------------------------------------------------------------------
1 | Mesh: mesh://Spout/models/meshes/skydome2.obj
2 | Material: material://Spout/materials/SphericalSkydome.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/models/unknownblock.spm:
--------------------------------------------------------------------------------
1 | Mesh: cubemesh://Spout/models/meshes/block.uvs
2 | Material: material://Spout/materials/UnknownBlock.smt
3 |
--------------------------------------------------------------------------------
/engine/src/main/resources/natives/linux.txt:
--------------------------------------------------------------------------------
1 | liblwjgl.so
2 | liblwjgl64.so
3 | libopenal.so
4 | libopenal64.so
5 | libjinput-linux.so
6 | libjinput-linux64.so
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/natives/osx.txt:
--------------------------------------------------------------------------------
1 | libjinput-osx.jnilib
2 | liblwjgl.jnilib
3 | openal.dylib
4 |
--------------------------------------------------------------------------------
/engine/src/main/resources/natives/windows.txt:
--------------------------------------------------------------------------------
1 | jinput-dx8_64.dll
2 | jinput-dx8.dll
3 | jinput-raw_64.dll
4 | jinput-raw.dll
5 | jinput-wintab.dll
6 | lwjgl.dll
7 | lwjgl64.dll
8 | OpenAL32.dll
9 | OpenAL64.dll
10 |
--------------------------------------------------------------------------------
/engine/src/main/resources/scripts/runclient.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | java -server -XX:+UseG1GC -jar spout*.jar -platform CLIENT --debug --rendermode GL30
--------------------------------------------------------------------------------
/engine/src/main/resources/scripts/runclient.sh:
--------------------------------------------------------------------------------
1 | #/bin/sh
2 |
3 | java -server -XX:+UseG1GC -jar spout.*.jar -platform CLIENT --debug --rendermode GL30
4 |
--------------------------------------------------------------------------------
/engine/src/main/resources/scripts/runserver.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | java -server -XX:+UseG1GC -jar spout*.jar --debug
--------------------------------------------------------------------------------
/engine/src/main/resources/scripts/runserver.sh:
--------------------------------------------------------------------------------
1 | #/bin/sh
2 |
3 | java -server -XX:+UseG1GC -jar spout.*.jar --debug
4 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/basic.120.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec4 color;
4 | uniform sampler2D Diffuse;
5 |
6 | void main() {
7 | gl_FragColor = color;
8 | }
9 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/basic.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec4 vNormal;
6 | attribute vec2 vTexCoord;
7 |
8 | varying vec4 color;
9 | varying vec4 normal;
10 | varying vec2 uvcoord;
11 |
12 | uniform mat4 Projection;
13 | uniform mat4 View;
14 | uniform mat4 Model;
15 |
16 | void main() {
17 | gl_Position = Projection * View * Model * vPosition;
18 |
19 | uvcoord = vTexCoord;
20 | color = vColor;
21 | normal = vNormal;
22 | }
23 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/basic.330.frag:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | in vec2 uvcoord;
4 | in vec4 color;
5 | in vec4 normal;
6 |
7 | uniform sampler2D Diffuse;
8 | uniform vec4 BlendColor;
9 |
10 | layout(location=0) out vec4 outputColor;
11 | layout(location=1) out vec4 normals;
12 |
13 | void main() {
14 | outputColor = texture(Diffuse, uvcoord) * color * BlendColor;
15 | normals = (normal + vec4(1, 1, 1, 1)) / 2;
16 | }
17 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/basic.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 |
8 | out vec4 color;
9 | out vec4 normal;
10 | out vec2 uvcoord;
11 |
12 | uniform mat4 Projection;
13 | uniform mat4 View;
14 | uniform mat4 Model;
15 |
16 | void main()
17 | {
18 | gl_Position = Projection * View * Model * vPosition;
19 |
20 | uvcoord = vTexCoord;
21 | color = vColor;
22 | normal = vNormal;
23 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/basic.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/basic.330.vert
3 | Fragment: file://Spout/shaders/basic.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/basic.120.vert
6 | Fragment: file://Spout/shaders/basic.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones1b1a/bones.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec4 vNormal;
6 | attribute vec2 vTexCoord;
7 | attribute float bone_ids;
8 |
9 | varying vec4 color;
10 | varying vec4 normal;
11 | varying vec2 uvcoord;
12 |
13 | uniform mat4 Projection;
14 | uniform mat4 View;
15 | uniform mat4 Model;
16 | uniform mat4[6] bone_matrix1;
17 |
18 | void main() {
19 | int boneId = int(bone_ids);
20 | gl_Position = Projection * View * Model * bone_matrix1[boneId] * vPosition;
21 |
22 | uvcoord = vTexCoord;
23 | color = vColor;
24 | normal = vNormal;
25 | }
26 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones1b1a/bones.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 | layout(location=4) in float bone_ids;
8 |
9 | out vec4 color;
10 | out vec4 normal;
11 | out vec2 uvcoord;
12 |
13 | uniform mat4 Projection;
14 | uniform mat4 View;
15 | uniform mat4 Model;
16 | uniform mat4[6] bone_matrix1;
17 |
18 | void main() {
19 | int boneId = int(bone_ids);
20 | gl_Position = Projection * View * Model * bone_matrix1[boneId] * vPosition;
21 | color = vColor;
22 | uvcoord = vTexCoord;
23 | normal = vNormal;
24 | }
25 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones1b1a/bones.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/bones1b1a/bones.330.vert
3 | Fragment: file://Spout/shaders/diffuse.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/bones1b1a/bones.120.vert
6 | Fragment: file://Spout/shaders/diffuse.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b1a/bones.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/bones/bones2.330.vert
3 | Fragment: file://Spout/shaders/diffuse.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/bones/bones2.120.vert
6 | Fragment: file://Spout/shaders/diffuse.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b1a/bones2.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec4 vNormal;
6 | attribute vec2 vTexCoord;
7 | attribute vec2 bone_weights;
8 | attribute vec2 bone_ids;
9 |
10 | varying vec4 color;
11 | varying vec4 normal;
12 | varying vec2 uvcoord;
13 |
14 | uniform mat4 Projection;
15 | uniform mat4 View;
16 | uniform mat4 Model;
17 | uniform mat4[10] bone_matrix1;
18 |
19 | void main() {
20 | vec4 bone_transform = vec4(0,0,0,0);
21 |
22 | for (int i=0 ; i<2 ; ++i) {
23 | bone_transform += bone_weights[i] * bone_matrix1[int(bone_ids[i])] * vPosition;
24 | }
25 |
26 | gl_Position = Projection * View * Model * bone_transform;
27 |
28 | uvcoord = vTexCoord;
29 | normal = vNormal;
30 | color = vColor;
31 | }
32 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b1a/bones2.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 | layout(location=4) in vec2 bone_weights;
8 | layout(location=5) in vec2 bone_ids;
9 |
10 | out vec4 color;
11 | out vec4 normal;
12 | out vec2 uvcoord;
13 |
14 | uniform mat4 Projection;
15 | uniform mat4 View;
16 | uniform mat4 Model;
17 | uniform mat4[10] bone_matrix1;
18 |
19 | void main() {
20 | vec4 bone_transform = vec4(0,0,0,0);
21 |
22 | for (int i=0 ; i<2 ; ++i) {
23 | bone_transform += bone_weights[i] * bone_matrix1[int(bone_ids[i])] * vPosition;
24 | }
25 |
26 | gl_Position = Projection * View * Model * bone_transform;
27 |
28 | uvcoord = vTexCoord;
29 | normal = vNormal;
30 | color = vColor;
31 | }
32 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b2a/bones.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec4 vNormal;
6 | attribute vec2 vTexCoord;
7 | attribute vec2 bone_weights;
8 | attribute vec2 bone_ids;
9 |
10 | varying vec4 color;
11 | varying vec4 normal;
12 | varying vec2 uvcoord;
13 |
14 | uniform mat4 Projection;
15 | uniform mat4 View;
16 | uniform mat4 Model;
17 | uniform mat4[10] bone_matrix1;
18 | uniform mat4[10] bone_matrix2;
19 |
20 | void main() {
21 | vec4 bone_transform = vec4(0,0,0,0);
22 |
23 | for (int i=0 ; i<2 ; ++i) {
24 | int bone_id = int(bone_ids[i]);
25 | bone_transform += bone_weights[i] * bone_matrix1[bone_id] * bone_matrix2[bone_id] * vPosition;
26 | }
27 |
28 | gl_Position = Projection * View * Model * bone_transform;
29 |
30 | uvcoord = vTexCoord;
31 | normal = vNormal;
32 | color = vColor;
33 | }
34 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b2a/bones.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 | layout(location=4) in vec2 bone_weights;
8 | layout(location=5) in vec2 bone_ids;
9 |
10 | out vec4 color;
11 | out vec4 normal;
12 | out vec2 uvcoord;
13 |
14 | uniform mat4 Projection;
15 | uniform mat4 View;
16 | uniform mat4 Model;
17 | uniform mat4[10] bone_matrix1;
18 | uniform mat4[10] bone_matrix2;
19 |
20 | void main() {
21 | vec4 bone_transform = vec4(0,0,0,0);
22 |
23 | for (int i=0 ; i<2 ; ++i) {
24 | int bone_id = int(bone_ids[i]);
25 | bone_transform += bone_weights[i] * bone_matrix1[bone_id] * bone_matrix2[bone_id] * vPosition;
26 | }
27 |
28 | gl_Position = Projection * View * Model * bone_transform;
29 |
30 | uvcoord = vTexCoord;
31 | color = vColor;
32 | normal = vNormal;
33 | }
34 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b2a/bones.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/bones2b2a/bones.330.vert
3 | Fragment: file://Spout/shaders/diffuse.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/bones2b2a/bones.120.vert
6 | Fragment: file://Spout/shaders/diffuse.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b2aInstanced/bones.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec4 vNormal;
6 | attribute vec2 vTexCoord;
7 | attribute vec2 bone_weights;
8 | attribute vec2 bone_ids;
9 | attribute float index;
10 |
11 | varying vec4 color;
12 | varying vec4 normal;
13 | varying vec2 uvcoord;
14 |
15 | uniform mat4[2] Projection;
16 | uniform mat4[2] View;
17 | uniform mat4[2] Model;
18 | uniform mat4[20] bone_matrix1;
19 | uniform mat4[20] bone_matrix2;
20 |
21 | void main() {
22 | vec4 bone_transform = vec4(0,0,0,0);
23 | int instance = int(index);
24 |
25 | for (int i=0 ; i<2 ; ++i) {
26 | int bone_id = int(bone_ids[i]);
27 | bone_transform += bone_weights[i] * bone_matrix1[instance * 10 + bone_id] * bone_matrix2[instance * 10 + bone_id] * vPosition;
28 | }
29 |
30 | gl_Position = Projection[instance] * View[instance] * Model[instance] * bone_transform;
31 |
32 | uvcoord = vTexCoord;
33 | normal = vNormal;
34 | color = vColor;
35 | }
36 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b2aInstanced/bones.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 | layout(location=4) in vec2 bone_weights;
8 | layout(location=5) in vec2 bone_ids;
9 | layout(location=6) in float index;
10 |
11 | out vec4 color;
12 | out vec4 normal;
13 | out vec2 uvcoord;
14 |
15 | uniform mat4[2] Projection;
16 | uniform mat4[2] View;
17 | uniform mat4[2] Model;
18 | uniform mat4[20] bone_matrix1;
19 | uniform mat4[20] bone_matrix2;
20 |
21 | void main() {
22 | vec4 bone_transform = vec4(0,0,0,0);
23 | int instance = int(index);
24 |
25 | for (int i=0 ; i<2 ; ++i) {
26 | int bone_id = int(bone_ids[i]);
27 | bone_transform += bone_weights[i] * bone_matrix1[instance * 10 + bone_id] * bone_matrix2[instance * 10 + bone_id] * vPosition;
28 | }
29 |
30 | gl_Position = Projection[instance] * View[instance] * Model[instance] * bone_transform;
31 |
32 | uvcoord = vTexCoord;
33 | normal = vNormal;
34 | color = vColor;
35 | }
36 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/bones2b2aInstanced/bones.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/bones2b2aInstanced/bones.330.vert
3 | Fragment: file://Spout/shaders/diffuse.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/bones2b2aInstanced/bones.120.vert
6 | Fragment: file://Spout/shaders/diffuse.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/diffuse.120.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec2 uvcoord;
4 | uniform sampler2D Diffuse;
5 |
6 | void main() {
7 | gl_FragColor = texture2D(Diffuse, uvcoord);
8 | }
9 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/diffuse.330.frag:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | in vec2 uvcoord;
4 | in vec4 normal;
5 | uniform sampler2D Diffuse;
6 |
7 | layout(location=0) out vec4 outputColor;
8 | layout(location=1) out vec4 normals;
9 |
10 | void main()
11 | {
12 | outputColor = texture(Diffuse, uvcoord);
13 | normals = (normal + vec4(1, 1, 1, 1)) / 2;
14 | if (outputColor.a == 0) {
15 | discard;
16 | }
17 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/diffuse.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/basic.330.vert
3 | Fragment: file://Spout/shaders/diffuse.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/basic.120.vert
6 | Fragment: file://Spout/shaders/diffuse.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/gui.basic.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec4 vNormal;
6 | attribute vec2 vTexCoord;
7 |
8 | varying vec4 color;
9 | varying vec4 normal;
10 | varying vec2 uvcoord;
11 |
12 | uniform mat4 Projection;
13 | uniform mat4 View;
14 | uniform mat3 Model;
15 |
16 | void main() {
17 | mat4 model = mat4(Model);
18 | model[3][0] = model[2][0];
19 | model[3][1] = model[2][1];
20 | model[3][2] = model[2][2];
21 | model[2][0] = 0.0;
22 | model[2][1] = 0.0;
23 | model[2][2] = 1.0;
24 | gl_Position = Projection * View * model * vPosition;
25 |
26 | uvcoord = vTexCoord;
27 | color = vColor;
28 | normal = vNormal;
29 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/gui.basic.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 |
8 | out vec4 color;
9 | out vec4 normal;
10 | out vec2 uvcoord;
11 |
12 | uniform mat4 Projection;
13 | uniform mat4 View;
14 | uniform mat3 Model;
15 |
16 | void main() {
17 | mat4 model = mat4(Model);
18 | model[3][0] = model[2][0];
19 | model[3][1] = model[2][1];
20 | model[3][2] = model[2][2];
21 | model[2][0] = 0.0;
22 | model[2][1] = 0.0;
23 | model[2][2] = 1.0;
24 | gl_Position = Projection * View * model * vPosition;
25 |
26 | uvcoord = vTexCoord;
27 | color = vColor;
28 | normal = vNormal;
29 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/guiColorShader.120.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec4 color;
4 |
5 | void main() {
6 | gl_FragColor = color;
7 | }
8 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/guiColorShader.330.frag:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | in vec4 color;
4 |
5 | layout(location=0) out vec4 outputColor;
6 |
7 | void main() {
8 | outputColor = color;
9 | }
10 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/guiColorShader.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/gui.basic.330.vert
3 | Fragment: file://Spout/shaders/guiColorShader.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/gui.basic.120.vert
6 | Fragment: file://Spout/shaders/guiColorShader.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/guiShader.120.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec4 color;
4 | varying vec2 uvcoord;
5 |
6 | uniform sampler2D Diffuse;
7 | uniform vec4 BlendColor;
8 |
9 | void main() {
10 | gl_FragColor = texture2D(Diffuse, uvcoord) * color * BlendColor;
11 | }
12 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/guiShader.330.frag:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | in vec2 uvcoord;
4 | in vec4 color;
5 |
6 | uniform sampler2D Diffuse;
7 | uniform vec4 BlendColor;
8 |
9 | layout(location=0) out vec4 outputColor;
10 |
11 | void main() {
12 | outputColor = texture(Diffuse, uvcoord) * color * BlendColor;
13 | }
14 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/guiShader.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/gui.basic.330.vert
3 | Fragment: file://Spout/shaders/guiShader.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/gui.basic.120.vert
6 | Fragment: file://Spout/shaders/guiShader.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/postprocess/ssao.120.frag:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/shaders/postprocess/ssao.120.frag
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/postprocess/ssao.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 | //SSAO Vertex shader. Passes along the view vector.
3 |
4 | layout(location=0) in vec4 vPosition;
5 | layout(location=1) in vec4 vColor;
6 | layout(location=2) in vec4 vNormal;
7 | layout(location=3) in vec2 vTexCoord;
8 |
9 | out vec4 color;
10 | out vec4 normal;
11 | out vec2 uvcoord;
12 | out vec3 view_ray;
13 |
14 | uniform mat4 Projection;
15 | uniform mat4 View;
16 | uniform mat4 Model;
17 |
18 | void main()
19 | {
20 | gl_Position = Projection * View * Model * vPosition;
21 |
22 | view_ray = (View * vec4(1, 0, 0, 0)).xyz;
23 | uvcoord = vTexCoord;
24 | color = vColor;
25 | normal = vNormal;
26 | }
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/postprocess/ssao.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/basic.330.vert
3 | Fragment: file://Spout/shaders/postprocess/ssao.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/basic.120.vert
6 | Fragment: file://Spout/shaders/postprocess/ssao.330.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/postprocess/ssao_blur.120.frag:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/shaders/postprocess/ssao_blur.120.frag
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/postprocess/ssao_blur.330.frag:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/shaders/postprocess/ssao_blur.330.frag
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/skyShader.120.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec4 color;
4 | varying vec2 uvcoord;
5 |
6 | uniform sampler2D Diffuse;
7 | uniform vec4 BlendColor;
8 |
9 | void main() {
10 | gl_FragColor = texture2D(Diffuse, uvcoord);
11 | }
12 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/skyShader.120.vert:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | attribute vec4 vPosition;
4 | attribute vec4 vColor;
5 | attribute vec2 vTexCoord;
6 |
7 | varying vec4 color;
8 | varying vec2 uvcoord;
9 | varying vec4 normal;
10 |
11 | uniform mat4 Projection;
12 | uniform mat4 View;
13 | uniform mat4 Model;
14 |
15 | void main() {
16 | gl_Position = Projection * View * Model * vPosition;
17 |
18 | uvcoord = vTexCoord;
19 | color = vColor;
20 | normal = View * Model * vPosition;
21 | }
22 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/skyShader.330.frag:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | in vec2 uvcoord;
4 | in vec4 color;
5 |
6 | uniform sampler2D Diffuse;
7 | uniform vec4 BlendColor;
8 |
9 | layout(location=0) out vec4 outputColor;
10 |
11 | void main() {
12 | outputColor = texture(Diffuse, uvcoord);
13 | }
14 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/skyShader.330.vert:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | layout(location=0) in vec4 vPosition;
4 | layout(location=1) in vec4 vColor;
5 | layout(location=2) in vec4 vNormal;
6 | layout(location=3) in vec2 vTexCoord;
7 |
8 | out vec4 color;
9 | out vec2 uvcoord;
10 | out vec4 normal;
11 |
12 | uniform mat4 Projection;
13 | uniform mat4 View;
14 | uniform mat4 Model;
15 |
16 | void main() {
17 | gl_Position = Projection * View * Model * vPosition;
18 |
19 | uvcoord = vTexCoord;
20 | color = vColor;
21 | normal = View * Model * vNormal;
22 | }
23 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/skyShader.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/skyShader.330.vert
3 | Fragment: file://Spout/shaders/skyShader.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/skyShader.120.vert
6 | Fragment: file://Spout/shaders/skyShader.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/textShader.120.frag:
--------------------------------------------------------------------------------
1 | #version 120
2 |
3 | varying vec4 color;
4 | varying vec2 uvcoord;
5 |
6 | uniform sampler2D Diffuse;
7 |
8 | void main() {
9 | gl_FragColor = texture2D(Diffuse, uvcoord) * color;
10 | }
11 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/textShader.330.frag:
--------------------------------------------------------------------------------
1 | #version 330
2 |
3 | in vec4 color;
4 | in vec2 uvcoord;
5 |
6 | uniform sampler2D Diffuse;
7 |
8 | layout(location=0) out vec4 outputColor;
9 |
10 | void main() {
11 | vec4 fontsample = texture(Diffuse, uvcoord);
12 | outputColor = fontsample * color;
13 | }
14 |
--------------------------------------------------------------------------------
/engine/src/main/resources/shaders/textShader.ssf:
--------------------------------------------------------------------------------
1 | GL30:
2 | Vertex: file://Spout/shaders/gui.basic.330.vert
3 | Fragment: file://Spout/shaders/textShader.330.frag
4 | GL20:
5 | Vertex: file://Spout/shaders/gui.basic.120.vert
6 | Fragment: file://Spout/shaders/textShader.120.frag
7 |
--------------------------------------------------------------------------------
/engine/src/main/resources/textures/colorTerrain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/textures/colorTerrain.png
--------------------------------------------------------------------------------
/engine/src/main/resources/textures/orange.32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/textures/orange.32.png
--------------------------------------------------------------------------------
/engine/src/main/resources/textures/skydome_cloudy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/textures/skydome_cloudy.png
--------------------------------------------------------------------------------
/engine/src/main/resources/textures/sphereical_noon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/textures/sphereical_noon.png
--------------------------------------------------------------------------------
/engine/src/main/resources/textures/testsky.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spoutdev/Spout/52f0992db0acca466e192d41e790a680a0f66b72/engine/src/main/resources/textures/testsky.png
--------------------------------------------------------------------------------
/logging/pom.xml:
--------------------------------------------------------------------------------
1 |
2 | 4.0.0
3 |
4 |
5 | Spout Logging
6 | spout-logging
7 | jar
8 | http://www.spout.org
9 | 2011
10 | Lightweight logging library built around the java.util.logging package.
11 |
12 |
13 |
14 | org.spout
15 | spout-parent
16 | 1.0.0-SNAPSHOT
17 |
18 |
19 |
20 |
21 | ..
22 |
23 |
24 |
25 |
26 |
27 |
28 | jline
29 | jline
30 | 2.11
31 | provided
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/logging/src/main/java/org/spout/logging/jline/CommandCallback.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of Spout.
3 | *
4 | * Copyright (c) 2011 Spout LLC
5 | * Spout is licensed under the Spout License Version 1.
6 | *
7 | * Spout is free software: you can redistribute it and/or modify it under
8 | * the terms of the GNU Lesser General Public License as published by the Free
9 | * Software Foundation, either version 3 of the License, or (at your option)
10 | * any later version.
11 | *
12 | * In addition, 180 days after any changes are published, you can use the
13 | * software, incorporating those changes, under the terms of the MIT license,
14 | * as described in the Spout License Version 1.
15 | *
16 | * Spout is distributed in the hope that it will be useful, but WITHOUT ANY
17 | * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 | * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
19 | * more details.
20 | *
21 | * You should have received a copy of the GNU Lesser General Public License,
22 | * the MIT license and the Spout License Version 1 along with this program.
23 | * If not, see for the GNU Lesser General Public
24 | * License and see for the full license, including
25 | * the MIT license.
26 | */
27 | package org.spout.logging.jline;
28 |
29 | public interface CommandCallback {
30 | public void handleCommand(String command);
31 | }
32 |
--------------------------------------------------------------------------------
/math/README.md:
--------------------------------------------------------------------------------
1 | Math
2 | ====
3 |
4 | Immutable math library developed for the Spout voxel game platform.
5 | http://www.spout.org
6 |
7 | License
8 | -------
9 | Spout Math is licensed under [GNU Lesser General Public License Version 3][License], but with a provision that files are released under the MIT license 180 days after they are published. Please see the `LICENSE.txt` file for details.
10 |
11 | The HashFunctions class in Trove is subject to the following license restrictions:
12 |
13 | Copyright (c) 1999 CERN - European Organization for Nuclear Research.
14 |
15 | Permission to use, copy, modify, distribute and sell this software and
16 | its documentation for any purpose is hereby granted without fee,
17 | provided that the above copyright notice appear in all copies and that
18 | both that copyright notice and this permission notice appear in
19 | supporting documentation. CERN makes no representations about the
20 | suitability of this software for any purpose. It is provided "as is"
21 | without expressed or implied warranty
22 |
--------------------------------------------------------------------------------