Planeshift
slotmanager.h
Go to the documentation of this file.
1
/*
2
* slotmanager.h
3
*
4
* Copyright (C) 2002 Atomic Blue (info@planeshift.it, http://www.atomicblue.org)
5
*
6
*
7
* This program is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU General Public License
9
* as published by the Free Software Foundation (version 2 of the License)
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
* You should have received a copy of the GNU General Public License
15
* along with this program; if not, write to the Free Software
16
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17
*
18
*/
19
#ifndef __SLOTMANAGER_H__
20
#define __SLOTMANAGER_H__
21
22
//=============================================================================
23
// Crystal Space Includes
24
//=============================================================================
25
26
//=============================================================================
27
// Project Includes
28
//=============================================================================
29
30
//=============================================================================
31
// Local Includes
32
//=============================================================================
33
#include "
msgmanager.h
"
34
40
class
SlotManager
:
public
MessageManager
<SlotManager>
41
{
42
public
:
43
SlotManager
(
GEMSupervisor
* gemsupervisor,
CacheManager
* cachemanager);
44
virtual
~SlotManager
();
45
46
bool
Initialize
();
47
48
psItem
*
FindItem
(
Client
* client,
int
containerID,
INVENTORY_SLOT_NUMBER
slotID);
49
50
private
:
51
53
void
HandleDropCommand(
MsgEntry
* me,
Client
* client);
54
void
HandleSlotMovement(
MsgEntry
* me,
Client
* client);
55
62
psItem
* MakeMoneyItem(
INVENTORY_SLOT_NUMBER
slot,
int
stackCount);
63
65
void
MoveFromInventory(
psSlotMovementMsg
&msg,
Client
* fromClient);
66
68
void
MoveFromOffering(
psSlotMovementMsg
&msg,
Client
* fromClient);
69
71
void
MoveFromOfferedMoney(
psSlotMovementMsg
&msg,
Client
* fromClient);
72
74
void
MoveFromMoney(
psSlotMovementMsg
&msg,
Client
* fromClient);
75
77
void
MoveFromWorldContainer(
psSlotMovementMsg
&msg,
Client
* fromClient, uint32 containerEntityID);
78
80
void
Consume(
psItem
* item,
psCharacter
* charData,
int
count);
81
82
GEMSupervisor
* gemSupervisor;
83
CacheManager
* cacheManager;
84
MathScript
* qualityScript;
85
};
86
87
#endif
psSlotMovementMsg
Definition:
messages.h:3911
SlotManager
Handles Drag and Drop Messages from the client.
Definition:
slotmanager.h:40
psCharacter
Definition:
pscharacter.h:647
SlotManager::FindItem
psItem * FindItem(Client *client, int containerID, INVENTORY_SLOT_NUMBER slotID)
MathScript
A MathScript is a mini-program to run.
Definition:
mathscript.h:442
msgmanager.h
INVENTORY_SLOT_NUMBER
INVENTORY_SLOT_NUMBER
Holds a list of the possible socket identifiers that items can be attached to.
Definition:
slots.h:32
MsgEntry
The structure of 1 queue entry (pointer to a message)
Definition:
message.h:143
SlotManager::Initialize
bool Initialize()
SlotManager::~SlotManager
virtual ~SlotManager()
Client
This class collects data of a netclient.
Definition:
client.h:95
SlotManager::SlotManager
SlotManager(GEMSupervisor *gemsupervisor, CacheManager *cachemanager)
CacheManager
This class manages the caching of data that is unchanging during server operation.
Definition:
cachemanager.h:234
GEMSupervisor
This class holds the refs to the core factories, etc in CEL.
Definition:
gem.h:126
psItem
This class embodies item instances in the game.
Definition:
psitem.h:238
MessageManager
Provides a manager to facilitate subscriptions.
Definition:
msgmanager.h:106
server
slotmanager.h
Generated on Sat Jun 19 2021 05:00:33 for Planeshift by
1.8.11