167 Commits

Author SHA1 Message Date
x12xx12x
ceaebd00d8
Small Team Creation Fixes (#5479)
- Add additional explanation for team creation
- error message if team creation fails because team already exists

fixes #5466
2023-03-26 22:25:54 +00:00
Jomar Milan
fddbf65e28
Handle newlines in cIniFile (#5447)
* Handle newlines during read and write in cIniFile

When reading the ini file, replace \n with newline. When writing,
replace the newline with \n.

* Use ReplaceString instead of regex in IniFile

* Update cIniFile description

* Removed duplicate variable

* Revert "Removed duplicate variable"

This reverts commit de11bac047d871dfbffec28b72f72a2935bd339e.

* Removed duplicate variable

Now without plugin changes

---------

Co-authored-by: x12xx12x <44411062+12xx12@users.noreply.github.com>
2023-03-22 11:20:59 +01:00
Michal Havlíček
847884b6a8
TNT minecarts exploding when riding over activator rails (#5469)
* TNT Minecarts exploding via activator rails

* Fuse animation

* Add TNT minecart explosion source to APIDesc
2023-01-25 20:50:08 +00:00
Debucquoy Anthony tonitch
16f3355bbb
rework of the color code with & and standard codes (#5416)
* adding build* to gitignore and tags for ctags

* Notation Changes

* Adding & Parser

* Avoid crash when & as first character

* Looking for @ in the rest of the project

* Formating style

* Modifying test to reflect new behaviours

* Adding a check for the first part

* fixup! Adding & Parser

style changes

* Update APIDesk.lua

* Update src/CompositeChat.cpp

Co-authored-by: x12xx12x <44411062+12xx12@users.noreply.github.com>

* explaination on the antishlash with ampersand

* adding old deprecated formating

* Update src/CompositeChat.cpp

Co-authored-by: x12xx12x <44411062+12xx12@users.noreply.github.com>

* Update src/CompositeChat.cpp

* Update src/CompositeChat.cpp

Co-authored-by: Debucquoy <debucqquoy.anthony@gmail.com>
Co-authored-by: x12xx12x <44411062+12xx12@users.noreply.github.com>
2022-10-25 13:42:04 +02:00
Tiger Wang
64a24a4c79
ClientHandle: Fix block interaction regressions (#5431)
* ClientHandle: Fix block interaction regressions

* Fix reach distance being halved.
* Fix fire extinguish not working, fixes #5422.

* AddFaceDirection: deprecate non-vector version
2022-07-16 11:04:14 +00:00
x12xx12x
63b63c5d84
Added check for unexported but documented API (#5418)
Also fixed the errors
2022-05-06 23:26:13 +00:00
Simon Pribylski
f4c0429996
Add player permission level (#5358) 2022-01-24 20:24:55 +00:00
Persson-dev
fec64bb91c
Improved farmer AI & Fixed entity loading functions (#5351)
* Allow villagers to pickup items

* Add farmer villager harvesting

* Use of auto keyword

* Using for loop to check adjacent crops

* Show particules when farmer harvest

* Fix area comment

* Move constants to header file

* Removing unnecessary semicolon

* Initialization of CropBlockType variable

* Apply 12xx12 suggestion

* Fixing area constant size

* Refactor bounding box calculation, use vectors.

* Add Api documentation

* Update lua docs

* Rework farmer ai

* Fixing lua docs notes

* Add missing capitalisation

* Add villagers inventory save

* Fixing loading entities from disk inconsistencies

* Add farmer harvest animation

* Fix beetroots grow state

Co-authored-by: Alexander Harkness <me@bearbin.net>
2021-12-29 20:28:41 +01:00
AirOne
39392bbeae
Bind more ClientHandle functions to Lua (#5334)
+ Bound the following functions to Lua
  + SendBlockBreakAnim
  + SendCollectEntity
  + SendDestroyEntity
  + SendDetachEntity
  + SendEditSign
  + SendLeashEntity
  + SendThunderbolt
  + SendUnleashEntity

Co-authored-by: BuildTools <unconfigured@null.spigotmc.org>
2021-11-22 00:26:33 +00:00
Ethan Jones
afe07fe090
Prevent placing of hangables on illegal blocks and break when support block broken (#5301)
+ Prevent placing of hangables on illegal items and break when support block is broken

Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-10-03 21:29:45 +01:00
JK2K
be3111d133
Perform bed checks upon respawn (#5300)
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-10-02 21:28:24 +01:00
Kiryu144
36a97d441b
Added y bounds checking for cPlayer::PlaceBlock (#5194) 2021-07-23 10:14:01 +01:00
KingCol13
1d1fa91401
Chorus fruit teleport (#5259)
* Outline function for teleporting.

* Created new handler for chorus fruit.

* Fixed AttemptTeleport failing.

* Better names, working sound effect.

* Corrected naming.

* Remove stray LOGD.

* Offset teleport to middle of block.

* Style Fixes

Co-authored-by: x12xx12x <44411062+12xx12@users.noreply.github.com>

* Style Fixes 2

Co-authored-by: x12xx12x <44411062+12xx12@users.noreply.github.com>

* Move FindTeleportDestination to static cPawn method.

* cBoundingBox interface.

* Cleanup includes.

* Maybe exported to API?

* Change a_World to reference, add to APIDesc.

Co-authored-by: x12xx12x <44411062+12xx12@users.noreply.github.com>
2021-07-10 20:05:00 +00:00
Tiger Wang
17048fc1e3 Documentation: add statistics descriptions 2021-06-28 21:54:21 +01:00
Tiger Wang
208616041f Documentation: update chat colour link 2021-06-28 21:54:21 +01:00
Tiger Wang
ddf352e1e3 Remove orphaned API symbols
https://github.com/cuberite/cuberite/issues/5195#issue-860458139
2021-06-28 21:54:21 +01:00
x12xx12x
cc9f7c06b3
Add optional prefix parameter to LOG functions (#5229)
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-06-22 23:09:06 +01:00
Feyo Korenhof
9ddc3635d6
Implemented cServer::ScheduleTask() and cServer::TickQueuedTasks() (#5224) 2021-05-26 18:07:32 +02:00
Tiger Wang
a62b2b1be2
Move item placement into item handlers (#5184)
* Move item placement into item handlers

+ Add appropriate CanBeAt checks in cPlayer::PlaceBlocks, into which all placement handlers call.
* Partly addresses #5157
* Fixes #4878
* Fixes #2919
* Fixes #4629
* Fixes #4239
* Fixes #4849

Co-authored-by: changyong guo <guo1487@163.com>
Co-authored-by: Xotheus <shady3300@outlook.com>
Co-authored-by: Krist Pregracke <krist@tiger-scm.com>

* Review fixes

* Update APIDesc.lua

* Rename

Co-authored-by: changyong guo <guo1487@163.com>
Co-authored-by: Xotheus <shady3300@outlook.com>
Co-authored-by: Krist Pregracke <krist@tiger-scm.com>
2021-05-05 13:25:10 +00:00
nshah25
8be1dd54bb
Add player statistics to API (#5193)
* Fixed issue #5166

Co-authored-by: 12xx12 <44411062+12xx12@users.noreply.github.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-05-03 21:07:09 +01:00
Tiger Wang
a999c5d845 More cProtocol cleanup
* Alpha sort functions
* Simplify hand handling
* Fix left handed mode client-side display
2021-04-12 22:35:07 +01:00
Tiger Wang
1394fc8eb5 Streamline player abilities handling
* Update player list gamemode on world change
* Fix invisibility for spectators, use entity metadata
* Populate m_World for cPlayers on load
- Remove SendPlayerMaxSpeed, a duplicate of SendEntityProperties
2021-04-12 22:35:07 +01:00
Tiger Wang
4cd49d7eca Fix sending incorrect date values on world change
Yak shave: make more things use cTickTime. Fix a couple of incorrect modulo-on-millisecond-value by making them use WorldTickAge.
2021-04-12 22:35:07 +01:00
Damián Imrich
071b7be3d4
Basic elytra flight (#5124)
* Basic elytra flight

Co-authored-by: 12xx12 <44411062+12xx12@users.noreply.github.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-04-03 18:45:20 +01:00
Tiger Wang
90369deb5a
Change TimeOfDay to WorldDate (#5160)
* Change TimeOfDay to WorldDate

* Do not wrap at 20 minutes, continue incrementing
* Fixes #4737
* Fixes #5159
2021-03-20 20:58:19 +00:00
Tiger Wang
3e3c30496d Add heraldry names to banner pattern API docs 2021-03-15 11:07:54 +00:00
12xx12
8405b8969f
Adding Boss bar (#5025)
+ Add boss bar

Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-03-05 15:08:30 +00:00
12xx12
4d6235c807
Add Mushrooms to Generator and fixed up the roofed forest (#5134)
* added generator for mushrooms and aded them to the biomes

* removed unused variable

* added nEwlY uDocUmEnTeD aPi sYmbOls...
2021-03-05 14:04:48 +01:00
dImrich
925f960ea2 Adds playerlist header and footer broadcasting (1.8-1.13) 2021-02-06 14:14:40 +00:00
Tiger Wang
eeb63b8901
zlib -> libdeflate (#5085)
+ Use libdeflate
+ Use std::byte
* Fix passing temporary to string_view
+ Emulate make_unique_for_overwrite
2021-01-11 16:39:43 +00:00
Aiden Neill
3d044d2dde
Added magma block contact damage (#5055)
* Added magma block contact damage
* Fireproof entities do not take damage from magma
* Fire resistance prevents magma damage
* No magma damage when hovering over magma block
2020-11-25 17:56:55 +00:00
12xx12
e35519ec8a
Adding new monster types to enum and saving/loading for easier future implementation (#4941)
* added new monster types to enum
added string <-> enum conversion in namespace serializer
added loading functions
added to saving

* renamed zombie pigman to zombified piglins in enum

Co-authored-by: 12xx12 <12xx12100@gmail.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-11-22 23:41:13 +00:00
12xx12
36a67df105
Ender Crytal Fix and report proper cmake file for luabindingscheck fail (#5017)
* fixed network
fixed explosion
fixed ticking

added network broadcast to Setter method

added nullptr protection

using macros in 1.10 Protocol_1_10.cpp

revealed functions to LUA API

small fixups, typos, less functions used

fixed more doc

readded info that saving is done only if the beam is displayed

made the constructor transfer all needed members

fixed wrong commit

removed default parameters on SpawnEnderCrystal

fixed wrong metadata

moved call to destroy in the right place

fixed some typos

Fixed Ender Crystal

* fixed documentation

* fixed doc and added proper error message

* Parameters, arrows

* Parameters

Co-authored-by: 12xx12 <12xx12100@gmail.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-11-06 15:00:59 +00:00
12xx12
961d5eb420
Add beam target, configurable base visibility to Ender Crystals (#5010)
* Fixes #4990

Co-authored-by: 12xx12 <12xx12100@gmail.com>
2020-10-29 20:47:20 +00:00
Lukas Pioch
aee4778bf7
Added missing return types and fixed param types (#4996) 2020-10-13 20:59:11 +00:00
12xx12
c080f819d2
Adding Silverfish Spawning Blocks (#4946)
* added breaking, spawning, animation

* checkstyle

* added undocumented API symbols

* added changes suggested by @peterbell10

* added natural ore like generation

* fixed spawning two silverfishes

* fixed clang

* fixed clang try 2

* updated comment
unified offset

* final clang fix

* added spawning for more silverfishes if one was damaged

* fixed spawning on one hit kill

* fixed spawning on one hit kill
fixed spawning by potion damage

* fixed clang

* fixed broken build

* fixed broken build

* I should read the error message properly
fixed build now?

* added small changes suggested by @peterbell10

Co-authored-by: 12xx12 <12xx12100@gmail.com>
2020-10-11 15:27:41 +00:00
[IPSA] Chris de Claverie
be841b4769
Add SetBlockMeta warning in documentation (#4943)
+ Add SetBlockMeta warning in documentation

Co-authored-by: pwnOrbitals <c.de-claverie@pm.me>
2020-10-01 11:38:10 +01:00
12xx12
ba5312c198
Fixed snow golems and added documentation to damage type and added damage type for damage from environment to mobs (#4877)
* made snow golems not crashing the server anymore

* changed damage type to environment

* updated damage in API dopcumentation and changed enderman damage type

* removed incidental d in the code

Co-authored-by: 12xx12 <12xx12100@gmail.com>
2020-09-17 18:06:41 +00:00
Tiger Wang
6617d43983 Minor typo fixes
* Also DeMorgan'd Emerald ore condition
2020-08-21 00:50:09 +01:00
12xx12
47f7727b7f
Add enhanced Gold generation in Mesa-Type Biomes (#4821)
* added enhanced gold generation in mesa-type-biomes

* fixed typo in comment

* added enhanced gold generation in mesa biomes - fixed small checkstyle errors

Co-authored-by: 12xx12 <12xx12100@gmail.com>
2020-08-12 07:20:38 +00:00
12xx12
ec3de19c4e small issues addressed in #4817 fixed because was merged to fast 2020-08-09 22:05:13 +00:00
12xx12
fed03048ad
Adding Emeralds to generation (#4817)
* Adding Emeralds to generation

* fixed crash

* fixed documentation and changed function name to match others

* forgot to change the name in the doc

* removed debug output - sorry build servers

Co-authored-by: 12xx12 <12xx12100@gmail.com>
2020-08-09 20:49:40 +00:00
Tobias Wilken
36eab1b323
Introduce recipe book functionality (#4493)
* Introduce recipe book functionality

The recipe book helps especially new players. Missing it gives the
impression that cuberite is not as advanced as it is.

The handling of the recipe book uses the following functions:

- Unlock Recipes
(https://wiki.vg/index.php?title=Protocol&oldid=14204#Unlock_Recipes) to
make recipes available and show the notification for new recipes.
Initialization is done on player login for known ones, the update is done
when new items are discovered.
- Craft Recipe Request
(https://wiki.vg/index.php?title=Protocol&oldid=14204#Craft_Recipe_Request)
when the user selects a recipe from the recipe book to fill the slots.

Known recipes are initialized on player login via `Unlock Recipes` with
`Action` 0.
As soon as a new recipe is discovered this is added via `Unlock Recipes`
with `Action` 1.

To be able to know and recognize new recipes the player class is
extended with `KnownItems` and `KnownRecipes`. As soon as a player
touches an item this is compared to the list of `KnownItems`, if the
item is unknown the recipes are checked for this item and the other
ingredients are checked with the list of `KnownItems`. If a full match
is discovered the recipe is unlocked with the client and stored in the
`KnownRecipes`.

To unlock recipes the recipe ID is sent to the client. A mapping file
(for protocol 1.12.2) translated the minecraft recipe names to ids. The
crafting.txt is extended with and minecraft recipe names is possible.

Limitations:
Only a single recipe is added to the crafting area. Multiple clicks or
shift click does not increase the number of builds.

Co-authored-by: peterbell10 <peterbell10@live.co.uk>

* Address first issues mentioned by @peterbell10

- Some linting
- Extract loading of recipe specific protocol mapping into a function
- Build `RecipeNameMap` only once
- Use `std::optional`
- Extract `LoadRecipe` from `Window`

* Start to implement new suggestions

* Update with suggestions from @peterbell10

* Some minor cleanup

* Update protocol packet IDs
* Remove unused include
* Include header in cmake
* Change a vector to integer counter

* Change dromedaryCase method names to PascalCase

* Address suggestions from @madmaxoft

* Read Protocol subdirectories to load recipe books

To load all recipebooks iterate over the `Protocol` subdirectories
to find mapping files.

Co-authored-by: peterbell10 <peterbell10@live.co.uk>
2020-07-14 17:56:42 +01:00
DrButcher
258318ab98
Buttons can now be triggered by arrows. (#4670)
* Buttons can now be triggered by arrows.
2020-05-03 21:05:32 +01:00
Alexander Harkness
994036a3b8
Add cEntity::GetBoundingBox, and use where appropriate. (#4711)
* Add cEntity::GetBoundingBox, and use where appropriate.
2020-05-03 21:04:33 +01:00
Tiger Wang
63adc6d7dc Add API documentation for repeater metadata constants 2020-04-18 16:51:29 +01:00
Mattes D
a55f61548e
Extended Vector3 (#4666) 2020-04-18 11:44:35 +02:00
Mattes D
2cb85a1bcb API docs: Fixed eMonsterType relocation. 2020-04-10 08:19:43 +02:00
Bond-009
8438def87e
Add Zombie Villagers 2020-04-10 00:50:45 +01:00
Mat
60bcc06f43
Implement wither skeletons (#4563) 2020-04-04 13:44:17 +02:00