182 Commits

Author SHA1 Message Date
Iris Morelle
7b604c2a89 Fall back to the unit type name for [message] captions for nameless units
Fixes #3211.

(cherry-picked from commit 051182fa1c6fa75184d991920ff4e8e84831a848)
2018-10-07 03:22:17 +00:00
Iris Morelle
5c04fe72d5 Don't allow [kill] animate=yes to scroll to units through fog and shroud
Restores 1.12's behaviour.

(cherry-picked from commit 4e37cdc713d054a48b1f31f43cb5511f42626847)
2018-10-07 03:22:15 +00:00
Iris Morelle
56cba5aacf Do not allow [message] to scroll to units through fog/shroud
This was a regression from 1.12.

(cherry-picked from commit 8ae38ac19fa48ec9c380a9bce49c17dc43be9a05)
2018-10-07 03:21:36 +00:00
Celtic Minstrel
ab36d7b600 Support [break], [continue], and [return] in [random_placement]
(cherry-picked from commit 4a3508f13fea69b5cafdfa2d46a99caec201d6e5)
2018-10-07 03:21:22 +00:00
mattsc
0e017d9f7c Lua code: replace deprecated wesnoth.set_variable() calls
(cherry-picked from commit ce7faae4f41f23f1d1f61d2b4f5ca95d4ce4f89a)
2018-10-07 03:21:07 +00:00
mattsc
05d5afa6a9 Lua code: replace deprecated wesnoth.get_variable() calls
(cherry-picked from commit f1764d182fe33c4e29c6bd42761be2e946cd0c94)
2018-10-07 03:21:06 +00:00
mattsc
448a20779f Lua code: replace deprecated wesnoth.tovconfig() calls
(cherry-picked from commit 138107c8f6d9cfce6348fc262fbbe4f48d7d7cb8)
2018-10-07 03:21:06 +00:00
Celtic Minstrel
131019c18b Support male_voice and female_voice in [message]
(cherry-picked from commit 07e465e57b389f7ebacecbc7511411bb5685614a)
2018-10-07 03:20:00 +00:00
Jyrki Vesterinen
d75a752c06 [heal_unit]: ensure that heal amount is an integer
(cherry-picked from commit 76ed49a45f3679050cf06e2ab6aa5ec072957572)
2018-10-07 03:19:22 +00:00
Jyrki Vesterinen
167ee61d34 Revert "Display amount healed as an integer in [heal_unit]"
This reverts commit 0294bd81b21be27e09f10d812fafa6bae7090002.

Changing display is unnecessary when the healed amount itself is forced
to be an integer (next commit).

(cherry-picked from commit f2284e2e79db5432039d0ac0a364d0982c7f9f71)
2018-10-07 03:19:22 +00:00
Celtic Minstrel
017c3ca9cf Display amount healed as an integer in [heal_unit]
(cherry-picked from commit 0294bd81b21be27e09f10d812fafa6bae7090002)
2018-10-07 03:19:21 +00:00
Celtic Minstrel
3735b9c4f2 Add [move_unit]clear_shroud= as an attempt to clear shroud as the unit moves (untested)
(cherry-picked from commit b062b19e10c85faecf65246e94ec8dbbad0ad4ed)
2018-10-07 03:19:06 +00:00
Celtic Minstrel
c5b5bdda70 Allow [move_unit]dir= to perform relative movements
(cherry-picked from commit 68b33cf6bd8a44470c7ba8069b6b3502e117b5bd)
2018-10-07 03:19:06 +00:00
Celtic Minstrel
4ce00c6b6c Allow [move_unit]to_location to take a list of waypoints
(cherry-picked from commit 622db9d08b1e15ba99ccb797b4785ac9df4f49fe)
2018-10-07 03:19:06 +00:00
gfgtdf
59cc2448dc fix [message] side_for= not working for the last side.
fixes #2776

