updated manialink code for FML 1.1

This commit is contained in:
Steffen Schröder
2014-04-27 16:22:12 +02:00
parent 332f8d76fb
commit 483d673e5f
26 changed files with 222 additions and 137 deletions

View File

@ -1,4 +1,7 @@
<?php
namespace MCTeam;
use ManiaControl\Callbacks\CallbackListener;
use ManiaControl\Callbacks\CallbackManager;
use ManiaControl\Files\FileUtil;

View File

@ -12,7 +12,6 @@ use FML\Controls\Quads\Quad_Icons128x32_1;
use FML\Controls\Quads\Quad_Icons64x64_1;
use FML\Controls\Quads\Quad_UIConstruction_Buttons;
use FML\ManiaLink;
use FML\Script\Script;
use ManiaControl\Callbacks\CallbackListener;
use ManiaControl\Callbacks\CallbackManager;
use ManiaControl\Callbacks\TimerListener;
@ -668,7 +667,6 @@ class CustomVotesPlugin implements CommandListener, CallbackListener, ManialinkP
$itemSize = $width;
$maniaLink = new ManiaLink(self::MLID_ICON);
$script = $maniaLink->getScript();
//Custom Vote Menu Iconsframe
$frame = new Frame();
@ -716,7 +714,7 @@ class CustomVotesPlugin implements CommandListener, CallbackListener, ManialinkP
$backgroundQuad->setStyles($quadStyle, $quadSubstyle);
$backgroundQuad->setSize($menuEntries * $itemSize * 1.15 + 2, $itemSize * $itemMarginFactorY);
$script->addToggle($itemQuad, $popoutFrame);
$itemQuad->addToggleFeature($popoutFrame);
// Add items
$x = -1;
@ -734,7 +732,7 @@ class CustomVotesPlugin implements CommandListener, CallbackListener, ManialinkP
if ($menuItem[1]) {
$description = '$s' . $menuItem[1];
$script->addTooltip($menuQuad, $descriptionLabel, array(Script::OPTION_TOOLTIP_TEXT => $description));
$menuQuad->addTooltipLabelFeature($descriptionLabel, $description);
}
}
}

View File

@ -7,6 +7,7 @@ use FML\Controls\Label;
use FML\Controls\Quad;
use FML\Controls\Quads\Quad_BgsPlayerCard;
use FML\ManiaLink;
use FML\Script\Features\Paging;
use ManiaControl\Callbacks\CallbackListener;
use ManiaControl\Callbacks\CallbackManager;
use ManiaControl\Callbacks\TimerListener;
@ -502,6 +503,8 @@ class Dedimania implements CallbackListener, CommandListener, TimerListener, Plu
//create manialink
$maniaLink = new ManiaLink(ManialinkManager::MAIN_MLID);
$script = $maniaLink->getScript();
$paging = new Paging();
$script->addFeature($paging);
// Main frame
$frame = $this->maniaControl->manialinkManager->styleManager->getDefaultListFrame($script, $pagesId);
@ -534,7 +537,7 @@ class Dedimania implements CallbackListener, CommandListener, TimerListener, Plu
}
array_push($pageFrames, $pageFrame);
$y = $height / 2 - 10;
$script->addPage($pageFrame, count($pageFrames), $pagesId);
$paging->addPage($pageFrame);
}
$recordFrame = new Frame();

View File

