Implemented Updater for PE

This commit is contained in:
Jonathan Williams 2015-06-29 19:43:35 -04:00
parent 2069524f15
commit 59f0053419
6 changed files with 342 additions and 136 deletions

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" />
</project>

View File

@ -25,34 +25,68 @@
</component> </component>
<component name="FileEditorManager"> <component name="FileEditorManager">
<leaf> <leaf>
<file leaf-file-name="Main.php" pinned="false" current-in-tab="false"> <file leaf-file-name="Main.php" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/Main.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/Main.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-17.0" vertical-offset="425" max-vertical-offset="1360"> <state vertical-scroll-proportion="0.77738094" vertical-offset="622" max-vertical-offset="1462">
<caret line="51" column="0" selection-start-line="51" selection-start-column="0" selection-end-line="51" selection-end-column="0" /> <caret line="75" column="0" selection-start-line="75" selection-start-column="0" selection-end-line="79" selection-end-column="5" />
<folding> <folding>
<element signature="e#35#70#0#PHP" expanded="true" /> <element signature="e#35#79#0#PHP" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="Updater.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/core/updater/Updater.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-25.76923" vertical-offset="112" max-vertical-offset="986">
<caret line="51" column="47" selection-start-line="51" selection-start-column="47" selection-end-line="51" selection-end-column="47" />
<folding>
<element signature="e#135#168#0#PHP" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="UpdateType.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/core/updater/UpdateType.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-17.653847" vertical-offset="0" max-vertical-offset="629">
<caret line="32" column="39" selection-start-line="32" selection-start-column="39" selection-end-line="32" selection-end-column="39" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="UpdateEvent.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/core/updater/UpdateEvent.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-3.2692308" vertical-offset="0" max-vertical-offset="476">
<caret line="10" column="27" selection-start-line="10" selection-start-column="27" selection-end-line="10" selection-end-column="27" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="UtilString.php" pinned="false" current-in-tab="false"> <file leaf-file-name="UtilString.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/util/UtilString.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/util/UtilString.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-1.3076923" vertical-offset="0" max-vertical-offset="357"> <state vertical-scroll-proportion="0.0" vertical-offset="34" max-vertical-offset="357">
<caret line="2" column="18" selection-start-line="2" selection-start-column="10" selection-end-line="2" selection-end-column="18" /> <caret line="2" column="18" selection-start-line="2" selection-start-column="10" selection-end-line="2" selection-end-column="18" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="plugin.yml" pinned="false" current-in-tab="false"> <file leaf-file-name="TickTask.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/plugin.yml"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/tasks/TickTask.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="51" max-vertical-offset="153"> <state vertical-scroll-proportion="-9.807693" vertical-offset="0" max-vertical-offset="476">
<caret line="3" column="10" selection-start-line="3" selection-start-column="10" selection-end-line="3" selection-end-column="10" /> <caret line="15" column="8" selection-start-line="15" selection-start-column="8" selection-end-line="15" selection-end-column="29" />
<folding /> <folding>
<element signature="e#41#78#0#PHP" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
@ -60,7 +94,7 @@
<file leaf-file-name="GameManager.php" pinned="false" current-in-tab="false"> <file leaf-file-name="GameManager.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/GameManager.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/GameManager.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="204"> <state vertical-scroll-proportion="-0.0" vertical-offset="0" max-vertical-offset="204">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
@ -70,58 +104,28 @@
<file leaf-file-name="Game.php" pinned="false" current-in-tab="false"> <file leaf-file-name="Game.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/Game.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/Game.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="204"> <state vertical-scroll-proportion="-3.9230769" vertical-offset="0" max-vertical-offset="204">
<caret line="6" column="3" selection-start-line="6" selection-start-column="3" selection-end-line="6" selection-end-column="3" /> <caret line="6" column="3" selection-start-line="6" selection-start-column="3" selection-end-line="6" selection-end-column="3" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="TickTask.php" pinned="false" current-in-tab="false"> <file leaf-file-name="StrangePacket.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/tasks/TickTask.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="476">
<caret line="6" column="23" selection-start-line="6" selection-start-column="23" selection-end-line="6" selection-end-column="23" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="StrangePacket.php" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.5862069" vertical-offset="0" max-vertical-offset="870"> <state vertical-scroll-proportion="-19.615385" vertical-offset="0" max-vertical-offset="850">
<caret line="30" column="9" selection-start-line="30" selection-start-column="9" selection-end-line="30" selection-end-column="9" /> <caret line="30" column="9" selection-start-line="30" selection-start-column="9" selection-end-line="30" selection-end-column="9" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="Task.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/scheduler/Task.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="1037">
<caret line="23" column="15" selection-start-line="23" selection-start-column="15" selection-end-line="23" selection-end-column="15" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="PluginTask.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/scheduler/PluginTask.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="357" max-vertical-offset="629">
<caret line="38" column="5" selection-start-line="36" selection-start-column="4" selection-end-line="38" selection-end-column="5" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="TickEvent.php" pinned="false" current-in-tab="false"> <file leaf-file-name="TickEvent.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/events/TickEvent.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/events/TickEvent.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="459"> <state vertical-scroll-proportion="-2.6153846" vertical-offset="0" max-vertical-offset="459">
<caret line="6" column="26" selection-start-line="6" selection-start-column="26" selection-end-line="6" selection-end-column="26" /> <caret line="4" column="0" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="27" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -148,7 +152,10 @@
<option value="$PROJECT_DIR$/src/mineplex/plugin/tasks/TickTask.php" /> <option value="$PROJECT_DIR$/src/mineplex/plugin/tasks/TickTask.php" />
<option value="$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php" /> <option value="$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php" />
<option value="$PROJECT_DIR$/src/mineplex/plugin/events/TickEvent.php" /> <option value="$PROJECT_DIR$/src/mineplex/plugin/events/TickEvent.php" />
<option value="$PROJECT_DIR$/src/mineplex/plugin/core/updater/UpdateEvent.php" />
<option value="$PROJECT_DIR$/src/mineplex/plugin/core/updater/UpdateType.php" />
<option value="$PROJECT_DIR$/src/mineplex/plugin/Main.php" /> <option value="$PROJECT_DIR$/src/mineplex/plugin/Main.php" />
<option value="$PROJECT_DIR$/src/mineplex/plugin/core/updater/Updater.php" />
</list> </list>
</option> </option>
</component> </component>
@ -162,7 +169,6 @@
</component> </component>
<component name="ProjectFrameBounds"> <component name="ProjectFrameBounds">
<option name="x" value="-8" /> <option name="x" value="-8" />
<option name="y" value="-8" />
<option name="width" value="1936" /> <option name="width" value="1936" />
<option name="height" value="1056" /> <option name="height" value="1056" />
</component> </component>
@ -359,6 +365,36 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT> </PATH_ELEMENT>
</PATH> </PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="Test" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="Mineplex" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="mineplex" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="plugin" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="core" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="updater" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
</subPane> </subPane>
</pane> </pane>
<pane id="Scope" /> <pane id="Scope" />
@ -388,6 +424,9 @@
<BehatRunner /> <BehatRunner />
<method /> <method />
</configuration> </configuration>
<configuration default="true" type="PhpUnitRemoteRunConfigurationType" factoryName="PHPUnit on Server">
<method />
</configuration>
<configuration default="true" type="js.build_tools.gulp" factoryName="Gulp.js"> <configuration default="true" type="js.build_tools.gulp" factoryName="Gulp.js">
<node-options /> <node-options />
<gulpfile /> <gulpfile />
@ -397,9 +436,6 @@
<envs /> <envs />
<method /> <method />
</configuration> </configuration>
<configuration default="true" type="PhpUnitRemoteRunConfigurationType" factoryName="PHPUnit on Server">
<method />
</configuration>
<list size="0" /> <list size="0" />
</component> </component>
<component name="ShelveChangesManager" show_recycled="false" /> <component name="ShelveChangesManager" show_recycled="false" />
@ -413,7 +449,7 @@
<servers /> <servers />
</component> </component>
<component name="ToolWindowManager"> <component name="ToolWindowManager">
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" /> <frame x="-8" y="0" width="1936" height="1056" extended-state="0" />
<editor active="true" /> <editor active="true" />
<layout> <layout>
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
@ -422,7 +458,9 @@
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Application Servers" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Application Servers" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.15991472" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" /> <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.15954119" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
@ -430,11 +468,9 @@
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32900432" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32900432" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" /> <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" /> <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
</layout> </layout>
</component> </component>
<component name="Vcs.Log.UiProperties"> <component name="Vcs.Log.UiProperties">
@ -460,10 +496,10 @@
<component name="editorHistoryManager"> <component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/Main.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/Main.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="1360"> <state vertical-scroll-proportion="0.0" vertical-offset="425" max-vertical-offset="1360">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="51" column="0" selection-start-line="51" selection-start-column="0" selection-end-line="51" selection-end-column="0" />
<folding> <folding>
<element signature="e#35#70#0#PHP" expanded="true" /> <element signature="e#35#79#0#PHP" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
@ -504,30 +540,16 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="476"> <state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="476">
<caret line="6" column="23" selection-start-line="6" selection-start-column="23" selection-end-line="6" selection-end-column="23" /> <caret line="6" column="23" selection-start-line="6" selection-start-column="23" selection-end-line="6" selection-end-column="23" />
<folding /> <folding>
<element signature="e#41#78#0#PHP" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="34" max-vertical-offset="850"> <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="850">
<caret line="2" column="18" selection-start-line="2" selection-start-column="18" selection-end-line="2" selection-end-column="18" /> <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/scheduler/Task.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="1037">
<caret line="23" column="15" selection-start-line="23" selection-start-column="15" selection-end-line="23" selection-end-column="15" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/scheduler/PluginTask.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="357" max-vertical-offset="629">
<caret line="38" column="5" selection-start-line="36" selection-start-column="4" selection-end-line="38" selection-end-column="5" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -540,59 +562,40 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/plugin/PluginBase.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/Main.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.39977604" vertical-offset="476" max-vertical-offset="4811"> <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="1360">
<caret line="70" column="0" selection-start-line="70" selection-start-column="0" selection-end-line="70" selection-end-column="0" /> <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding>
<element signature="e#35#79#0#PHP" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/tests/TravisTest.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/util/UtilString.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.28555432" vertical-offset="0" max-vertical-offset="893"> <state vertical-scroll-proportion="0.0" vertical-offset="34" max-vertical-offset="357">
<caret line="32" column="0" selection-start-line="32" selection-start-column="0" selection-end-line="32" selection-end-column="0" /> <caret line="2" column="18" selection-start-line="2" selection-start-column="10" selection-end-line="2" selection-end-column="18" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/network/protocol/SetTimePacket.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.3807391" vertical-offset="0" max-vertical-offset="893">
<caret line="37" column="0" selection-start-line="37" selection-start-column="0" selection-end-line="37" selection-end-column="0" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/event/player/PlayerMoveEvent.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-7.8461537" vertical-offset="0" max-vertical-offset="697">
<caret line="31" column="16" selection-start-line="31" selection-start-column="16" selection-end-line="31" selection-end-column="16" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/scheduler/PluginTask.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="357" max-vertical-offset="629">
<caret line="38" column="5" selection-start-line="36" selection-start-column="4" selection-end-line="38" selection-end-column="5" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/../../../../PocketMine-MP-master/src/pocketmine/scheduler/Task.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="1037">
<caret line="23" column="15" selection-start-line="23" selection-start-column="15" selection-end-line="23" selection-end-column="15" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/plugin.yml"> <entry file="file://$PROJECT_DIR$/plugin.yml">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="153"> <state vertical-scroll-proportion="0.0" vertical-offset="51" max-vertical-offset="153">
<caret line="3" column="10" selection-start-line="3" selection-start-column="10" selection-end-line="3" selection-end-column="10" /> <caret line="3" column="10" selection-start-line="3" selection-start-column="10" selection-end-line="3" selection-end-column="10" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/GameManager.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="204">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/Game.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/Game.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="204"> <state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="204">
@ -605,6 +608,56 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="476"> <state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="476">
<caret line="6" column="23" selection-start-line="6" selection-start-column="23" selection-end-line="6" selection-end-column="23" /> <caret line="6" column="23" selection-start-line="6" selection-start-column="23" selection-end-line="6" selection-end-column="23" />
<folding>
<element signature="e#41#78#0#PHP" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="34" max-vertical-offset="850">
<caret line="2" column="18" selection-start-line="2" selection-start-column="18" selection-end-line="2" selection-end-column="18" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/events/TickEvent.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="459">
<caret line="6" column="26" selection-start-line="6" selection-start-column="26" selection-end-line="6" selection-end-column="26" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/plugin.yml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="153">
<caret line="3" column="10" selection-start-line="3" selection-start-column="10" selection-end-line="3" selection-end-column="10" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/util/UtilString.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="34" max-vertical-offset="357">
<caret line="2" column="18" selection-start-line="2" selection-start-column="10" selection-end-line="2" selection-end-column="18" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-19.615385" vertical-offset="0" max-vertical-offset="850">
<caret line="30" column="9" selection-start-line="30" selection-start-column="9" selection-end-line="30" selection-end-column="9" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/games/Game.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-3.9230769" vertical-offset="0" max-vertical-offset="204">
<caret line="6" column="3" selection-start-line="6" selection-start-column="3" selection-end-line="6" selection-end-column="3" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -619,37 +672,57 @@
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/events/TickEvent.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/events/TickEvent.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0" vertical-offset="102" max-vertical-offset="459"> <state vertical-scroll-proportion="-2.6153846" vertical-offset="0" max-vertical-offset="459">
<caret line="6" column="26" selection-start-line="6" selection-start-column="26" selection-end-line="6" selection-end-column="26" /> <caret line="4" column="0" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="27" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/core/updater/UpdateEvent.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-3.2692308" vertical-offset="0" max-vertical-offset="476">
<caret line="10" column="27" selection-start-line="10" selection-start-column="27" selection-end-line="10" selection-end-column="27" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/tasks/TickTask.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-9.807693" vertical-offset="0" max-vertical-offset="476">
<caret line="15" column="8" selection-start-line="15" selection-start-column="8" selection-end-line="15" selection-end-column="29" />
<folding>
<element signature="e#41#78#0#PHP" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/core/updater/UpdateType.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-17.653847" vertical-offset="0" max-vertical-offset="629">
<caret line="32" column="39" selection-start-line="32" selection-start-column="39" selection-end-line="32" selection-end-column="39" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/core/updater/Updater.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-25.76923" vertical-offset="112" max-vertical-offset="986">
<caret line="51" column="47" selection-start-line="51" selection-start-column="47" selection-end-line="51" selection-end-column="47" />
<folding>
<element signature="e#135#168#0#PHP" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/Main.php"> <entry file="file://$PROJECT_DIR$/src/mineplex/plugin/Main.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-17.0" vertical-offset="425" max-vertical-offset="1360"> <state vertical-scroll-proportion="0.77738094" vertical-offset="622" max-vertical-offset="1462">
<caret line="51" column="0" selection-start-line="51" selection-start-column="0" selection-end-line="51" selection-end-column="0" /> <caret line="75" column="0" selection-start-line="75" selection-start-column="0" selection-end-line="79" selection-end-column="5" />
<folding> <folding>
<element signature="e#35#70#0#PHP" expanded="true" /> <element signature="e#35#79#0#PHP" expanded="true" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/util/UtilString.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-1.3076923" vertical-offset="0" max-vertical-offset="357">
<caret line="2" column="18" selection-start-line="2" selection-start-column="10" selection-end-line="2" selection-end-column="18" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/mineplex/plugin/packets/StrangePacket.php">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.5862069" vertical-offset="0" max-vertical-offset="870">
<caret line="30" column="9" selection-start-line="30" selection-start-column="9" selection-end-line="30" selection-end-column="9" />
<folding />
</state>
</provider>
</entry>
</component> </component>
</project> </project>