(cherry-picked from commit 0f756b81899ed9e965eb4f40b67bfeaaa3a1e518)
2018-10-07 03:18:50 +00:00
Celtic Minstrel
b1e96b08dd Support facing in [role][auto_recall]
(cherry-picked from commit ea0bcec92f021c9e2c1efc838508d5d662803771)
2018-10-07 03:18:40 +00:00
Celtic Minstrel
b35a7f7352 Support root=cube and root=int in [set_variable]
(cherry-picked from commit 7a3d6f958a2f8c89488a7a3d2439c37ae50032c8)
2018-10-07 03:18:39 +00:00
Celtic Minstrel
12ada04b8f Use wesnoth.format instead of string.format for translateable strings in [objectives]
(cherry-picked from commit 15ae9fcb0cc93da52c4ee1100c4422d815b8b28d)
2018-10-07 03:18:39 +00:00
Celtic Minstrel
b5b87ef373 Nicer handling of some Pango formatting attributes in [message]
(cherry-picked from commit c835e5b7e660e0842ab765d6cab7615a8790af2b)
2018-10-07 03:18:39 +00:00
Celtic Minstrel
05a45b8cd1 Handle speaker=id directly in [message] instead of relying on SUF
(cherry-picked from commit 2bd2a8b1b6d7bba67b6d1b4eb0e03dca56f5a54a)
2018-10-07 03:18:39 +00:00
Celtic Minstrel
52d3b7bb6a Support [set_variable]round=trunc
(cherry-picked from commit beb5dc75aaa60af30dcfe58074771080b5da3aeb)
2018-10-07 03:18:38 +00:00
Celtic Minstrel
0d1df0f2d7 Fix unintended change to the semantics of [modify_side]income=
(cherry-picked from commit 79bc18fe9522049d1844a99e37d58eab43898941)
2018-10-07 03:18:37 +00:00
Celtic Minstrel
d72612443f Allow percentages in [random_placement]num_items=
(cherry-picked from commit 229d2f04831fc75a154b5b718c7d308fb3d81217)
2018-10-07 03:18:19 +00:00
Celtic Minstrel
0131631220 Allow WFL for [random_placement]num_items=
(cherry-picked from commit e4a2c141776124c4e0b16677265c4623a4a02aad)
2018-10-07 03:18:18 +00:00
Celtic Minstrel
c023f7b222 Fix typo in 1dd411a84eb6a45c81d14359aaaec7af34351a39
(cherry-picked from commit 4427ee19362bc739a51945b9f2b2eec59de7010c)
2018-10-07 03:18:18 +00:00
Celtic Minstrel
02b6987158 Support to_location in [move_unit]
(cherry-picked from commit 1dd411a84eb6a45c81d14359aaaec7af34351a39)
2018-10-07 03:18:13 +00:00
Celtic Minstrel
a314876bf2 Use new persistent tags interface for [object] [objectives] [item] 2018-03-17 17:16:23 -04:00
Celtic Minstrel
08ec9017b5 Lua API: Some tweaks of the experimental wml module 2018-03-17 16:48:00 -04:00
Charles Dang
0103959c36 Cleaned up deprecated API usage in core Lua
[ci skip]
2018-03-13 16:55:36 +11:00
Charles Dang
3489dac642 [heal_unit]: don't play healed animation if no healing is done
[ci skip]

Addresses #2530. Not closing that though, since the behavior might still be tweaked.

The healer will still play their own animation, if applicable (behavior option 2 in
the bug report).
2018-03-05 15:44:42 +11:00
Celtic Minstrel
aa0a3bebd1 Add suffix= and prefix= operations to [set_variable] 2018-03-04 22:03:16 -05:00
Celtic Minstrel
5fc9d8d173 Use new deprecated_message() function wherever possible (C++)
This also covers handling of legacy DescriptionWML for [set_menu_item],
and tweaks its handling in the other cases (mainly [multiplayer_side]).

