Index: binaries/data/mods/public/simulation/components/Auras.js
===================================================================
--- binaries/data/mods/public/simulation/components/Auras.js	(révision 18110)
+++ binaries/data/mods/public/simulation/components/Auras.js	(copie de travail)
@@ -85,11 +85,13 @@ Auras.prototype.GetAffectedPlayers = fun
 Auras.prototype.CalculateAffectedPlayers = function(name)
 {
 	var affectedPlayers = this.auras[name].affectedPlayers || ["Player"];
 	this.affectedPlayers[name] = [];
 
-	var cmpPlayer = QueryOwnerInterface(this.entity);
+	var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player);
+	if (!cmpPlayer)
+		cmpPlayer = QueryOwnerInterface(this.entity);
 	if (!cmpPlayer)
 		return;
 
 	var numPlayers = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager).GetNumPlayers();
 	for (var i = 0; i < numPlayers; ++i)
@@ -384,19 +386,21 @@ Auras.prototype.OnOwnershipChanged = fun
 	this.Clean();
 };
 
 Auras.prototype.OnDiplomacyChanged = function(msg)
 {
-	var cmpOwnership = Engine.QueryInterface(this.entity, IID_Ownership);
-	if (cmpOwnership && cmpOwnership.GetOwner() == msg.player)
+	var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player);
+	if (cmpPlayer && (cmpPlayer.GetPlayerID() == msg.player || cmpPlayer.GetPlayerID() == msg.otherPlayer) ||
+	   IsOwnedByPlayer(msg.player, this.entity) ||
+	   IsOwnedByPlayer(msg.otherPlayer, this.entity))
 		this.Clean();
 };
 
 Auras.prototype.OnGlobalResearchFinished = function(msg)
 {
-	let cmpOwnership = Engine.QueryInterface(this.entity, IID_Ownership);
-	if (!cmpOwnership || cmpOwnership.GetOwner() != msg.player)
+	var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player);
+	if ((!cmpPlayer || cmpPlayer.GetPlayerID() != msg.player) && !IsOwnedByPlayer(msg.player, this.entity))
 		return;
 	let auraNames = this.GetAuraNames();
 	let needsClean = false;
 	for (let name of auraNames)
 	{
Index: binaries/data/mods/public/simulation/components/Player.js
===================================================================
--- binaries/data/mods/public/simulation/components/Player.js	(révision 18110)
+++ binaries/data/mods/public/simulation/components/Player.js	(copie de travail)
@@ -387,11 +387,11 @@ Player.prototype.SetTeam = function(team
 
 			this.SetAlly(i);
 			cmpPlayer.SetAlly(this.playerID);
 		}
 
-	Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID });
+	Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID, "otherPlayer": null });
 };
 
 Player.prototype.SetLockTeams = function(value)
 {
 	this.teamsLocked = value;
@@ -408,11 +408,11 @@ Player.prototype.GetDiplomacy = function
 };
 
 Player.prototype.SetDiplomacy = function(dipl)
 {
 	this.diplomacy = dipl;
-	Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID });
+	Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID, "otherPlayer": null });
 };
 
 Player.prototype.SetDiplomacyIndex = function(idx, value)
 {
 	var cmpPlayerManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager);
@@ -425,11 +425,11 @@ Player.prototype.SetDiplomacyIndex = fun
 
 	if (this.state != "active" || cmpPlayer.state != "active")
 		return;
 
 	this.diplomacy[idx] = value;
-	Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID });
+	Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID, "otherPlayer": cmpPlayer.GetPlayerID() });
 
 	// Mutual worsening of relations
 	if (cmpPlayer.diplomacy[this.playerID] > value)
 		cmpPlayer.SetDiplomacyIndex(this.playerID, value);
 };
Index: binaries/data/mods/public/simulation/data/technologies/hellenes/teambonus_athen_delian_league.json
===================================================================
--- binaries/data/mods/public/simulation/data/technologies/hellenes/teambonus_athen_delian_league.json	(révision 18110)
+++ binaries/data/mods/public/simulation/data/technologies/hellenes/teambonus_athen_delian_league.json	(nonexistent)
@@ -1,8 +0,0 @@
-{
-	"genericName": "Delian League",
-	"autoResearch": true,
-	"description": "Shortly after the great naval victories at Salamis and Mycale, the Greek city-states instituted the so-called Delian League in 478 BC, whose purpose was to push the Persians out of the Aegean region. The allied states contributed ships and money, while the Athenians offered their entire navy.",
-	"requirements": {"civ": "athen"},
-	"modifications": [{"value": "Cost/BuildTime", "multiply": 0.75}],
-	"affects": ["Warship"]
-}
\ Pas de fin de ligne à la fin du fichier

Modification de propriétés sur binaries/data/mods/public/simulation/data/technologies/hellenes/teambonus_athen_delian_league.json
___________________________________________________________________
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Index: binaries/data/mods/public/simulation/templates/special/player_athen.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/special/player_athen.xml	(nonexistent)
+++ binaries/data/mods/public/simulation/templates/special/player_athen.xml	(copie de travail)
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Entity parent="special/player">
+  <Auras datatype="tokens">teambonuses/athen_player_teambonus</Auras>
+</Entity>
Index: binaries/data/mods/public/simulation/templates/special/player_iber.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/special/player_iber.xml	(nonexistent)
+++ binaries/data/mods/public/simulation/templates/special/player_iber.xml	(copie de travail)
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Entity parent="special/player">
+  <Auras datatype="tokens">teambonuses/iber_player_teambonus</Auras>
+</Entity>
Index: binaries/data/mods/public/simulation/templates/special/player_sele.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/special/player_sele.xml	(révision 18110)
+++ binaries/data/mods/public/simulation/templates/special/player_sele.xml	(copie de travail)
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Entity parent="special/player">
+  <Auras datatype="tokens">teambonuses/sele_player_teambonus</Auras>
   <EntityLimits>
     <LimitRemovers>
       <CivilCentre>
         <RequiredTechs datatype="tokens">phase_town</RequiredTechs>
         <RequiredClasses datatype="tokens">Hero</RequiredClasses>
