forked from github/server
Lua-Zugriff auf den item-pool
This commit is contained in:
parent
d7cb8c517e
commit
1b62f53285
|
@ -1192,10 +1192,10 @@ count_all(const faction * f)
|
||||||
if (f->num_people != n) {
|
if (f->num_people != n) {
|
||||||
log_error(("Anzahl Personen für (%s) ist != num_people: %d statt %d.\n",
|
log_error(("Anzahl Personen für (%s) ist != num_people: %d statt %d.\n",
|
||||||
factionid(f), f->num_migrants, n));
|
factionid(f), f->num_migrants, n));
|
||||||
f->num_people = n;
|
return n;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
return n;
|
return f->num_people;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -1216,7 +1216,7 @@ count_migrants (const faction * f)
|
||||||
if (f->num_migrants != n) {
|
if (f->num_migrants != n) {
|
||||||
log_error(("Anzahl Migranten für (%s) ist != num_migrants: %d statt %d.\n",
|
log_error(("Anzahl Migranten für (%s) ist != num_migrants: %d statt %d.\n",
|
||||||
factionid(f), f->num_migrants, n));
|
factionid(f), f->num_migrants, n));
|
||||||
f->num_migrants = n;
|
return n;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
return f->num_migrants;
|
return f->num_migrants;
|
||||||
|
|
|
@ -188,6 +188,10 @@ faction_setrace(faction& f, const char * rcname)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static eressea::list<std::string, item *, eressea::bind_items>
|
||||||
|
faction_items(const faction& f) {
|
||||||
|
return eressea::list<std::string, item *, eressea::bind_items>(f.items);
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
bind_faction(lua_State * L)
|
bind_faction(lua_State * L)
|
||||||
|
@ -213,7 +217,10 @@ bind_faction(lua_State * L)
|
||||||
.def_readwrite("age", &faction::age)
|
.def_readwrite("age", &faction::age)
|
||||||
.def_readwrite("subscription", &faction::subscription)
|
.def_readwrite("subscription", &faction::subscription)
|
||||||
.def_readwrite("lastturn", &faction::lastorders)
|
.def_readwrite("lastturn", &faction::lastorders)
|
||||||
|
|
||||||
.def("add_item", &faction_additem)
|
.def("add_item", &faction_additem)
|
||||||
|
.property("items", &faction_items, return_stl_iterator)
|
||||||
|
|
||||||
.def("add_notice", &faction_addnotice)
|
.def("add_notice", &faction_addnotice)
|
||||||
.property("locale", &faction_getlocale, &faction_setlocale)
|
.property("locale", &faction_getlocale, &faction_setlocale)
|
||||||
.property("units", &faction_units, return_stl_iterator)
|
.property("units", &faction_units, return_stl_iterator)
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
#ifndef LUA_LIST_H
|
#ifndef LUA_LIST_H
|
||||||
#define LUA_LIST_H
|
#define LUA_LIST_H
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
#include <kernel/item.h>
|
||||||
|
|
||||||
namespace eressea {
|
namespace eressea {
|
||||||
|
|
||||||
template<class T, class N = T>
|
template<class T, class N = T>
|
||||||
|
@ -36,6 +39,14 @@ namespace eressea {
|
||||||
N m_clist;
|
N m_clist;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class bind_items {
|
||||||
|
public:
|
||||||
|
static item * next(item * node) { return node->next; }
|
||||||
|
static std::string value(item * node) {
|
||||||
|
return std::string(node->type->rtype->_name[0]);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -80,17 +80,9 @@ unit_orders(const unit& u) {
|
||||||
return eressea::list<std::string, order *, bind_orders>(u.orders);
|
return eressea::list<std::string, order *, bind_orders>(u.orders);
|
||||||
}
|
}
|
||||||
|
|
||||||
class bind_items {
|
static eressea::list<std::string, item *, eressea::bind_items>
|
||||||
public:
|
|
||||||
static item * next(item * node) { return node->next; }
|
|
||||||
static std::string value(item * node) {
|
|
||||||
return std::string(node->type->rtype->_name[0]);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
static eressea::list<std::string, item *, bind_items>
|
|
||||||
unit_items(const unit& u) {
|
unit_items(const unit& u) {
|
||||||
return eressea::list<std::string, item *, bind_items>(u.items);
|
return eressea::list<std::string, item *, eressea::bind_items>(u.items);
|
||||||
}
|
}
|
||||||
|
|
||||||
static unit *
|
static unit *
|
||||||
|
|
Loading…
Reference in New Issue