This month we addressed some older issues, as well as adding juicy new features. Our spotlight this time is about new vscode features.
We also want to say thanks to the community for the avid support and contributions in the last few months, helping Wurst to become better than ever!
@noinlineannotations to allow more fine grained control over inlining behavior.
blizzard.jthat are used during map initialization no longer get inlined, preventing map script bloat, in particular with more than 12 players.
DamageType(PR #95, PR #97), and
OnUnitEnterLeave(PR #96) received more fixes for edge cases.
triggerAPI received fixes by (PR #102, PR #104)
Quaternionmath packages which can also be used to manipulate effects (PR #111, PR #112).
initlaterimport from the stdlib which improves code quality.
One of the more noticable improvements these last months have been on making the wurst vscode development experience more feature rich and integrated. We implemented several more features of the language protocol, which we will preset here. Additionally, the wurst file icon is now an offical part of the vscode-icons extension.
Breadcrumbs show the model hiearachy from your cursor positon. You can turn them on via
The Focus Breadcrumbs command (shortcut
.) lets you navigate your code quickly. You can also search for symbols using the Goto symbol in workspace command (
t) or using Goto symbol in file (
The outline gives you a searchable overview over all elements in that file. Turn it on by rightclicking on the Explorer headline.
VSCode recognizes Wurst’s symbols, allowing for consistent renaming.
Wurst color tuples and wc3 color strings are now previewed and you can use the vscode color picker to adjust them.
When using types which are not imported into a given package yet, Wurst will suggest importing a package which will fulfill that type. If applied, the quickfix will add the import statement automatically.
While not a Wurst feature, it should be noted that everything style related you see here can be customized in some way. There are default and user created themes, take a look:
The theme used for the screenshots above, is called “Atom One Dark”