-
Notifications
You must be signed in to change notification settings - Fork 20
/
House.h
97 lines (65 loc) · 1.79 KB
/
House.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#pragma once
#include "WeenieObject.h"
#include "Portal.h"
#include "Chest.h"
class CHouseWeenie : public CWeenieObject
{
public:
CHouseWeenie();
virtual class CHouseWeenie *AsHouse() { return this; }
virtual void EnsureLink(CWeenieObject *source) override;
std::string GetHouseOwnerName();
DWORD GetHouseOwner();
DWORD GetHouseDID();
int GetHouseType();
std::set<DWORD> _hook_list;
};
class CSlumLordWeenie : public CWeenieObject
{
public:
CSlumLordWeenie();
virtual class CSlumLordWeenie *AsSlumLord() { return this; }
CHouseWeenie *GetHouse();
void GetHouseProfile(HouseProfile &prof);
virtual int DoUseResponse(CWeenieObject *other) override;
void BuyHouse(CPlayerWeenie *player, const PackableList<DWORD> &items);
void RentHouse(CPlayerWeenie *player, const PackableList<DWORD> &items);
};
class CHookWeenie : public CContainerWeenie
{
public:
CHookWeenie();
virtual class CHookWeenie *AsHook() { return this; }
class CHouseWeenie *GetHouse();
};
class CDeedWeenie : public CWeenieObject
{
public:
CDeedWeenie();
virtual class CDeedWeenie *AsDeed() { return this; }
class CHouseWeenie *GetHouse();
};
class CBootSpotWeenie : public CWeenieObject
{
public:
CBootSpotWeenie();
virtual class CBootSpotWeenie *AsBootSpot() { return this; }
class CHouseWeenie *GetHouse();
};
class CHousePortalWeenie : public CPortal
{
public:
CHousePortalWeenie();
virtual class CHousePortalWeenie *AsHousePortal() { return this; }
virtual void ApplyQualityOverrides() override;
class CHouseWeenie *GetHouse();
virtual bool GetDestination(Position &position) override;
};
class CStorageWeenie : public CChestWeenie
{
public:
CStorageWeenie();
virtual class CStorageWeenie *AsStorage() { return this; }
virtual void ApplyQualityOverrides() override;
class CHouseWeenie *GetHouse();
};