I added the next_dev_version constant intending to use it, but then
decided not to do so; however I left it in in case someone finds it useful.
2018-03-04 21:21:33 -05:00
Celtic Minstrel
29942eec35 Expose side_name attribute to Lua API and [modify_side] 2018-02-18 12:53:00 -05:00
Charles Dang
c8abb8d5d9 Add formula= option to [set_variable] (change by @celticminstrel)
[ci skip]
2018-02-02 15:40:44 +11:00
vgaming
728204665c fix code problems found by luacheck (#2388)
fix code problems found by luacheck

Second iteration of the process, now handling data/lua/wml/*.lua

luacheck command used to find bugs:
  luacheck ./*.lua --globals wesnoth wml --codes --ignore 542 213
Additionally, error code 211 (unused variables) could be ignored,
as using underscore convention `_` is controversial in
wesnoth ( see https://github.com/wesnoth/wesnoth/pull/2380#discussion_r162519341 )

Actual bugs found:
* items.lua, access of global `write_name` instead of local `cfg.write_name`
* kill.lua, typo `primary_unit` -> `primary`
* bad code style: global `i` instead of local `i`
  (would conflict with 3-rd party code if it would use global `i`, too)
2018-01-23 13:35:04 -06:00
Jyrki Vesterinen
d81f230680 Clear unit death animation after killing the unit
This is another and much better way to fix the unit halo remaining.
2017-12-28 12:02:29 +02:00
Jyrki Vesterinen
f50c7d3f2a Revert "Work around unit halo not disappearing with [kill] animate=yes"
This reverts commit 70b468070b71616aa3663088b6ad171391d0c4f0.

As I said in the commit message, the fix is not pretty, and
@CelticMinstrel said in IRC that a different fix would definitely be
better. I'll fix the problem by having an animation automatically
release the unit when done, instead (next commit).
2017-12-28 11:48:12 +02:00
Jyrki Vesterinen
70b468070b Work around unit halo not disappearing with [kill] animate=yes
The problem was that the kill animation retained a reference to the unit.
Triggering a Lua garbage collection (which destroys the animation object)
fixes it, although it's definitely not a pretty fix.

Closes pull request #2313.
2017-12-25 18:35:01 +02:00
Jyrki Vesterinen
e0e59ac463 Fix exception when [harm_unit] is used without an attacking unit
Regression from commit 38e31aa61f60abed71bd266e6d2abe61035805b4.
In particular, it broke WML unit tests.
2017-12-21 20:24:48 +02:00
Gregory A Lundberg
38e31aa61f Do not access non-existent unit
The [kill] tag can run animations. But it can also fire the `last breath` event, which can call [kill]. When we get back to the original [kill], the unit is gone, causing an error attempting to run the animations.

Added a check to ensure the unit is still on the map before we attempt to run the animations.

The Issue also requested that [harm_unit] pass the unit causing the harm into the [kill] tag so that `last breath` could use the secondary (killing) unit available like it does elsewhere.

Closes #2298
2017-12-19 15:05:24 -06:00
Jyrki Vesterinen
f064f50f1b [heal_unit]: Turn on floating text with animate=yes
I also moved the animation to be played *before* healing, which is the same
order as in C++ code. In the previous order, the animation isn't played for
some reason.

Fixes #2295.
2017-12-18 23:28:45 +02:00
Jyrki Vesterinen
d80d47eb8a [heal_unit]: fix wrong value of "hits" parameter
Only "hit", "miss" and "kill" are allowed.
2017-12-18 22:04:35 +02:00
sigurdfdragon
23c23b7a55 WML: Add [show_if] usage in [objectives] subtag [gold_carryover] 2017-11-22 20:27:13 -05:00
Jyrki Vesterinen
3b5880f5fb Fix #1980: [modify_unit] makes the unit disappear for a frame or two
Regression from commit d40a9e930b9fdf1095edf45f25885773654d0a4c.

In that commit I removed a redraw after the death animation of a killed
unit has been played, but just to be safe, I then added a redraw after the
unit has been erased from the map. Turns out it's not a good idea because
[modify_unit] operates by killing and recreating the unit.

This commit simply removes the redraw after erasing. Hopefully we aren't
relying on [kill] triggering a redraw somewhere.

[ci skip]
2017-09-12 21:36:40 +03:00
Jyrki Vesterinen
d40a9e930b Fix [kill]ed units flashing briefly after death animation 2017-09-08 21:54:03 +03:00
gfgtdf
121c1cb007 fix wml tags using side.controller (#1740) 2017-05-29 11:58:29 +02:00
Celtic Minstrel
fbeb6c5b09 Add helper.find_attack and clean up the [animate_unit] / [kill] hack regarding death / victory animations 2017-05-28 18:20:16 -04:00
Celtic Minstrel
686551c9f7 Fix [primary_attack] and [second_attack] not working in [kill] 2017-05-28 18:20:14 -04:00
Celtic Minstrel
c67d524ced Fix [kill] not affecting recall list units 2017-05-22 17:31:20 -04:00
Celtic Minstrel
39dad27260 [modify_side][ai] with ai_algorithm now replaces the AI (fixes #1216) 2017-05-22 14:39:35 -04:00