RBX.lua.HopperBin (Object)
The HopperBin is an old system for creating usable tools for a player. It is outdated, but does not require a handle to function, so can be useful for action tools, passkeys, etc.
HopperBins can be set to several default weapon/tool types, such as Clone, GameTool, Grab, etc. See the BinType property for more information.
In order to function, the bin must have a script as a child, which the bin runs an event when it is selected. This allows the creator to make a script that will run only when the tool has been selected. To use a script, the BinType must be set to Script.
HopperBins are useful for making really simple weapons and tools, and you may use these for your first scripted weapons for players to use. Once you know how to, it's suggested that you use Tool objects instead. Tools let you have a Part as a handle, like the Rocket Launcher or Slingshot.
If you insert an Instance with the name RobloxBuildTool into a HopperBin, a GUI will not appear where HopperBin GUIs normally appear. There will also not be a shortcut key to the HopperBin.
local hop = Instance.new("HopperBin")
hop.Parent = game.Players.Player.Backpack
local function onClicked(mouse)
print("Hopperbin clicked")
end
local function onKeyDown(key)
print("Key",key,"was pressed")
end
local function onSelected(mouse)
print("HopperBin selected")
mouse.Button1Down:connect(function() onClicked(mouse) end)
mouse.KeyDown:connect(onKeyDown)
end
hop.Selected:connect(onSelected)
Clone( ) | |
Returns | Instance |
Description: | Returns a clone of the object and its children, unless its Archivable property is false. The clone will have the same properties as the original object and the same descendants (except those with an Archivable property set to false). The clone's Parent will be nil. |
Member of: | Instance |
FindFirstChild( string name, bool recursive = false ) | |
Returns | Instance |
Description: | Returns the first child found with a name of name. Returns nil if no such child exists. If the optional recursive argument is true, will recursively descend the hierarchy while searching rather than only searching the immediate object. |
Member of: | Instance |
GetChildren( ) | |
Returns | table |
Description: | Returns a read-only table of the object's children. |
Member of: | Instance |
GetDebugId( int scopeLength ) | |
Returns | string |
Description: | Returns a coded string of the object's DebugId used internally by Roblox. |
Member of: | Instance |
GetFullName( ) | |
Returns | String path to object |
Description: | Returns a string with a dot (.) character separating a path of object hierarchy excluding "game". |
Member of: | Instance |
IsA( string className ) | |
Returns | bool |
Description: | Returns true if the Instance is that class or a subclass. |
Member of: | Instance |
IsAncestorOf( Instance descendant ) | |
Returns | boolean is ancestor |
Description: | Returns true if the object is an ancestor of descendant. |
Member of: | Instance |
IsDescendantOf( Instance ancestor ) | |
Returns | bool |
Description: | Returns true if the object is an descendant of ancestor. |
Member of: | Instance |
Destroy( ) | |
Returns | nil |
Description: | Sets the Parent property to nil, locks the Parent property, disconnects all connections and calls Destroy() on all children. |
Member of: | Instance |
ClearAllChildren( ) | |
Returns | nil |
Description: | Removes all descendants of the Instance, but leaves the Instance itself. |
Member of: | Instance |
Active | |
Type | bool |
Description | true will react to mouse events, and pass them to any objects layered underneath, while false won't. |
Member of | BillboardGui, GuiObject, HopperBin |
BinType | |
Property | BinType BinType |
Description | Sets the type of tool the hopperbin is. |
Member of | HopperBin |
DeselectedConnectionCount | |
Property | Integer |
Description | The number of times Deselected has fired. |
Member of | HopperBin |
ReplicatedSelectedConnectionCount | |
Property | Integer |
Description | The number of times ReplicatedSelected has fired. |
Member of | HopperBin |
TextureId | |
Type | Content |
Description | The URL link to an image, commonly known as a texture. |
Member of | BackpackItem, FileMesh |
Name | |
Type | string |
Description | The name of the object, which is often used to identify it in the context of its parent. Note that names are not unique identifiers; multiple children of an object may share the same name. In a script where you want to access an object using a name, for example, game.Workspace["Brick"], the first object found with that name is that object. This "first object" can be found in the Explorer menu.Names are great for showing a very brief title or summary of an object. |
Member of | Instance |
Parent | |
Type | Instance |
Description | The hierarchical parent of the object. When no scripts hold references to an object, it will still be maintained as long as it's parent is set to an object which does have references to it, either by other objects or scripts. The toplevel DataModel object (the one referred to as the "game" by scripts) has no parent, but always has a reference held to it by the game engine, and exists for the duration of a session. |
Member of | Instance |
Archivable | |
Type | bool |
Description | Sets whether or not the object is saved when publishing or saving to file. Also sets whether or not the object is clonable. |
Member of | Instance |
ClassName | |
Type | string |
Description | A unique string per type of Instance. Should only be used as a unique identifier, as it does not reveal any information about nature of the type hierarchy the type is in. For this use, see IsA. |
Member of | Instance |
RobloxLocked | |
Type | bool |
Description | If true, the object and its descendants cannot be indexed or edited by a Script or LocalScript and will throw an error if it is attempted. |
Member of | Instance |
DataCost | |
Type | int |
Description | How much saving this instance with SaveInstance will add to DataComplexity |
Member of | Instance |
Deselected ( ) | |
Description | Fired when a HopperBin's thumbnail is clicked or it's corresponding number is pressed while it's selected. |
---|---|
Member of: | HopperBin |
ReplicatedSelected ( ) | |
Description | Undocumented |
---|---|
Member of: | Undocumented |
Selected ( Mouse mouse ) | |
Description | Fired when a HopperBin's thumbnail is clicked or it's corresponding number is pressed. |
---|---|
Member of: | HopperBin |
AncestryChanged ( Instance child, Instance parent ) | |
Description | Fired when an ancestor of the Instance the event which is a member of child has its parent changed to parent. |
---|---|
Member of: | Instance |
Changed ( Property property ) | |
Description | Fired whenever a property of the object changes. |
---|---|
Member of: | Instance |
ChildAdded ( Instance child ) | |
Description | Fired after a child is added. |
---|---|
Member of: | Instance |
ChildRemoved ( Instance child ) | |
Description | Fired when a child is removed from the object. |
---|---|
Member of: | Instance |
DescendantAdded ( Instance descendant ) | |
Description | Fired when a descendant is added to the object. |
---|---|
Member of: | Instance |
DescendantRemoving ( Instance descendant ) | |
Description | Fired when a descendant is being removed. |
---|---|
Member of: | Instance |