Luanti 5.17.0-dev
Loading...
Searching...
No Matches
gameparams.h
Go to the documentation of this file.
1// Luanti
2// SPDX-License-Identifier: LGPL-2.1-or-later
3// Copyright (C) 2010-2013 celeron55, Perttu Ahola <celeron55@gmail.com>
4
5#pragma once
6
7#include "irrlichttypes.h"
8#include "content/subgames.h"
9#include "log.h" // errorstream
10
11// Information provided from "main"
12// Start information for server or client
22
23enum class ELoginRegister {
24 Any = 0,
27};
28
30{
31 bool isSinglePlayer() const { return mode == GM_SINGLEPLAYER; }
32 bool isAnyServer() const
33 { return mode == GM_HOST_AND_JOIN || mode == GM_SINGLEPLAYER; }
34
35 std::string name;
36 std::string password;
37 std::string address; //< non-empty when joining a server
38
45
47};
48
49// Information provided by ClientLauncher
50// Client-only data (joining or hosting server)
52{
53 GameStartData() = default;
54
55 // "world_path" must be kept in sync!
57};
58
61{
62 GameErrorData() = default;
63
66 void setError(const std::string &msg, bool reconnect = false)
67 {
68 message = msg;
69 reconnect_requested = reconnect;
70 errorstream << msg << std::endl;
71 }
72
73 // Whether the server has requested a reconnect
74 bool reconnect_requested = false;
75 std::string message;
76};
ELoginRegister
Definition gameparams.h:23
@ Register
Definition gameparams.h:26
@ Login
Definition gameparams.h:25
@ Any
Definition gameparams.h:24
LogStream errorstream(error_target)
Definition gameparams.h:30
std::string name
Definition gameparams.h:35
bool isSinglePlayer() const
Definition gameparams.h:31
Mode
Definition gameparams.h:39
@ GM_JOIN
Definition gameparams.h:42
@ GM_SINGLEPLAYER
Definition gameparams.h:40
@ GM_Undefined
Definition gameparams.h:43
@ GM_HOST_AND_JOIN
Definition gameparams.h:41
std::string address
Definition gameparams.h:37
ELoginRegister allow_login_or_register
Definition gameparams.h:46
std::string password
Definition gameparams.h:36
enum GameClientData::Mode mode
bool isAnyServer() const
Definition gameparams.h:32
void setError(const std::string &msg, bool reconnect=false)
Raise and log an error.
Definition gameparams.h:66
GameErrorData()=default
std::string message
Definition gameparams.h:75
bool reconnect_requested
Definition gameparams.h:74
u16 socket_port
Definition gameparams.h:17
std::string world_path
Definition gameparams.h:18
SubgameSpec game_spec
Definition gameparams.h:19
bool is_dedicated_server
Definition gameparams.h:20
GameParams()=default
WorldSpec world_spec
Definition gameparams.h:56
GameStartData()=default
Definition subgames.h:15
Definition subgames.h:78