ManaPlus
src
listeners
playerpostdeathlistener.h
Go to the documentation of this file.
1
/*
2
* The ManaPlus Client
3
* Copyright (C) 2004-2009 The Mana World Development Team
4
* Copyright (C) 2009-2010 The Mana Developers
5
* Copyright (C) 2011-2019 The ManaPlus Developers
6
* Copyright (C) 2019-2021 Andrei Karas
7
*
8
* This file is part of The ManaPlus Client.
9
*
10
* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation; either version 2 of the License, or
13
* any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the GNU General Public License
21
* along with this program. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
24
#ifndef LISTENERS_PLAYERPOSTDEATHLISTENER_H
25
#define LISTENERS_PLAYERPOSTDEATHLISTENER_H
26
27
#include "
being/localplayer.h
"
28
29
#include "
gui/dialogsmanager.h
"
30
#include "
gui/popupmanager.h
"
31
32
#include "
gui/windows/npcdialog.h
"
33
34
#include "
net/adminhandler.h
"
35
#include "
net/playerhandler.h
"
36
37
#include "
localconsts.h
"
38
39
extern
Window
*
deathNotice
;
40
44
struct
PlayerPostDeathListener
final
:
public
ActionListener
45
{
46
PlayerPostDeathListener
() :
47
ActionListener
()
48
{ }
49
50
A_DELETE_COPY
(
PlayerPostDeathListener
)
51
52
void
action
(const
ActionEvent
&event)
override
final
53
{
54
const
bool
respawn = !(
event
.getId() ==
"no"
);
55
deathNotice
=
nullptr
;
56
if
(respawn)
57
{
58
if
(
playerHandler
!=
nullptr
)
59
playerHandler
->
respawn
();
60
61
DialogsManager::closeDialogs
();
62
PopupManager::closePopupMenu
();
63
NpcDialog::clearDialogs
();
64
65
if
(
localPlayer
!=
nullptr
)
66
localPlayer
->
respawn
();
67
}
68
else
69
{
70
DialogsManager::closeDialogs
();
71
PopupManager::closePopupMenu
();
72
NpcDialog::clearDialogs
();
73
if
(
localPlayer
!=
nullptr
)
74
adminHandler
->
alive
(
localPlayer
->
getName
());
75
}
76
}
77
};
78
79
#endif
// LISTENERS_PLAYERPOSTDEATHLISTENER_H
adminhandler.h
adminHandler
Net::AdminHandler * adminHandler
Definition:
net.cpp:84
ActionEvent
Definition:
actionevent.h:98
ActionListener
Definition:
actionlistener.h:79
Being::getName
const std::string & getName() const
Definition:
being.h:232
DialogsManager::closeDialogs
static void closeDialogs()
Definition:
dialogsmanager.cpp:81
LocalPlayer::respawn
void respawn()
Definition:
localplayer.cpp:2742
Net::AdminHandler::alive
virtual void alive(const std::string &name) const =0
Net::PlayerHandler::respawn
virtual void respawn() const =0
NpcDialog::clearDialogs
static void clearDialogs()
Definition:
npcdialog.cpp:1217
PopupManager::closePopupMenu
static void closePopupMenu()
Definition:
popupmanager.cpp:47
Window
Definition:
window.h:102
dialogsmanager.h
localconsts.h
override
#define override
Definition:
localconsts.h:47
final
#define final
Definition:
localconsts.h:46
A_DELETE_COPY
#define A_DELETE_COPY(func)
Definition:
localconsts.h:53
localPlayer
LocalPlayer * localPlayer
Definition:
localplayer.cpp:109
localplayer.h
playerHandler
Net::PlayerHandler * playerHandler
Definition:
net.cpp:96
npcdialog.h
playerhandler.h
deathNotice
Window * deathNotice
Definition:
dialogsmanager.cpp:62
popupmanager.h
PlayerPostDeathListener
Definition:
playerpostdeathlistener.h:45
PlayerPostDeathListener::action
void action(const ActionEvent &event)
Definition:
playerpostdeathlistener.h:52
PlayerPostDeathListener::PlayerPostDeathListener
PlayerPostDeathListener()
Definition:
playerpostdeathlistener.h:46
Generated on Wed Mar 17 2021 19:19:08 for ManaPlus by
1.9.1