Documentation
¶
Index ¶
- func CheckPlayer(state *lua.State, idx int, gs *gamestate.GameState) (*player.Player, error)
- func FileExists(path string) bool
- func PushPlayer(state *lua.State, p *player.Player)
- type CommandManager
- func (cm *CommandManager) Execute(p *player.Player, cmdName string, args []string) (string, error)
- func (cm *CommandManager) Get(name string) *LuaCommand
- func (cm *CommandManager) List(p *player.Player) []*LuaCommand
- func (cm *CommandManager) LoadCommandFile(path string, api *GameAPI) error
- func (cm *CommandManager) LoadCommands(commandsDir string, api *GameAPI) error
- func (cm *CommandManager) Register(cmd *LuaCommand)
- func (cm *CommandManager) Reload(commandsDir string, api *GameAPI) error
- type CommandPermission
- type GameAPI
- type LuaCommand
- type ServerInterface
- type Timer
- type VM
- func (vm *VM) CallFunction(name string, args ...interface{}) error
- func (vm *VM) CallFunctionWithReturn(name string, numReturns int, args ...interface{}) ([]interface{}, error)
- func (vm *VM) CancelTimer(id int)
- func (vm *VM) Close()
- func (vm *VM) GetGlobalBool(name string) (bool, error)
- func (vm *VM) GetGlobalNumber(name string) (float64, error)
- func (vm *VM) GetGlobalString(name string) (string, error)
- func (vm *VM) GetGlobalTable(name string) error
- func (vm *VM) GetTableBool(key string) (bool, error)
- func (vm *VM) GetTableIntArray(key string) ([]int, error)
- func (vm *VM) GetTableNumber(key string) (float64, error)
- func (vm *VM) GetTableString(key string) (string, error)
- func (vm *VM) HasFunction(name string) bool
- func (vm *VM) LoadFile(path string) error
- func (vm *VM) LoadString(code string) error
- func (vm *VM) PopTable()
- func (vm *VM) RegisterFunction(name string, fn lua.Function)
- func (vm *VM) RegisterTimer(callback string, interval time.Duration, repeat bool, args ...interface{}) int
- func (vm *VM) State() *lua.State
- func (vm *VM) UpdateTimers() error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckPlayer ¶
func FileExists ¶
Types ¶
type CommandManager ¶
type CommandManager struct {
// contains filtered or unexported fields
}
func NewCommandManager ¶
func NewCommandManager(logger *slog.Logger) *CommandManager
func (*CommandManager) Get ¶
func (cm *CommandManager) Get(name string) *LuaCommand
func (*CommandManager) List ¶
func (cm *CommandManager) List(p *player.Player) []*LuaCommand
func (*CommandManager) LoadCommandFile ¶
func (cm *CommandManager) LoadCommandFile(path string, api *GameAPI) error
func (*CommandManager) LoadCommands ¶
func (cm *CommandManager) LoadCommands(commandsDir string, api *GameAPI) error
func (*CommandManager) Register ¶
func (cm *CommandManager) Register(cmd *LuaCommand)
type CommandPermission ¶
type CommandPermission int
const ( PermissionNone CommandPermission = iota PermissionTrusted PermissionGuard PermissionModerator PermissionAdmin PermissionManager )
type GameAPI ¶
type GameAPI struct {
// contains filtered or unexported fields
}
func NewGameAPI ¶
func (*GameAPI) RegisterFunctions ¶
func (*GameAPI) SetBanManager ¶
func (*GameAPI) SetCommandManager ¶
func (api *GameAPI) SetCommandManager(cm *CommandManager)
func (*GameAPI) SetGamemodeVM ¶
func (*GameAPI) SetServer ¶
func (api *GameAPI) SetServer(srv ServerInterface)
type LuaCommand ¶
type ServerInterface ¶
type ServerInterface interface {
KickPlayer(playerID uint8, reason string)
KillPlayer(victimID uint8, killerID uint8, killType protocol.KillType)
SendChatToAll(message string)
SendChatToPlayer(p *player.Player, message string)
SendChatWithType(message string, chatType protocol.ChatType)
StartVotekick(instigator *player.Player, victimID uint8, reason string) error
StartVotemap(instigator *player.Player) error
CastVote(p *player.Player, choice interface{}) error
CancelVote(p *player.Player) error
HasActiveVote() bool
GetActiveVote() vote.Vote
ReloadCommands() error
ReloadGamemode() error
GetConfigPassword(role string) string
GetCurrentMapName() string
GetServerName() string
GetUptime() time.Duration
RespawnPlayer(playerID uint8)
SetPlayerTeam(playerID uint8, team uint8)
RestockPlayer(playerID uint8)
BroadcastShortPlayerData(p *player.Player)
DisconnectPlayerWithReason(p *player.Player, reason uint32)
SendPlayerLeftPacket(playerID uint8)
SaveMap(filename string) (string, error)
BroadcastTerritoryCapture(playerID, entityID, winning, state uint8)
BroadcastProgressBar(entityID, capturingTeam uint8, rate int8, progress float32)
}
type VM ¶
type VM struct {
// contains filtered or unexported fields
}
func (*VM) CallFunction ¶
func (*VM) CallFunctionWithReturn ¶
func (*VM) CancelTimer ¶
func (*VM) GetGlobalTable ¶
func (*VM) HasFunction ¶
func (*VM) LoadString ¶
func (*VM) RegisterTimer ¶
func (*VM) UpdateTimers ¶
Click to show internal directories.
Click to hide internal directories.