vectorplexus
Chieftain
- Joined
- May 11, 2017
- Messages
- 13
Not sure if this is the right place to ask this, but here it goes...
I'm trying to create a simple script to allow me to change the LeaderNameType while in game. For now I'm just testing stuff around, but my aim will be to use it to make leaders that will change their look as the Eras go by. I know this will probably break Leader specific achievements, but I cant see any other way I could change this, unlesss I can tap directly into the XMLs that specify the Leader art/BLP this is what I have so far. Using a turn event for now, aswell as normal Leader Types, just to test things out:
The commented lines are things I tried, but I always get this error:
function expected instead of nil
stack traceback:
EraTracker.lua:22: in function 'OnPlayerTurnActivated'
[C]: in function 'func'
[C]: in function '(anonymous)'
Not even sure if what I'm trying to achieve is possible, I wanted to go with the feature that there was on CIV: BE, which made leaders change the looks while their affinities progressed.
I'm trying to create a simple script to allow me to change the LeaderNameType while in game. For now I'm just testing stuff around, but my aim will be to use it to make leaders that will change their look as the Eras go by. I know this will probably break Leader specific achievements, but I cant see any other way I could change this, unlesss I can tap directly into the XMLs that specify the Leader art/BLP this is what I have so far. Using a turn event for now, aswell as normal Leader Types, just to test things out:
Code:
function OnPlayerTurnActivated(ePlayer:number, bFirstTimeThisTurn:boolean)
local pPlayer = Players[ ePlayer ];
local pPlayerConfig :table = PlayerConfigurations[ePlayer];
if (pPlayer:IsAlive() == true and pPlayer:IsMajor() == true) then
print("PlayerTurnActivated ", ePlayer, pPlayer, pPlayerConfig:GetLeaderTypeName());
if (pPlayerConfig:GetLeaderTypeName() == "LEADER_GILGAMESH") then
-- pPlayer:SetLeaderTypeName("LEADER_CLEOPATRA");
-- pPlayerConfig:SetLeaderTypeName("LEADER_CLEOPATRA");
-- PlayerConfigurations[pPlayer]:SetLeaderTypeName("LEADER_CLEOPATRA");
-- PlayerConfigurations[ePlayer]:SetLeaderTypeName("LEADER_CLEOPATRA");
end
end
end
Events.PlayerTurnActivated.Add(OnPlayerTurnActivated)
The commented lines are things I tried, but I always get this error:
function expected instead of nil
stack traceback:
EraTracker.lua:22: in function 'OnPlayerTurnActivated'
[C]: in function 'func'
[C]: in function '(anonymous)'
Not even sure if what I'm trying to achieve is possible, I wanted to go with the feature that there was on CIV: BE, which made leaders change the looks while their affinities progressed.