whoward69
DLL Minion
Anything that doesn't require commercial (ie paid for) third party libraries/environments to debug the base game code
For CivV Lua coders who've not played with CivBE this is what I'm talking about
Spoiler :
For CivV Lua coders who've not played with CivBE this is what I'm talking about
Code:
local DEBUG_CACHE_SCREEN_NAME [COLOR="red"][B]:string[/B][/COLOR] = "ArtifactsPopup";
local DEBUG_SHOW_INFO :boolean= false;
local DROP_OVERLAP_REQUIRED :number = 0.4;
local CATEGORY_ICONS_ATLAS :string = "ARTIFACT_CATEGORY_ATLAS"
local HEADER_WIDTH_NO_SCROLLBAR :number = 472;
local HEADER_WIDTH_SCROLLBAR :number = HEADER_WIDTH_NO_SCROLLBAR - 16;
local SelectedType :table = {};
local WasShown :boolean = false;
Code:
[COLOR="red"][B]hstructure [/B][/COLOR]ArtifactDataStruct
Category : string
CategoryInfo : string
ExplanationInfo : string
Description : string
IconAtlas : string
PortraitIndex : number
Type : string
UniqueID : number -- while named "index" in engine is actually unique ID
Condition : number
UIPriority : number
end
Code:
-- Obtain data.
local artifacts : table = m_player:GetArtifactData();
for _,artifactPlayer:table in ipairs(artifacts) do
local artifact : table = GameInfo.Artifacts[artifactPlayer.Type];
local artifactData : ArtifactDataStruct = [COLOR="Red"][B]hmake [/B][/COLOR]ArtifactDataStruct {
Category = artifact.Category,
CategoryInfo = GameInfo.ArtifactCategories[artifact.Category].Description,
Condition = m_player:GetArtifactValueAtIndex(artifactPlayer.Index),
ExplanationInfo = artifact.Explanation,
Description = artifact.Description,
IconAtlas = artifact.IconAtlas,
PortraitIndex = artifact.PortraitIndex,
Type = artifact.Type,
UniqueID = artifactPlayer.Index,
UIPriority = GameInfo.ArtifactCategories[artifact.Category].UIPriority
};
table.insert( data, artifactData);
end