RBX.lua.HopperBin (Object)

From Legacy Roblox Wiki
Jump to navigationJump to search
Derived Classes
None

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.

Example
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