@ -7,7 +7,6 @@ use FML\Controls\Labels\Label_Text;
use FML\Controls\Quad;
use FML\Controls\Quads\Quad_Icons128x128_1;
use FML\ManiaLink;
use FML\Script\Script;
use ManiaControl\Admin\AuthenticationManager;
use ManiaControl\Bills\BillManager;
use ManiaControl\Callbacks\CallbackListener;
@ -209,7 +208,6 @@ class DonationPlugin implements CallbackListener, CommandListener, Plugin {
$itemSize = $width;
$maniaLink = new ManiaLink(self::MLID_DONATE_WIDGET);
$script = $maniaLink->getScript();
// Donate Menu Icon Frame
$frame = new Frame();
@ -247,8 +245,7 @@ class DonationPlugin implements CallbackListener, CommandListener, Plugin {
$quad->setSize(strlen($values) * 2 + count($valueArray) * 1, $itemSize * $itemMarginFactorY);
$popoutFrame->add($quad);
$script->addToggle($itemQuad, $popoutFrame);
$itemQuad->addToggleFeature($popoutFrame);
// Description Label
$descriptionFrame = new Frame();
@ -275,7 +272,8 @@ class DonationPlugin implements CallbackListener, CommandListener, Plugin {
$label->setTextSize(1.2);
$label->setAction(self::ACTION_DONATE_VALUE . "." . $value);
$label->setStyle(Label_Text::STYLE_TextCardSmall);
$script->addTooltip($label, $descriptionLabel, array(Script::OPTION_TOOLTIP_TEXT => "Donate " . $value . " Planets"));
$description = "Donate {$value} Planets";
$label->addTooltipLabelFeature($descriptionLabel, $description);
$x -= strlen($value) * 2 + 1.7;
}

View File

@ -1,4 +1,7 @@
<?php
namespace steeffeen;
use ManiaControl\ManiaControl;
use ManiaControl\Callbacks\CallbackListener;
use ManiaControl\Callbacks\CallbackManager;

View File

@ -1,4 +1,7 @@
<?php
namespace MCTeam;
use FML\Controls\Frame;
use FML\Controls\Gauge;
use FML\Controls\Label;
@ -209,7 +212,9 @@ class KarmaPlugin implements CallbackListener, TimerListener, Plugin {
$this->buildManialink();
// Update karma gauge & label
/** @var Gauge $karmaGauge */
$karmaGauge = $this->manialink->karmaGauge;
/** @var Label $karmaLabel */
$karmaLabel = $this->manialink->karmaLabel;
if (is_numeric($karma) && $voteCount > 0) {
$karma = floatval($karma);
@ -228,10 +233,8 @@ class KarmaPlugin implements CallbackListener, TimerListener, Plugin {
// Get player vote
// TODO: show the player his own vote in some way
//$vote = $this->getPlayerVote($player, $map);
// Adjust manialink for player's vote
$votesFrame = $this->manialink->votesFrame;
$votesFrame->removeChildren();
//$votesFrame = $this->manialink->votesFrame;
//$votesFrame->removeChildren();
// Send manialink
$this->maniaControl->manialinkManager->sendManialink($this->manialink, $login);

View File

@ -1,10 +1,14 @@
<?php
namespace MCTeam;
use FML\Controls\Control;
use FML\Controls\Frame;
use FML\Controls\Label;
use FML\Controls\Quad;
use FML\Controls\Quads\Quad_BgsPlayerCard;
use FML\ManiaLink;
use FML\Script\Features\Paging;
use ManiaControl\Admin\AuthenticationManager;
use ManiaControl\Callbacks\CallbackListener;
use ManiaControl\Callbacks\CallbackManager;
@ -396,6 +400,8 @@ class LocalRecordsPlugin implements CallbackListener, CommandListener, TimerList
//create manialink
$maniaLink = new ManiaLink(ManialinkManager::MAIN_MLID);
$script = $maniaLink->getScript();
$paging = new Paging();
$script->addFeature($paging);
// Main frame
$frame = $this->maniaControl->manialinkManager->styleManager->getDefaultListFrame($script, $pagesId);
@ -428,7 +434,8 @@ class LocalRecordsPlugin implements CallbackListener, CommandListener, TimerList
}
array_push($pageFrames, $pageFrame);
$y = $height / 2 - 10;
$script->addPage($pageFrame, count($pageFrames), $pagesId);
$paging->addPage($pageFrame);
}
$recordFrame = new Frame();

View File

@ -1,4 +1,7 @@
<?php
namespace steeffeen;
use ManiaControl\ManiaControl;
use ManiaControl\Admin\AuthenticationManager;
use ManiaControl\Callbacks\CallbackListener;

View File

@ -210,7 +210,7 @@ class ServerRankingPlugin implements Plugin, CallbackListener, CommandListener {
break;
case self::RANKING_TYPE_RECORDS: //TODO verify workable status
if (!$this->maniaControl->pluginManager->isPluginActive('LocalRecordsPlugin')) {
if (!$this->maniaControl->pluginManager->isPluginActive('\MCTeam\LocalRecordsPlugin')) {
return;
}
@ -218,7 +218,7 @@ class ServerRankingPlugin implements Plugin, CallbackListener, CommandListener {
$maxRecords = $this->maniaControl->settingManager->getSetting($this, self::SETTING_MAX_STORED_RECORDS);
$query = 'SELECT playerIndex, COUNT(*) AS Cnt
FROM ' . LocalRecordsPlugin::TABLE_RECORDS . '
FROM ' . \MCTeam\LocalRecordsPlugin::TABLE_RECORDS . '
GROUP BY PlayerIndex
HAVING Cnt >=' . $requiredRecords;
@ -229,7 +229,7 @@ class ServerRankingPlugin implements Plugin, CallbackListener, CommandListener {
}
$result->free_result();
/** @var LocalRecordsPlugin $localRecordsPlugin */
/** @var \MCTeam\LocalRecordsPlugin $localRecordsPlugin */
$localRecordsPlugin = $this->maniaControl->pluginManager->getPlugin('LocalRecordsPlugin');
$maps = $this->maniaControl->mapManager->getMaps();
foreach($maps as $map) {

View File

@ -293,44 +293,48 @@ class TeamSpeakPlugin implements CallbackListener, CommandListener, ManialinkPag
if ($channel['channel_maxclients'] == 0 || strpos($channel['channel_name'], 'spacer') > 0) {
continue;
}
$channels[$i] = new Label_Text();
$frame->add($channels[$i]);
$channelLabel = new Label_Text();
$frame->add($channelLabel);
$y = 17.5 + ($i * 2.5);
$channels[$i]->setY($height / 2 - $y);
$channelLabel->setY($height / 2 - $y);
$x = $startx;
if ($channel['pid'] != 0) {
$x = $startx + 5;
}
$channels[$i]->setX($x);
$channels[$i]->setStyle($channels[$i]::STYLE_TextCardMedium);
$channels[$i]->setHAlign('left');
$channels[$i]->setTextSize(1);
$channels[$i]->setScale(0.9);
$channelLabel->setX($x);
$channelLabel->setStyle($channels[$i]::STYLE_TextCardMedium);
$channelLabel->setHAlign('left');
$channelLabel->setTextSize(1);
$channelLabel->setScale(0.9);
if ($channel['channel_flag_default'] == 1) {
$channel['total_clients'] = ($channel['total_clients'] - 1);
} // remove query client
$channels[$i]->setText('$o' . $channel['channel_name'] . '$o (' . $channel['total_clients'] . ')');
$channels[$i]->setTextColor('fff');
$channelLabel->setText('$o' . $channel['channel_name'] . '$o (' . $channel['total_clients'] . ')');
$channelLabel->setTextColor('fff');
$channels[$i] = $channelLabel;
$i++;
foreach($this->serverData['users'] as $user) {
if ($user['cid'] == $channel['cid']) {
$users[$userid] = new Label_Text();
$frame->add($users[$userid]);
$userLabel = new Label_Text();
$frame->add($userLabel);
$y = 17.5 + ($i * 2.5);
$users[$userid]->setY($height / 2 - $y);
$userLabel->setY($height / 2 - $y);
if ($channel['pid'] != 0) {
$x = $startx + 7;
} else {
$x = $startx + 2;
}
$users[$userid]->setX($x);
$users[$userid]->setStyle($users[$userid]::STYLE_TextCardMedium);
$users[$userid]->setHAlign('left');
$users[$userid]->setTextSize(1);
$users[$userid]->setScale(0.9);
$users[$userid]->setText($user['client_nickname']);
$users[$userid]->setTextColor('fff');
$userLabel->setX($x);
$userLabel->setStyle($userLabel::STYLE_TextCardMedium);
$userLabel->setHAlign('left');
$userLabel->setTextSize(1);
$userLabel->setScale(0.9);
$userLabel->setText($user['client_nickname']);
$userLabel->setTextColor('fff');
$users[$userid] = $userLabel;
$userid++;
$i++;

View File

@ -1,4 +1,7 @@
<?php
namespace MCTeam;
use FML\Controls\Control;
use FML\Controls\Frame;
use FML\Controls\Labels\Label_Text;
@ -190,7 +193,7 @@ class WidgetPlugin implements CallbackListener, TimerListener, Plugin {
$frame->add($backgroundQuad);
$backgroundQuad->setSize($width, $height);
$backgroundQuad->setStyles($quadStyle, $quadSubstyle);
$script->addMapInfoButton($backgroundQuad);
$backgroundQuad->addMapInfoFeature();
$map = $this->maniaControl->mapManager->getCurrentMap();
@ -247,7 +250,6 @@ class WidgetPlugin implements CallbackListener, TimerListener, Plugin {
$quadSubstyle = $this->maniaControl->manialinkManager->styleManager->getDefaultQuadSubstyle();
$maniaLink = new ManiaLink(self::MLID_CLOCKWIDGET);
$script = $maniaLink->getScript();
// mainframe
$frame = new Frame();
@ -269,7 +271,7 @@ class WidgetPlugin implements CallbackListener, TimerListener, Plugin {
$label->setZ(0.2);
$label->setTextSize(1);
$label->setTextColor("FFF");
$script->addTimeLabel($label, true);
$label->addClockFeature(true);
// Send manialink
$this->maniaControl->manialinkManager->sendManialink($maniaLink, $login);