Skip to content

PySpigot助手模块

从前从前...

在PySpigot 0.8.0版本之前,pyspigot.py助手模块会自动复制到python-libs文件夹中。自从0.8.0版本开始,不再自动复制,因为模块被捆绑到JAR包中,并且可以直接访问(无需复制)。

如果您的python-libs文件夹中仍然有pyspigot.py助手模块,可以放心地删除它 :)

PySpigot包含一个助手模块pyspigot.py。该模块已捆绑到PySpigot的JAR文件中。此模块旨在使从脚本内部更轻松地访问PySpigot的管理器。下面附带了此模块的代码以供参考,以及一些用于理解的文档说明。

代码

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
"""
PySpigot管理器的便捷访问助手模块。
"""
from dev.magicmq.pyspigot.bukkit import PySpigot
from dev.magicmq.pyspigot.manager.script import ScriptManager
from dev.magicmq.pyspigot.manager.script import GlobalVariables
from dev.magicmq.pyspigot.manager.listener import ListenerManager
from dev.magicmq.pyspigot.manager.command import CommandManager
from dev.magicmq.pyspigot.manager.task import TaskManager
from dev.magicmq.pyspigot.manager.config import ConfigManager
from dev.magicmq.pyspigot.manager.database import DatabaseManager
from dev.magicmq.pyspigot.manager.redis import RedisManager


def script_manager():
    """
    获取用于加载、卸载和重新加载脚本的脚本管理器。
    """
    return ScriptManager.get()


def global_variables():
    """
    获取用于设置和获取全局变量的全局变量管理器。
    """
    return GlobalVariables.get()

```简体中文
def listener_manager():
    """
    获取用于注册和注销事件监听器的监听器管理器。
    """
    return ListenerManager.get()


def command_manager():
    """
    获取用于注册和注销命令的命令管理器。
    """
    return CommandManager.get()


def task_manager():
    """
    获取用于安排和取消任务(同步和异步)的任务管理器。
    """
    return TaskManager.get()


def config_manager():
    """
    获取用于写入和读取配置文件的配置管理器。
    """
    return ConfigManager.get()


def database_manager():
    """
    获取用于连接和操作数据库的数据库管理器。
    """
    return DatabaseManager.get()


def redis_manager():
    """
    获取用于连接和操作 Redis 服务器的 Redis 管理器。
    """
    return RedisManager.get()


def protocol_manager():
    """
    获取与 ProtocolLib 一起工作的协议管理器(注册/注销数据包监听器、发送数据包等)。

    注意:如果服务器没有安装 ProtocolLib,则此函数将返回 None。
    """
    if PySpigot.get().isProtocolLibAvailable():
        from dev.magicmq.pyspigot.bukkit.manager.protocol import ProtocolManager
        return ProtocolManager.get()
    else: return None

def placeholder_manager():
    """
    获取占位符管理器,用于注册/取消注册 PlaceholderAPI 的占位符。

    注意:如果服务器上没有安装 PlaceholderAPI,则此函数将返回 None。
    """
    if PySpigot.get().isPlaceholderApiAvailable():
        from dev.magicmq.pyspigot.bukkit.manager.placeholder import PlaceholderManager
        return PlaceholderManager.get()
    else: return None


# 为了方便访问而设定的变量

script = script_manager()
scripts = script_manager()
sm = script_manager()


global_vars = global_variables()
gv = global_variables()


listener = listener_manager()
listeners = listener_manager()
lm = listener_manager()
event = listener_manager()
events = listener_manager()
em = listener_manager()


command = command_manager()
commands = command_manager()
cm = command_manager()


scheduler = task_manager()
scm = task_manager()
tasks = task_manager()
tm = task_manager()


config = config_manager()
configs = config_manager()
com = config_manager()


database = database_manager()


redis = redis_manager()


protocol = protocol_manager()
protocol_lib = protocol_manager()
protocols = protocol_manager()
pm = protocol_manager()


placeholder = placeholder_manager()
placeholder_api = placeholder_manager()
placeholders = placeholder_manager()
plm = placeholder_manager()