aboutsummaryrefslogtreecommitdiff
path: root/src/server.h
Commit message (Expand)AuthorAge
...
* Move tool definitions to scriptPerttu Ahola2011-11-29
* Tool definition transfer to clientPerttu Ahola2011-11-29
* GameDef compilesPerttu Ahola2011-11-29
* Create framework for getting rid of global definitions of node/tool/item/what...Perttu Ahola2011-11-29
* Scripting WIPPerttu Ahola2011-11-29
* Improve Connection with threading and some kind of congestion controlPerttu Ahola2011-10-20
* Add /clearobjectsPerttu Ahola2011-10-18
* When granting or revoking privileges, notify the target player tooPerttu Ahola2011-10-16
* Handle death and respawn betterPerttu Ahola2011-10-15
* Header file tweaking; mainly for speedPerttu Ahola2011-10-12
* Fixed/extended/modified ban stuff to be good for inclusionPerttu Ahola2011-08-12
* added ipban supportConstantin Wenger2011-08-12
* Notify other players of wielded item changeGiuseppe Bilotta2011-08-11
* fix to the formerPerttu Ahola2011-07-30
* Server configuration is now written when "/#setting whatever = whatever" is i...Perttu Ahola2011-07-30
* map unloading is now a whole lot betterPerttu Ahola2011-06-27
* moved map generator to separate source filesPerttu Ahola2011-06-25
* Reduced server CPU usage on NodeMetadata step()s. Also furnace now cooks whil...Perttu Ahola2011-05-31
* Reduced the CPU usage of the sent block selector algorithmPerttu Ahola2011-05-31
* hopefully fixed the privilege problemsPerttu Ahola2011-05-29
* player passwords and privileges in world/auth.txtPerttu Ahola2011-05-29
* Preliminary "active block" stuff + set up test code to grow grass.Perttu Ahola2011-05-22
* Passwords - password entry at main menu, stored and checked by serverCiaran Gultnieks2011-05-20
* Improved server commands and added player permissions.Ciaran Gultnieks2011-05-16
* random comment updatesPerttu Ahola2011-04-30
* Optimized map saving and sending (server-side)Perttu Ahola2011-04-26
* Some work-in-progress in hp and mobs and a frightening amount of random fixes.Perttu Ahola2011-04-21
* Some progress on transitioning from MapBlockObject to ActiveObject.Perttu Ahola2011-04-08
* Server: Only send node removal/addition to client if client's player is near ...Perttu Ahola2011-04-06
* Chests work now!Perttu Ahola2011-04-04
* mainly work on object scripting apiPerttu Ahola2011-02-23
* Temporary commit; lots of test code and stuffPerttu Ahola2011-02-21
* Ctrl+C handling on POSIX, some commands for server and other tweakingPerttu Ahola2011-02-15
* mapgen stuffPerttu Ahola2011-02-05
* Now texture handling is fast. Also now players are saved on disk.Perttu Ahola2011-01-28
* OMG! Main Menu!Perttu Ahola2011-01-23
* fixed erroneus handling of many players with no peer existing at same timePerttu Ahola2011-01-18
* minecraft-style water done (but no texture animation or sound)Perttu Ahola2011-01-17
* old water removed, some fixes here and therePerttu Ahola2011-01-17
* fine-tuning of map generator and server and stuff.Perttu Ahola2011-01-17
* Players are left on server while server is running. No passwords yet.Perttu Ahola2011-01-15
* Added a more flexible path system (and fixed some minor stuff)Perttu Ahola2011-01-07
* disconnect method to connection to be used instead of just timing outPerttu Ahola2010-12-24
* changes to handing of digging (non backwards-compatible i guess)Perttu Ahola2010-12-23
* some work-in-progressPerttu Ahola2010-12-22
* organizing stuff.Perttu Ahola2010-12-21
* working time-of-day sending from server to clientPerttu Ahola2010-12-20
* day/night working client sidePerttu Ahola2010-12-19
* before adding day/night lightingPerttu Ahola2010-12-18
* working nicelyPerttu Ahola2010-12-13
class="hl opt">::string &worldpath); // adds all mods in the given path. used for games, modpacks // and world-specific mods (worldmods-folders) void addModsInPath(const std::string &path); // adds all mods in the set. void addMods(const std::vector<ModSpec> &new_mods); void addModsFromConfig(const std::string &settings_path, const std::set<std::string> &mods); void checkConflictsAndDeps(); protected: // list of mods sorted such that they can be loaded in the // given order with all dependencies being fullfilled. I.e., // every mod in this list has only dependencies on mods which // appear earlier in the vector. std::vector<ModSpec> m_sorted_mods; private: // move mods from m_unsatisfied_mods to m_sorted_mods // in an order that satisfies dependencies void resolveDependencies(); // mods with unmet dependencies. Before dependencies are resolved, // this is where all mods are stored. Afterwards this contains // only the ones with really unsatisfied dependencies. std::vector<ModSpec> m_unsatisfied_mods; // set of mod names for which an unresolved name conflict // exists. A name conflict happens when two or more mods // at the same level have the same name but different paths. // Levels (mods in higher levels override mods in lower levels): // 1. game mod in modpack; 2. game mod; // 3. world mod in modpack; 4. world mod; // 5. addon mod in modpack; 6. addon mod. std::unordered_set<std::string> m_name_conflicts; // Deleted default constructor ModConfiguration() = default; }; #ifndef SERVER class ClientModConfiguration : public ModConfiguration { public: ClientModConfiguration(const std::string &path); }; #endif class ModMetadata : public Metadata { public: ModMetadata() = delete; ModMetadata(const std::string &mod_name); ~ModMetadata() = default; virtual void clear(); bool save(const std::string &root_path); bool load(const std::string &root_path); bool isModified() const { return m_modified; } const std::string &getModName() const { return m_mod_name; } virtual bool setString(const std::string &name, const std::string &var); private: std::string m_mod_name; bool m_modified = false; };