|
| 27 Nov 2016 12:33 PM |
I have seen this in a few games, and to cut things short - I wanted to ask if their had already been a method of this free sourced before I go through the trouble of replicating it myself.
I've seen it used by Quenty and Nitefal - as well as a few others. |
|
|
| Report Abuse |
|
|
Ryuzoji
|
  |
| Joined: 21 Dec 2015 |
| Total Posts: 937 |
|
|
| 27 Nov 2016 12:34 PM |
| What do you mean "tweening letter by letter"? |
|
|
| Report Abuse |
|
|
Kodran
|
  |
| Joined: 15 Aug 2013 |
| Total Posts: 5330 |
|
|
| 27 Nov 2016 12:35 PM |
if i understand correctly what you're looking to do is a for loop which adds one letter to a string each iteration.
|
|
|
| Report Abuse |
|
|
|
| 27 Nov 2016 12:36 PM |
| Rather then tweening a full text gui, it would go through the letters of a string and each would have a smooth transition up and into it's position on screen - eventually forming the sentences. |
|
|
| Report Abuse |
|
|
Kodran
|
  |
| Joined: 15 Aug 2013 |
| Total Posts: 5330 |
|
|
| 27 Nov 2016 12:36 PM |
Ah, you'd probably just want to use multiple textlabels for that.
|
|
|
| Report Abuse |
|
|
|
| 27 Nov 2016 12:40 PM |
| I figured, but I just wanted to know if a method has already been open sourced before I went and made it again. |
|
|
| Report Abuse |
|
|
WoolHat
|
  |
| Joined: 19 May 2013 |
| Total Posts: 1873 |
|
|
| 27 Nov 2016 12:40 PM |
| Watch the X TextBounds for this. Make the size of each TextLabel equal to the dimensions of the TextBounds, and position each TextLabel a pixel or 1 ahead the previous one to imitate natural spacing |
|
|
| Report Abuse |
|
|
Soybeen
|
  |
| Joined: 17 Feb 2010 |
| Total Posts: 21462 |
|
|
| 27 Nov 2016 12:50 PM |
| Yes each letter would need to be a new textlabel, however, you wouldn't have to painstakingly craft each one by hand. Instead, you could do something like this gui = -- mark your gui here, where the letters will go ### = "This is a test string." function Fly(letter,step) local box = Instance.new("TextLabel",gui) box.Text = letter box.BackgroundTransparency = 1 box.BorderSizePixel = 0 box.TextColor3 = Color3.fromRGB(0,0,0) box.TextStrokeTransparency = 1 box.Size = UDim2.new(0,20,0,25) -- a fair size for bigger letters box.Position = UDim2.new(0.5,0,-1,0) box:TweenPosition(UDim2.new(0,step*box.Size.X,0,0,"Out","Quad",1/3) end for i = ###### do ########################## wait(1/10) end |
|
|
| Report Abuse |
|
|
Soybeen
|
  |
| Joined: 17 Feb 2010 |
| Total Posts: 21462 |
|
| |
|
Soybeen
|
  |
| Joined: 17 Feb 2010 |
| Total Posts: 21462 |
|
|
| 27 Nov 2016 12:51 PM |
You could set a conditional where it "skips" whitespace characters, also.
|
|
|
| Report Abuse |
|
|
|
| 27 Nov 2016 02:08 PM |
Thanks. I will post an example of the finished product.
|
|
|
| Report Abuse |
|
|