Files
@ r28809:040255475ca6
Branch filter:
Location: cpp/openttd-patchpack/source/src/social_integration.h - annotation
r28809:040255475ca6
2.8 KiB
text/x-c
Update: Translations from eints
english (au): 6 changes by krysclarke
swedish: 19 changes by sereneavatar
estonian: 30 changes by RM87
chinese (simplified): 3 changes by Kevin-mao0721
hungarian: 60 changes by titanicbobo
italian: 6 changes by Rivarossi
russian: 3 changes by Ln-Wolf, 3 changes by KorneySan
finnish: 6 changes by hpiirai
ukrainian: 7 changes by StepanIvasyn
latvian: 6 changes by lexuslatvia
portuguese: 37 changes by azulcosta
portuguese (brazilian): 19 changes by pasantoro
polish: 6 changes by SzyZuu
english (au): 6 changes by krysclarke
swedish: 19 changes by sereneavatar
estonian: 30 changes by RM87
chinese (simplified): 3 changes by Kevin-mao0721
hungarian: 60 changes by titanicbobo
italian: 6 changes by Rivarossi
russian: 3 changes by Ln-Wolf, 3 changes by KorneySan
finnish: 6 changes by hpiirai
ukrainian: 7 changes by StepanIvasyn
latvian: 6 changes by lexuslatvia
portuguese: 37 changes by azulcosta
portuguese (brazilian): 19 changes by pasantoro
polish: 6 changes by SzyZuu
r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee r28552:48eaa3286eee | /*
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
*/
/** @file social_integration.h Interface definitions for game to report/respond to social integration. */
#ifndef SOCIAL_INTEGRATION_H
#define SOCIAL_INTEGRATION_H
class SocialIntegrationPlugin {
public:
enum State {
RUNNING, ///< The plugin is successfully loaded and running.
FAILED, ///< The plugin failed to initialize.
PLATFORM_NOT_RUNNING, ///< The plugin failed to initialize because the Social Platform is not running.
UNLOADED, ///< The plugin is unloaded upon request.
DUPLICATE, ///< Another plugin of the same Social Platform is already loaded.
UNSUPPORTED_API, ///< The plugin does not support the current API version.
INVALID_SIGNATURE, ///< The signature of the plugin is invalid.
};
std::string basepath; ///< Base path of the plugin.
std::string social_platform = "unknown"; ///< Social platform this plugin is for.
std::string name = ""; ///< Name of the plugin.
std::string version = ""; ///< Version of the plugin.
State state = FAILED; ///< Result of the plugin's init function.
SocialIntegrationPlugin(const std::string &basepath) : basepath(basepath) {}
};
class SocialIntegration {
public:
/**
* Get the list of loaded social integration plugins.
*/
static std::vector<SocialIntegrationPlugin *> GetPlugins();
/**
* Initialize the social integration system, loading any social integration plugins that are available.
*/
static void Initialize();
/**
* Shutdown the social integration system, and all social integration plugins that are loaded.
*/
static void Shutdown();
/**
* Allow any social integration library to handle their own events.
*/
static void RunCallbacks();
/**
* Event: user entered the main menu.
*/
static void EventEnterMainMenu();
/**
* Event: user entered the Scenario Editor.
*/
static void EventEnterScenarioEditor(uint map_width, uint map_height);
/**
* Event: user entered a singleplayer game.
*/
static void EventEnterSingleplayer(uint map_width, uint map_height);
/**
* Event: user entered a multiplayer game.
*/
static void EventEnterMultiplayer(uint map_width, uint map_height);
/**
* Event: user is joining a multiplayer game.
*/
static void EventJoiningMultiplayer();
};
#endif /* SOCIAL_INTEGRATION_H */
|