blob: db6d1afc9b90e392f4a1133ec57f7de20da5adb9 (
plain)
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
|
/*
* Copyright 2008 Ben Boeckel <MathStuf@gmail.com>
*
* This program 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, either version 3 of the License, or
* (at your option) any later version.
*
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __POKESCRIPTING_RULESWRAPPER__
#define __POKESCRIPTING_RULESWRAPPER__
// Pokescripting includes
#include "ObjectWrapper.h"
// Pokemod includes
#include "../pokemod/Rules.h"
namespace Pokescripting
{
class POKESCRIPTING_EXPORT RulesWrapper : public ObjectWrapper
{
Q_OBJECT
public:
static RulesWrapper* create(const Pokemod::Rules* rules, QObject* parent)
{
if (!m_instances.contains(rules->id()))
m_instances[rules->id()] = new RulesWrapper(rules, parent);
return qobject_cast<RulesWrapper*>(m_instances[rules->id()]);
}
public slots:
bool genderAllowed() const;
bool breedingAllowed() const;
bool criticalDomains() const;
bool useTurns() const;
int numBoxes() const;
int boxSize() const;
int maxParty() const;
int maxFight() const;
int maxPlayers() const;
int maxHeldItems() const;
int maxAbilities() const;
int maxNatures() const;
int maxMoves() const;
int maxLevel() const;
int maxStages() const;
int maxMoney() const;
bool hardCash() const;
bool allowSwitchStyle() const;
bool specialSplit() const;
bool specialDVSplit() const;
bool effortValuesAllowed() const;
int maxTotalEV() const;
int maxEVPerStat() const;
private:
RulesWrapper(const Pokemod::Rules* rules, QObject* parent);
RulesWrapper& operator=(const RulesWrapper& rhs);
const Pokemod::Rules* m_rules;
};
}
#endif
|