Configuration
🗒️ All values are properly described in config file of the script. Configuration file is located in rcore_xmas/config.lua
!
Debug
If you have any issue with script and you don't know how to solve it, set Debug = true
in configuration file to see additional informations printed to client console (F8) and server console. Screenshots will help our support to solve faster and better your problem in ticket.
Features
There is category for each feature of the script - Snowballs
, PresentHunt
, Trees
, Gifts
and Snowman
. Each category and also some of their subcategories has property Enabled
that allows you to enable/disable feature.
File preview
Config = {
Debug = false, -- [true/false] - Enables debug mode, which will print additional information to the console.
Framework = Framework.ESX, -- [ESX - es_extended, QBCore - qb-core, Standalone - standalone]
Inventory = Inventory.OX, -- [OX - ox_inventory, QB - qb-inventory, QS - qs-inventory, MF - mf-inventory]
Target = Target.OX, -- [NONE - none (pressing E), OX - ox_target, QB - qb-target, Q - qtarget]
Database = Database.MYSQL_ASYNC, -- [OX - ox_mysql, MYSQL_ASYNC - mysql-async, GHMATTI - ghmattimysql]
XmasWeather = true, -- [true/false] - Enables Xmas weather.
EnableVehicleTrailsEverywhere = true, -- [true/false] - Enables vehicle trails everywhere.
EnablePedFootstepsEverywhere = true, -- [true/false] - Enables ped footsteps everywhere.
WaterFreezes = 0.0, -- [float] - The strength of the frozen water effect. 0.0 = no frozen water, 3.0 = completely frozen water.
SnowIntensity = 1.0, -- [float] - The intensity of the snow effect. 0.0 = no snow, 1.0 = heavy snow.
CancelProgressBar = {
Key = 194,
Label = 'INPUT_FRONTEND_RRIGHT',
Text = 'Cancel',
},
Snowballs = { -- [table] - Snowballs
Pickup = {
Enabled = true, -- [true/false] - Enables snowball pickup.
Bind = {
Description = 'Pickup snowball',
Controls = 'keyboard',
Key = 'k',
},
Animation = {
Dict = 'anim@mp_snowball', -- [string] - Animation dictionary.
Name = 'pickup_snowball', -- [string] - Animation name.
},
Receive = {
Item = 'WEAPON_SNOWBALL',
-- Weapon = `WEAPON_SNOWBALL`,
Amount = 2,
},
Notifications = {
Interior = 'You can not pick up snowballs in an interior.',
Cooldown = 'You are on cooldown. Wait before you can pick up another snowball!',
NotFree = 'You can not pick up snowballs while doing something else!',
}
}
},
PresentHunt = { -- [table] - Present hunt
Enabled = true, -- [true/false] - Enables present hunt.
Model = `bzzz_xmas23_convert_tree_gift`, -- [hash] - Model of the present.
DeleteAfterCollect = true, -- [true/false] - Delete present after collecting.
Collect = {
Radius = 2.0, -- [float] - Radius of the collection area (Work only with Target.NONE)
HelpText = { -- Works only with Target.NONE
Enabled = true, -- [true/false] - Enables help text.
Text = '~INPUT_CONTEXT~ Collect present', -- [string] - Help text.
},
Target = {
label = 'Collect present',
distance = 1.5,
icon = 'fa-solid fa-gift' -- https://fontawesome.com/v5.15/icons?d=gallery&p=2&m=free
},
Animation = {
Dict = 'anim@mp_snowball', -- [string] - Animation dictionary.
Name = 'pickup_snowball', -- [string] - Animation name.
},
},
Rewards = { -- [table] - Loot table for rewards
{
item = 'cash', -- [string] - Item name.
amount = { min = 100, max = 200 }, -- [int/table] - Amount of the item. If table is used, it will generate a random number between min and max.
chance = 900, -- [int] - Chance of getting the item.
},
{
item = 'pistol',
amount = 1,
chance = 10,
},
{
item = 'meth',
amount = { min = 1, max = 3 },
chance = 20,
},
{
item = 'weed',
amount = { min = 3, max = 8 },
chance = 10,
}
},
Notifications = { -- [table] - Notifications
Error = 'An error occurred while collecting the present!',
InventoryError = 'An error occurred while adding the reward to your inventory!',
RewardNotFound = 'Reward not found!',
RewardGiven = 'You got %sx %s!',
},
},
Trees = { -- [table] - Christmas trees
Persist = { -- [table] - Persistent trees
Enabled = true, -- [true/false] - Enables if the trees should be persistent and be available after server restart AND is allowed to open GIFTS STASH.
PerPlayerLimit = 2, -- [int/false] - How many trees can a player have at the same time (false = unlimited)
},
Build = { -- [table] - Tree building
Enabled = true, -- [true/false] - Enables tree building / placing
InteriorOnly = true, -- [true/false] - Enables tree building only in interiors
Models = { -- [table] - Tree models
Undecored = `bzzz_xmas23_convert_tree_a`, -- [hash] - Undecored tree model
Decored = `bzzz_xmas23_convert_tree_b` -- [hash] - Decored tree model
},
Command = 'tree', -- [string] - Command to start building
Item = 'xmas_tree', -- [string/nil] - Item to start building
},
Stash = {
Title = 'Tree Gifts (%s)', -- [string] - Title of the stash (%s is used for the tree ID)
Slots = 10, -- [int] - Slots of the stash
MaxWeight = 1000.0, -- [float] - Max weight of the stash
OxInventoryHook = {
OnlyGifts = true, -- [true/false] - Enables only gift items in the stash
GiftsOnGround = {
Enabled = true, -- [true/false] - Enables gifts on the ground if something is in the stash
Model = `bzzz_xmas23_convert_tree_gifts`, -- [hash] - Model of the gift
},
}
},
Decorate = {
ProgressTime = 5000, -- [int] - Time of the progress bar
ProgressText = 'Decorating tree...', -- [string] - Text of the progress bar
Animation = {
Dict = 'mp_car_bomb',
Name = 'car_bomb_mechanic'
},
Required = {
{ item = 'xmas_star', amount = 1 }, -- [table] - Required items to decorate the tree
{ item = 'xmas_decor', amount = 3 },
}
},
Control = {
Radius = 2.0,
HelpText = { -- Works only with Target.NONE
Enabled = true, -- [true/false] - Enables help text.
},
Decorate = {
Text = '~INPUT_CONTEXT~ Decorate tree', -- [string] - Help text.
Target = {
label = 'Decorate tree',
icon = 'fa-solid fa-paint-roller', -- https://fontawesome.com/v5.15/icons?d=gallery&p=2&m=free
},
},
GiftsStash = {
Text = '~INPUT_CONTEXT~ Open gifts stash',
Target = {
label = 'Open gifts stash',
icon = 'fa-solid fa-gifts',
},
},
Delete = {
Text = '~INPUT_CELLPHONE_OPTION~ Delete tree',
Target = {
label = 'Delete tree',
icon = 'fa-solid fa-trash-alt',
},
},
},
Notifications = {
Error = 'An error occurred while building the tree!',
InventoryError = 'An error occurred while manipulating with your inventory!',
PersistLimit = 'You have too many trees built! Destroy one of them first!',
TreeBuilt = 'You built the tree!',
StashOnlyGifts = 'You can only put gifts in the stash!',
NotFree = 'You can not do any other activities / sit in vehicle during building tree!',
Interior = 'You can not build a tree in an interior!',
AlreadyBuilding = 'You already building a tree!',
Cancelled = 'You cancelled building the tree!',
Failed = 'You can not build here!',
TreeDestroyed = 'You destroyed the tree!',
TreeDecorated = 'You decorated the tree!',
EnoughItems = 'You do not have enough items to decorate the tree!',
DecorateFailed = 'You cancelled decoration of the tree!',
}
},
Gifts = {
Enabled = true, -- [true/false] - Enables gifts packaging
Item = 'xmas_gift', -- [string] - Item to start packaging
PackedItem = 'xmas_packed_gift', -- [string] - Item to receive after packaging
PackedItemDescription = 'Nametag: %s', -- [string] - Description of the gift in the inventory (%s is used for the nametag)
Command = 'packgift', -- [string] - Command to start packaging
Inventory = {
UnpackedTitle = 'Unpacked Gift', -- [string] - Title of the unpacked gift for preparing gift
PackedTitle = 'Gift (%s)', -- [string] - Title of the packed gift (%s is used for the nametag)
Slots = 5,
MaxWeight = 1000.0,
},
Unpack = {
WaitForChristmas = true, -- [true/false] - Players can open packed gifts only after specified date
Date = {
day = 24,
month = 12,
}
},
Notifications = {
NoItem = 'You do not have any gifts to pack!',
NoGifts = 'You do not have any items in unpacked gifts!',
NotAdded = 'Packed gift can not be added to your inventory! Do you have space?',
NotChristmas = 'You can open packed gifts only after / during Christmas!',
Unpacked = 'You unpacked the gift!',
Packed = 'You packed the gift!',
}
},
Snowman = { -- [table] - Snowman building
Enabled = true, -- [true/false] - Enables snowman building
Command = 'snowman', -- [string] - Command to start building
Model = `xm3_prop_xm3_snowman_01a`, -- [hash] - Snowman model
Place = { -- [table] - Snowman placing
Radius = 1.0, -- [float] - Radius of the parts building area (Work only with Target.NONE)
HelpText = { -- Works only with Target.NONE
Enabled = true,
Text = '~INPUT_CONTEXT~ Complete %s part~n~~INPUT_VEH_HEADLIGHT~ Cancel building',
},
Target = {
label = 'Complete %s part',
icon = 'fa-solid fa-hammer', -- https://fontawesome.com/v5.15/icons?d=gallery&p=2&m=free
},
CancelTarget = {
label = 'Cancel building',
icon = 'fa-solid fa-times',
},
},
FireDestroyable = true, -- [true/false] - Is the fire destroyable?
Notifications = { -- [table] - Notifications
Error = 'An error occurred while building the snowman!',
InventoryError = 'An error occurred while removing the required items from your inventory!',
EnoughtItem = 'You do not have enough items to build this part!',
PartNotFound = 'Part not found!',
PartBuilt = 'You built the %s part!',
SnowmanBuilt = 'You built the snowman!',
NotFree = 'You can not do any other activities / sit in vehicle during building snowman!',
Interior = 'You can not pick up snowballs in an interior.',
AlreadyBuilding = 'You already building a snowman!',
Cancelled = 'You cancelled building the snowman!',
Failed = 'You can not build here!',
},
BuiltModel = `xm3_prop_xm3_snowman_01a`,
Plan = { -- [table] - Snowman building plan / "blueprint"
['Body'] = { -- [string] - Part name
Body = true, -- [true/false] - Is this part the body?
Model = `bzzz_maku_snowmen_body`, -- [hash] - Part model
Required = { -- [table] - Required items to build this part
{ item = 'WEAPON_SNOWBALL', amount = 5 },
},
Next = {
...
}
},
}
}
}
Last updated