View File

@ -2,8 +2,12 @@
namespace mineplex\plugin; namespace mineplex\plugin;
use mineplex\plugin\core\updater\UpdateType;
use mineplex\plugin\tasks\TickTask; use mineplex\plugin\tasks\TickTask;
use mineplex\plugin\events\TickEvent; use mineplex\plugin\events\TickEvent;
use mineplex\plugin\core\updater\Updater;
use mineplex\plugin\core\updater\UpdateEvent;
use mineplex\plugin\core\updater\UpdateType as UpdaterType;
use mineplex\plugin\util\UtilString; use mineplex\plugin\util\UtilString;
use mineplex\plugin\packets\StrangePacket; use mineplex\plugin\packets\StrangePacket;
@ -19,6 +23,7 @@ class Main extends PluginBase implements Listener
$this->getServer()->getScheduler()->scheduleRepeatingTask(new TickTask($this), 1); $this->getServer()->getScheduler()->scheduleRepeatingTask(new TickTask($this), 1);
$this->getServer()->getPluginManager()->registerEvents($this, $this); $this->getServer()->getPluginManager()->registerEvents($this, $this);
new Updater($this);
} }
public function onDisable() public function onDisable()
@ -68,8 +73,9 @@ class Main extends PluginBase implements Listener
} }
} }
public function onTick(TickEvent $event) public function onTick(UpdateEvent $event)
{ {
if ($event->getTime() == UpdateType::TICK)
$this->getLogger()->info("tick");
} }
} }

