├── .gitignore
├── Pseuthe.xcodeproj
├── project.pbxproj
└── project.xcworkspace
│ └── contents.xcworkspacedata
├── SimplexNoiseAnimator
├── App.config
├── MainWindow.Designer.cs
├── MainWindow.cs
├── MainWindow.resx
├── Program.cs
├── Properties
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── SimplexNoiseAnimator.csproj
└── references
│ └── SimplexNoise.dll
├── pseuthe.sln
├── pseuthe
├── CMakeLists.txt
├── Pseuthe-Info.plist
├── Pseuthe_OSX_Icon.iconset
│ ├── icon_128x128.png
│ ├── icon_16x16.png
│ ├── icon_256x256.png
│ ├── icon_32x32.png
│ └── icon_512x512.png
├── Resource.aps
├── Resource.rc
├── ResourcePath.hpp
├── ResourcePath.mm
├── assets
│ ├── fonts
│ │ ├── Ardeco.ttf
│ │ ├── N_E_B.ttf
│ │ ├── VeraMono.ttf
│ │ └── VeraMono.txt
│ ├── images
│ │ ├── help_menu.png
│ │ ├── main_menu.png
│ │ ├── particles
│ │ │ ├── ball_normal.png
│ │ │ ├── ball_normal_animated.png
│ │ │ ├── balls.cra
│ │ │ ├── balls.png
│ │ │ ├── circle.png
│ │ │ ├── field.png
│ │ │ ├── ident.png
│ │ │ ├── spark.png
│ │ │ └── white.png
│ │ ├── player
│ │ │ ├── bodypart01.cra
│ │ │ ├── bodypart01.png
│ │ │ ├── bonus.cra
│ │ │ ├── bonus.png
│ │ │ ├── food01.cra
│ │ │ ├── food01.png
│ │ │ ├── food02.cra
│ │ │ ├── food02.png
│ │ │ ├── food03.cra
│ │ │ ├── food03.png
│ │ │ ├── head.cra
│ │ │ ├── head.png
│ │ │ ├── mouth.cra
│ │ │ ├── mouth.png
│ │ │ ├── wiggler.cra
│ │ │ └── wiggler.png
│ │ ├── startup.png
│ │ ├── ui
│ │ │ ├── button.png
│ │ │ ├── checkbox.png
│ │ │ ├── close.png
│ │ │ ├── combobox.png
│ │ │ ├── cursor.png
│ │ │ ├── scroll_arrow.png
│ │ │ ├── scroll_arrow_vertical.png
│ │ │ ├── slider_handle.png
│ │ │ ├── start_button.png
│ │ │ └── textbox.png
│ │ └── vignette.png
│ └── sound
│ │ ├── background.ogg
│ │ ├── chimes01
│ │ ├── 01.wav
│ │ ├── 02.wav
│ │ ├── 03.wav
│ │ ├── 04.wav
│ │ ├── 05.wav
│ │ ├── 06.wav
│ │ ├── 07.wav
│ │ └── 08.wav
│ │ ├── healthgained.wav
│ │ ├── healthlost.wav
│ │ ├── jelly_eat.wav
│ │ ├── nomnom.wav
│ │ ├── player_spawn.wav
│ │ ├── startup.wav
│ │ └── switch.wav
├── cmake
│ └── modules
│ │ └── FindSFML.cmake
├── extlibs
│ └── sfml
│ │ ├── bin
│ │ ├── openal32.dll
│ │ ├── sfml-audio-2.dll
│ │ ├── sfml-audio-d-2.dll
│ │ ├── sfml-audio-d.lib
│ │ ├── sfml-audio.lib
│ │ ├── sfml-graphics-2.dll
│ │ ├── sfml-graphics-d-2.dll
│ │ ├── sfml-graphics-d.lib
│ │ ├── sfml-graphics.lib
│ │ ├── sfml-main-d.lib
│ │ ├── sfml-main.lib
│ │ ├── sfml-system-2.dll
│ │ ├── sfml-system-d-2.dll
│ │ ├── sfml-system-d.lib
│ │ ├── sfml-system.lib
│ │ ├── sfml-window-2.dll
│ │ ├── sfml-window-d-2.dll
│ │ ├── sfml-window-d.lib
│ │ └── sfml-window.lib
│ │ └── include
│ │ └── SFML
│ │ ├── Audio.hpp
│ │ ├── Audio
│ │ ├── AlResource.hpp
│ │ ├── Export.hpp
│ │ ├── InputSoundFile.hpp
│ │ ├── Listener.hpp
│ │ ├── Music.hpp
│ │ ├── OutputSoundFile.hpp
│ │ ├── Sound.hpp
│ │ ├── SoundBuffer.hpp
│ │ ├── SoundBufferRecorder.hpp
│ │ ├── SoundFileFactory.hpp
│ │ ├── SoundFileFactory.inl
│ │ ├── SoundFileReader.hpp
│ │ ├── SoundFileWriter.hpp
│ │ ├── SoundRecorder.hpp
│ │ ├── SoundSource.hpp
│ │ └── SoundStream.hpp
│ │ ├── Config.hpp
│ │ ├── GpuPreference.hpp
│ │ ├── Graphics.hpp
│ │ ├── Graphics
│ │ ├── BlendMode.hpp
│ │ ├── CircleShape.hpp
│ │ ├── Color.hpp
│ │ ├── ConvexShape.hpp
│ │ ├── Drawable.hpp
│ │ ├── Export.hpp
│ │ ├── Font.hpp
│ │ ├── Glsl.hpp
│ │ ├── Glsl.inl
│ │ ├── Glyph.hpp
│ │ ├── Image.hpp
│ │ ├── PrimitiveType.hpp
│ │ ├── Rect.hpp
│ │ ├── Rect.inl
│ │ ├── RectangleShape.hpp
│ │ ├── RenderStates.hpp
│ │ ├── RenderTarget.hpp
│ │ ├── RenderTexture.hpp
│ │ ├── RenderWindow.hpp
│ │ ├── Shader.hpp
│ │ ├── Shape.hpp
│ │ ├── Sprite.hpp
│ │ ├── Text.hpp
│ │ ├── Texture.hpp
│ │ ├── Transform.hpp
│ │ ├── Transformable.hpp
│ │ ├── Vertex.hpp
│ │ ├── VertexArray.hpp
│ │ ├── VertexBuffer.hpp
│ │ └── View.hpp
│ │ ├── Main.hpp
│ │ ├── Network.hpp
│ │ ├── Network
│ │ ├── Export.hpp
│ │ ├── Ftp.hpp
│ │ ├── Http.hpp
│ │ ├── IpAddress.hpp
│ │ ├── Packet.hpp
│ │ ├── Socket.hpp
│ │ ├── SocketHandle.hpp
│ │ ├── SocketSelector.hpp
│ │ ├── TcpListener.hpp
│ │ ├── TcpSocket.hpp
│ │ └── UdpSocket.hpp
│ │ ├── OpenGL.hpp
│ │ ├── System.hpp
│ │ ├── System
│ │ ├── Clock.hpp
│ │ ├── Err.hpp
│ │ ├── Export.hpp
│ │ ├── FileInputStream.hpp
│ │ ├── InputStream.hpp
│ │ ├── Lock.hpp
│ │ ├── MemoryInputStream.hpp
│ │ ├── Mutex.hpp
│ │ ├── NativeActivity.hpp
│ │ ├── NonCopyable.hpp
│ │ ├── Sleep.hpp
│ │ ├── String.hpp
│ │ ├── String.inl
│ │ ├── Thread.hpp
│ │ ├── Thread.inl
│ │ ├── ThreadLocal.hpp
│ │ ├── ThreadLocalPtr.hpp
│ │ ├── ThreadLocalPtr.inl
│ │ ├── Time.hpp
│ │ ├── Utf.hpp
│ │ ├── Utf.inl
│ │ ├── Vector2.hpp
│ │ ├── Vector2.inl
│ │ ├── Vector3.hpp
│ │ └── Vector3.inl
│ │ ├── Window.hpp
│ │ └── Window
│ │ ├── Clipboard.hpp
│ │ ├── Context.hpp
│ │ ├── ContextSettings.hpp
│ │ ├── Cursor.hpp
│ │ ├── Event.hpp
│ │ ├── Export.hpp
│ │ ├── GlResource.hpp
│ │ ├── Joystick.hpp
│ │ ├── Keyboard.hpp
│ │ ├── Mouse.hpp
│ │ ├── Sensor.hpp
│ │ ├── Touch.hpp
│ │ ├── VideoMode.hpp
│ │ ├── Vulkan.hpp
│ │ ├── Window.hpp
│ │ ├── WindowBase.hpp
│ │ ├── WindowHandle.hpp
│ │ └── WindowStyle.hpp
├── icon.rc
├── include
│ ├── Affectors.hpp
│ ├── AnimatedDrawable.hpp
│ ├── App.hpp
│ ├── AudioManager.hpp
│ ├── BodypartController.hpp
│ ├── CausticDrawable.hpp
│ ├── CircleDrawable.hpp
│ ├── Component.hpp
│ ├── EchoDrawable.hpp
│ ├── Entity.hpp
│ ├── FadeDrawable.hpp
│ ├── FileSystem.hpp
│ ├── GameController.hpp
│ ├── GameState.hpp
│ ├── GradientDrawable.hpp
│ ├── HelpState.hpp
│ ├── Icon.hpp
│ ├── InputComponent.hpp
│ ├── JsonUtil.hpp
│ ├── LightPosition.hpp
│ ├── Log.hpp
│ ├── MakeUnique.hpp
│ ├── MenuState.hpp
│ ├── MessageBus.hpp
│ ├── Music.hpp
│ ├── OrbController.hpp
│ ├── Particle.hpp
│ ├── ParticleField.hpp
│ ├── ParticleSystem.hpp
│ ├── PhysicsComponent.hpp
│ ├── PhysicsWorld.hpp
│ ├── PlanktonController.hpp
│ ├── PostBloom.hpp
│ ├── PostChromeAb.hpp
│ ├── PostProcess.hpp
│ ├── Resource.hpp
│ ├── Scene.hpp
│ ├── Score.hpp
│ ├── ScoreState.hpp
│ ├── ShaderResource.hpp
│ ├── Shaders.hpp
│ ├── SoundPlayer.hpp
│ ├── State.hpp
│ ├── StateIds.hpp
│ ├── StateStack.hpp
│ ├── TailDrawable.hpp
│ ├── TextDrawable.hpp
│ ├── Ticker.hpp
│ ├── TitleState.hpp
│ ├── UIButton.hpp
│ ├── UICheckBox.hpp
│ ├── UIComboBox.hpp
│ ├── UIContainer.hpp
│ ├── UIControl.hpp
│ ├── UIScoreList.hpp
│ ├── UISelection.hpp
│ ├── UISlider.hpp
│ ├── UITextBox.hpp
│ ├── Util.hpp
│ ├── picojson.LICENSE
│ └── picojson.h
├── pseuthe.vcxproj
├── pseuthe.vcxproj.filters
├── pseuthe_icon.ico
├── resource.h
└── src
│ ├── Affectors.cpp
│ ├── AnimatedDrawable.cpp
│ ├── App.cpp
│ ├── AudioManager.cpp
│ ├── BodypartController.cpp
│ ├── CausticDrawable.cpp
│ ├── CircleDrawable.cpp
│ ├── Component.cpp
│ ├── EchoDrawable.cpp
│ ├── Entity.cpp
│ ├── FadeDrawable.cpp
│ ├── FileSystem.cpp
│ ├── FontResource.cpp
│ ├── GameController.cpp
│ ├── GameState.cpp
│ ├── GradientDrawable.cpp
│ ├── HelpState.cpp
│ ├── InputComponent.cpp
│ ├── LightPosition.cpp
│ ├── MenuState.cpp
│ ├── MessageBus.cpp
│ ├── Music.cpp
│ ├── OrbController.cpp
│ ├── ParticleFactory.cpp
│ ├── ParticleField.cpp
│ ├── ParticleSystem.cpp
│ ├── PhysicsComponent.cpp
│ ├── PhysicsConstraint.cpp
│ ├── PhysicsWorld.cpp
│ ├── PlanktonController.cpp
│ ├── PostBloom.cpp
│ ├── PostChromeAb.cpp
│ ├── PostProcess.cpp
│ ├── Scene.cpp
│ ├── Score.cpp
│ ├── ScoreState.cpp
│ ├── ShaderResource.cpp
│ ├── SoundPlayer.cpp
│ ├── State.cpp
│ ├── StateStack.cpp
│ ├── TailDrawable.cpp
│ ├── TailDrawablePhysics.cpp
│ ├── TextDrawable.cpp
│ ├── Ticker.cpp
│ ├── TitleState.cpp
│ ├── UIButton.cpp
│ ├── UICheckBox.cpp
│ ├── UIComboBox.cpp
│ ├── UIContainer.cpp
│ ├── UIControl.cpp
│ ├── UIScoreList.cpp
│ ├── UISelection.cpp
│ ├── UISlider.cpp
│ ├── UITextBox.cpp
│ └── main.cpp
└── readme.md
/.gitignore:
--------------------------------------------------------------------------------
1 | Debug
2 | Release
3 |
--------------------------------------------------------------------------------
/Pseuthe.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/SimplexNoiseAnimator/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/SimplexNoiseAnimator/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using System.Windows.Forms;
6 |
7 | namespace SimplexNoiseAnimator
8 | {
9 | static class Program
10 | {
11 | ///
12 | /// The main entry point for the application.
13 | ///
14 | [STAThread]
15 | static void Main()
16 | {
17 | Application.EnableVisualStyles();
18 | Application.SetCompatibleTextRenderingDefault(false);
19 | Application.Run(new MainWindow());
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/SimplexNoiseAnimator/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SimplexNoiseAnimator")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Organisation")]
12 | [assembly: AssemblyProduct("SimplexNoiseAnimator")]
13 | [assembly: AssemblyCopyright("Copyright © Organisation 2015")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("638dd9f2-e415-4856-ab4b-b6ce3d43ccda")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/SimplexNoiseAnimator/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.34209
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace SimplexNoiseAnimator.Properties
12 | {
13 |
14 |
15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
18 | {
19 |
20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
21 |
22 | public static Settings Default
23 | {
24 | get
25 | {
26 | return defaultInstance;
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/SimplexNoiseAnimator/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/SimplexNoiseAnimator/references/SimplexNoise.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/SimplexNoiseAnimator/references/SimplexNoise.dll
--------------------------------------------------------------------------------
/pseuthe/Pseuthe-Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIconFile
10 | Pseuthe_OSX_Icon
11 | CFBundleIdentifier
12 | Pseuthe.${PRODUCT_NAME:rfc1034identifier}
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | ${PRODUCT_NAME}
17 | CFBundlePackageType
18 | APPL
19 | CFBundleSignature
20 | ????
21 | NSHighResolutionCapable
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/pseuthe/Pseuthe_OSX_Icon.iconset/icon_128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/Pseuthe_OSX_Icon.iconset/icon_128x128.png
--------------------------------------------------------------------------------
/pseuthe/Pseuthe_OSX_Icon.iconset/icon_16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/Pseuthe_OSX_Icon.iconset/icon_16x16.png
--------------------------------------------------------------------------------
/pseuthe/Pseuthe_OSX_Icon.iconset/icon_256x256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/Pseuthe_OSX_Icon.iconset/icon_256x256.png
--------------------------------------------------------------------------------
/pseuthe/Pseuthe_OSX_Icon.iconset/icon_32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/Pseuthe_OSX_Icon.iconset/icon_32x32.png
--------------------------------------------------------------------------------
/pseuthe/Pseuthe_OSX_Icon.iconset/icon_512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/Pseuthe_OSX_Icon.iconset/icon_512x512.png
--------------------------------------------------------------------------------
/pseuthe/Resource.aps:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/Resource.aps
--------------------------------------------------------------------------------
/pseuthe/Resource.rc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/Resource.rc
--------------------------------------------------------------------------------
/pseuthe/ResourcePath.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2015 Marco Antognini (antognini.marco@gmail.com),
5 | // Laurent Gomila (laurent@sfml-dev.org)
6 | //
7 | // This software is provided 'as-is', without any express or implied warranty.
8 | // In no event will the authors be held liable for any damages arising from the use of this software.
9 | //
10 | // Permission is granted to anyone to use this software for any purpose,
11 | // including commercial applications, and to alter it and redistribute it freely,
12 | // subject to the following restrictions:
13 | //
14 | // 1. The origin of this software must not be misrepresented;
15 | // you must not claim that you wrote the original software.
16 | // If you use this software in a product, an acknowledgment
17 | // in the product documentation would be appreciated but is not required.
18 | //
19 | // 2. Altered source versions must be plainly marked as such,
20 | // and must not be misrepresented as being the original software.
21 | //
22 | // 3. This notice may not be removed or altered from any source distribution.
23 | //
24 | ////////////////////////////////////////////////////////////
25 |
26 | #ifndef RESOURCE_PATH_HPP
27 | #define RESOURCE_PATH_HPP
28 |
29 | ////////////////////////////////////////////////////////////
30 | // Headers
31 | ////////////////////////////////////////////////////////////
32 | #include
33 |
34 | ////////////////////////////////////////////////////////////
35 | /// \brief Return the path to the resource folder.
36 | ///
37 | /// \return The path to the resource folder associate
38 | /// with the main bundle or an empty string is there is no bundle.
39 | ///
40 | ////////////////////////////////////////////////////////////
41 | std::string resourcePath(void);
42 |
43 | #endif
44 |
--------------------------------------------------------------------------------
/pseuthe/ResourcePath.mm:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2015 Marco Antognini (antognini.marco@gmail.com),
5 | // Laurent Gomila (laurent@sfml-dev.org)
6 | //
7 | // This software is provided 'as-is', without any express or implied warranty.
8 | // In no event will the authors be held liable for any damages arising from the use of this software.
9 | //
10 | // Permission is granted to anyone to use this software for any purpose,
11 | // including commercial applications, and to alter it and redistribute it freely,
12 | // subject to the following restrictions:
13 | //
14 | // 1. The origin of this software must not be misrepresented;
15 | // you must not claim that you wrote the original software.
16 | // If you use this software in a product, an acknowledgment
17 | // in the product documentation would be appreciated but is not required.
18 | //
19 | // 2. Altered source versions must be plainly marked as such,
20 | // and must not be misrepresented as being the original software.
21 | //
22 | // 3. This notice may not be removed or altered from any source distribution.
23 | //
24 | ////////////////////////////////////////////////////////////
25 |
26 | ////////////////////////////////////////////////////////////
27 | // Headers
28 | ////////////////////////////////////////////////////////////
29 | #include "ResourcePath.hpp"
30 | #import
31 |
32 | ////////////////////////////////////////////////////////////
33 | std::string resourcePath(void)
34 | {
35 | NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
36 |
37 | std::string rpath;
38 | NSBundle* bundle = [NSBundle mainBundle];
39 |
40 | if (bundle == nil) {
41 | #ifdef DEBUG
42 | NSLog(@"bundle is nil... thus no resources path can be found.");
43 | #endif
44 | } else {
45 | NSString* path = [bundle resourcePath];
46 | rpath = [path UTF8String] + std::string("/");
47 | }
48 |
49 | [pool drain];
50 |
51 | return rpath;
52 | }
53 |
--------------------------------------------------------------------------------
/pseuthe/assets/fonts/Ardeco.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/fonts/Ardeco.ttf
--------------------------------------------------------------------------------
/pseuthe/assets/fonts/N_E_B.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/fonts/N_E_B.ttf
--------------------------------------------------------------------------------
/pseuthe/assets/fonts/VeraMono.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/fonts/VeraMono.ttf
--------------------------------------------------------------------------------
/pseuthe/assets/fonts/VeraMono.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/fonts/VeraMono.txt
--------------------------------------------------------------------------------
/pseuthe/assets/images/help_menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/help_menu.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/main_menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/main_menu.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/ball_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/ball_normal.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/ball_normal_animated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/ball_normal_animated.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/balls.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 31,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 32,
11 | "FrameSize": "128, 128",
12 | "FrameRate": 16.0,
13 | "Texture": "balls.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/balls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/balls.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/circle.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/field.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/field.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/ident.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/ident.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/spark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/spark.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/particles/white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/particles/white.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/bodypart01.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 15,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 16,
11 | "FrameSize": "64, 64",
12 | "FrameRate": 24.0,
13 | "Texture": "bodypart01.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/bodypart01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/bodypart01.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/bonus.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 9,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 10,
11 | "FrameSize": "64, 64",
12 | "FrameRate": 19.0,
13 | "Texture": "bonus.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/bonus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/bonus.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/food01.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 15,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 16,
11 | "FrameSize": "64, 64",
12 | "FrameRate": 24.0,
13 | "Texture": "food01.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/food01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/food01.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/food02.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 15,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 16,
11 | "FrameSize": "64, 64",
12 | "FrameRate": 24.0,
13 | "Texture": "food02.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/food02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/food02.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/food03.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 15,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 16,
11 | "FrameSize": "64, 64",
12 | "FrameRate": 18.0,
13 | "Texture": "food03.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/food03.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/food03.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/head.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 15,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 16,
11 | "FrameSize": "64, 64",
12 | "FrameRate": 24.0,
13 | "Texture": "head.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/head.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/head.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/mouth.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 7,
6 | "Loop": false,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 8,
11 | "FrameSize": "64, 64",
12 | "FrameRate": 24.0,
13 | "Texture": "mouth.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/mouth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/mouth.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/wiggler.cra:
--------------------------------------------------------------------------------
1 | {
2 | "Animations": [
3 | {
4 | "Start": 0,
5 | "End": 7,
6 | "Loop": true,
7 | "Name": "default"
8 | }
9 | ],
10 | "FrameCount": 8,
11 | "FrameSize": "64, 32",
12 | "FrameRate": 24.0,
13 | "Texture": "wiggler.png",
14 | "NormalMap": "none.png"
15 | }
--------------------------------------------------------------------------------
/pseuthe/assets/images/player/wiggler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/player/wiggler.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/startup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/startup.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/button.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/checkbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/checkbox.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/close.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/combobox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/combobox.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/cursor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/cursor.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/scroll_arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/scroll_arrow.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/scroll_arrow_vertical.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/scroll_arrow_vertical.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/slider_handle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/slider_handle.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/start_button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/start_button.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/ui/textbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/ui/textbox.png
--------------------------------------------------------------------------------
/pseuthe/assets/images/vignette.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/images/vignette.png
--------------------------------------------------------------------------------
/pseuthe/assets/sound/background.ogg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/background.ogg
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/01.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/01.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/02.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/02.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/03.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/03.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/04.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/04.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/05.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/05.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/06.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/06.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/07.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/07.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/chimes01/08.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/chimes01/08.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/healthgained.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/healthgained.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/healthlost.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/healthlost.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/jelly_eat.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/jelly_eat.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/nomnom.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/nomnom.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/player_spawn.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/player_spawn.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/startup.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/startup.wav
--------------------------------------------------------------------------------
/pseuthe/assets/sound/switch.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/assets/sound/switch.wav
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/openal32.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/openal32.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-audio-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-audio-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-audio-d-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-audio-d-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-audio-d.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-audio-d.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-audio.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-audio.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-graphics-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-graphics-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-graphics-d-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-graphics-d-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-graphics-d.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-graphics-d.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-graphics.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-graphics.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-main-d.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-main-d.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-main.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-main.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-system-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-system-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-system-d-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-system-d-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-system-d.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-system-d.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-system.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-system.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-window-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-window-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-window-d-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-window-d-2.dll
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-window-d.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-window-d.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/bin/sfml-window.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fallahn/pseuthe/ae99f319927328a0ea48df06763f28fb2e2221bb/pseuthe/extlibs/sfml/bin/sfml-window.lib
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Audio.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_AUDIO_HPP
26 | #define SFML_AUDIO_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 |
32 | #include
33 | #include
34 | #include
35 | #include
36 | #include
37 | #include
38 | #include
39 | #include
40 | #include
41 | #include
42 | #include
43 | #include
44 | #include
45 | #include
46 |
47 |
48 | #endif // SFML_AUDIO_HPP
49 |
50 | ////////////////////////////////////////////////////////////
51 | /// \defgroup audio Audio module
52 | ///
53 | /// Sounds, streaming (musics or custom sources), recording,
54 | /// spatialization.
55 | ///
56 | ////////////////////////////////////////////////////////////
57 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Audio/AlResource.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_ALRESOURCE_HPP
26 | #define SFML_ALRESOURCE_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 |
34 | namespace sf
35 | {
36 | ////////////////////////////////////////////////////////////
37 | /// \brief Base class for classes that require an OpenAL context
38 | ///
39 | ////////////////////////////////////////////////////////////
40 | class SFML_AUDIO_API AlResource
41 | {
42 | protected:
43 |
44 | ////////////////////////////////////////////////////////////
45 | /// \brief Default constructor
46 | ///
47 | ////////////////////////////////////////////////////////////
48 | AlResource();
49 |
50 | ////////////////////////////////////////////////////////////
51 | /// \brief Destructor
52 | ///
53 | ////////////////////////////////////////////////////////////
54 | ~AlResource();
55 | };
56 |
57 | } // namespace sf
58 |
59 |
60 | #endif // SFML_ALRESOURCE_HPP
61 |
62 | ////////////////////////////////////////////////////////////
63 | /// \class sf::AlResource
64 | /// \ingroup audio
65 | ///
66 | /// This class is for internal use only, it must be the base
67 | /// of every class that requires a valid OpenAL context in
68 | /// order to work.
69 | ///
70 | ////////////////////////////////////////////////////////////
71 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Audio/Export.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_AUDIO_EXPORT_HPP
26 | #define SFML_AUDIO_EXPORT_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 |
34 | ////////////////////////////////////////////////////////////
35 | // Define portable import / export macros
36 | ////////////////////////////////////////////////////////////
37 | #if defined(SFML_AUDIO_EXPORTS)
38 |
39 | #define SFML_AUDIO_API SFML_API_EXPORT
40 |
41 | #else
42 |
43 | #define SFML_AUDIO_API SFML_API_IMPORT
44 |
45 | #endif
46 |
47 |
48 | #endif // SFML_AUDIO_EXPORT_HPP
49 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/GpuPreference.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_GPUPREFERENCE_HPP
26 | #define SFML_GPUPREFERENCE_HPP
27 |
28 |
29 | ////////////////////////////////////////////////////////////
30 | /// Headers
31 | ////////////////////////////////////////////////////////////
32 | #include
33 |
34 |
35 | ////////////////////////////////////////////////////////////
36 | /// \file
37 | ///
38 | /// \brief File containing SFML_DEFINE_DISCRETE_GPU_PREFERENCE
39 | ///
40 | ////////////////////////////////////////////////////////////
41 |
42 |
43 | ////////////////////////////////////////////////////////////
44 | /// \def SFML_DEFINE_DISCRETE_GPU_PREFERENCE
45 | ///
46 | /// \brief A macro to encourage usage of the discrete GPU
47 | ///
48 | /// In order to inform the Nvidia/AMD driver that an SFML
49 | /// application could benefit from using the more powerful
50 | /// discrete GPU, special symbols have to be publicly
51 | /// exported from the final executable.
52 | ///
53 | /// SFML defines a helper macro to easily do this.
54 | ///
55 | /// Place SFML_DEFINE_DISCRETE_GPU_PREFERENCE in the
56 | /// global scope of a source file that will be linked into
57 | /// the final executable. Typically it is best to place it
58 | /// where the main function is also defined.
59 | ///
60 | ////////////////////////////////////////////////////////////
61 | #if defined(SFML_SYSTEM_WINDOWS)
62 |
63 | #define SFML_DEFINE_DISCRETE_GPU_PREFERENCE \
64 | extern "C" __declspec(dllexport) unsigned long NvOptimusEnablement = 1; \
65 | extern "C" __declspec(dllexport) unsigned long AmdPowerXpressRequestHighPerformance = 1;
66 |
67 | #else
68 |
69 | #define SFML_DEFINE_DISCRETE_GPU_PREFERENCE
70 |
71 | #endif
72 |
73 |
74 | #endif // SFML_GPUPREFERENCE_HPP
75 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Graphics.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_GRAPHICS_HPP
26 | #define SFML_GRAPHICS_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 |
32 | #include
33 | #include
34 | #include
35 | #include
36 | #include
37 | #include
38 | #include
39 | #include
40 | #include
41 | #include
42 | #include
43 | #include
44 | #include
45 | #include
46 | #include
47 | #include
48 | #include
49 | #include
50 | #include
51 | #include
52 | #include
53 | #include
54 | #include
55 | #include
56 | #include
57 | #include
58 | #include
59 |
60 |
61 | #endif // SFML_GRAPHICS_HPP
62 |
63 | ////////////////////////////////////////////////////////////
64 | /// \defgroup graphics Graphics module
65 | ///
66 | /// 2D graphics module: sprites, text, shapes, ...
67 | ///
68 | ////////////////////////////////////////////////////////////
69 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Graphics/Export.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_GRAPHICS_EXPORT_HPP
26 | #define SFML_GRAPHICS_EXPORT_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 |
34 | ////////////////////////////////////////////////////////////
35 | // Define portable import / export macros
36 | ////////////////////////////////////////////////////////////
37 | #if defined(SFML_GRAPHICS_EXPORTS)
38 |
39 | #define SFML_GRAPHICS_API SFML_API_EXPORT
40 |
41 | #else
42 |
43 | #define SFML_GRAPHICS_API SFML_API_IMPORT
44 |
45 | #endif
46 |
47 |
48 | #endif // SFML_GRAPHICS_EXPORT_HPP
49 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Graphics/Glyph.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_GLYPH_HPP
26 | #define SFML_GLYPH_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 | #include
33 |
34 |
35 | namespace sf
36 | {
37 | ////////////////////////////////////////////////////////////
38 | /// \brief Structure describing a glyph
39 | ///
40 | ////////////////////////////////////////////////////////////
41 | class SFML_GRAPHICS_API Glyph
42 | {
43 | public:
44 |
45 | ////////////////////////////////////////////////////////////
46 | /// \brief Default constructor
47 | ///
48 | ////////////////////////////////////////////////////////////
49 | Glyph() : advance(0) {}
50 |
51 | ////////////////////////////////////////////////////////////
52 | // Member data
53 | ////////////////////////////////////////////////////////////
54 | float advance; //!< Offset to move horizontally to the next character
55 | FloatRect bounds; //!< Bounding rectangle of the glyph, in coordinates relative to the baseline
56 | IntRect textureRect; //!< Texture coordinates of the glyph inside the font's texture
57 | };
58 |
59 | } // namespace sf
60 |
61 |
62 | #endif // SFML_GLYPH_HPP
63 |
64 |
65 | ////////////////////////////////////////////////////////////
66 | /// \class sf::Glyph
67 | /// \ingroup graphics
68 | ///
69 | /// A glyph is the visual representation of a character.
70 | ///
71 | /// The sf::Glyph structure provides the information needed
72 | /// to handle the glyph:
73 | /// \li its coordinates in the font's texture
74 | /// \li its bounding rectangle
75 | /// \li the offset to apply to get the starting position of the next glyph
76 | ///
77 | /// \see sf::Font
78 | ///
79 | ////////////////////////////////////////////////////////////
80 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Graphics/PrimitiveType.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_PRIMITIVETYPE_HPP
26 | #define SFML_PRIMITIVETYPE_HPP
27 |
28 | namespace sf
29 | {
30 | ////////////////////////////////////////////////////////////
31 | /// \ingroup graphics
32 | /// \brief Types of primitives that a sf::VertexArray can render
33 | ///
34 | /// Points and lines have no area, therefore their thickness
35 | /// will always be 1 pixel, regardless the current transform
36 | /// and view.
37 | ///
38 | ////////////////////////////////////////////////////////////
39 | enum PrimitiveType
40 | {
41 | Points, //!< List of individual points
42 | Lines, //!< List of individual lines
43 | LineStrip, //!< List of connected lines, a point uses the previous point to form a line
44 | Triangles, //!< List of individual triangles
45 | TriangleStrip, //!< List of connected triangles, a point uses the two previous points to form a triangle
46 | TriangleFan, //!< List of connected triangles, a point uses the common center and the previous point to form a triangle
47 | Quads, //!< List of individual quads (deprecated, don't work with OpenGL ES)
48 |
49 | // Deprecated names
50 | LinesStrip = LineStrip, //!< \deprecated Use LineStrip instead
51 | TrianglesStrip = TriangleStrip, //!< \deprecated Use TriangleStrip instead
52 | TrianglesFan = TriangleFan //!< \deprecated Use TriangleFan instead
53 | };
54 |
55 | } // namespace sf
56 |
57 |
58 | #endif // SFML_PRIMITIVETYPE_HPP
59 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Main.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_MAIN_HPP
26 | #define SFML_MAIN_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 |
34 | #if defined(SFML_SYSTEM_IOS)
35 |
36 | // On iOS, we have no choice but to have our own main,
37 | // so we need to rename the user one and call it later
38 | #define main sfmlMain
39 |
40 | #endif
41 |
42 |
43 | #endif // SFML_MAIN_HPP
44 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Network.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_NETWORK_HPP
26 | #define SFML_NETWORK_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 |
32 | #include
33 | #include
34 | #include
35 | #include
36 | #include
37 | #include
38 | #include
39 | #include
40 | #include
41 | #include
42 | #include
43 |
44 |
45 | #endif // SFML_NETWORK_HPP
46 |
47 | ////////////////////////////////////////////////////////////
48 | /// \defgroup network Network module
49 | ///
50 | /// Socket-based communication, utilities and higher-level
51 | /// network protocols (HTTP, FTP).
52 | ///
53 | ////////////////////////////////////////////////////////////
54 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Network/Export.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_NETWORK_EXPORT_HPP
26 | #define SFML_NETWORK_EXPORT_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 |
34 | ////////////////////////////////////////////////////////////
35 | // Define portable import / export macros
36 | ////////////////////////////////////////////////////////////
37 | #if defined(SFML_NETWORK_EXPORTS)
38 |
39 | #define SFML_NETWORK_API SFML_API_EXPORT
40 |
41 | #else
42 |
43 | #define SFML_NETWORK_API SFML_API_IMPORT
44 |
45 | #endif
46 |
47 |
48 | #endif // SFML_NETWORK_EXPORT_HPP
49 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Network/SocketHandle.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_SOCKETHANDLE_HPP
26 | #define SFML_SOCKETHANDLE_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 | #if defined(SFML_SYSTEM_WINDOWS)
34 | #include
35 | #endif
36 |
37 |
38 | namespace sf
39 | {
40 | ////////////////////////////////////////////////////////////
41 | // Define the low-level socket handle type, specific to
42 | // each platform
43 | ////////////////////////////////////////////////////////////
44 | #if defined(SFML_SYSTEM_WINDOWS)
45 |
46 | typedef UINT_PTR SocketHandle;
47 |
48 | #else
49 |
50 | typedef int SocketHandle;
51 |
52 | #endif
53 |
54 | } // namespace sf
55 |
56 |
57 | #endif // SFML_SOCKETHANDLE_HPP
58 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/OpenGL.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_OPENGL_HPP
26 | #define SFML_OPENGL_HPP
27 |
28 |
29 | ////////////////////////////////////////////////////////////
30 | /// Headers
31 | ////////////////////////////////////////////////////////////
32 | #include
33 |
34 |
35 | ////////////////////////////////////////////////////////////
36 | /// This file just includes the OpenGL headers,
37 | /// which have actually different paths on each system
38 | ////////////////////////////////////////////////////////////
39 | #if defined(SFML_SYSTEM_WINDOWS)
40 |
41 | // The Visual C++ version of gl.h uses WINGDIAPI and APIENTRY but doesn't define them
42 | #ifdef _MSC_VER
43 | #include
44 | #endif
45 |
46 | #include
47 |
48 | #elif defined(SFML_SYSTEM_LINUX) || defined(SFML_SYSTEM_FREEBSD) || defined(SFML_SYSTEM_OPENBSD)
49 |
50 | #if defined(SFML_OPENGL_ES)
51 | #include
52 | #include
53 | #else
54 | #include
55 | #endif
56 |
57 | #elif defined(SFML_SYSTEM_MACOS)
58 |
59 | #include
60 |
61 | #elif defined (SFML_SYSTEM_IOS)
62 |
63 | #include
64 | #include
65 |
66 | #elif defined (SFML_SYSTEM_ANDROID)
67 |
68 | #include
69 | #include
70 |
71 | // We're not using OpenGL ES 2+ yet, but we can use the sRGB extension
72 | #include
73 | #include
74 |
75 | #endif
76 |
77 |
78 | #endif // SFML_OPENGL_HPP
79 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/System.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_SYSTEM_HPP
26 | #define SFML_SYSTEM_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 |
32 | #include
33 | #include
34 | #include
35 | #include
36 | #include
37 | #include
38 | #include
39 | #include
40 | #include
41 | #include
42 | #include
43 | #include
44 | #include
45 | #include
46 | #include
47 | #include
48 | #include
49 | #include
50 |
51 | #endif // SFML_SYSTEM_HPP
52 |
53 | ////////////////////////////////////////////////////////////
54 | /// \defgroup system System module
55 | ///
56 | /// Base module of SFML, defining various utilities. It provides
57 | /// vector classes, Unicode strings and conversion functions,
58 | /// threads and mutexes, timing classes.
59 | ///
60 | ////////////////////////////////////////////////////////////
61 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/System/Err.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_ERR_HPP
26 | #define SFML_ERR_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 | #include
33 |
34 |
35 | namespace sf
36 | {
37 | ////////////////////////////////////////////////////////////
38 | /// \brief Standard stream used by SFML to output warnings and errors
39 | ///
40 | ////////////////////////////////////////////////////////////
41 | SFML_SYSTEM_API std::ostream& err();
42 |
43 | } // namespace sf
44 |
45 |
46 | #endif // SFML_ERR_HPP
47 |
48 |
49 | ////////////////////////////////////////////////////////////
50 | /// \fn sf::err
51 | /// \ingroup system
52 | ///
53 | /// By default, sf::err() outputs to the same location as std::cerr,
54 | /// (-> the stderr descriptor) which is the console if there's
55 | /// one available.
56 | ///
57 | /// It is a standard std::ostream instance, so it supports all the
58 | /// insertion operations defined by the STL
59 | /// (operator <<, manipulators, etc.).
60 | ///
61 | /// sf::err() can be redirected to write to another output, independently
62 | /// of std::cerr, by using the rdbuf() function provided by the
63 | /// std::ostream class.
64 | ///
65 | /// Example:
66 | /// \code
67 | /// // Redirect to a file
68 | /// std::ofstream file("sfml-log.txt");
69 | /// std::streambuf* previous = sf::err().rdbuf(file.rdbuf());
70 | ///
71 | /// // Redirect to nothing
72 | /// sf::err().rdbuf(NULL);
73 | ///
74 | /// // Restore the original output
75 | /// sf::err().rdbuf(previous);
76 | /// \endcode
77 | ///
78 | /// \return Reference to std::ostream representing the SFML error stream
79 | ///
80 | ////////////////////////////////////////////////////////////
81 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/System/Export.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_SYSTEM_EXPORT_HPP
26 | #define SFML_SYSTEM_EXPORT_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 |
34 | ////////////////////////////////////////////////////////////
35 | // Define portable import / export macros
36 | ////////////////////////////////////////////////////////////
37 | #if defined(SFML_SYSTEM_EXPORTS)
38 |
39 | #define SFML_SYSTEM_API SFML_API_EXPORT
40 |
41 | #else
42 |
43 | #define SFML_SYSTEM_API SFML_API_IMPORT
44 |
45 | #endif
46 |
47 |
48 | #endif // SFML_SYSTEM_EXPORT_HPP
49 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/System/NativeActivity.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_NATIVEACTIVITY_HPP
26 | #define SFML_NATIVEACTIVITY_HPP
27 |
28 |
29 | ////////////////////////////////////////////////////////////
30 | // Headers
31 | ////////////////////////////////////////////////////////////
32 | #include
33 |
34 |
35 | #if !defined(SFML_SYSTEM_ANDROID)
36 | #error NativeActivity.hpp: This header is Android only.
37 | #endif
38 |
39 |
40 | struct ANativeActivity;
41 |
42 | namespace sf
43 | {
44 | ////////////////////////////////////////////////////////////
45 | /// \ingroup system
46 | /// \brief Return a pointer to the Android native activity
47 | ///
48 | /// You shouldn't have to use this function, unless you want
49 | /// to implement very specific details, that SFML doesn't
50 | /// support, or to use a workaround for a known issue.
51 | ///
52 | /// \return Pointer to Android native activity structure
53 | ///
54 | /// \sfplatform{Android,SFML/System/NativeActivity.hpp}
55 | ///
56 | ////////////////////////////////////////////////////////////
57 | SFML_SYSTEM_API ANativeActivity* getNativeActivity();
58 |
59 | } // namespace sf
60 |
61 |
62 | #endif // SFML_NATIVEACTIVITY_HPP
63 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/System/Sleep.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_SLEEP_HPP
26 | #define SFML_SLEEP_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 | #include
33 |
34 |
35 | namespace sf
36 | {
37 | ////////////////////////////////////////////////////////////
38 | /// \ingroup system
39 | /// \brief Make the current thread sleep for a given duration
40 | ///
41 | /// sf::sleep is the best way to block a program or one of its
42 | /// threads, as it doesn't consume any CPU power.
43 | ///
44 | /// \param duration Time to sleep
45 | ///
46 | ////////////////////////////////////////////////////////////
47 | void SFML_SYSTEM_API sleep(Time duration);
48 |
49 | } // namespace sf
50 |
51 |
52 | #endif // SFML_SLEEP_HPP
53 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/System/String.inl:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 |
26 | ////////////////////////////////////////////////////////////
27 | template
28 | String String::fromUtf8(T begin, T end)
29 | {
30 | String string;
31 | Utf8::toUtf32(begin, end, std::back_inserter(string.m_string));
32 | return string;
33 | }
34 |
35 |
36 | ////////////////////////////////////////////////////////////
37 | template
38 | String String::fromUtf16(T begin, T end)
39 | {
40 | String string;
41 | Utf16::toUtf32(begin, end, std::back_inserter(string.m_string));
42 | return string;
43 | }
44 |
45 |
46 | ////////////////////////////////////////////////////////////
47 | template
48 | String String::fromUtf32(T begin, T end)
49 | {
50 | String string;
51 | string.m_string.assign(begin, end);
52 | return string;
53 | }
54 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/System/ThreadLocalPtr.inl:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 |
26 | namespace sf
27 | {
28 | ////////////////////////////////////////////////////////////
29 | template
30 | ThreadLocalPtr::ThreadLocalPtr(T* value) :
31 | ThreadLocal(value)
32 | {
33 | }
34 |
35 |
36 | ////////////////////////////////////////////////////////////
37 | template
38 | T& ThreadLocalPtr::operator *() const
39 | {
40 | return *static_cast(getValue());
41 | }
42 |
43 |
44 | ////////////////////////////////////////////////////////////
45 | template
46 | T* ThreadLocalPtr::operator ->() const
47 | {
48 | return static_cast(getValue());
49 | }
50 |
51 |
52 | ////////////////////////////////////////////////////////////
53 | template
54 | ThreadLocalPtr::operator T*() const
55 | {
56 | return static_cast(getValue());
57 | }
58 |
59 |
60 | ////////////////////////////////////////////////////////////
61 | template
62 | ThreadLocalPtr& ThreadLocalPtr::operator =(T* value)
63 | {
64 | setValue(value);
65 | return *this;
66 | }
67 |
68 |
69 | ////////////////////////////////////////////////////////////
70 | template
71 | ThreadLocalPtr& ThreadLocalPtr::operator =(const ThreadLocalPtr& right)
72 | {
73 | setValue(right.getValue());
74 | return *this;
75 | }
76 |
77 | } // namespace sf
78 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Window.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_SFML_WINDOW_HPP
26 | #define SFML_SFML_WINDOW_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 |
32 | #include
33 | #include
34 | #include
35 | #include
36 | #include
37 | #include
38 | #include
39 | #include
40 | #include
41 | #include
42 | #include
43 | #include
44 | #include
45 | #include
46 | #include
47 |
48 |
49 |
50 | #endif // SFML_SFML_WINDOW_HPP
51 |
52 | ////////////////////////////////////////////////////////////
53 | /// \defgroup window Window module
54 | ///
55 | /// Provides OpenGL-based windows, and abstractions for
56 | /// events and input handling.
57 | ///
58 | ////////////////////////////////////////////////////////////
59 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Window/Export.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_WINDOW_EXPORT_HPP
26 | #define SFML_WINDOW_EXPORT_HPP
27 |
28 | ////////////////////////////////////////////////////////////
29 | // Headers
30 | ////////////////////////////////////////////////////////////
31 | #include
32 |
33 |
34 | ////////////////////////////////////////////////////////////
35 | // Define portable import / export macros
36 | ////////////////////////////////////////////////////////////
37 | #if defined(SFML_WINDOW_EXPORTS)
38 |
39 | #define SFML_WINDOW_API SFML_API_EXPORT
40 |
41 | #else
42 |
43 | #define SFML_WINDOW_API SFML_API_IMPORT
44 |
45 | #endif
46 |
47 |
48 | #endif // SFML_WINDOW_EXPORT_HPP
49 |
--------------------------------------------------------------------------------
/pseuthe/extlibs/sfml/include/SFML/Window/WindowStyle.hpp:
--------------------------------------------------------------------------------
1 | ////////////////////////////////////////////////////////////
2 | //
3 | // SFML - Simple and Fast Multimedia Library
4 | // Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
5 | //
6 | // This software is provided 'as-is', without any express or implied warranty.
7 | // In no event will the authors be held liable for any damages arising from the use of this software.
8 | //
9 | // Permission is granted to anyone to use this software for any purpose,
10 | // including commercial applications, and to alter it and redistribute it freely,
11 | // subject to the following restrictions:
12 | //
13 | // 1. The origin of this software must not be misrepresented;
14 | // you must not claim that you wrote the original software.
15 | // If you use this software in a product, an acknowledgment
16 | // in the product documentation would be appreciated but is not required.
17 | //
18 | // 2. Altered source versions must be plainly marked as such,
19 | // and must not be misrepresented as being the original software.
20 | //
21 | // 3. This notice may not be removed or altered from any source distribution.
22 | //
23 | ////////////////////////////////////////////////////////////
24 |
25 | #ifndef SFML_WINDOWSTYLE_HPP
26 | #define SFML_WINDOWSTYLE_HPP
27 |
28 |
29 | namespace sf
30 | {
31 | namespace Style
32 | {
33 | ////////////////////////////////////////////////////////////
34 | /// \ingroup window
35 | /// \brief Enumeration of the window styles
36 | ///
37 | ////////////////////////////////////////////////////////////
38 | enum
39 | {
40 | None = 0, //!< No border / title bar (this flag and all others are mutually exclusive)
41 | Titlebar = 1 << 0, //!< Title bar + fixed border
42 | Resize = 1 << 1, //!< Title bar + resizable border + maximize button
43 | Close = 1 << 2, //!< Title bar + close button
44 | Fullscreen = 1 << 3, //!< Fullscreen mode (this flag and all others are mutually exclusive)
45 |
46 | Default = Titlebar | Resize | Close //!< Default window style
47 | };
48 | }
49 |
50 | } // namespace sf
51 |
52 |
53 | #endif // SFML_WINDOWSTYLE_HPP
54 |
--------------------------------------------------------------------------------
/pseuthe/icon.rc:
--------------------------------------------------------------------------------
1 | 1 ICON pseuthe_icon.ico
2 |
--------------------------------------------------------------------------------
/pseuthe/include/Affectors.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //affectors for particle systems
29 |
30 | #ifndef AFFECTORS_HPP_
31 | #define AFFECTORS_HPP_
32 |
33 | #include
34 | #include
35 |
36 | struct Particle;
37 | struct ForceAffector
38 | {
39 | explicit ForceAffector(const sf::Vector2f& force);
40 | void operator()(Particle& p, float dt);
41 | void setRandom(const sf::Vector2f& rangeStart, const sf::Vector2f& rangeEnd);
42 |
43 | private:
44 | sf::Vector2f m_force;
45 |
46 | bool m_random;
47 | sf::Vector2f m_randomStart;
48 | sf::Vector2f m_randomEnd;
49 | };
50 |
51 | struct ColourAffector
52 | {
53 | ColourAffector(const sf::Color& start, const sf::Color& end, float duration);
54 | void operator() (Particle& p, float dt);
55 |
56 | private:
57 | float m_duration;
58 | sf::Color m_start;
59 | sf::Color m_end;
60 | };
61 |
62 | struct RotateAffector
63 | {
64 | explicit RotateAffector(float rotation);
65 | void operator() (Particle& p, float dt);
66 |
67 | private:
68 | float m_rotation;
69 | };
70 |
71 | struct ScaleAffector
72 | {
73 | explicit ScaleAffector(const sf::Vector2f& scale);
74 | void operator() (Particle& p, float dt);
75 | private:
76 | sf::Vector2f m_scale;
77 | };
78 | #endif //AFFECTORS_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/AudioManager.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | #ifndef AUDIO_MANAGER_HPP_
29 | #define AUDIO_MANAGER_HPP_
30 |
31 | #include
32 | #include
33 |
34 | class Message;
35 | class AudioManager final
36 | {
37 | public:
38 | AudioManager();
39 | ~AudioManager() = default;
40 | AudioManager(const AudioManager&) = delete;
41 | const AudioManager& operator = (const AudioManager&) = delete;
42 |
43 | void update(float);
44 | void handleMessage(const Message&);
45 |
46 | void mute(bool);
47 |
48 | private:
49 |
50 | float m_fadeInTime;
51 | float m_currentFadeTime;
52 |
53 | MusicPlayer m_musicPlayer;
54 | SoundPlayer m_soundPlayer;
55 |
56 | enum SoundIds
57 | {
58 | SwitchFx = 0,
59 | HealthLost,
60 | HealthGained,
61 | Eating,
62 | AteJelly,
63 | Spawned,
64 | Size
65 | };
66 |
67 | std::vector m_impactSounds;
68 | std::vector m_fxSounds;
69 |
70 | bool m_muted;
71 | };
72 |
73 | #endif //AUDIO_MANAGER_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/BodypartController.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //script component for controlling body part behaviour
29 |
30 | #ifndef BODYPART_CONTROLLER_HPP_
31 | #define BODYPART_CONTROLLER_HPP_
32 |
33 | #include
34 |
35 | class PhysicsComponent;
36 | class AnimatedDrawable;
37 | class ParticleSystem;
38 | class BodypartController final : public Component
39 | {
40 | public:
41 | explicit BodypartController(MessageBus&);
42 | ~BodypartController() = default;
43 |
44 | Component::Type type() const override;
45 | void entityUpdate(Entity&, float) override;
46 | void handleMessage(const Message&) override;
47 | void onStart(Entity&) override;
48 |
49 | void setHealth(float);
50 | void setDecayRate(float);
51 |
52 | private:
53 | PhysicsComponent* m_physComponent;
54 | AnimatedDrawable* m_drawable;
55 | ParticleSystem* m_sparkles;
56 | ParticleSystem* m_echo;
57 |
58 | float m_health;
59 | float m_decayRate;
60 | bool m_paused;
61 | };
62 |
63 | #endif //BODYPART_COPNTROLLER_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/CausticDrawable.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //emulates light rays as caustic effect
29 |
30 | #ifndef CAUSTIC_DRAWABLE_HPP_
31 | #define CAUSTIC_DRAWABLE_HPP_
32 |
33 | #include
34 | #include
35 |
36 | #include
37 | #include
38 | #include
39 |
40 | class CausticDrawable final : public Component, public sf::Drawable
41 | {
42 | public:
43 | explicit CausticDrawable(MessageBus&);
44 | ~CausticDrawable() = default;
45 | CausticDrawable(const CausticDrawable&) = delete;
46 | const CausticDrawable& operator = (const CausticDrawable&) = delete;
47 |
48 | Component::Type type() const override;
49 | void entityUpdate(Entity&, float) override;
50 | void handleMessage(const Message&) override;
51 |
52 | private:
53 |
54 | class Ray : public sf::Transformable
55 | {
56 | public:
57 | Ray();
58 | ~Ray() = default;
59 | std::vector vertices;
60 | void update(float);
61 | private:
62 | //wavetable for motion
63 | std::vector m_wavetable;
64 | int m_currentIndex;
65 | float m_amplitude;
66 | };
67 |
68 | sf::VertexArray m_vertexArray;
69 | std::vector m_rays;
70 | ShaderResource m_shaders;
71 | sf::Shader* m_shader;
72 |
73 | void updateVertexArray();
74 | void draw(sf::RenderTarget&, sf::RenderStates) const override;
75 | };
76 |
77 | #endif //CAUSTIC_DRAWABLE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/CircleDrawable.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //a circle shape drawable component
29 |
30 | #ifndef CIRCLE_DRAWABLE_HPP_
31 | #define CIRCLE_DRAWABLE_HPP_
32 |
33 | #include
34 |
35 | #include
36 |
37 | namespace sf
38 | {
39 | class Shader;
40 | }
41 |
42 | class CircleDrawable final : public Component, public sf::Drawable
43 | {
44 | public:
45 | using Ptr = std::unique_ptr;
46 |
47 | CircleDrawable(float radius, MessageBus&);
48 | ~CircleDrawable() = default;
49 |
50 | Component::Type type() const override;
51 | void entityUpdate(Entity&, float) override;
52 | void handleMessage(const Message&) override;
53 |
54 | void setColour(sf::Color);
55 | void setRadius(float);
56 | void setOutlineThickness(float);
57 |
58 | const sf::Color& getColour() const;
59 |
60 | void setShader(sf::Shader&);
61 | void setTexture(const sf::Texture&);
62 | void setNormalMap(const sf::Texture&);
63 |
64 | private:
65 |
66 | sf::CircleShape m_circleShape;
67 | sf::Shader* m_shader;
68 | const sf::Texture* m_normalMap;
69 |
70 | void draw(sf::RenderTarget& rt, sf::RenderStates states) const override;
71 | };
72 |
73 | #endif //CIRCLE_DRAWABLE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/Component.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //abstract base class for entity components
29 |
30 | #ifndef COMPONENT_HPP_
31 | #define COMPONENT_HPP_
32 |
33 | #include
34 |
35 | #include
36 | #include
37 |
38 | class Entity;
39 | class Message;
40 | class MessageBus;
41 | class Component
42 | {
43 | public:
44 | using Ptr = std::unique_ptr;
45 |
46 | enum class Type
47 | {
48 | Drawable,
49 | Physics,
50 | Script
51 | };
52 |
53 | explicit Component(MessageBus&);
54 | virtual ~Component();
55 | Component(const Component&) = delete;
56 | const Component& operator = (const Component&) = delete;
57 |
58 | virtual Type type() const = 0;
59 | //this is called once per frame by the component's parent entity
60 | //providing the opportinuty to update each other
61 | virtual void entityUpdate(Entity&, float) = 0;
62 | virtual void handleMessage(const Message&) = 0;
63 |
64 | //called when the component is first added to an entity
65 | virtual void onStart(Entity&);
66 |
67 | virtual void destroy();
68 | bool destroyed() const;
69 |
70 | void setParentUID(sf::Uint64 uid);
71 | sf::Uint64 getParentUID() const;
72 |
73 | void setName(const std::string&);
74 | const std::string& getName() const;
75 |
76 | protected:
77 | void sendMessage(const Message&);
78 | MessageBus& getMessageBus() const;
79 |
80 | private:
81 | MessageBus& m_messageBus;
82 | bool m_destroyed;
83 |
84 | sf::Uint64 m_parentUID;
85 |
86 | std::string m_name;
87 | };
88 |
89 | #endif //COMPONENT_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/EchoDrawable.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //draws an expanding 'echo'
29 |
30 | #ifndef ECHO_DRAWABLE_HPP_
31 | #define ECHO_DRAWABLE_HPP_
32 |
33 | #include
34 | #include
35 |
36 | #include
37 |
38 | class EchoDrawable final : public Component, public sf::Drawable
39 | {
40 | public:
41 | using Ptr = std::unique_ptr;
42 |
43 | EchoDrawable(float, MessageBus&);
44 | ~EchoDrawable() = default;
45 |
46 | Component::Type type() const override;
47 | void entityUpdate(Entity&, float) override;
48 | void handleMessage(const Message&) override;
49 |
50 | void setColour(const sf::Color&);
51 |
52 | private:
53 |
54 | sf::CircleShape m_circleShape;
55 | sf::Color m_colour;
56 | float m_lifetime;
57 |
58 | void draw(sf::RenderTarget&, sf::RenderStates) const override;
59 | };
60 |
61 | #endif //ECHO_DRAWABLE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/FadeDrawable.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //full screen rectangle whih fades to nothing and destroys itself
29 |
30 | #ifndef FADE_DRAWABLE_HPP_
31 | #define FADE_DRAWABLE_HPP_
32 |
33 | #include
34 |
35 | #include
36 | #include
37 |
38 | class FadeDrawable final : public Component, public sf::Drawable
39 | {
40 | public:
41 | explicit FadeDrawable(MessageBus&);
42 | ~FadeDrawable() = default;
43 | FadeDrawable(const FadeDrawable&) = delete;
44 | const FadeDrawable& operator = (const FadeDrawable&) = delete;
45 |
46 | Component::Type type() const override;
47 | void entityUpdate(Entity&, float) override;
48 | void handleMessage(const Message&) override;
49 |
50 | private:
51 |
52 | sf::RectangleShape m_rectangleShape;
53 | float m_currentFadeTime;
54 | float m_delayTime;
55 |
56 | void draw(sf::RenderTarget&, sf::RenderStates) const override;
57 | };
58 |
59 |
60 | #endif //FADE_DRAWABLE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/FileSystem.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //static functions for cross platform file handling
29 |
30 | #ifndef FILE_SYS_HPP_
31 | #define FILE_SYS_HPP_
32 |
33 | #include
34 | #include
35 |
36 | class FileSystem final
37 | {
38 | public:
39 |
40 | static std::vector listFiles(std::string path);
41 | static std::string getFileExtension(const std::string& path);
42 |
43 | private:
44 |
45 | };
46 |
47 | #endif //FILE_SYS_H_
--------------------------------------------------------------------------------
/pseuthe/include/GameController.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //observes the scene and controls spawning of entities affecting game play
29 |
30 | #ifndef GAME_CONTROLLER_HPP_
31 | #define GAME_CONTROLLER_HPP_
32 |
33 | #include
34 |
35 | #include
36 | #include
37 |
38 | #include
39 | #include
40 | #include
41 |
42 | class Scene;
43 | class MessageBus;
44 | class Message;
45 | class App;
46 | class PhysicsWorld;
47 | class PhysicsComponent;
48 | class TextDrawable;
49 | class Entity;
50 | class GameController final
51 | {
52 | public:
53 | GameController(Scene&, MessageBus&, App&, PhysicsWorld&);
54 | ~GameController() = default;
55 | GameController(const GameController&) = delete;
56 | const GameController& operator = (const GameController&) = delete;
57 |
58 | void update(float);
59 | void handleMessage(const Message&);
60 |
61 |
62 | private:
63 | Scene& m_scene;
64 | MessageBus& m_messageBus;
65 | App& m_appInstance;
66 | PhysicsWorld& m_physicsWorld;
67 |
68 | Entity* m_player;
69 |
70 | float m_constraintLength;
71 | float m_nextPartSize;
72 | float m_nextPartScale;
73 | std::vector m_playerPhysicsComponents;
74 |
75 | std::array m_planktonSpawns;
76 | sf::Uint8 m_planktonCount;
77 | float m_spawnTime;
78 | sf::Uint8 m_initialPartCount;
79 | float m_partDecayRate;
80 | float m_speedMultiplier;
81 |
82 | ControlType m_controlType;
83 |
84 | Difficulty m_difficulty;
85 | void setDifficulty(Difficulty);
86 |
87 | void spawnPlayer();
88 | void addBodyPart(float health = 100.f);
89 | void spawnPlankton();
90 |
91 | TextDrawable* m_scoreText;
92 | TextDrawable* m_highScoreText;
93 | TextDrawable* m_initialsText;
94 | bool m_paused;
95 | void resetScore();
96 | std::string getName() const;
97 | };
98 |
99 | #endif //GAME_CONTROLLER_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/GameState.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //main state of the game
29 |
30 | #ifndef GAME_STATE_HPP_
31 | #define GAME_STATE_HPP_
32 |
33 | #include
34 | #include
35 | #include
36 | #include
37 | #include
38 | #include
39 |
40 | #include
41 | #include
42 | #include
43 |
44 | #include
45 |
46 | namespace sf
47 | {
48 | class Color;
49 | }
50 |
51 | class GameState final : public State
52 | {
53 | public:
54 | GameState(StateStack& stateStack, Context context);
55 | ~GameState() = default;
56 |
57 | bool update(float dt) override;
58 | void draw() override;
59 | bool handleEvent(const sf::Event& evt) override;
60 | void handleMessage(const Message&) override;
61 |
62 | private :
63 |
64 | MessageBus& m_messageBus;
65 | Scene m_scene;
66 | PhysicsWorld m_physWorld;
67 | AudioManager m_audioManager;
68 | GameController m_gameController;
69 |
70 | sf::RectangleShape m_vignette;
71 | sf::Text m_versionText;
72 |
73 | sf::Shader m_orbShader;
74 | Entity::Ptr createEntity();
75 | };
76 |
77 | #endif //GAME_STATE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/GradientDrawable.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //uses a vertex array to create a gradient
29 |
30 | #ifndef GRADIENT_HPP_
31 | #define GRADIENT_HPP_
32 |
33 | #include
34 |
35 | #include
36 | #include
37 |
38 | class GradientDrawable final : public Component, public sf::Drawable, public sf::Transformable
39 | {
40 | public:
41 | using Ptr = std::unique_ptr;
42 |
43 | explicit GradientDrawable(MessageBus&);
44 | ~GradientDrawable() = default;
45 |
46 | Component::Type type() const override;
47 | void entityUpdate(Entity&, float) override;
48 | void handleMessage(const Message&) override;
49 |
50 | private:
51 |
52 | sf::VertexArray m_vertexArray;
53 | sf::Color m_colour;
54 |
55 | float m_currentTime;
56 | int m_colourIndexA, m_colourIndexB;
57 |
58 | void draw(sf::RenderTarget&, sf::RenderStates) const override;
59 | };
60 |
61 | #endif //GRADIENT_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/HelpState.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //displays the help menu
29 |
30 | #ifndef HELP_STATE_HPP_
31 | #define HELP_STATE_HPP_
32 |
33 | #include
34 | #include
35 | #include
36 | #include
37 | #include
38 |
39 | #include
40 | #include
41 | #include
42 |
43 | class MessageBus;
44 | class HelpState final : public State
45 | {
46 | public:
47 | HelpState(StateStack&, Context);
48 | ~HelpState() = default;
49 |
50 | bool update(float) override;
51 | void draw() override;
52 | bool handleEvent(const sf::Event&) override;
53 | void handleMessage(const Message&) override;
54 |
55 | private:
56 |
57 | enum class Mode
58 | {
59 | FadeIn,
60 | Static,
61 | FadeOut
62 | } m_mode;
63 |
64 | MessageBus& m_messageBus;
65 | PhysicsWorld m_physWorld;
66 | Entity m_rootNode;
67 |
68 | sf::Sprite m_menuSprite;
69 | sf::RectangleShape m_rectangleShape;
70 | std::vector m_texts;
71 |
72 | Ticker m_ticker;
73 |
74 | float m_fadeTime;
75 |
76 | void addText();
77 | void addPlankton(PlanktonController::Type);
78 | };
79 |
80 | #endif //HELP_STATE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/InputComponent.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //handles real time input for player
29 |
30 | #ifndef INPUT_COMPONENT_HPP_
31 | #define INPUT_COMPONENT_HPP_
32 |
33 | #include
34 | #include
35 |
36 | #include
37 |
38 | #include
39 |
40 | class PhysicsComponent;
41 | class AnimatedDrawable;
42 | class ParticleSystem;
43 | class TailDrawable;
44 | class InputComponent final : public Component
45 | {
46 | public:
47 |
48 | explicit InputComponent(MessageBus&);
49 | ~InputComponent() = default;
50 |
51 | Component::Type type() const override;
52 | void entityUpdate(Entity&, float) override;
53 | void handleMessage(const Message&) override;
54 | void onStart(Entity&) override;
55 |
56 | void setControlType(ControlType);
57 | void setControllerEnabled(bool);
58 |
59 | private:
60 | using ControlFunction = std::function;
61 |
62 | PhysicsComponent* m_physicsComponent;
63 | AnimatedDrawable* m_headDrawable;
64 | AnimatedDrawable* m_mouthDrawable;
65 | AnimatedDrawable* m_wigglerA;
66 | AnimatedDrawable* m_wigglerB;
67 | ParticleSystem* m_trailParticles;
68 | ParticleSystem* m_sparkleParticles;
69 | ParticleSystem* m_echo;
70 | TailDrawable* m_tail;
71 |
72 | float m_health;
73 | bool m_parseInput;
74 | bool m_controllerEnabled;
75 | bool m_mouseClickPending;
76 | sf::Vector2f m_mouseClick;
77 |
78 | float m_mass;
79 | float m_invMass;
80 |
81 | ControlFunction getKeyboard;
82 | ControlFunction getController;
83 |
84 | sf::Vector2f getKeyboardClassic(float);
85 | sf::Vector2f getControllerClassic(float);
86 |
87 | sf::Vector2f getKeyboardArcade(float);
88 | sf::Vector2f getControllerArcade(float);
89 |
90 | sf::Vector2f getMouse(float, const sf::Vector2f&);
91 | };
92 |
93 | #endif //INPUT_COMPONENT_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/LightPosition.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //used to control the entity with light attached
29 |
30 | #ifndef LIGHT_POSITION_HPP_
31 | #define LIGHT_POSITION_HPP_
32 |
33 | #include
34 |
35 | class LightPosition final : public Component
36 | {
37 | public:
38 | explicit LightPosition(MessageBus&);
39 | ~LightPosition() = default;
40 | LightPosition(const LightPosition&) = delete;
41 | const LightPosition& operator = (const LightPosition&) = delete;
42 |
43 | Component::Type type() const override;
44 | void entityUpdate(Entity&, float) override;
45 | void handleMessage(const Message&) override;
46 | };
47 |
48 | #endif //LIGHT_POSITION_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/MakeUnique.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //an implementation of c++14's std::make_unique
29 |
30 | #ifndef MAKEUNIQUE_HPP_
31 | #define MAKEUNIQUE_HPP_
32 |
33 | #include
34 | #include
35 | #include
36 | #include
37 |
38 | #if __cplusplus == 201103L
39 |
40 | namespace std {
41 |
42 | template struct _Unique_if
43 | {
44 | typedef unique_ptr _Single_object;
45 | };
46 |
47 | template struct _Unique_if
48 | {
49 | typedef unique_ptr _Unknown_bound;
50 | };
51 |
52 | template struct _Unique_if
53 | {
54 | typedef void _Known_bound;
55 | };
56 |
57 | template
58 | typename _Unique_if::_Single_object
59 | make_unique(Args&&... args)
60 | {
61 | return unique_ptr(new T(std::forward(args)...));
62 | }
63 |
64 | template
65 | typename _Unique_if::_Unknown_bound
66 | make_unique(size_t n)
67 | {
68 | typedef typename remove_extent::type U;
69 | return unique_ptr(new U[n]());
70 | }
71 |
72 | template
73 | typename _Unique_if::_Known_bound
74 | make_unique(Args&&...) = delete;
75 | }
76 |
77 | #endif
78 |
79 | #endif
80 |
--------------------------------------------------------------------------------
/pseuthe/include/MenuState.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //initial menu state
29 |
30 | #ifndef MENU_STATE_HPP_
31 | #define MENU_STATE_HPP_
32 |
33 | #include
34 | #include
35 |
36 | #include
37 | #include
38 |
39 | class MessageBus;
40 | class MenuState final : public State
41 | {
42 | public:
43 | MenuState(StateStack& stateStack, Context context);
44 | ~MenuState() = default;
45 |
46 | bool update(float dt) override;
47 | void draw() override;
48 | bool handleEvent(const sf::Event& evt) override;
49 | void handleMessage(const Message&) override;
50 |
51 | private:
52 | MessageBus& m_messageBus;
53 | sf::Sprite m_menuSprite;
54 | sf::Sprite m_cursorSprite;
55 | std::vector m_texts;
56 |
57 | ui::Container m_uiContainer;
58 |
59 | void buildMenu(const sf::Font&);
60 | void startGame();
61 | };
62 |
63 | #endif //MENU_STATE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/Music.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //plays music as requested by the current state
29 |
30 | #ifndef MUSIC_HPP_
31 | #define MUSIC_HPP_
32 |
33 | #include
34 |
35 | #include
36 |
37 | class MusicPlayer final : private sf::NonCopyable
38 | {
39 | public:
40 | MusicPlayer();
41 | ~MusicPlayer() = default;
42 | MusicPlayer(const MusicPlayer&) = delete;
43 | const MusicPlayer& operator = (const MusicPlayer&) = delete;
44 |
45 | void play(const std::string& file, bool loop = false);
46 | void stop();
47 | void setPaused(bool paused);
48 | bool playing() const;
49 | void setVolume(float volume);
50 | float getVolume() const;
51 |
52 | void update(float);
53 |
54 | private:
55 |
56 | float m_volume;
57 | sf::Music m_music;
58 | };
59 |
60 |
61 | #endif //MUSIC_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/OrbController.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //handles logic for the floating orbs
29 |
30 | #ifndef ORB_CONTROLLER_HPP_
31 | #define ORB_CONTROLLER_HPP_
32 |
33 | #include
34 |
35 | class ParticleSystem;
36 | class AnimatedDrawable;
37 | class PhysicsComponent;
38 | class OrbController final : public Component
39 | {
40 | public:
41 | explicit OrbController(MessageBus&);
42 | ~OrbController() = default;
43 |
44 | Component::Type type() const override;
45 | void entityUpdate(Entity&, float) override;
46 | void handleMessage(const Message&) override;
47 | void onStart(Entity&) override;
48 |
49 | private:
50 |
51 | ParticleSystem* m_particleSystem;
52 | AnimatedDrawable* m_drawable;
53 | PhysicsComponent* m_physComponent;
54 | };
55 |
56 | #endif //ORB_CONTROLLER_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/Particle.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2014 - 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | #ifndef PARTICLE_HPP_
29 | #define PARTICLE_HPP_
30 |
31 | #include
32 | #include
33 | #include
34 |
35 | struct Particle final : public sf::Transformable
36 | {
37 | enum class Type
38 | {
39 | Trail,
40 | Echo,
41 | Sparkle,
42 | Ident
43 | };
44 |
45 | sf::Vector2f velocity;
46 | sf::Color colour;
47 | float rotation = 0.f;
48 | float lifetime = 0.f;
49 | sf::FloatRect textureRect;
50 | };
51 |
52 | #endif //PARTICLE_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/ParticleField.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2014 - 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //creates a starfield type effect as a drawable component
29 |
30 | #ifndef PARTICLE_FIELD_HPP_
31 | #define PARTICLE_FIELD_HPP_
32 |
33 | #include
34 | #include
35 |
36 | #include
37 | #include
38 |
39 | #include
40 |
41 | class ParticleField final : public Component, public sf::Drawable
42 | {
43 | public:
44 | ParticleField(const sf::FloatRect&, MessageBus&);
45 | ~ParticleField() = default;
46 | ParticleField(const ParticleField&) = delete;
47 | const ParticleField& operator = (const ParticleField&) = delete;
48 |
49 | Component::Type type() const override;
50 | void entityUpdate(Entity&, float) override;
51 | void handleMessage(const Message&) override;
52 |
53 | void setBlendMode(sf::BlendMode);
54 | void setTexture(sf::Texture&);
55 | private:
56 |
57 | std::vector m_particles;
58 | sf::BlendMode m_blendMode;
59 | sf::FloatRect m_bounds;
60 | sf::VertexArray m_vertices;
61 | sf::Texture* m_texture;
62 |
63 | void addVertex(const sf::Vector2f&, float, float, const sf::Color&);
64 | void updateVertices();
65 | void draw(sf::RenderTarget&, sf::RenderStates) const override;
66 | };
67 |
68 | #endif //PARTICLE_FIELD_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/PhysicsWorld.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //simulates the physics and applies the results to physics components
29 |
30 | #ifndef PHYS_WORLD_HPP_
31 | #define PHYS_WORLD_HPP_
32 |
33 | #include
34 |
35 | #include
36 | #include
37 |
38 | class PhysicsWorld final
39 | {
40 | public:
41 | explicit PhysicsWorld(MessageBus&);
42 | ~PhysicsWorld() = default;
43 | PhysicsWorld(const PhysicsWorld&) = delete;
44 | const PhysicsWorld& operator = (const PhysicsWorld&) = delete;
45 |
46 | PhysicsComponent::Ptr addBody(float radius);
47 | PhysicsComponent::Ptr attachBody(float radius, float constraintLength, PhysicsComponent*);
48 |
49 | const sf::FloatRect& getWorldSize() const;
50 |
51 | void handleMessage(const Message&);
52 | void update(float);
53 |
54 | private:
55 | using Collision = std::pair;
56 |
57 | std::vector m_constraints;
58 | std::vector m_bodies;
59 | std::set m_collisions;
60 |
61 | MessageBus& m_messageBus;
62 | };
63 |
64 | #endif //PHYS_WORLD_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/PlanktonController.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //script component for plankton behaviour
29 |
30 | #ifndef PLANKTON_CONTROLLER_HPP_
31 | #define PLANKTON_CONTROLLER_HPP_
32 |
33 | #include
34 |
35 | class AnimatedDrawable;
36 | class PhysicsComponent;
37 | class ParticleSystem;
38 | class TailDrawable;
39 | class PlanktonController final : public Component
40 | {
41 | public:
42 | enum class Type
43 | {
44 | Good = 0,
45 | Bad,
46 | /*Ugly*/Bonus,
47 | UberLife
48 | };
49 |
50 | explicit PlanktonController(MessageBus&);
51 | ~PlanktonController() = default;
52 |
53 | Component::Type type() const override;
54 | void entityUpdate(Entity&, float) override;
55 | void handleMessage(const Message&) override;
56 | void onStart(Entity&) override;
57 |
58 | void setType(Type);
59 |
60 | void setEnemyId(sf::Uint64);
61 | void setDecayRate(float);
62 |
63 | void setColourblind(bool);
64 | private:
65 |
66 | enum Flags
67 | {
68 | HealthHit = 0x1,
69 | RequestRotation = 0x2,
70 | Suicide = 0x4,
71 | TouchingPlayer = 0x8
72 | };
73 | sf::Uint32 m_flags;
74 |
75 | Type m_type;
76 | PhysicsComponent* m_physComponent;
77 | AnimatedDrawable* m_drawable;
78 | ParticleSystem* m_trail;
79 | ParticleSystem* m_ident;
80 | TailDrawable* m_tail;
81 |
82 | float m_health;
83 | sf::Uint64 m_enemyId;
84 | float m_decayRate;
85 |
86 | float m_targetRotation;
87 |
88 | bool m_paused;
89 | bool m_colourblind;
90 | };
91 |
92 |
93 | #endif //PLANKTON_CONTROLLER_HPP_
--------------------------------------------------------------------------------
/pseuthe/include/PostBloom.hpp:
--------------------------------------------------------------------------------
1 | /*********************************************************************
2 | Matt Marchant 2015
3 | http://trederia.blogspot.com
4 |
5 | pseuthe Zlib license.
6 |
7 | This software is provided 'as-is', without any express or
8 | implied warranty. In no event will the authors be held
9 | liable for any damages arising from the use of this software.
10 |
11 | Permission is granted to anyone to use this software for any purpose,
12 | including commercial applications, and to alter it and redistribute
13 | it freely, subject to the following restrictions:
14 |
15 | 1. The origin of this software must not be misrepresented;
16 | you must not claim that you wrote the original software.
17 | If you use this software in a product, an acknowledgment
18 | in the product documentation would be appreciated but
19 | is not required.
20 |
21 | 2. Altered source versions must be plainly marked as such,
22 | and must not be misrepresented as being the original software.
23 |
24 | 3. This notice may not be removed or altered from any
25 | source distribution.
26 | *********************************************************************/
27 |
28 | //creates a 'bloom' effect via post process
29 |
30 | #ifndef POST_BLOOM_HPP_
31 | #define POST_BLOOM_HPP_
32 |
33 | #include
34 | #include