summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukas Pioch <lukas@zgow.de>2017-05-09 14:24:41 +0200
committerMattes D <github@xoft.cz>2017-05-09 14:24:41 +0200
commit7c4576a02591d8ebe41656c5cefb1eb25a086a10 (patch)
tree3c5bb3dd56d492f32306a65c790576670dc3c0b2
parentFixed Lua bindings for const objects. (diff)
downloadcuberite-7c4576a02591d8ebe41656c5cefb1eb25a086a10.tar
cuberite-7c4576a02591d8ebe41656c5cefb1eb25a086a10.tar.gz
cuberite-7c4576a02591d8ebe41656c5cefb1eb25a086a10.tar.bz2
cuberite-7c4576a02591d8ebe41656c5cefb1eb25a086a10.tar.lz
cuberite-7c4576a02591d8ebe41656c5cefb1eb25a086a10.tar.xz
cuberite-7c4576a02591d8ebe41656c5cefb1eb25a086a10.tar.zst
cuberite-7c4576a02591d8ebe41656c5cefb1eb25a086a10.zip
-rw-r--r--Server/Plugins/APIDump/APIDesc.lua89
-rw-r--r--src/Bindings/AllToLua.pkg2
-rw-r--r--src/Bindings/CMakeLists.txt2
-rw-r--r--src/Entities/ExpOrb.h12
-rw-r--r--src/Entities/FallingBlock.h9
5 files changed, 108 insertions, 6 deletions
diff --git a/Server/Plugins/APIDump/APIDesc.lua b/Server/Plugins/APIDump/APIDesc.lua
index 6db4b056f..4ca81d5d3 100644
--- a/Server/Plugins/APIDump/APIDesc.lua
+++ b/Server/Plugins/APIDump/APIDesc.lua
@@ -6004,6 +6004,10 @@ local Hash = cCryptoHash.sha1HexString("DataToHash")
},
Constants =
{
+ INVALID_ID =
+ {
+ Notes = "Special value of an entity ID, indicating a failure. Used primarily in functions that create entities when the entity cannot be created.",
+ },
etBoat =
{
Notes = "The entity is a {{cBoat}}",
@@ -10922,12 +10926,95 @@ a_Player:OpenWindow(Window);
},
Inherits = "cEntity",
},
+ cExpOrb =
+ {
+ Desc = [[
+ This class represents an experience orb. This entity can be spawned by using {{cWorld#SpawnExperienceOrb_1|cWorld:SpawnExperienceOrb}}.
+ It's also spawned when a monster is killed or a player is mining coal. The default lifetime of an experience orb is 5 mins.
+ ]],
+ Functions =
+ {
+ GetAge =
+ {
+ Returns =
+ {
+ {
+ Type = "number"
+ },
+ },
+ Notes = "Returns the number of ticks that this experience orb has existed.",
+ },
+ SetAge =
+ {
+ Params =
+ {
+ {
+ Type = "number",
+ },
+ },
+ Notes = "Sets the experience orb's age, in ticks.",
+ },
+ GetReward =
+ {
+ Returns =
+ {
+ {
+ Type = "number",
+ },
+ },
+ Notes = "Returns the experience amount.",
+ },
+ SetReward =
+ {
+ Params =
+ {
+ {
+ Type = "number",
+ },
+ },
+ Notes = "Sets the experience amount.",
+ },
+ },
+ Inherits = "cEntity",
+ },
+ cFallingBlock =
+ {
+ Desc = [[
+ This class represents a falling block. This entity can be spawned by using {{cWorld#SpawnFallingBlock_1|cWorld:SpawnFallingBlock}}.
+ ]],
+ Functions =
+ {
+ GetBlockType =
+ {
+ Returns =
+ {
+ {
+ Name = "BlockType",
+ Type = "number",
+ }
+ },
+ Notes = "Returns the block type of the falling block.",
+ },
+ GetBlockMeta =
+ {
+ Returns =
+ {
+ {
+ Name = "BlockMeta",
+ Type = "number",
+ }
+ },
+ Notes = "Returns the block meta of the falling block.",
+ },
+ },
+ Inherits = "cEntity",
+ },
cPickup =
{
Desc = [[
This class represents a pickup entity (an item that the player or mobs can pick up). It is also
commonly known as "drops". With this class you could create your own "drop" or modify those
- created automatically.
+ created automatically. The default lifetime of a pickup is 5 mins.
]],
Functions =
{
diff --git a/src/Bindings/AllToLua.pkg b/src/Bindings/AllToLua.pkg
index 6ca9c8658..55f26bc60 100644
--- a/src/Bindings/AllToLua.pkg
+++ b/src/Bindings/AllToLua.pkg
@@ -75,6 +75,8 @@ $cfile "../Entities/ProjectileEntity.h"
$cfile "../Entities/ArrowEntity.h"
$cfile "../Entities/EntityEffect.h"
$cfile "../Entities/ExpBottleEntity.h"
+$cfile "../Entities/ExpOrb.h"
+$cfile "../Entities/FallingBlock.h"
$cfile "../Entities/FireChargeEntity.h"
$cfile "../Entities/FireworkEntity.h"
$cfile "../Entities/Floater.h"
diff --git a/src/Bindings/CMakeLists.txt b/src/Bindings/CMakeLists.txt
index ccd6f0a3f..349f15b08 100644
--- a/src/Bindings/CMakeLists.txt
+++ b/src/Bindings/CMakeLists.txt
@@ -94,8 +94,10 @@ set(BINDING_DEPENDENCIES
../Enchantments.h
../Entities/ArrowEntity.h
../Entities/Entity.h
+ ../Entities/ExpOrb.h
../Entities/EntityEffect.h
../Entities/ExpBottleEntity.h
+ ../Entities/FallingBlock.h
../Entities/FireChargeEntity.h
../Entities/FireworkEntity.h
../Entities/Floater.h
diff --git a/src/Entities/ExpOrb.h b/src/Entities/ExpOrb.h
index bb4c79c8e..83672ea02 100644
--- a/src/Entities/ExpOrb.h
+++ b/src/Entities/ExpOrb.h
@@ -25,17 +25,21 @@ public:
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
virtual void SpawnOn(cClientHandle & a_Client) override;
+ // tolua_begin
+
/** Returns the number of ticks that this entity has existed */
- int GetAge(void) const { return std::chrono::duration_cast<cTickTime>(m_Timer).count(); } // tolua_export
+ int GetAge(void) const { return std::chrono::duration_cast<cTickTime>(m_Timer).count(); }
/** Set the number of ticks that this entity has existed */
- void SetAge(int a_Age) { m_Timer = cTickTime(a_Age); } // tolua_export
+ void SetAge(int a_Age) { m_Timer = cTickTime(a_Age); }
/** Get the exp amount */
- int GetReward(void) const { return m_Reward; } // tolua_export
+ int GetReward(void) const { return m_Reward; }
/** Set the exp amount */
- void SetReward(int a_Reward) { m_Reward = a_Reward; } // tolua_export
+ void SetReward(int a_Reward) { m_Reward = a_Reward; }
+
+ // tolua_end
protected:
int m_Reward;
diff --git a/src/Entities/FallingBlock.h b/src/Entities/FallingBlock.h
index 3e80564e5..8bdf46ca0 100644
--- a/src/Entities/FallingBlock.h
+++ b/src/Entities/FallingBlock.h
@@ -13,6 +13,7 @@ class cItem;
+// tolua_begin
class cFallingBlock :
public cEntity
@@ -20,14 +21,20 @@ class cFallingBlock :
typedef cEntity super;
public:
+ // tolua_end
+
CLASS_PROTODEF(cFallingBlock)
/** Creates a new falling block. a_BlockPosition is expected in world coords */
cFallingBlock(const Vector3i & a_BlockPosition, BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta);
+ // tolua_begin
+
BLOCKTYPE GetBlockType(void) const { return m_BlockType; }
NIBBLETYPE GetBlockMeta(void) const { return m_BlockMeta; }
+ // tolua_end
+
// cEntity overrides:
virtual void SpawnOn(cClientHandle & a_ClientHandle) override;
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
@@ -36,7 +43,7 @@ private:
BLOCKTYPE m_BlockType;
NIBBLETYPE m_BlockMeta;
Vector3i m_OriginalPosition; // Position where the falling block has started, in world coords
-} ;
+} ; // tolua_export