27231 Commits

Author SHA1 Message Date
loonycyborg
29b7b52da6 pot-update and regenerate doc files 2020-09-19 20:45:57 +03:00
Steve Cotton
8507a3dcb2 UtBS S02: Recognise Beach Sands and embellishments when spawning ghosts
Fixes #5149.
2020-09-19 16:48:16 +02:00
Steve Cotton
a6daad9bc0 UtBS S06b: Make the warning about the tentacles an enter_hex instead of a moveto
If you try to move straight into the water, the explorer should stop at the
lake edge and comment about where they're going. Trivial change, mainly because
I was using a fast unit for debugging and wondered why I hadn't triggered the
lake monsters.
2020-09-19 16:47:56 +02:00
Steve Cotton
3bf3717e64 UtBS: Make "quenoth" a separate race to "elf" (fixes #4876)
This is motivated by reorganising the help pages to split the Quenoth from the
"pointy ears, pale skin" help text in data/core/units.cfg. It also means that
there's no reason to [hide_help] for the default era elvish units. The new help
text is just a short placeholder for now.

The new race has [race]help_taxonomy=elf.

If the player loads a mid-campaign save then their recalls and heroes will have
race=elf while new recruits have race=quenoth.  For that reason, I've changed
the scenarios' event triggers to recognise both races.

When levelling up, units with race=elf may change to race=quenoth.

Opening the help for a unit will show the help as if the unit has race=quenoth,
even when right-clicking on a race=elf unit. This is good.

For a few of these, I think another race might be better - they're converted to
Quenoth here, as they were Elves before. The Corrupted Elf is should probably be
considered undead, and the Divine Avatar should possibly be something else, more
like an elemental than a living creature. That those two are currently included
in the elves does have the side-effect of hiding a plot spoiler about the Dark
Assassin who is also included in the elves (the spoiler being that this one is
correct, he really is an elf).
2020-09-19 16:47:56 +02:00
Pentarctagon
5af1f129cd Mass convert of *^Uf terrain for SP. 2020-09-15 09:26:00 -05:00
Pentarctagon
0fcf545582 Remove unused mapgen files. 2020-09-15 09:26:00 -05:00
Steve Cotton
f3f1407ace
Show [race]help_taxonomy= as "This is a group of units, all of whom are $help_taxonomy" (#5143)
The code comments talk about both Dunefolk and Quenoth Elves - of these two, only the
Dunefolk's data is changed in this commit. All Quenoth unit are race=elf at the moment,
I intend to add [race]id=quenoth in a separate PR.

Draft documentation for the Wiki:

* '''help_taxonomy''': {{DevFeature1.15|?}} in the help browser, show this
race as a group of units from another race; the value of this attribute should
be the other race's '''id''' attribute. This only affects the help browser, for
all other purposes (such as WML filters) the two races are completely separate.

How this is visualised in the help browser is a GUI design decision, this attribute
merely tells the engine that the relationship exists.
2020-09-13 15:20:48 +02:00
gfgtdf
5fb3880ee4 use new lua gui2 api in WC mapgen settings
The lua gui2 compatibility code doesn't apply
to the mapgen lua kernel. So this code was broken
2020-09-10 20:05:10 +02:00
newfrenchy83
88fbe11457
update DID_SHADOW_VEIL_HANDLER in DID campaign (#5094)
* update DID_SHADOW_VEIL_HANDLER implementation
2020-09-09 15:12:22 -04:00
Steve Cotton
c227d42e74
Northern Rebirth: remove the evil campaign branch (#5138)
These 5 scenarios were never completed, so the option to play this branch was
always commented out. However the existence of them has caused extra work for
the translators, and would cause further extra work in tasks roadmapped
for 1.15.x (removal of the ^Uf mushrooms, removal of {MODIFY_UNIT}).

If it comes back then it will likely start as UMC.
2020-09-09 02:01:34 +02:00
doofus-01
9d4ce1bb9f
terrain graphics - make mushrooms-small.png smaller (#5136) 2020-09-07 12:21:01 -07:00
Nils Kneuper
7715bc3d24 updated Hungarian translation 2020-09-07 20:13:05 +02:00
gfgtdf
ebc65c9b00
fix [micro_ai] when called from lua
fixes #5134
2020-09-07 18:10:41 +02:00
Lordbob
54f86f0c9b
Update ARTISTS
Attribute new royal warrior portrait
2020-09-06 22:41:15 +02:00
Lordbob
b627855e72
Linked new profile picture 2020-09-06 22:38:36 +02:00
Lordbob
d4ab7b40ce
Added royal warrior portrait 2020-09-06 22:35:45 +02:00
Nils Kneuper
76bf1317f8 updated Polish translation 2020-09-06 11:18:47 +02:00
Nils Kneuper
d8492a7257 updated Catalan translation 2020-09-04 21:10:27 +02:00
Nils Kneuper
07e1c86b57 updated Polish translation, updated maintainer in credits 2020-09-04 18:49:30 +02:00
Wedge009
6ef05c73e7 Update WCII strings
* Attempt to resolve spelling errors and other phrases which didn't make complete sense.
* Replace apostrophes in user-visible strings with typographical equivalent.
* Revised WoCopedia Help based on clarification from @gfgtdf.
* Unify use of 'OK' in dialogues and remove use of 'okay' in prose.
* Remove some 'modern' language usage such as 'guys'.

[ci skip]
2020-09-04 14:21:39 +10:00
gfgtdf
661fc1d8ef refactoor lua gui2 callback code
this refactors the lua gui2 callback c++ implementation
Now the callback infrastructure also supports different
types of callbacks for a single widget. Furthermore
it also supports multiple open gui2 dialogs at the same time.

This now also makes the widget parameter of widget.find
manditory.
2020-09-03 22:08:53 +02:00
gfgtdf
7b2ede6243 SotA: use new gui2 widgets api in custom dialog 2020-09-03 22:08:53 +02:00
gfgtdf
ba1ea7a701 wc: use new widget lua userdata in help dialog 2020-09-03 22:08:53 +02:00
gfgtdf
90a5930f21 new lua gui2 widget userdata
lua now has a widget userdata that can be used
to set/get widgets properties as one would
expect, a lot of the set/get_dialog_xy function
were converted into modifiable properties of
the widget userdata. This in particular allows
us to get rid of the strange 'path to widget'
type of arguments of gui2 functions.

It currently generates lot of compiler wanrings,
I will fix this in a later commit.

One of the main advantage is that it makes it
much easier to add new api, previously a lot
of functions where overused, probably because
that was just easier than creatign a new
function. For example set_dialog_value returned
multiple value of listbox objects. (the
compatibility path doesn't support this
particular feature yet but i don't think it is
important, it probably wasn't even used at all,
since it also wasn't documented).

This also adds some new features, like an 'add_item'
function to add an item to a listbox, a 'type'
property of widgets to query the type of a
widget and a 'item_count' property to count the
number of children in an item.

Im still not 100% sure about the
property /function names, in particular:

1) i might rename 'items' to 'elements' or
   'children' in some functions. Not sure yet
2) I might rename the 'value' property to
   'value_compat' to make clear that its only
   supposed to be used by the
   backwards_compat.lua code.

A next step in improving this api might be
to introduce a (reusable!) 'window' userdata
so that the implementaion of wesnoth.show_dialog
would become:
```
function wesnoth.show_dialog(wml, preshow, postshow)
  local dialog = gui.create_dialog(wml)
  preshow(dialog)
  local res = dialog:show()
  postshow(dialog)
  return res
end
```

However this is currently not really possble
since the pure existance of a gui2::window
object blocks the gui1 code (the main game view)
from receiving events. So we clearly cannot luas
gc take ownership of gui2::window objects.
2020-09-03 22:08:53 +02:00
Severin Glöckner
7136e3cfc3 NR: fix errors
- Typo found by travis
- Duplicated code
2020-08-31 16:20:07 +02:00
Severin Glöckner
9cda7e7353 MP Survivals: remove quick trait for slow leaders
In PvE the player doesn't need this bonus, like he doesn't have it in campaigns either.

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
8b26a1b9d2 NR: make heroes unrenamable
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
723f24f4ab NR: add comments for scenarios and characters
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
4aefaa84c9 NR: Tallin loses his traits
Three traits is one too much. Normally leaders don't have any.

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
b03d441240 NR misc
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
c0f8d3618a NR 10 & 11: hide sides until their leader arrives (if ever)
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
d1b00b1ce8 NR: handle dead loyals
In place of death loyals other units are recalled.
Best level 2 ones, in difference to level 3 ones they need still xp.

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
f3727e98ff NR: better supporter death handler
[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
71f77c5263 NR 13: remove duplicate recall
happened in prestart already

[ci skip]
2020-08-30 22:28:44 +02:00
Severin Glöckner
f2d616498b NR 09: increase gold carryover to 80%
This scenario is not guaranteed to take place.
If the player wouldn't play it, he wouldn't lose 60% of his gold.

The enemies give up to 248 XP, but the players units mightt also
have already reached Level 3. (There's no keep, only preselected loyals)

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
f2b6b089ee NR 09: unhide side
[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
b78087dfad NR 07: fix 2nd objectives not showing
They were supposed to be unlocked by a die event,
but it never happened because [store_unit]kill=yes
removed the unit in it's last breath event.

Refactor the handling of that.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
59bf5d0d82 NR S5: avoid three traits unit
Abhai is a loyal who has absoutely no relevance in path A.
Remove his third trait, because more than two traits is not UI-friendly.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
a7cffd78c2 NR 10: clean up code
- avoid duplicated text
- add a comment explaining eryssa_hostile variable

using boolean_equals instead of equals is difficult here

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
514205b9e7 Nr 09: handle debug mode
Arriving there without Eryssa is normally not possible,
but with ":n" one will.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
dc3934acd9 NR 08: handle a corner case
Let the player advance to S9 as well if he defeated all enemies.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
a01fc14dd6 NR: move objectives to prestart
[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
7a24276f29 NR 07: use new castle terrain
The outside variant of the dwarvish castle.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
408e18c297 TSG: move objectives to prestart
In some cases, players can see the obectives already earlier
by pressing CTRL + J. E.g. when the game scrolls to a unit
for a [message]. If the objectives aren't set at that time,
then the default objectives are displayed (kill all enemy leaders).

Because the code uses boolean_equals instead of equals it's not
anymore dependent of other variables being set beforehand.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
3278201971 TSG: remove explicit overlay
Done implicit by loyal trait now.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
96dc05ae75 TSG 8b: add a micro AI
Chocobones arrive ahead of all other units,
this brings them a bit more in sync with the other forces.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
3b2cb8849e ANL: recommend lowering starting gold
closes #1149

The difficulty slider is in fact the gold setting.
bob_the_mighty suggest setting it to 75, though for new players 100 might be better.

I think the best we can get from this situation is to have it by default on 100,
but to tell players about changing the gold setting if the scenario becomes too easy for them.

[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
662938bd73 TSG 6a: make human guard non-loyal too
Side-effect of this change: It's gender is now random.
Handling that too.

(income was already increased by former commit)
[ci skip]
2020-08-30 22:28:43 +02:00
Severin Glöckner
c55da47912 TSG 6a: increase upkeep istead of using loyal guardians
[ci skip]
2020-08-30 22:28:42 +02:00
Severin Glöckner
9542a296af TSG 8b: remove loyal from enemies
For side 3: additional upkeep costs are
1 / 2 / 4
Try to compensate by increasing upkeep by
0 / 0 / 1

For side 2: additional upkeep costs are
2 / 5 / 6
Try to compensate by increasing upkeep by
0 / 2 / 2

[ci skip]
2020-08-30 22:28:42 +02:00