Files
@ r27835:eabfaa878ced
Branch filter:
Location: cpp/openttd-patchpack/source/src/ai/ai_scanner.hpp - annotation
r27835:eabfaa878ced
2.5 KiB
text/x-c++hdr
Add: calendar date for Survey results
This means no heuristics is possible on around which date people
play the game.
This means no heuristics is possible on around which date people
play the game.
r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r10696:8dfe83e30d01 r10696:8dfe83e30d01 r10696:8dfe83e30d01 r10696:8dfe83e30d01 r10696:8dfe83e30d01 r11380:8edd3e28a734 r10696:8dfe83e30d01 r18508:f893337ab5c7 r10696:8dfe83e30d01 r18508:f893337ab5c7 r18508:f893337ab5c7 r18508:f893337ab5c7 r23497:a0ab44ebd2fa r10696:8dfe83e30d01 r10696:8dfe83e30d01 r18508:f893337ab5c7 r18508:f893337ab5c7 r10696:8dfe83e30d01 r14187:fd7084a22bff r10696:8dfe83e30d01 r10696:8dfe83e30d01 r18508:f893337ab5c7 r27308:abc0eb023c25 r27308:abc0eb023c25 r18508:f893337ab5c7 r23607:36c15679007d r16957:b73e503c5e41 r27354:7a607c98c943 r10840:7a608f4ad153 r10840:7a608f4ad153 r18508:f893337ab5c7 r10696:8dfe83e30d01 r18508:f893337ab5c7 r10696:8dfe83e30d01 r18508:f893337ab5c7 r27307:3787f9679f95 r23497:a0ab44ebd2fa r23497:a0ab44ebd2fa r23497:a0ab44ebd2fa r23497:a0ab44ebd2fa r18508:f893337ab5c7 r10696:8dfe83e30d01 r18508:f893337ab5c7 r18508:f893337ab5c7 r10696:8dfe83e30d01 r18508:f893337ab5c7 r18508:f893337ab5c7 r23497:a0ab44ebd2fa r18666:f05d7caba088 r10696:8dfe83e30d01 r18508:f893337ab5c7 r18508:f893337ab5c7 r18508:f893337ab5c7 r23607:36c15679007d r16514:bf011466da17 r27354:7a607c98c943 r16514:bf011466da17 r18508:f893337ab5c7 r27307:3787f9679f95 r23497:a0ab44ebd2fa r23497:a0ab44ebd2fa r23497:a0ab44ebd2fa r23497:a0ab44ebd2fa r10696:8dfe83e30d01 r10696:8dfe83e30d01 r10696:8dfe83e30d01 | /*
* This file is part of OpenTTD.
* OpenTTD 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, version 2.
* OpenTTD 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 OpenTTD. If not, see <http://www.gnu.org/licenses/>.
*/
/** @file ai_scanner.hpp declarations of the class for AI scanner */
#ifndef AI_SCANNER_HPP
#define AI_SCANNER_HPP
#include "../script/script_scanner.hpp"
class AIScannerInfo : public ScriptScanner {
public:
AIScannerInfo();
~AIScannerInfo();
void Initialize() override;
/**
* Select a random AI.
* @return A random AI from the pool.
*/
class AIInfo *SelectRandomAI() const;
/**
* Check if we have an AI by name and version available in our list.
* @param name The name of the AI.
* @param version The version of the AI, or -1 if you want the latest.
* @param force_exact_match Only match name+version, never latest.
* @return nullptr if no match found, otherwise the AI that matched.
*/
class AIInfo *FindInfo(const std::string &name, int version, bool force_exact_match);
/**
* Set the Dummy AI.
*/
void SetDummyAI(class AIInfo *info);
protected:
std::string GetScriptName(ScriptInfo *info) override;
const char *GetFileName() const override { return PATHSEP "info.nut"; }
Subdirectory GetDirectory() const override { return AI_DIR; }
const char *GetScannerName() const override { return "AIs"; }
void RegisterAPI(class Squirrel *engine) override;
private:
AIInfo *info_dummy; ///< The dummy AI.
};
class AIScannerLibrary : public ScriptScanner {
public:
void Initialize() override;
/**
* Find a library in the pool.
* @param library The library name to find.
* @param version The version the library should have.
* @return The library if found, nullptr otherwise.
*/
class AILibrary *FindLibrary(const std::string &library, int version);
protected:
std::string GetScriptName(ScriptInfo *info) override;
const char *GetFileName() const override { return PATHSEP "library.nut"; }
Subdirectory GetDirectory() const override { return AI_LIBRARY_DIR; }
const char *GetScannerName() const override { return "AI Libraries"; }
void RegisterAPI(class Squirrel *engine) override;
};
#endif /* AI_SCANNER_HPP */
|