1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

updated scripting api a bit

--HG--
rename : data/luaobjects/test/client.lua => data/scripts/objects/test/client.lua
rename : data/luaobjects/test/server.lua => data/scripts/objects/test/server.lua
This commit is contained in:
Perttu Ahola 2011-02-23 11:10:09 +02:00
parent 9778347c7f
commit be32adc872
8 changed files with 484 additions and 251 deletions

View file

@ -115,6 +115,26 @@ Player * Environment::getRandomConnectedPlayer()
return NULL;
}
Player * Environment::getNearestConnectedPlayer(v3f pos)
{
core::list<Player*> connected_players = getPlayers(true);
f32 nearest_d = 0;
Player *nearest_player = NULL;
for(core::list<Player*>::Iterator
i = connected_players.begin();
i != connected_players.end(); i++)
{
Player *player = *i;
f32 d = player->getPosition().getDistanceFrom(pos);
if(d < nearest_d || nearest_player == NULL)
{
nearest_d = d;
nearest_player = player;
}
}
return nearest_player;
}
core::list<Player*> Environment::getPlayers()
{
return m_players;
@ -480,9 +500,9 @@ void ServerEnvironment::step(float dtime)
if(player)
pos = player->getPosition();
pos += v3f(
myrand_range(-5,5)*BS,
myrand_range(-3,3)*BS,
0,
myrand_range(-5,5)*BS
myrand_range(-3,3)*BS
);
/*
@ -494,7 +514,7 @@ void ServerEnvironment::step(float dtime)
/*
Select a random type for it
*/
std::string objectdir = porting::getDataPath("luaobjects");
std::string objectdir = porting::getDataPath("scripts/objects");
std::vector<fs::DirListNode> dirlist = fs::GetDirListing(objectdir);
if(dirlist.size() > 0)
{