我在做一個遊戲,我已經到了需要清點的地步。我的意思是一個自定義的。我有gui和所有其他的東西工作,但我找不到一個有效的方式來使插槽(用於工具)滑動。就像這樣。如何在庫存中製作高效的插槽?
好吧,所以我有兩個物品在我的庫存。一個在最上面,一個在第一個下面。我點擊最上面的那個(拿出來),第二個只留在那裏,從最上面的一點點尷尬。
--the only way i know of doing this is with a lot of if/elseif's
if not gui.Position == UDim2.new(0,13,0,123) then
gui2.Position = UDim2.new(0,13,0,123)
end
這樣的事情,但如果我有10個插槽呢? 20?更多,如果是我能想到的。那麼,你知道一種方法來提高效率嗎?
因此,根據這裏的答案,這是做它的方式:
t = script.Parent
gui = script.Parent.Parent
t.MouseButton1Click:connect(function()
t.Position = t.Position + UDim2.new(0,1,0,0)
gui.w1.Position = t.Position + UDim2.new(0,0, 0, t.Size.Y.Offset)
gui.w2.Position = gui.w1.Position + UDim2.new(0,0, 0, t.Size.Y.Offset)
gui.w3.Position = gui.w2.Position + UDim2.new(0,0, 0, t.Size.Y.Offset)
gui.w4.Position = gui.w3.Position + UDim2.new(0, 0, 0, t.Size.Y.Offset)
gui.w5.Position = gui.w4.Position + UDim2.new(0, 0, 0,t.Size.Y.Offset)
end)
請問這是什麼你的意思,還是我錯過了點?
你如何「拿走第一名」?此外,您的基於下劃線的示例似乎不能很好地轉換爲文本。要麼這樣,要麼沒有意義。 –
我相信你可以想出更好的東西。爲什麼不實施例如4個「顯示器」並且告訴他們中的每一個顯示哪個項目?拿筆和紙做素描 – Piglet