Merge lp:~widelands-dev/widelands/bug-1815283-nil-value-territorial into lp:widelands

Proposed by Toni Förster
Status: Merged
Merged at revision: 8982
Proposed branch: lp:~widelands-dev/widelands/bug-1815283-nil-value-territorial
Merge into: lp:widelands
Diff against target: 41 lines (+4/-4)
2 files modified
data/scripting/win_conditions/territorial_functions.lua (+2/-2)
data/scripting/win_conditions/win_condition_functions.lua (+2/-2)
To merge this branch: bzr merge lp:~widelands-dev/widelands/bug-1815283-nil-value-territorial
Reviewer Review Type Date Requested Status
GunChleoc Approve
Review via email: mp+363079@code.launchpad.net

Commit message

add player name to rank_players()

To post a comment you must log in.
Revision history for this message
kaputtnik (franku) wrote :

I looked also into this issue and stumbled over player.number and the description of players: https://wl.widelands.org/documentation/autogen_wl_bases/#wl.bases.EditorGameBase.players

So, assuming the second slot of a three players map is deactivated, the result will be:

for idx, player in ipairs(wl.Game().players) do
  print(idx, player.name, player.number)
end

Output:

1 Player 1 1
2 Player 3 3

So i am not sure if we should get rid of player.number at all? Don't know if it is feasible.

Revision history for this message
GunChleoc (gunchleoc) wrote :

I had the same bug when I did my refactoring of the territorial win conditions last year... which led me to my new forum sig :P

@bunnybot merge

review: Approve
Revision history for this message
bunnybot (widelandsofficial) wrote :

Continuous integration builds have changed state:

Travis build 4464. State: passed. Details: https://travis-ci.org/widelands/widelands/builds/492316621.
Appveyor build 4252. State: success. Details: https://ci.appveyor.com/project/widelands-dev/widelands/build/_widelands_dev_widelands_bug_1815283_nil_value_territorial-4252.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'data/scripting/win_conditions/territorial_functions.lua'
--- data/scripting/win_conditions/territorial_functions.lua 2019-01-02 13:47:23 +0000
+++ data/scripting/win_conditions/territorial_functions.lua 2019-02-12 17:47:26 +0000
@@ -153,13 +153,13 @@
153 territory_was_kept = winning_players[playerinfo.number] ~= nil153 territory_was_kept = winning_players[playerinfo.number] ~= nil
154 winning_players[playerinfo.number] = true154 winning_players[playerinfo.number] = true
155 territory_points.last_winning_player = playerinfo.number155 territory_points.last_winning_player = playerinfo.number
156 territory_points.last_winning_player_name = players[playerinfo.number].name156 territory_points.last_winning_player_name = playerinfo.name
157 territory_points.last_winning_team = -1157 territory_points.last_winning_team = -1
158 else158 else
159 winning_players[playerinfo.number] = nil159 winning_players[playerinfo.number] = nil
160 end160 end
161 if teaminfo.team == 0 then161 if teaminfo.team == 0 then
162 points[#points + 1] = { players[playerinfo.number].name, playerinfo.points }162 points[#points + 1] = { playerinfo.name, playerinfo.points }
163 end163 end
164 end164 end
165 end165 end
166166
=== modified file 'data/scripting/win_conditions/win_condition_functions.lua'
--- data/scripting/win_conditions/win_condition_functions.lua 2019-02-10 11:36:10 +0000
+++ data/scripting/win_conditions/win_condition_functions.lua 2019-02-12 17:47:26 +0000
@@ -200,7 +200,7 @@
200 team = 0,200 team = 0,
201 points = player_points,201 points = player_points,
202 players = {202 players = {
203 { number = player.number, points = player_points }203 { number = player.number, name = player.name, points = player_points }
204 }204 }
205 }205 }
206 table.insert(ranked_players_and_teams, team_table)206 table.insert(ranked_players_and_teams, team_table)
@@ -222,7 +222,7 @@
222 }222 }
223 for idx, player in ipairs(plrs) do223 for idx, player in ipairs(plrs) do
224 if player.team == team then224 if player.team == team then
225 table.insert(team_table.players, { number = player.number, points = all_player_points[player.number] })225 table.insert(team_table.players, { number = player.number, name = player.name, points = all_player_points[player.number] })
226 end226 end
227 end227 end
228 table.insert(ranked_players_and_teams, team_table)228 table.insert(ranked_players_and_teams, team_table)

Subscribers

People subscribed via source and target branches

to status/vote changes: