mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Make some maps unordered to improve performance
* This permit to improve performance on C++11 builds * use some existing typedefs in tools maps * minor code style changes
This commit is contained in:
parent
d4c76258e3
commit
5f084cd98d
5 changed files with 38 additions and 48 deletions
15
src/tool.h
15
src/tool.h
|
@ -23,12 +23,12 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
|||
#include "irrlichttypes.h"
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
#include <map>
|
||||
#include "util/cpp11_container.h"
|
||||
#include "itemgroup.h"
|
||||
|
||||
struct ToolGroupCap
|
||||
{
|
||||
std::map<int, float> times;
|
||||
UNORDERED_MAP<int, float> times;
|
||||
int maxlevel;
|
||||
int uses;
|
||||
|
||||
|
@ -39,8 +39,8 @@ struct ToolGroupCap
|
|||
|
||||
bool getTime(int rating, float *time) const
|
||||
{
|
||||
std::map<int, float>::const_iterator i = times.find(rating);
|
||||
if(i == times.end()){
|
||||
UNORDERED_MAP<int, float>::const_iterator i = times.find(rating);
|
||||
if (i == times.end()) {
|
||||
*time = 0;
|
||||
return false;
|
||||
}
|
||||
|
@ -50,22 +50,19 @@ struct ToolGroupCap
|
|||
};
|
||||
|
||||
|
||||
// CLANG SUCKS DONKEY BALLS
|
||||
typedef std::map<std::string, struct ToolGroupCap> ToolGCMap;
|
||||
typedef std::map<std::string, s16> DamageGroup;
|
||||
typedef UNORDERED_MAP<std::string, struct ToolGroupCap> ToolGCMap;
|
||||
typedef UNORDERED_MAP<std::string, s16> DamageGroup;
|
||||
|
||||
struct ToolCapabilities
|
||||
{
|
||||
float full_punch_interval;
|
||||
int max_drop_level;
|
||||
// CLANG SUCKS DONKEY BALLS
|
||||
ToolGCMap groupcaps;
|
||||
DamageGroup damageGroups;
|
||||
|
||||
ToolCapabilities(
|
||||
float full_punch_interval_=1.4,
|
||||
int max_drop_level_=1,
|
||||
// CLANG SUCKS DONKEY BALLS
|
||||
ToolGCMap groupcaps_=ToolGCMap(),
|
||||
DamageGroup damageGroups_=DamageGroup()
|
||||
):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue