| 04-25-2009, 06:28 PM | #1 |
I've created a map which uses a lot of Floating Texts. They work as expected for about 100-200 instances, but after that the texts are going to get bugged (the last one isn't showing, ome of them gets removed when a new one is created). I don't know why it stops working. I've disabled permanence. Here is the floating text creation trigger: JASS:// FLOATING TEXT function FloatingText takes texttag tt, string s, unit u, real speed, integer transp, real life, player p returns nothing local real speed2 = speed * 0.071 / 128 local boolean b = true call SetTextTagVisibility(tt,false) call SetTextTagText(tt, s, 0.023) call SetTextTagVisibility(tt, true) call SetTextTagPermanent(tt,false) call SetTextTagPosUnit(tt, u, 0.) call SetTextTagFadepoint(tt, 0) call SetTextTagColor(tt, 255,255,255,transp) call SetTextTagVelocity(tt, speed2 * Cos(90*bj_DEGTORAD), speed2 * Sin(90*bj_DEGTORAD)) call SetTextTagLifespan(tt, life) if GetLocalPlayer() == p then call SetTextTagVisibility(tt,b) endif endfunction |
| 04-26-2009, 05:23 AM | #2 |
Unfortunately, there's no way to fix this, texttags have a hardcoded limit that is very low. |
| 04-26-2009, 06:14 AM | #3 |
You could only have about 100 texttags and after that, there is a chance that they could start bugging. -Av3n |
| 04-26-2009, 08:55 AM | #4 |
99 visible for each player, specifically. Then it starts replacing the old ones and all sorts of weird shit. |
| 04-26-2009, 04:41 PM | #5 |
Do you mean 99 created text tags or 99 text tags placed at once? I'm having some similar weird random bugs with text tags as well.... |
| 04-26-2009, 05:01 PM | #6 |
99 created for each player. So if you create them locally you could have 99 showing for player 1, and 99 different ones showing for player 2. |
| 04-26-2009, 05:15 PM | #7 |
This isn't good. So you say that after the 100'th text tag created overall, even if they are completely removed from the game after a few seconds each, it starts bugging? I highly doubt this, considering I've seen maps that will create hundreds upon hundreds of temporary text tags and not see them bug up. The bug you are seeing may be the "Minimum-of-one" syndrome. To fix this, you should place a permanent text tag in a random spot on the map, like a period or something so it's not too noticeable. Do not give it transparency or color. Also, transparent or colored text tags are especially buggy. The limit is greatly increased if you use regular color tags such as |cffff0000BLAH|r rather than the RGBA values. |
| 04-26-2009, 05:22 PM | #8 |
No, no. If you create 50, then remove 40, you can still create another 89 before it starts to bug out. |
| 04-26-2009, 09:44 PM | #9 | |
The limit is actually 100. The very first text-tag created will have an ID of 99, and it counts down all the way until it hits 0. If you try to create a text-tag even though 100 of them already exist, then the most recently created one (ID of 0) will be removed and the new one created. A text-tag is removed when its "age" exceeds its "lifespan" or when "DestroyTextTag" is called. Quote:
Why not just have a text-tag that displays a space? Also, I've never heard of this minimum-of-one syndrome thing that you speak of. I actually have a text-tag tutorial on another forum, I'll see if I can find it and post it here. |
| 06-09-2010, 05:24 AM | #10 |
Side note, if you give ft's a time limit, will they just decay on their own? |
| 06-09-2010, 07:59 PM | #11 |
That's what I thought too, Drain Pipe. However, it doesn't seem to work for me... I've checked the code over so many times, making sure that the floating text have a lifespan. Do I have to set the age of the floating text, too? Is that why my texts get buggy? Having 100 texttags at the same time isn't a problem, because there will hardly ever be a time where you'll have one hundred texttags shown at the same time. I think... |
| 06-09-2010, 11:30 PM | #12 |
Necromancy. |