View File

@ -0,0 +1,28 @@
<?php
/**
* Created by PhpStorm.
* User: jwilliams
* Date: 6/29/2015
* Time: 7:12 PM
*/
namespace mineplex\plugin\core\updater;
use pocketmine\event\Event;
class UpdateEvent extends Event
{
public static $handlerList = null;
public $time;
public function __construct($time)
{
$this->time = $time;
}
public function getTime()
{
return $this->time;
}
}

View File

@ -0,0 +1,37 @@
<?php
/**
* Created by PhpStorm.
* User: jwilliams
* Date: 6/29/2015
* Time: 6:52 PM
*/
namespace mineplex\plugin\core\updater;
class UpdateType
{
const MIN_64 = 3840000;
const MIN_32 = 1920000;
const MIN_16 = 960000;
const MIN_08 = 480000;
const MIN_04 = 240000;
const MIN_02 = 120000;
const MIN_01 = 60000;
const SLOWEST = 32000;
const SLOWER = 16000;
const SLOW = 4000;
const TWOSEC = 2000;
const SEC = 1000;
const FAST = 500;
const FASTER = 250;
const FASTEST = 125;
const TICK = 49;
public $time;
public function __construct($time=0)
{
$this->time = $time;
}
}

View File

@ -0,0 +1,58 @@
<?php
/**
* Created by PhpStorm.
* User: jwilliams
* Date: 6/29/2015
* Time: 6:45 PM
*/
namespace mineplex\plugin\core\updater;
use pocketmine\plugin\PluginBase;
use pocketmine\scheduler\PluginTask;
class Updater extends PluginTask
{
private $plugin;
private $last;
private $updateTypes;
public function __construct(PluginBase $host)
{
$this->plugin = $host;
$this->owner = $host;
$this->plugin->getServer()->getScheduler()->scheduleRepeatingTask($this, 1);
$this->updateTypes = array(
new UpdateType(UpdateType::TICK)
, new UpdateType(UpdateType::FASTEST)
, new UpdateType(UpdateType::FASTER)
, new UpdateType(UpdateType::FAST)
, new UpdateType(UpdateType::SEC)
, new UpdateType(UpdateType::TWOSEC)
, new UpdateType(UpdateType::SLOW)
, new UpdateType(UpdateType::SLOWER)
, new UpdateType(UpdateType::SLOWEST)
, new UpdateType(UpdateType::MIN_01)
, new UpdateType(UpdateType::MIN_02)
, new UpdateType(UpdateType::MIN_04)
, new UpdateType(UpdateType::MIN_08)
, new UpdateType(UpdateType::MIN_16)
, new UpdateType(UpdateType::MIN_32)
, new UpdateType(UpdateType::MIN_64));
}
public function onRun($currentTick)
{
$timeSpent = round(microtime(true) * 1000) - $this->last;
$this->last = round(microtime(true) * 1000);
foreach ($this->updateTypes as &$updateType)
{
if ($timeSpent >= $updateType->time)
{
$this->plugin->getServer()->getPluginManager()->callEvent(new UpdateEvent($updateType->time));
}
}
}
}