up3
Build and deploy / Build (push) Has been cancelled
Build and deploy / Update Contributors (push) Has been cancelled
Build and deploy / Deploy (push) Has been cancelled
Build and deploy / Build (push) Has been cancelled
Build and deploy / Update Contributors (push) Has been cancelled
Build and deploy / Deploy (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
package world
|
||||
|
||||
import (
|
||||
"sync"
|
||||
"sync/atomic"
|
||||
|
||||
"github.com/df-mc/dragonfly/server/block/cube"
|
||||
)
|
||||
|
||||
// Settings holds the settings of a World. These are typically saved to a level.dat file. It is safe to pass the same
|
||||
// Settings to multiple worlds created using New, in which case the Settings are synchronised between the worlds.
|
||||
type Settings struct {
|
||||
sync.Mutex
|
||||
ref atomic.Int32
|
||||
|
||||
// Name is the display name of the World.
|
||||
Name string
|
||||
// Spawn is the spawn position of the World. New players that join the world will be spawned here.
|
||||
Spawn cube.Pos
|
||||
// Time is the current time of the World. It advances every tick if TimeCycle is set to true.
|
||||
Time int64
|
||||
// TimeCycle specifies if the time should advance every tick. If set to false, time won't change.
|
||||
TimeCycle bool
|
||||
// RainTime is the current rain time of the World. It advances every tick if WeatherCycle is set to true.
|
||||
RainTime int64
|
||||
// Raining is the current rain level of the World.
|
||||
Raining bool
|
||||
// ThunderTime is the current thunder time of the World. It advances every tick if WeatherCycle is set to true.
|
||||
ThunderTime int64
|
||||
// Thunder is the current thunder level of the World.
|
||||
Thundering bool
|
||||
// WeatherCycle specifies if weather should be enabled in this world. If set to false, weather will be disabled.
|
||||
WeatherCycle bool
|
||||
// RequiredSleepTicks is the number of ticks that players must sleep for in order for the time to change to day.
|
||||
RequiredSleepTicks int64
|
||||
// CurrentTick is the current tick of the world. This is similar to the Time, except that it has no visible effect
|
||||
// to the client. It can also not be changed through commands and will only ever go up.
|
||||
CurrentTick int64
|
||||
// DefaultGameMode is the GameMode assigned to players that join the World for the first time.
|
||||
DefaultGameMode GameMode
|
||||
// Difficulty is the difficulty of the World. Behaviour of hunger, regeneration and monsters differs based on the
|
||||
// difficulty of the world.
|
||||
Difficulty Difficulty
|
||||
// TickRange is the radius in chunks around a Viewer that has its blocks and entities ticked when the world is
|
||||
// ticked. If set to 0, blocks and entities will never be ticked.
|
||||
TickRange int32
|
||||
}
|
||||
|
||||
// defaultSettings returns the default Settings for a new World.
|
||||
func defaultSettings() *Settings {
|
||||
return &Settings{
|
||||
Name: "World",
|
||||
DefaultGameMode: GameModeSurvival,
|
||||
Difficulty: DifficultyNormal,
|
||||
TimeCycle: true,
|
||||
WeatherCycle: true,
|
||||
TickRange: 6,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user