Ticket #2445: teambonus_withauras.5.diff
File teambonus_withauras.5.diff, 3.4 KB (added by , 8 years ago) |
---|
-
binaries/data/mods/public/simulation/components/Auras.js
87 87 var affectedPlayers = this.auras[name].affectedPlayers || ["Player"]; 88 88 this.affectedPlayers[name] = []; 89 89 90 var cmpPlayer = QueryOwnerInterface(this.entity);90 var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player); 91 91 if (!cmpPlayer) 92 cmpPlayer = QueryOwnerInterface(this.entity); 93 if (!cmpPlayer) 92 94 return; 93 95 94 96 var numPlayers = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager).GetNumPlayers(); … … 386 388 387 389 Auras.prototype.OnDiplomacyChanged = function(msg) 388 390 { 389 var cmpOwnership = Engine.QueryInterface(this.entity, IID_Ownership); 390 if (cmpOwnership && cmpOwnership.GetOwner() == msg.player) 391 var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player); 392 if (cmpPlayer && (cmpPlayer.GetPlayerID() == msg.player || cmpPlayer.GetPlayerID() == msg.otherPlayer) 393 || IsOwnedByPlayer(msg.player, this.entity) 394 || IsOwnedByPlayer(msg.otherPlayer, this.entity)) 391 395 this.Clean(); 392 396 }; 393 397 394 398 Auras.prototype.OnGlobalResearchFinished = function(msg) 395 399 { 396 let cmpOwnership = Engine.QueryInterface(this.entity, IID_Ownership);397 if ( !cmpOwnership || cmpOwnership.GetOwner() != msg.player)400 var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player); 401 if ((!cmpPlayer || cmpPlayer.GetPlayerID() != msg.player) && !IsOwnedByPlayer(msg.player, this.entity)) 398 402 return; 399 403 let auraNames = this.GetAuraNames(); 400 404 let needsClean = false; -
binaries/data/mods/public/simulation/components/Player.js
427 427 return; 428 428 429 429 this.diplomacy[idx] = value; 430 Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID });430 Engine.BroadcastMessage(MT_DiplomacyChanged, { "player": this.playerID, "otherPlayer": cmpPlayer.GetPlayerID() }); 431 431 432 432 // Mutual worsening of relations 433 433 if (cmpPlayer.diplomacy[this.playerID] > value) -
binaries/data/mods/public/simulation/templates/special/player_iber.xml
1 <?xml version="1.0" encoding="utf-8"?> 2 <Entity parent="special/player"> 3 <Auras datatype="tokens">iber_player_teambonus</Auras> 4 </Entity> -
binaries/data/mods/public/simulation/templates/special/player_sele.xml
1 1 <?xml version="1.0" encoding="utf-8"?> 2 2 <Entity parent="special/player"> 3 <Auras datatype="tokens">sele_player_teambonus</Auras> 3 4 <EntityLimits> 4 5 <LimitRemovers> 5 6 <CivilCentre> 6 7 <RequiredTechs datatype="tokens">phase_town</RequiredTechs> 7 8 <RequiredClasses datatype="tokens">Hero</RequiredClasses>