7 ISPanel.initialise(
self)
9 local
isFemale = (
self.gender == "Female" and true) or (
self.gender == "Male" and false)
14 local immutableColor = ImmutableColor.new(
self.hairColor.r,
self.hairColor.g,
self.hairColor.b, 1)
17 self.
survivor:getHumanVisual():setBeardColor(immutableColor)
19 self.
survivor:getHumanVisual():setNaturalBeardColor(immutableColor)
23 local
title = "Appearance"
24 local
subtitle = "Customize your character's appearance."
25 local factionWidth = 500
26 local factionHeight = 300
32 local entryWidth = 200
34 local entryX = xPadding
35 local labelX = xPadding - 5
41 self.
title = ISLabel:new(
self.
uiHelper.GetMiddle(
self.
width, UIFont.Title,
title),
yOffset, 25,
title, 1, 1, 1, 1, UIFont.Title, true)
47 self.
subtitle = ISLabel:new(
self.
uiHelper.GetMiddle(
self.
width, UIFont.Large,
subtitle),
yOffset, 25,
subtitle, 1, 1, 1, 1, UIFont.Large, true)
59 self.hairLabel = ISLabel:new(entryX - 5,
yOffset, 25, "Hair:", 1, 1, 1, 1, UIFont.Large, false)
60 self.hairLabel:initialise()
67 for
i = 1, hairStyles:size() do
68 local styleId = hairStyles:get(
i - 1)
69 local hairStyle =
isFemale and getHairStylesInstance():FindFemaleStyle(styleId) or getHairStylesInstance():FindMaleStyle(styleId)
73 label = getText("IGUI_Hair_Bald")
78 if not hairStyle:isNoChoose() then
79 self.hairDropdown:addOptionWithData(
label, hairStyles:get(
i - 1))
83 self.hairDropdown:initialise()
84 self:onHairChanged(
self.hairDropdown)
102 label = getText("IGUI_Beard_None")
121 if
self.factionsClothing then
138 if not clothingTable then return
nil,
nil end
140 local
label = ISLabel:new(
x - 5,
y,
height, labelText, 1, 1, 1, 1, UIFont.Large, false)
146 if clothingTable then
147 for k,
v in pairs(clothingTable) do
148 dropdown:addOptionWithData(
v, {location = clothingLocation,
itemID = k})
157 if not clothingTable then
158 label:setVisible(false)
189 local location = dropdownData.location
190 local
item = InventoryItemFactory.CreateItem(
itemID)
203 self.gender = newGender
205 local
isFemale = (
self.gender ==
"Female" and true) or (
self.gender ==
"Male" and false)
216 self:onHairChanged(
self.hairDropdown)
218 self.wasGenderUpdated = true
224 local immutableColor = ImmutableColor.new(
self.hairColor.r,
self.hairColor.g,
self.hairColor.b, 1)
226 self.
survivor:getHumanVisual():setHairColor(immutableColor)
227 self.
survivor:getHumanVisual():setBeardColor(immutableColor)
228 self.
survivor:getHumanVisual():setNaturalHairColor(immutableColor)
229 self.
survivor:getHumanVisual():setNaturalBeardColor(immutableColor)
239 self.hairDropdown:clear()
241 for
i = 1, hairStyles:size() do
242 local styleId = hairStyles:get(
i - 1)
243 local hairStyle =
self.
survivor:
isFemale() and getHairStylesInstance():FindFemaleStyle(styleId) or getHairStylesInstance():FindMaleStyle(styleId)
244 local
label = styleId
247 label = getText(
"IGUI_Hair_Bald")
252 if not hairStyle:isNoChoose() then
253 self.hairDropdown:addOptionWithData(
label, hairStyles:get(
i - 1))
257 if
self.wasGenderUpdated then
261 self:onHairChanged(
self.hairDropdown)
267 local
isFemale = (
self.gender ==
"Female" and true) or (
self.gender ==
"Male" and false)
278 label = getText(
"IGUI_Beard_None")
315 o = ISPanel:
new(parameters.x, parameters.y, parameters.width, parameters.height)
316 setmetatable(o,
self)
318 o.backgroundColor = {r=0, g=0, b=0,
a=0}
319 o.borderColor = {r=0, g=0, b=0,
a=0}
320 o.moveWithMouse =
false
321 o.playerObject = parameters.playerObject
322 o.faction = parameters.faction
323 o.gender = parameters.gender
324 o.skinColor = parameters.skinColor
325 o.hairColor = parameters.hairColor
void FrameworkZ UI CharacterPreview()
void self characterPreview()
void self self faceDropdown()
void self self vestDropdown()
void self self socksDropdown()
void FrameworkZ UI CreateCharacterAppearance()
void self self pantsDropdown()
void self self overshirtDropdown()
void self self backpackDropdown()
void self beardDropdown()
void self self earsDropdown()
void self self shoesDropdown()
void self self beltDropdown()
void self self undershirtDropdown()
void self self headDropdown()
void self undershirtLabel
void self self glovesDropdown()
void self FrameworkZ UI self nil
void processingNotification backgroundColor a()
void self playerListPanel render()
Factions module for FrameworkZ. Defines and interacts with FACTION object.
void onClothingChanged(dropdown)
void onHairChanged(dropdown)
void addClothingOption(x, y, height, entryWidth, labelText, clothingLocation, clothingTable)
void onBeardChanged(dropdown)
void resetGender(newGender)
Contains all of the User Interfaces for FrameworkZ.