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)
SendPlayerHP(playerID uint8, hp uint8)
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)
SendPlayerPositionPacketTo(playerID uint8, pos, ori protocol.Vector3f, toPlayerID uint8)
SendIntelPositionPacketOnly(objectID uint8, team uint8, position protocol.Vector3f)
BroadcastCreatePlayer(p *player.Player)
}
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.