widelands-dev team mailing list archive
-
widelands-dev team
-
Mailing list archive
-
Message #14434
[Merge] lp:~widelands-dev/widelands/bug-1786613-10s-return-skipped into lp:widelands
Toni Förster has proposed merging lp:~widelands-dev/widelands/bug-1786613-10s-return-skipped into lp:widelands.
Commit message:
introduced the return value no_stats for work programs.
Requested reviews:
hessenfarmer (stephan-lutz)
Related bugs:
Bug #1786613 in widelands: "production times are 10s longer when return=skipped"
https://bugs.launchpad.net/widelands/+bug/1786613
For more details, see:
https://code.launchpad.net/~widelands-dev/widelands/bug-1786613-10s-return-skipped/+merge/354381
When the program returns=no_stats it enters the None case. No stats are calculated but in case it has been return=skipped before it gets removed from the skipped_programs-stack.
--
Your team Widelands Developers is subscribed to branch lp:~widelands-dev/widelands/bug-1786613-10s-return-skipped.
=== modified file 'data/campaigns/emp04.wmf/scripting/tribes/farm1.lua'
--- data/campaigns/emp04.wmf/scripting/tribes/farm1.lua 2018-07-31 06:17:07 +0000
+++ data/campaigns/emp04.wmf/scripting/tribes/farm1.lua 2018-09-06 08:41:46 +0000
@@ -41,7 +41,7 @@
actions = {
"call=plant",
"call=harvest",
- "return=skipped"
+ "return=no_stats"
}
},
plant = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/armorsmithy/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/armorsmithy/init.lua 2017-09-03 07:59:51 +0000
+++ data/tribes/buildings/productionsites/atlanteans/armorsmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -144,7 +144,7 @@
actions = {
"call=produce_shield_steel",
"call=produce_shield_advanced",
- "return=skipped"
+ "return=no_stats"
}
},
produce_shield_steel = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/blackroot_farm/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/blackroot_farm/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/atlanteans/blackroot_farm/init.lua 2018-09-06 08:41:46 +0000
@@ -49,7 +49,7 @@
actions = {
"call=plant",
"call=harvest",
- "return=skipped"
+ "return=no_stats"
}
},
plant = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/crystalmine/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/crystalmine/init.lua 2018-03-04 14:11:19 +0000
+++ data/tribes/buildings/productionsites/atlanteans/crystalmine/init.lua 2018-09-06 08:41:46 +0000
@@ -63,7 +63,7 @@
"call=mine_granite",
"call=mine_quartz",
"call=mine_diamond",
- "return=skipped"
+ "return=no_stats"
}
},
mine_granite = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/farm/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/farm/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/atlanteans/farm/init.lua 2018-09-06 08:41:46 +0000
@@ -53,7 +53,7 @@
actions = {
"call=plant",
"call=harvest",
- "return=skipped"
+ "return=no_stats"
}
},
plant = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/mill/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/mill/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/atlanteans/mill/init.lua 2018-09-06 08:41:46 +0000
@@ -57,7 +57,7 @@
actions = {
"call=produce_cornmeal",
"call=produce_blackroot_flour",
- "return=skipped"
+ "return=no_stats"
}
},
produce_cornmeal = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/quarry/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/quarry/init.lua 2018-07-08 16:10:50 +0000
+++ data/tribes/buildings/productionsites/atlanteans/quarry/init.lua 2018-09-06 08:41:46 +0000
@@ -44,7 +44,7 @@
-- This order is on purpose so that the productivity
-- drops fast once all rocks are gone.
"call=mine_stone",
- "return=skipped"
+ "return=no_stats"
},
},
mine_stone = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/shipyard/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/shipyard/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/atlanteans/shipyard/init.lua 2018-09-06 08:41:46 +0000
@@ -65,7 +65,7 @@
actions = {
"sleep=20000",
"call=ship",
- "return=skipped"
+ "return=no_stats"
}
},
ship = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/smelting_works/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/smelting_works/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/atlanteans/smelting_works/init.lua 2018-09-06 08:41:46 +0000
@@ -58,7 +58,7 @@
"call=smelt_iron",
"call=smelt_gold",
"call=smelt_iron",
- "return=skipped"
+ "return=no_stats"
}
},
smelt_iron = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/smokery/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/smokery/init.lua 2017-09-03 07:59:51 +0000
+++ data/tribes/buildings/productionsites/atlanteans/smokery/init.lua 2018-09-06 08:41:46 +0000
@@ -60,7 +60,7 @@
"call=smoke_fish",
"call=smoke_meat",
"call=smoke_fish",
- "return=skipped"
+ "return=no_stats"
}
},
smoke_meat = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/toolsmithy/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/toolsmithy/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/atlanteans/toolsmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -76,7 +76,7 @@
"call=produce_saw",
"call=produce_scythe",
"call=produce_shovel",
- "return=skipped"
+ "return=no_stats"
}
},
produce_bread_paddle = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/weaponsmithy/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/weaponsmithy/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/atlanteans/weaponsmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -65,7 +65,7 @@
"call=produce_trident_steel",
"call=produce_trident_double",
"call=produce_trident_heavy_double",
- "return=skipped"
+ "return=no_stats"
}
},
produce_trident_light = {
=== modified file 'data/tribes/buildings/productionsites/atlanteans/weaving_mill/init.lua'
--- data/tribes/buildings/productionsites/atlanteans/weaving_mill/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/atlanteans/weaving_mill/init.lua 2018-09-06 08:41:46 +0000
@@ -60,7 +60,7 @@
"call=produce_spidercloth",
"call=produce_tabard",
"call=produce_tabard_golden",
- "return=skipped"
+ "return=no_stats"
}
},
produce_spidercloth = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/ax_workshop/init.lua'
--- data/tribes/buildings/productionsites/barbarians/ax_workshop/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/barbarians/ax_workshop/init.lua 2018-09-06 08:41:46 +0000
@@ -69,7 +69,7 @@
"call=produce_ax",
"call=produce_ax_sharp",
"call=produce_ax_broad",
- "return=skipped"
+ "return=no_stats"
}
},
produce_ax = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/big_inn/init.lua'
--- data/tribes/buildings/productionsites/barbarians/big_inn/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/barbarians/big_inn/init.lua 2018-09-06 08:41:46 +0000
@@ -62,7 +62,7 @@
"call=produce_ration",
"call=produce_snack",
"call=produce_meal",
- "return=skipped"
+ "return=no_stats"
}
},
produce_ration = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/farm/init.lua'
--- data/tribes/buildings/productionsites/barbarians/farm/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/barbarians/farm/init.lua 2018-09-06 08:41:46 +0000
@@ -61,7 +61,7 @@
actions = {
"call=plant",
"call=harvest",
- "return=skipped"
+ "return=no_stats"
}
},
plant = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/helmsmithy/init.lua'
--- data/tribes/buildings/productionsites/barbarians/helmsmithy/init.lua 2017-09-03 07:59:51 +0000
+++ data/tribes/buildings/productionsites/barbarians/helmsmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -70,7 +70,7 @@
"call=produce_helmet",
"call=produce_helmet_mask",
"call=produce_helmet_warhelm",
- "return=skipped"
+ "return=no_stats"
}
},
produce_helmet = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/inn/init.lua'
--- data/tribes/buildings/productionsites/barbarians/inn/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/barbarians/inn/init.lua 2018-09-06 08:41:46 +0000
@@ -59,7 +59,7 @@
actions = {
"call=produce_ration",
"call=produce_snack",
- "return=skipped"
+ "return=no_stats"
}
},
produce_ration = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/metal_workshop/init.lua'
--- data/tribes/buildings/productionsites/barbarians/metal_workshop/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/barbarians/metal_workshop/init.lua 2018-09-06 08:41:46 +0000
@@ -86,7 +86,7 @@
"call=produce_pick",
"call=produce_scythe",
"call=produce_shovel",
- "return=skipped"
+ "return=no_stats"
}
},
produce_bread_paddle = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/quarry/init.lua'
--- data/tribes/buildings/productionsites/barbarians/quarry/init.lua 2018-07-08 16:10:50 +0000
+++ data/tribes/buildings/productionsites/barbarians/quarry/init.lua 2018-09-06 08:41:46 +0000
@@ -51,7 +51,7 @@
-- This order is on purpose so that the productivity
-- drops fast once all rocks are gone.
"call=mine_stone",
- "return=skipped"
+ "return=no_stats"
},
},
mine_stone = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/reed_yard/init.lua'
--- data/tribes/buildings/productionsites/barbarians/reed_yard/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/barbarians/reed_yard/init.lua 2018-09-06 08:41:46 +0000
@@ -45,7 +45,7 @@
actions = {
"call=plant",
"call=harvest",
- "return=skipped"
+ "return=no_stats"
}
},
plant = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/shipyard/init.lua'
--- data/tribes/buildings/productionsites/barbarians/shipyard/init.lua 2018-07-08 16:10:50 +0000
+++ data/tribes/buildings/productionsites/barbarians/shipyard/init.lua 2018-09-06 08:41:46 +0000
@@ -64,7 +64,7 @@
actions = {
"sleep=20000",
"call=ship",
- "return=skipped"
+ "return=no_stats"
}
},
ship = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/smelting_works/init.lua'
--- data/tribes/buildings/productionsites/barbarians/smelting_works/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/barbarians/smelting_works/init.lua 2018-09-06 08:41:46 +0000
@@ -62,7 +62,7 @@
"call=smelt_iron",
"call=smelt_gold",
"call=smelt_iron",
- "return=skipped"
+ "return=no_stats"
}
},
smelt_iron = {
=== modified file 'data/tribes/buildings/productionsites/barbarians/warmill/init.lua'
--- data/tribes/buildings/productionsites/barbarians/warmill/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/barbarians/warmill/init.lua 2018-09-06 08:41:46 +0000
@@ -76,7 +76,7 @@
"call=produce_ax_bronze",
"call=produce_ax_battle",
"call=produce_ax_warriors",
- "return=skipped"
+ "return=no_stats"
}
},
produce_ax = {
=== modified file 'data/tribes/buildings/productionsites/empire/armorsmithy/init.lua'
--- data/tribes/buildings/productionsites/empire/armorsmithy/init.lua 2017-09-03 07:59:51 +0000
+++ data/tribes/buildings/productionsites/empire/armorsmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -71,7 +71,7 @@
"call=produce_armor",
"call=produce_armor_chain",
"call=produce_armor_gilded",
- "return=skipped"
+ "return=no_stats"
}
},
produce_armor_helmet = {
=== modified file 'data/tribes/buildings/productionsites/empire/farm/init.lua'
--- data/tribes/buildings/productionsites/empire/farm/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/empire/farm/init.lua 2018-09-06 08:41:46 +0000
@@ -52,7 +52,7 @@
actions = {
"call=plant",
"call=harvest",
- "return=skipped"
+ "return=no_stats"
}
},
plant = {
=== modified file 'data/tribes/buildings/productionsites/empire/inn/init.lua'
--- data/tribes/buildings/productionsites/empire/inn/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/empire/inn/init.lua 2018-09-06 08:41:46 +0000
@@ -55,7 +55,7 @@
actions = {
"call=produce_ration",
"call=produce_meal",
- "return=skipped"
+ "return=no_stats"
}
},
produce_ration = {
=== modified file 'data/tribes/buildings/productionsites/empire/marblemine/init.lua'
--- data/tribes/buildings/productionsites/empire/marblemine/init.lua 2017-09-03 07:59:51 +0000
+++ data/tribes/buildings/productionsites/empire/marblemine/init.lua 2018-09-06 08:41:46 +0000
@@ -62,7 +62,7 @@
actions = {
"call=mine_marble",
"call=mine_granite",
- "return=skipped"
+ "return=no_stats"
}
},
mine_marble = {
=== modified file 'data/tribes/buildings/productionsites/empire/quarry/init.lua'
--- data/tribes/buildings/productionsites/empire/quarry/init.lua 2018-07-08 16:10:50 +0000
+++ data/tribes/buildings/productionsites/empire/quarry/init.lua 2018-09-06 08:41:46 +0000
@@ -49,7 +49,7 @@
"call=mine_granite",
"call=mine_granite",
"call=mine_marble", -- This will find marble 2 out of 7 times
- "return=skipped"
+ "return=no_stats"
}
},
mine_granite = {
=== modified file 'data/tribes/buildings/productionsites/empire/shipyard/init.lua'
--- data/tribes/buildings/productionsites/empire/shipyard/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/empire/shipyard/init.lua 2018-09-06 08:41:46 +0000
@@ -64,7 +64,7 @@
actions = {
"sleep=20000",
"call=ship",
- "return=skipped"
+ "return=no_stats"
}
},
ship = {
=== modified file 'data/tribes/buildings/productionsites/empire/smelting_works/init.lua'
--- data/tribes/buildings/productionsites/empire/smelting_works/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/empire/smelting_works/init.lua 2018-09-06 08:41:46 +0000
@@ -63,7 +63,7 @@
"call=smelt_iron",
"call=smelt_gold",
"call=smelt_iron",
- "return=skipped"
+ "return=no_stats"
}
},
smelt_iron = {
=== modified file 'data/tribes/buildings/productionsites/empire/toolsmithy/init.lua'
--- data/tribes/buildings/productionsites/empire/toolsmithy/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/empire/toolsmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -75,7 +75,7 @@
"call=produce_saw",
"call=produce_scythe",
"call=produce_shovel",
- "return=skipped"
+ "return=no_stats"
}
},
produce_felling_ax = {
=== modified file 'data/tribes/buildings/productionsites/empire/vineyard/init.lua'
--- data/tribes/buildings/productionsites/empire/vineyard/init.lua 2017-11-18 21:23:09 +0000
+++ data/tribes/buildings/productionsites/empire/vineyard/init.lua 2018-09-06 08:41:46 +0000
@@ -51,7 +51,7 @@
actions = {
"call=plant",
"call=harvest",
- "return=skipped"
+ "return=no_stats"
}
},
plant = {
=== modified file 'data/tribes/buildings/productionsites/empire/weaponsmithy/init.lua'
--- data/tribes/buildings/productionsites/empire/weaponsmithy/init.lua 2017-11-18 17:57:00 +0000
+++ data/tribes/buildings/productionsites/empire/weaponsmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -70,7 +70,7 @@
"call=produce_spear_advanced",
"call=produce_spear_heavy",
"call=produce_spear_war",
- "return=skipped"
+ "return=no_stats"
}
},
produce_spear_wooden = {
=== modified file 'data/tribes/buildings/productionsites/frisians/aqua_farm/init.lua'
--- data/tribes/buildings/productionsites/frisians/aqua_farm/init.lua 2018-07-17 10:13:49 +0000
+++ data/tribes/buildings/productionsites/frisians/aqua_farm/init.lua 2018-09-06 08:41:46 +0000
@@ -56,7 +56,7 @@
actions = {
"call=breed_fish",
"call=fish_pond",
- "return=skipped",
+ "return=no_stats",
},
},
breed_fish = {
=== modified file 'data/tribes/buildings/productionsites/frisians/armor_smithy_large/init.lua'
--- data/tribes/buildings/productionsites/frisians/armor_smithy_large/init.lua 2018-07-17 10:13:49 +0000
+++ data/tribes/buildings/productionsites/frisians/armor_smithy_large/init.lua 2018-09-06 08:41:46 +0000
@@ -67,7 +67,7 @@
"call=produce_hg",
"call=produce_s3",
"call=produce_s4",
- "return=skipped",
+ "return=no_stats",
},
},
produce_s3 = {
=== modified file 'data/tribes/buildings/productionsites/frisians/armor_smithy_small/init.lua'
--- data/tribes/buildings/productionsites/frisians/armor_smithy_small/init.lua 2018-07-17 10:13:49 +0000
+++ data/tribes/buildings/productionsites/frisians/armor_smithy_small/init.lua 2018-09-06 08:41:46 +0000
@@ -66,7 +66,7 @@
"call=produce_s2",
"call=produce_h",
"call=produce_s2",
- "return=skipped",
+ "return=no_stats",
},
},
produce_s1 = {
=== modified file 'data/tribes/buildings/productionsites/frisians/blacksmithy/init.lua'
--- data/tribes/buildings/productionsites/frisians/blacksmithy/init.lua 2018-07-08 12:38:44 +0000
+++ data/tribes/buildings/productionsites/frisians/blacksmithy/init.lua 2018-09-06 08:41:46 +0000
@@ -86,7 +86,7 @@
"call=produce_8",
"call=produce_7",
"call=produce_6",
- "return=skipped",
+ "return=no_stats",
},
},
produce_1 = {
=== modified file 'data/tribes/buildings/productionsites/frisians/drinking_hall/init.lua'
--- data/tribes/buildings/productionsites/frisians/drinking_hall/init.lua 2018-07-09 10:44:31 +0000
+++ data/tribes/buildings/productionsites/frisians/drinking_hall/init.lua 2018-09-06 08:41:46 +0000
@@ -65,7 +65,7 @@
actions = {
"call=produce_ration",
"call=produce_meal",
- "return=skipped"
+ "return=no_stats"
}
},
produce_ration = {
=== modified file 'data/tribes/buildings/productionsites/frisians/farm/init.lua'
--- data/tribes/buildings/productionsites/frisians/farm/init.lua 2018-07-18 08:23:41 +0000
+++ data/tribes/buildings/productionsites/frisians/farm/init.lua 2018-09-06 08:41:46 +0000
@@ -64,7 +64,7 @@
actions = {
"call=plant_barley",
"call=harvest_barley",
- "return=skipped"
+ "return=no_stats"
}
},
plant_barley = {
=== modified file 'data/tribes/buildings/productionsites/frisians/furnace/init.lua'
--- data/tribes/buildings/productionsites/frisians/furnace/init.lua 2018-07-08 17:54:33 +0000
+++ data/tribes/buildings/productionsites/frisians/furnace/init.lua 2018-09-06 08:41:46 +0000
@@ -72,7 +72,7 @@
"call=smelt_iron",
"call=smelt_gold",
"call=smelt_iron",
- "return=skipped",
+ "return=no_stats",
},
},
smelt_iron = {
=== modified file 'data/tribes/buildings/productionsites/frisians/honey_bread_bakery/init.lua'
--- data/tribes/buildings/productionsites/frisians/honey_bread_bakery/init.lua 2018-07-09 11:34:23 +0000
+++ data/tribes/buildings/productionsites/frisians/honey_bread_bakery/init.lua 2018-09-06 08:41:46 +0000
@@ -64,7 +64,7 @@
"call=bake_honey",
"call=bake_normal",
"call=bake_honey",
- "return=skipped"
+ "return=no_stats"
}
},
bake_honey = {
=== modified file 'data/tribes/buildings/productionsites/frisians/mead_brewery/init.lua'
--- data/tribes/buildings/productionsites/frisians/mead_brewery/init.lua 2018-07-09 11:34:23 +0000
+++ data/tribes/buildings/productionsites/frisians/mead_brewery/init.lua 2018-09-06 08:41:46 +0000
@@ -62,7 +62,7 @@
"call=brew_mead",
"call=brew_beer",
"call=brew_mead",
- "return=skipped"
+ "return=no_stats"
}
},
brew_mead = {
=== modified file 'data/tribes/buildings/productionsites/frisians/quarry/init.lua'
--- data/tribes/buildings/productionsites/frisians/quarry/init.lua 2018-07-17 10:13:49 +0000
+++ data/tribes/buildings/productionsites/frisians/quarry/init.lua 2018-09-06 08:41:46 +0000
@@ -51,7 +51,7 @@
-- This order is on purpose so that the productivity
-- drops fast once all rocks are gone.
"call=mine_stone",
- "return=skipped"
+ "return=no_stats"
},
},
mine_stone = {
=== modified file 'data/tribes/buildings/productionsites/frisians/recycling_center/init.lua'
--- data/tribes/buildings/productionsites/frisians/recycling_center/init.lua 2018-07-09 09:25:35 +0000
+++ data/tribes/buildings/productionsites/frisians/recycling_center/init.lua 2018-09-06 08:41:46 +0000
@@ -77,7 +77,7 @@
"call=smelt_mixed",
"call=smelt_iron",
"call=make_fur",
- "return=skipped"
+ "return=no_stats"
}
},
make_fur = {
=== modified file 'data/tribes/buildings/productionsites/frisians/reed_farm/init.lua'
--- data/tribes/buildings/productionsites/frisians/reed_farm/init.lua 2018-07-17 10:13:49 +0000
+++ data/tribes/buildings/productionsites/frisians/reed_farm/init.lua 2018-09-06 08:41:46 +0000
@@ -54,7 +54,7 @@
actions = {
"call=plant_reed",
"call=harvest_reed",
- "return=skipped"
+ "return=no_stats"
}
},
plant_reed = {
=== modified file 'data/tribes/buildings/productionsites/frisians/reindeer_farm/init.lua'
--- data/tribes/buildings/productionsites/frisians/reindeer_farm/init.lua 2018-09-01 13:24:52 +0000
+++ data/tribes/buildings/productionsites/frisians/reindeer_farm/init.lua 2018-09-06 08:41:46 +0000
@@ -68,7 +68,7 @@
"call=make_fur",
"call=recruit_deer",
"call=make_fur_meat",
- "return=skipped",
+ "return=no_stats",
}
},
recruit_deer = {
=== modified file 'data/tribes/buildings/productionsites/frisians/shipyard/init.lua'
--- data/tribes/buildings/productionsites/frisians/shipyard/init.lua 2018-07-17 10:13:49 +0000
+++ data/tribes/buildings/productionsites/frisians/shipyard/init.lua 2018-09-06 08:41:46 +0000
@@ -58,7 +58,7 @@
actions = {
"sleep=20000",
"call=ship",
- "return=skipped"
+ "return=no_stats"
}
},
ship = {
=== modified file 'data/tribes/buildings/productionsites/frisians/smokery/init.lua'
--- data/tribes/buildings/productionsites/frisians/smokery/init.lua 2018-07-08 17:54:33 +0000
+++ data/tribes/buildings/productionsites/frisians/smokery/init.lua 2018-09-06 08:41:46 +0000
@@ -65,7 +65,7 @@
actions = {
"call=smoke_meat",
"call=smoke_fish",
- "return=skipped"
+ "return=no_stats"
},
},
smoke_fish = {
=== modified file 'data/tribes/buildings/productionsites/frisians/tailors_shop/init.lua'
--- data/tribes/buildings/productionsites/frisians/tailors_shop/init.lua 2018-07-09 10:44:31 +0000
+++ data/tribes/buildings/productionsites/frisians/tailors_shop/init.lua 2018-09-06 08:41:46 +0000
@@ -63,7 +63,7 @@
actions = {
"call=weave_studded",
"call=weave_gold",
- "return=skipped",
+ "return=no_stats",
},
},
weave_studded = {
=== modified file 'data/tribes/buildings/productionsites/frisians/tavern/init.lua'
--- data/tribes/buildings/productionsites/frisians/tavern/init.lua 2018-06-04 06:19:58 +0000
+++ data/tribes/buildings/productionsites/frisians/tavern/init.lua 2018-09-06 08:41:46 +0000
@@ -66,7 +66,7 @@
actions = {
"call=produce_malus",
"call=produce_bonus",
- "return=skipped"
+ "return=no_stats"
},
},
produce_malus = {
=== modified file 'src/logic/map_objects/tribes/production_program.cc'
--- src/logic/map_objects/tribes/production_program.cc 2018-07-12 16:53:21 +0000
+++ src/logic/map_objects/tribes/production_program.cc 2018-09-06 08:41:46 +0000
@@ -467,9 +467,11 @@
result_ = Completed;
else if (match(parameters, "skipped"))
result_ = Skipped;
+ else if (match(parameters, "no_stats"))
+ result_ = None;
else
throw GameDataError(
- "expected %s but found \"%s\"", "{\"failed\"|\"completed\"|\"skipped\"}", parameters);
+ "expected %s but found \"%s\"", "{\"failed\"|\"completed\"|\"skipped\"|\"no_stats\"}", parameters);
if (skip(parameters)) {
if (match_force_skip(parameters, "when")) {
=== modified file 'src/logic/map_objects/tribes/production_program.h'
--- src/logic/map_objects/tribes/production_program.h 2018-07-12 16:53:21 +0000
+++ src/logic/map_objects/tribes/production_program.h 2018-09-06 08:41:46 +0000
@@ -107,10 +107,11 @@
///
/// Parameter syntax:
/// parameters ::= return_value [condition_part]
- /// return_value ::= Failed | Completed | Skipped
+ /// return_value ::= Failed | Completed | Skipped | None
/// Failed ::= "failed"
/// Completed ::= "completed"
/// Skipped ::= "skipped"
+ /// None ::= "no_stats"
/// condition_part ::= when_condition | unless_conition
/// when_condition ::= "when" condition {"and" condition}
/// unless_condition ::= "unless" condition {"or" condition}
@@ -126,8 +127,9 @@
/// Parameter semantics:
/// return_value:
/// If return_value is Failed or Completed, the productionsite's
- /// statistics is updated accordingly. If return_value is Skipped, the
- /// statistics are not affected.
+ /// statistics is updated accordingly. If return_value is Skipped or
+ /// None, the statistics are not affected. But Skipped adds a 10s delay
+ /// before the program is executed again.
/// condition:
/// A boolean condition that can be evaluated to true or false.
/// condition_part:
@@ -235,11 +237,12 @@
/// Parameter syntax:
/// parameters ::= program {handling_directive}
/// handling_directive ::= "on" Result handling_method
- /// Result ::= "failure" | "completion" | "skip"
+ /// Result ::= "failure" | "completion" | "skip" | "no_stats"
/// handling_method ::= Fail | Complete | Skip | Repeat
/// Fail ::= "fail"
/// Ignore ::= "ignore"
/// Repeat ::= "repeat"
+ /// None ::= "no_stats"
/// Parameter semantics:
/// program:
/// The name of a program defined in the productionsite.
@@ -260,6 +263,9 @@
/// * If handling_method is Skip, the command skips the calling
/// program (with the same effect as executing "return=skipped").
/// * If handling_method is "repeat", the command is repeated.
+ /// * If handling_method is None the called program continues normal,
+ /// but no statistics are calculated (with the same effect as
+ /// executing "return=no_stats")
struct ActCall : public Action {
ActCall(char* parameters, const ProductionSiteDescr&);
void execute(Game&, ProductionSite&) const override;
=== modified file 'src/logic/map_objects/tribes/productionsite.cc'
--- src/logic/map_objects/tribes/productionsite.cc 2018-06-19 08:52:49 +0000
+++ src/logic/map_objects/tribes/productionsite.cc 2018-09-06 08:41:46 +0000
@@ -941,6 +941,7 @@
crude_percent_ = crude_percent_ * 98 / 100;
break;
case None:
+ skipped_programs_.erase(program_name);
break;
}
Follow ups