本文整理汇总了PHP中onebone\economyapi\EconomyAPI::getInstance方法的典型用法代码示例。如果您正苦于以下问题:PHP EconomyAPI::getInstance方法的具体用法?PHP EconomyAPI::getInstance怎么用?PHP EconomyAPI::getInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类onebone\economyapi\EconomyAPI
的用法示例。
在下文中一共展示了EconomyAPI::getInstance方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: payTax
public function payTax()
{
if (($percent = $this->config->get("tax-as-percentage")) !== "") {
$players = $this->getServer()->getOnlinePlayers();
foreach ($players as $player) {
if ($player->hasPermission("economytax.tax.avoid")) {
continue;
}
$money = $this->api->myMoney($player);
$taking = $money * ($percent / 100);
$this->api->reduceMoney($player, min($money, $taking), true, "EconomyTax");
$player->sendMessage("Your " . EconomyAPI::getInstance()->getMonetaryUnit() . "{$taking} has taken by tax.");
}
} else {
$money = $this->config->get("tax-as-money");
$players = $this->getServer()->getOnlinePlayers();
foreach ($players as $player) {
if ($player->hasPermission("economytax.tax.avoid")) {
continue;
}
$this->api->reduceMoney($player, min($this->api->myMoney($player), $money), true, "EconomyTax");
$player->sendMessage("Your " . EconomyAPI::getInstance()->getMonetaryUnit() . "{$money} has taken by tax.");
}
}
}
示例2: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
$this->initMessage();
$this->db = (new Config($this->getDataFolder() . "GambleDB.yml", Config::YAML, ["allow-gamble" => true]))->getAll();
if ($this->getServer()->getPluginManager()->getPlugin("EconomyAPI") != null) {
$this->economyAPI = \onebone\economyapi\EconomyAPI::getInstance();
} else {
$this->getLogger()->error($this->get("there-are-no-economyapi"));
$this->getServer()->getPluginManager()->disablePlugin($this);
}
$this->registerCommand($this->get("commands-gamble"), $this->get("commands-gamble"), "economygamble.commands.gamble", $this->get("commands-gamble-usage"));
$this->getServer()->getPluginManager()->registerEvents($this, $this);
$this->packet["AddItemEntityPacket"] = new AddItemEntityPacket();
$this->packet["AddItemEntityPacket"]->yaw = 0;
$this->packet["AddItemEntityPacket"]->pitch = 0;
$this->packet["AddItemEntityPacket"]->roll = 0;
$this->packet["AddItemEntityPacket"]->item = Item::get(Item::GOLD_INGOT);
$this->packet["RemoveEntityPacket"] = new RemoveEntityPacket();
$this->packet["AddPlayerPacket"] = new AddPlayerPacket();
$this->packet["AddPlayerPacket"]->clientID = 0;
$this->packet["AddPlayerPacket"]->yaw = 0;
$this->packet["AddPlayerPacket"]->pitch = 0;
$this->packet["AddPlayerPacket"]->meta = 0;
$this->packet["AddPlayerPacket"]->metadata = [0 => ["type" => 0, "value" => 0], 1 => ["type" => 1, "value" => 0], 16 => ["type" => 0, "value" => 0], 17 => ["type" => 6, "value" => [0, 0, 0]]];
$this->packet["RemovePlayerPacket"] = new RemovePlayerPacket();
$this->packet["RemovePlayerPacket"]->clientID = 0;
$this->getServer()->getScheduler()->scheduleRepeatingTask(new CallbackTask([$this, "EconomyGamble"]), 20);
}
示例3: onEnable
public function onEnable()
{
$this->saveDefaultConfig();
$this->cfg = $this->getConfig();
$this->api = EconomyAPI::getInstance();
$this->getLogger()->info("BrawlPVP has been enable");
}
示例4: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
// 플러그인 폴더생성
$this->initMessage();
// 기본언어메시지 초기화
// YAML 형식의 DB생성 후 불러오기
$this->db = (new Config($this->getDataFolder() . "pluginDB.yml", Config::YAML, []))->getAll();
// 플러그인의 인스턴스 정의
if (self::$instance == null) {
self::$instance = $this;
}
// 플러그인의 명령어 등록
// $this->registerCommand ( "명령어이름", "등록실패시 보조 명령어이름", "퍼미션명", "명령어설명", "쓰는법" );
// 외부 플러그인의 API 이용
$this->simpleAreaAPI = new API_SimpleAreaListner($this);
// 심플에리어 API
// 이코노미 API 이용
if ($this->getServer()->getPluginManager()->getPlugin("EconomyAPI") != null) {
$this->economyAPI = \onebone\economyapi\EconomyAPI::getInstance();
} else {
$this->getLogger()->error($this->get("there-are-no-economyapi"));
$this->getServer()->getPluginManager()->disablePlugin($this);
}
// 서버이벤트를 받아오게끔 플러그인 리스너를 서버에 등록
$this->getServer()->getPluginManager()->registerEvents($this, $this);
}
示例5: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
// 플러그인 폴더생성
$this->initMessage();
// 기본언어메시지 초기화
// YAML 형식의 DB 생성 후 불러오기
$this->db = (new Config($this->getDataFolder() . "pluginDB.yml", Config::YAML, []))->getAll();
// 커스텀 패킷 이용
// 마스터모드시 커스텀패킷 없어도 사용가능하게끔
if ($this->getServer()->getPluginManager()->getPlugin("CustomPacket") === null) {
$this->getLogger()->critical("[CustomPacket Example] CustomPacket plugin was not found. This plugin will be disabled.");
$this->getServer()->getPluginManager()->disablePlugin($this);
return;
}
// 이코노미 API 이용
if ($this->getServer()->getPluginManager()->getPlugin("EconomyAPI") != null) {
$this->economyAPI = EconomyAPI::getInstance();
} else {
$this->getLogger()->error($this->get("there-are-no-economyapi"));
$this->getServer()->getPluginManager()->disablePlugin($this);
}
// 플러그인의 인스턴스 정의
if (self::$instance == null) {
self::$instance = $this;
}
// 플러그인의 명령어 등록
$this->registerCommand($this->get("commands-create"), "SwissBank.create", $this->get("commands-create-desc"), $this->get("commands-create-usage"));
$this->registerCommand($this->get("commands-use"), "SwissBank.use", $this->get("commands-use-desc"), $this->get("commands-use-usage"));
$this->getServer()->getPluginManager()->registerEvents($this, $this);
if (!isset($this->db["mode"])) {
$this->getLogger()->info(TextFormat::DARK_AQUA . $this->get("please-choose-mode"));
}
}
示例6: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
$this->initMessage();
$this->db = (new Config($this->getDataFolder() . "GambleDB.yml", Config::YAML, ["allow-gamble" => true]))->getAll();
if ($this->getServer()->getPluginManager()->getPlugin("EconomyAPI") != null) {
$this->economyAPI = \onebone\economyapi\EconomyAPI::getInstance();
} else {
$this->getLogger()->error($this->get("there-are-no-economyapi"));
$this->getServer()->getPluginManager()->disablePlugin($this);
}
$this->registerCommand($this->get("commands-gamble"), $this->get("commands-gamble"), "economygamble.commands.gamble", $this->get("commands-gamble-usage"));
$this->getServer()->getPluginManager()->registerEvents($this, $this);
$this->packet["AddItemEntityPacket"] = new AddItemEntityPacket();
$this->packet["AddItemEntityPacket"]->item = Item::get(Item::GOLD_INGOT);
$this->packet["RemoveEntityPacket"] = new RemoveEntityPacket();
$this->packet["AddPlayerPacket"] = new AddPlayerPacket();
$this->packet["AddPlayerPacket"]->clientID = 0;
$this->packet["AddPlayerPacket"]->yaw = 0;
$this->packet["AddPlayerPacket"]->pitch = 0;
$this->packet["AddPlayerPacket"]->meta = 0;
$this->packet["AddPlayerPacket"]->metadata = [Entity::DATA_FLAGS => [Entity::DATA_TYPE_BYTE, 1 << Entity::DATA_FLAG_INVISIBLE], Entity::DATA_AIR => [Entity::DATA_TYPE_SHORT, 300], Entity::DATA_SHOW_NAMETAG => [Entity::DATA_TYPE_BYTE, 1], Entity::DATA_NO_AI => [Entity::DATA_TYPE_BYTE, 1]];
$this->packet["RemovePlayerPacket"] = new RemovePlayerPacket();
$this->packet["RemovePlayerPacket"]->clientID = 0;
$this->getServer()->getScheduler()->scheduleRepeatingTask(new EconomyGambleTask($this), 20);
}
示例7: onCommand
public function onCommand(CommandSender $sender, Command $command, $label, array $args)
{
if (strtolower($command->getName()) === "buyworld") {
if (count($args) < 1 || count($args) > 4) {
return false;
}
if (EconomyAPI::getInstance()->myMoney($sender->getName()) < 10000) {
$sender->sendMessage(TextFormat::RED . "[HyperPlot] You don't have enought money. It cost \$10000");
return true;
}
$world = array_shift($args);
if (strlen($world) < 3) {
$sender->sendMessage(TextFormat::RED . "[HyperPlot] Small World name");
return true;
}
if ($this->getServer()->isLevelGenerated($world)) {
$sender->sendMessage(TextFormat::RED . "[HyperPlot] A world named " . $world . " already exists");
return true;
}
EconomyAPI::getInstance()->reduceMoney($sender->getName(), 10000);
$this->getServer()->broadcastMessage($sender->sendMessage(TextFormat::RED . "[HyperPlot] Creating level " . $sender->getName() . "-" . $world . "..."));
$generator = Generator::getGenerator("ownworld");
$this->getServer()->generateLevel($sender->getName() . "-" . $world, null, $generator, []);
$this->getServer()->loadLevel($sender->getName() . "-" . $world);
return true;
}
return false;
}
示例8: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
$this->initMessage();
$this->db = (new Config($this->getDataFolder() . "pluginDB.yml", Config::YAML, ["Format" => "%info%\n%online%\n%mymoney%"]))->getAll();
if ($this->getServer()->getPluginManager()->getPlugin("EconomyAPI") != null) {
$this->economyAPI = \onebone\economyapi\EconomyAPI::getInstance();
} else {
$this->getLogger()->error($this->get("there-are-no-economyapi"));
$this->getServer()->getPluginManager()->disablePlugin($this);
}
$this->getServer()->getPluginManager()->registerEvents($this, $this);
if (self::$instance == null) {
self::$instance = $this;
}
$this->specialLineQueue["all"] = [];
$this->packet["AddPlayerPacket"] = new AddPlayerPacket();
$this->packet["AddPlayerPacket"]->clientID = 0;
$this->packet["AddPlayerPacket"]->yaw = 0;
$this->packet["AddPlayerPacket"]->pitch = 0;
$this->packet["AddPlayerPacket"]->item = 0;
$this->packet["AddPlayerPacket"]->meta = 0;
$this->packet["AddPlayerPacket"]->slim = \false;
$this->packet["AddPlayerPacket"]->skin = \str_repeat("", 64 * 32 * 4);
$this->packet["AddPlayerPacket"]->metadata = [Entity::DATA_FLAGS => [Entity::DATA_TYPE_BYTE, 1 << Entity::DATA_FLAG_INVISIBLE], Entity::DATA_AIR => [Entity::DATA_TYPE_SHORT, 300], Entity::DATA_SHOW_NAMETAG => [Entity::DATA_TYPE_BYTE, 1], Entity::DATA_NO_AI => [Entity::DATA_TYPE_BYTE, 1]];
$this->packet["RemovePlayerPacket"] = new RemovePlayerPacket();
$this->packet["RemovePlayerPacket"]->clientID = 0;
$this->getServer()->getPluginManager()->registerEvents($this, $this);
$this->getServer()->getScheduler()->scheduleRepeatingTask(new EDGETask($this), 20);
}
示例9: getEconomyAPI
/**
* Get EconomyAPI instance
*
* @return \onebone\economyapi\EconomyAPI|null
*/
public static function getEconomyAPI()
{
if (self::$economyAPI === null and Server::getInstance()->getPluginManager()->getPlugin("EconomyAPI") !== null) {
self::$economyAPI = \onebone\economyapi\EconomyAPI::getInstance();
}
return self::$economyAPI;
}
示例10: __construct
public function __construct(Plugin $plugin)
{
$server = Server::getInstance();
if ($server->getPluginManager()->getPlugin("EconomyAPI") != null) {
$this->economyAPI = \onebone\economyapi\EconomyAPI::getInstance();
$server->getPluginManager()->registerEvents($this, $plugin);
}
}
示例11: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
$this->api = EconomyAPI::getInstance();
$this->config = new Config($this->getDataFolder() . "config.yml", Config::YAML, array("jackpot-winning" => 1000, "jackpot-money" => 5, "max-game" => 10));
$this->casino = array();
$this->getServer()->getPluginManager()->registerEvents($this, $this);
}
示例12: buy
public function buy(Player $buyer)
{
$rpg = ToAruPG::getInstance()->getRPGPlayerByName($buyer);
$skill = SkillManager::getSkill($this->skillId);
$rpg->acquireSkill($skill);
EconomyAPI::getInstance()->reduceMoney($buyer, $this->cost, true, "To Aru Shop");
$buyer->sendMessage(TextFormat::AQUA . ToAruPG::getTranslation("BOUGHT"));
}
示例13: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
$this->api = EconomyAPI::getInstance();
$this->listyml = new Config($this->getDataFolder() . "list.yml", Config::YAML);
$this->list = $this->listyml->getAll();
$this->getServer()->getPluginManager()->registerEvents($this, $this);
}
示例14: onEnable
public function onEnable()
{
@mkdir($this->getDataFolder());
$this->NydusCanal = new Config($this->getDataFolder() . "warpList.yml", Config::YAML);
$this->NydusCanal_List = $this->NydusCanal->getAll();
if ($this->checkEconomyAPI()) {
$this->economyAPI = \onebone\economyapi\EconomyAPI::getInstance();
}
$this->getServer()->getPluginManager()->registerEvents($this, $this);
}
示例15: __construct
public function __construct($file)
{
$this->db = new \mysqli($file["host"], $file["user"], $file["password"], $file["db"], $file["port"]);
if ($this->db->connect_error) {
EconomyAPI::getInstance()->getLogger()->critical("Could not connect to MySQL server: " . $this->db->connect_error);
return;
}
$this->db->query("CREATE TABLE IF NOT EXISTS user_money(\n\t\t\tusername VARCHAR(20) PRIMARY KEY,\n\t\t\tmoney FLOAT\n\t\t);");
EconomyAPI::getInstance()->getServer()->getScheduler()->scheduleRepeatingTask(new MySQLPingTask(EconomyAPI::getInstance(), $this->db), 600);
}