Skip to content

使用方法

旋風之音 (GoneTone) edited this page Oct 16, 2016 · 10 revisions

電腦版手機版 Minecraft 伺服器都可使用

首先您要先下載此程式碼檔案,並把 mcserverstatus 資料夾上傳至您的網頁空間。(index.php 是範例檔,無須上傳)

在您的網頁定義變數

$host = 'meow.mcpe.tw'; //請修改成你的伺服器IP
$port = 19132; //請修改成你的伺服器端口

記得改成你自己的伺服器 IP 和端口!

接著使用 require 引入 ApiClient.phpMinecraftQuery.php

require 'mcserverstatus/libs/ApiClient.php';
require 'mcserverstatus/libs/MinecraftQuery.php';

判斷伺服器狀態,引入檔案

$client = new ApiClient($host, $port);
$server = $client->call();

if ($server === null) {
    require 'mcserverstatus/offline.phtml'; //伺服器離線時顯示
} else {
    require 'mcserverstatus/online.phtml'; //伺服器上線時顯示
}

offline.phtml 是伺服器離線時顯示,online.phtml 是伺服器上線時顯示,修改顯示格式都在這兩個檔案改

接著我們來介紹可使用之參數

  • Server MOTD $server['server']['server_motd'];
  • Host $server['server']['host'];
  • Server platform $server['server']['server_platform'];
  • Server software $server['server']['version']['software'];
  • Game version $server['server']['version']['version'];
  • Plugins count($server['plugins']);
  • Players online $server['server']['players_online'];
  • Players max $server['server']['players_max'];

這些參數您都可自由搭配使用

如何顯示玩家和插件列表

很簡單,這時我們要使用 foreach 建立迴圈

我們要顯示插件列表時程式碼如下

<?php foreach ($server['plugins'] as $plugin) : ?>
    <span>- <?php echo $plugin['name']; ?></span><br>
<?php endforeach; ?>

完成後會是這樣

顯示玩家清單程式碼如下

<?php foreach ($server['players'] as $player) : ?>
    <?php echo '<span>- ' . $player['name'] . '</span><br>'; ?>
<?php endforeach; ?>

完成後會是這樣

如果您相要讓玩家名稱前方顯示 Skin 頭像,把程式碼改成這樣

<?php foreach ($server['players'] as $player) : ?>
    <?php if ($server['server']['server_platform'] == 'MINECRAFT') : ?>
        <?php echo '<img src="http://cravatar.eu/helmavatar/' . $player['name'] . '/20.png"><span> ' . $player['name'] . '</span><br>'; ?>
    <?php else : ?>
        <?php echo '<img src="http://cravatar.eu/helmavatar/steve/20.png"><span> ' . $player['name'] . '</span><br>'; ?>
    <?php endif; ?>
<?php endforeach; ?>

您因該注意到 if ($server['server']['server_platform'] == 'MINECRAFT' : 這個判斷式了,因為手機版沒辦法抓取玩家 Skin,所以寫這判斷式,如果 $server['server']['server_platform'] 的值是 MINECRAFT,就抓取 Skin 頭像,否則就顯示 Steve。

完成後會是這樣 (此圖以手機版伺服器示範,電腦版伺服器會顯示玩家 Skin)

您也可以寫入顯示隱藏列表,程式碼是你在寫,你想怎麼改就怎麼改!

如果您還是不會寫,可以參考程式碼!

Clone this wiki locally