[character_creator] Downgrade to Git commit 0c0e187:
For compatibility with stable server.master
parent
130e546209
commit
0563baec2a
|
@ -73,7 +73,7 @@ The game includes the mods from the default [minetest_game](https://github.com/m
|
|||
* player_action/
|
||||
* [throwing][] ([WTFPL][lic.wtfpl]) -- version: [0.14-79ad788 Git][ver.throwing] *2012-02-10*
|
||||
* player_visuals/
|
||||
* [character_creator][] ([MIT / CC-BY-SA][lic.character_creator]) -- version: [6a0e6aa Git][ver.character_creator]
|
||||
* [character_creator][] ([MIT / CC-BY-SA][lic.character_creator]) -- version: [0c0e187 Git][ver.character_creator] *2015-08-28*
|
||||
* [hidename][] ([MIT][lic.hidename]) -- version [bb52dbc Git][ver.hidename]
|
||||
* [invisibility][] ([MIT][lic.invisibility]) -- version: [bf4156b Git][ver.invisibility] *2016-08-19* ([patched][patch.invisibility])
|
||||
* [playeranim][] ([BSD 2-Clause][lic.playeranim]) - version [0ca8e5a Git][ver.playeranim] *2016-12-07* ([patched][patch.playeranim])
|
||||
|
@ -415,7 +415,7 @@ The game includes the mods from the default [minetest_game](https://github.com/m
|
|||
[ver.bookmarks_gui]: https://github.com/cornernote/minetest-bookmarks_gui/tree/d369dba
|
||||
[ver.bridges]: https://github.com/Sokomine/bridges/tree/5b5f475
|
||||
[ver.campfire]: https://github.com/Napiophelios/campfire/tree/b45acd2
|
||||
[ver.character_creator]: https://github.com/Rui-Minetest/character_creator/tree/6a0e6aa
|
||||
[ver.character_creator]: https://github.com/Rui-Minetest/character_creator/tree/0c0e187
|
||||
[ver.christmas]: https://github.com/TheZenKitteh/minetest-christmas/tree/d3bd872
|
||||
[ver.cme]: https://github.com/BlockMen/cme/tree/e3502a1
|
||||
[ver.coloredwood]: https://github.com/minetest-mods/coloredwood/tree/fc4ab15
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
3d_armor?
|
||||
multiskin?
|
||||
inventory_plus?
|
||||
unified_inventory?
|
||||
unified_inventory?
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
Allows the creation of customized character skins inside the game.
|
|
@ -1,357 +1,170 @@
|
|||
character_creator = {}
|
||||
character_creator.skins = dofile(minetest.get_modpath("character_creator") .. "/skins.lua")
|
||||
local cc = character_creator
|
||||
|
||||
local skin_default = {
|
||||
gender = "Male",
|
||||
height = 1,
|
||||
width = 1,
|
||||
local modpath = minetest.get_modpath("character_creator")
|
||||
local datafile = minetest.get_worldpath().."/character_creator.mt"
|
||||
|
||||
skin = "Fair Skin",
|
||||
face = "Human Face",
|
||||
hair = "Brown Hair",
|
||||
hair_style = "Medium Hair",
|
||||
eyes = "Blue Eyes",
|
||||
tshirt = "Green T-Shirt",
|
||||
pants = "Blue Pants",
|
||||
shoes = "Leather Shoes"
|
||||
}
|
||||
dofile(modpath.."/skins.lua")
|
||||
|
||||
local skins = character_creator.skins
|
||||
local skins_array = {}
|
||||
|
||||
minetest.after(0, function()
|
||||
local function associative_to_array(associative)
|
||||
local array = {}
|
||||
for key in pairs(associative) do
|
||||
table.insert(array, key)
|
||||
end
|
||||
return array
|
||||
local function table_to_list(tbl)
|
||||
local list = ""
|
||||
for str in pairs(tbl) do
|
||||
list = list == "" and str or list..","..str
|
||||
end
|
||||
|
||||
skins_array = {
|
||||
skin = associative_to_array(skins.skin),
|
||||
face = associative_to_array(skins.face),
|
||||
hair = associative_to_array(skins.hair),
|
||||
hair_style = associative_to_array(skins.hair_style),
|
||||
eyes = associative_to_array(skins.eyes),
|
||||
tshirt = associative_to_array(skins.tshirt),
|
||||
pants = associative_to_array(skins.pants),
|
||||
shoes = associative_to_array(skins.shoes)
|
||||
}
|
||||
end)
|
||||
|
||||
-- Saved skins_array indexes in this
|
||||
local skin_indexes = {}
|
||||
|
||||
local function show_formspec(player)
|
||||
local indexes = skin_indexes[player]
|
||||
|
||||
local formspec = "size[15,9.5]"
|
||||
.. "bgcolor[#00000000]"
|
||||
-- Gender
|
||||
.. "button[10,;2.5,.5;male;Male]"
|
||||
.. "button[12.5,;2.5,.5;female;Female]"
|
||||
-- Height
|
||||
.. "button[10,1.1;2.5,.5;taller;Taller]"
|
||||
.. "button[10,2;2.5,.5;shorter;Shorter]"
|
||||
-- Width
|
||||
.. "button[12.5,1.1;2.5,.5;wider;Wider]"
|
||||
.. "button[12.5,2;2.5,.5;thinner;Thinner]"
|
||||
-- Skin
|
||||
.. "button[10,2.75;5,1;skin;" .. skins_array.skin[indexes.skin] .. "]"
|
||||
.. "button[10,2.75;1,1;skin_back;<<]"
|
||||
.. "button[14,2.75;1,1;skin_next;>>]"
|
||||
-- Face
|
||||
.. "button[10,3.5;5,1;face;" .. skins_array.face[indexes.face] .. "]"
|
||||
.. "button[10,3.5;1,1;face_back;<<]"
|
||||
.. "button[14,3.5;1,1;face_next;>>]"
|
||||
-- Hair
|
||||
.. "button[10,4.25;5,1;hair;" .. skins_array.hair[indexes.hair] .. "]"
|
||||
.. "button[10,4.25;1,1;hair_back;<<]"
|
||||
.. "button[14,4.25;1,1;hair_next;>>]"
|
||||
-- Hair Style
|
||||
.. "button[10,5;5,1;hair_style;" .. skins_array.hair_style[indexes.hair_style] .. "]"
|
||||
.. "button[10,5;1,1;hair_style_back;<<]"
|
||||
.. "button[14,5;1,1;hair_style_next;>>]"
|
||||
-- Eyes
|
||||
.. "button[10,5.75;5,1;eyes;" .. skins_array.eyes[indexes.eyes] .. "]"
|
||||
.. "button[10,5.75;1,1;eyes_back;<<]"
|
||||
.. "button[14,5.75;1,1;eyes_next;>>]"
|
||||
-- T-Shirt
|
||||
.. "button[10,6.5;5,1;tshirt;" .. skins_array.tshirt[indexes.tshirt] .. "]"
|
||||
.. "button[10,6.5;1,1;tshirt_back;<<]"
|
||||
.. "button[14,6.5;1,1;tshirt_next;>>]"
|
||||
-- Pants
|
||||
.. "button[10,7.25;5,1;pants;" .. skins_array.pants[indexes.pants] .. "]"
|
||||
.. "button[10,7.25;1,1;pants_back;<<]"
|
||||
.. "button[14,7.25;1,1;pants_next;>>]"
|
||||
-- Shoes
|
||||
.. "button[10,8;5,1;shoes;" .. skins_array.shoes[indexes.shoes] .. "]"
|
||||
.. "button[10,8;1,1;shoes_back;<<]"
|
||||
.. "button[14,8;1,1;shoes_next;>>]"
|
||||
-- Done
|
||||
.. "button_exit[10,9;2.5,.5;done;Done]"
|
||||
.. "button_exit[12.5,9;2.5,.5;cancel;Cancel]"
|
||||
|
||||
minetest.show_formspec(player:get_player_name(), "character_creator", formspec)
|
||||
return list
|
||||
end
|
||||
|
||||
local function load_skin(player)
|
||||
skin_indexes[player] = {}
|
||||
local skin = table_to_list(cc.skin)
|
||||
local face = table_to_list(cc.face)
|
||||
local hair = table_to_list(cc.hair)
|
||||
local hair_style = table_to_list(cc.hair_style)
|
||||
local eyes = table_to_list(cc.eyes)
|
||||
local tshirt = table_to_list(cc.tshirt)
|
||||
local pants = table_to_list(cc.pants)
|
||||
local shoes = table_to_list(cc.shoes)
|
||||
|
||||
if not player:get_attribute("character_creator:gender") then
|
||||
player:set_attribute("character_creator:gender", skin_default.gender)
|
||||
end
|
||||
|
||||
if not player:get_attribute("character_creator:width") then
|
||||
player:set_attribute("character_creator:width", skin_default.width)
|
||||
end
|
||||
|
||||
if not player:get_attribute("character_creator:height") then
|
||||
player:set_attribute("character_creator:height", skin_default.height)
|
||||
end
|
||||
|
||||
local function load_data(data_name)
|
||||
local key = player:get_attribute("character_creator:" .. data_name)
|
||||
local index = table.indexof(skins_array[data_name], key)
|
||||
if index == -1 then
|
||||
index = table.indexof(skins_array[data_name], skin_default[data_name])
|
||||
end
|
||||
|
||||
local indexes = skin_indexes[player]
|
||||
indexes[data_name] = index
|
||||
end
|
||||
|
||||
load_data("skin")
|
||||
load_data("face")
|
||||
load_data("eyes")
|
||||
load_data("hair_style")
|
||||
load_data("hair")
|
||||
load_data("tshirt")
|
||||
load_data("pants")
|
||||
load_data("shoes")
|
||||
local function show_formspec(name)
|
||||
minetest.show_formspec(name, "character_creator",
|
||||
"size[15,10]"..
|
||||
"button_exit[,;2,.5;;Close]"..
|
||||
"textlist[0.00,0.75;3.75,4;cc_skin;"..skin..";1;true]"..
|
||||
"textlist[3.75,0.75;3.75,4;cc_face;"..face..";1;true]"..
|
||||
"textlist[7.50,0.75;3.75,4;cc_hair;"..hair..";1;true]"..
|
||||
"textlist[11.25,0.75;3.75,4;cc_hair_style;"..hair_style..";1;true]"..
|
||||
"textlist[0.00,4.75;3.75,4;cc_eyes;"..eyes..";1;true]"..
|
||||
"textlist[3.75,4.75;3.75,4;cc_tshirt;"..tshirt..";1;true]"..
|
||||
"textlist[7.50,4.75;3.75,4;cc_pants;"..pants..";1;true]"..
|
||||
"textlist[11.25,4.75;3.75,4;cc_shoes;"..shoes..";1;true]"
|
||||
)
|
||||
end
|
||||
|
||||
local function save_skin(player)
|
||||
local function save_data(data_name)
|
||||
local indexes = skin_indexes[player]
|
||||
local index = indexes[data_name]
|
||||
local key = skins_array[data_name][index]
|
||||
player:set_attribute("character_creator:" .. data_name, key)
|
||||
end
|
||||
-- MEMO:skin>face>hair(hairstyle)>eyes>tshirt>pants>shoes
|
||||
|
||||
save_data("skin")
|
||||
save_data("face")
|
||||
save_data("eyes")
|
||||
save_data("hair_style")
|
||||
save_data("hair")
|
||||
save_data("tshirt")
|
||||
save_data("pants")
|
||||
save_data("shoes")
|
||||
local playerdata = {}
|
||||
|
||||
local input = io.open(datafile, "r")
|
||||
if input then
|
||||
playerdata = minetest.deserialize(input:read("*all")) or {}
|
||||
input:close()
|
||||
end
|
||||
|
||||
local function change_skin(player)
|
||||
local indexes = skin_indexes[player]
|
||||
|
||||
local texture = (function()
|
||||
local texture = ""
|
||||
local gender = player:get_attribute("character_creator:gender")
|
||||
|
||||
local skin_key = skins_array.skin[indexes.skin]
|
||||
local skin = skins.skin[skin_key]
|
||||
texture = texture .. skin
|
||||
|
||||
local face_key = skins_array.face[indexes.face]
|
||||
local face = skins.face[face_key][gender][skin_key]
|
||||
texture = texture .. "^" .. face
|
||||
|
||||
local eyes_key = skins_array.eyes[indexes.eyes]
|
||||
local eyes = skins.eyes[eyes_key]
|
||||
texture = texture .. "^" .. eyes
|
||||
|
||||
local hair_style = skins_array.hair_style[indexes.hair_style]
|
||||
local hair_key = skins_array.hair[indexes.hair]
|
||||
local hair = skins.hair[hair_key][gender][hair_style]
|
||||
texture = texture .. "^" .. hair
|
||||
|
||||
local tshirt_key = skins_array.tshirt[indexes.tshirt]
|
||||
local tshirt = skins.tshirt[tshirt_key]
|
||||
texture = texture .. "^" .. tshirt
|
||||
|
||||
local pants_key = skins_array.pants[indexes.pants]
|
||||
local pants = skins.pants[pants_key]
|
||||
texture = texture .. "^" .. pants
|
||||
|
||||
local shoes_key = skins_array.shoes[indexes.shoes]
|
||||
local shoes = skins.shoes[shoes_key]
|
||||
texture = texture .. "^" .. shoes
|
||||
|
||||
return texture
|
||||
end)()
|
||||
|
||||
local width = tonumber(player:get_attribute("character_creator:width"))
|
||||
local height = tonumber(player:get_attribute("character_creator:height"))
|
||||
|
||||
player:set_properties({
|
||||
visual_size = {
|
||||
x = width,
|
||||
y = height
|
||||
}
|
||||
})
|
||||
|
||||
local name = player:get_player_name()
|
||||
|
||||
if minetest.get_modpath("multiskin") then
|
||||
multiskin.layers[name].skin = texture
|
||||
armor:set_player_armor(player)
|
||||
multiskin:set_player_textures(player, {textures = {texture}})
|
||||
elseif minetest.get_modpath("3d_armor") then
|
||||
armor.textures[name].skin = texture
|
||||
local data = playerdata[name]
|
||||
local skin = {
|
||||
data.skin.."^"..
|
||||
data.face.."^"..
|
||||
data.eyes.."^"..
|
||||
data.hair.."^"..
|
||||
data.tshirt.."^"..
|
||||
data.pants.."^"..
|
||||
data.shoes
|
||||
}
|
||||
if minetest.get_modpath("3d_armor") then
|
||||
armor.textures[name].skin = skin
|
||||
armor:set_player_armor(player)
|
||||
else
|
||||
player:set_properties({textures = {texture}})
|
||||
player:set_properties({textures = skin})
|
||||
end
|
||||
|
||||
save_skin(player)
|
||||
end
|
||||
|
||||
minetest.register_on_joinplayer(function(player)
|
||||
load_skin(player)
|
||||
minetest.after(0, change_skin, player)
|
||||
end)
|
||||
|
||||
local skin_temp = {}
|
||||
minetest.register_on_player_receive_fields(function(player, formname, fields)
|
||||
if formname ~= "character_creator" then
|
||||
return
|
||||
end
|
||||
|
||||
local indexes = skin_indexes[player]
|
||||
if not skin_temp[player] then
|
||||
skin_temp[player] = {
|
||||
gender = player:get_attribute("character_creator:gender"),
|
||||
width = player:get_attribute("character_creator:width"),
|
||||
height = player:get_attribute("character_creator:height"),
|
||||
indexes = table.copy(indexes)
|
||||
}
|
||||
end
|
||||
|
||||
-- Gender
|
||||
do
|
||||
if fields.male then
|
||||
player:set_attribute("character_creator:gender", "Male")
|
||||
player:set_attribute("character_creator:width", 1)
|
||||
player:set_attribute("character_creator:height", 1)
|
||||
end
|
||||
|
||||
if fields.female then
|
||||
player:set_attribute("character_creator:gender", "Female")
|
||||
player:set_attribute("character_creator:width", 0.95)
|
||||
player:set_attribute("character_creator:height", 1)
|
||||
end
|
||||
end
|
||||
|
||||
-- Height
|
||||
do
|
||||
local height = tonumber(player:get_attribute("character_creator:height"))
|
||||
|
||||
if fields.taller and height < 1.25 then
|
||||
player:set_attribute("character_creator:height", height + 0.05)
|
||||
end
|
||||
|
||||
if fields.shorter and height > 0.75 then
|
||||
player:set_attribute("character_creator:height", height - 0.05)
|
||||
end
|
||||
end
|
||||
|
||||
-- Width
|
||||
do
|
||||
local width = tonumber(player:get_attribute("character_creator:width"))
|
||||
|
||||
if fields.wider and width < 1.25 then
|
||||
player:set_attribute("character_creator:width", width + 0.05)
|
||||
end
|
||||
|
||||
if fields.thinner and width > 0.75 then
|
||||
player:set_attribute("character_creator:width", width - 0.05)
|
||||
end
|
||||
end
|
||||
|
||||
-- Switch skin
|
||||
do
|
||||
local function switch_skin(data_name, next_index)
|
||||
local index = indexes[data_name] + next_index
|
||||
local max = #skins_array[data_name]
|
||||
|
||||
if index == 0 then
|
||||
index = max
|
||||
elseif index == (max + 1) then
|
||||
index = 1
|
||||
end
|
||||
|
||||
indexes[data_name] = index
|
||||
end
|
||||
|
||||
for field in pairs(fields) do
|
||||
if field:find("_back$") then
|
||||
local data_name = field:match("(.+)_back$")
|
||||
switch_skin(data_name, -1)
|
||||
elseif field:find("_next$") then
|
||||
local data_name = field:match("(.+)_next$")
|
||||
switch_skin(data_name, 1)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- Close or update
|
||||
do
|
||||
local quit = false
|
||||
|
||||
if fields.cancel then
|
||||
local temp = skin_temp[player]
|
||||
player:set_attribute("character_creator:gender", temp.gender)
|
||||
player:set_attribute("character_creator:width", temp.width)
|
||||
player:set_attribute("character_creator:height", temp.height)
|
||||
skin_indexes[player] = table.copy(temp.indexes)
|
||||
skin_temp[player] = nil
|
||||
quit = true
|
||||
elseif fields.quit then
|
||||
skin_temp[player] = nil
|
||||
quit = true
|
||||
end
|
||||
|
||||
if not quit then
|
||||
show_formspec(player)
|
||||
end
|
||||
end
|
||||
|
||||
change_skin(player)
|
||||
end)
|
||||
|
||||
minetest.register_chatcommand("character_creator", {
|
||||
func = function(name)
|
||||
minetest.after(0.5, function()
|
||||
local player = minetest.get_player_by_name(name)
|
||||
if player then
|
||||
show_formspec(player)
|
||||
end
|
||||
end)
|
||||
minetest.after(.1, show_formspec, name)
|
||||
end
|
||||
})
|
||||
|
||||
if minetest.global_exists("unified_inventory") then
|
||||
local old_param = {}
|
||||
|
||||
minetest.register_on_joinplayer(function(player)
|
||||
local name = player:get_player_name()
|
||||
playerdata[name] = playerdata[name] or {
|
||||
skin = "cc_skin_fair.png",
|
||||
face = "cc_face_human_fair_M.png",
|
||||
hair = "cc_hair_medium_brown_M.png",
|
||||
eyes = "cc_eyes_brown.png",
|
||||
tshirt = "cc_tshirt_green.png",
|
||||
pants = "cc_pants_blue.png",
|
||||
shoes = "cc_shoes_leather.png",
|
||||
}
|
||||
old_param[name] = {
|
||||
skin = "Fair Skin",
|
||||
face = "Human Face (Male)",
|
||||
hair = "Brown Hair (Male)",
|
||||
hair_style = "Medium Hair",
|
||||
}
|
||||
minetest.after(0, change_skin, player)
|
||||
end)
|
||||
|
||||
minetest.register_on_shutdown(function()
|
||||
local output = io.open(datafile, "w")
|
||||
output:write(minetest.serialize(playerdata))
|
||||
output.close()
|
||||
end)
|
||||
|
||||
minetest.register_on_player_receive_fields(function(player, _, fields)
|
||||
local name = player:get_player_name()
|
||||
local e_skin = minetest.explode_textlist_event(fields.cc_skin)
|
||||
local e_face = minetest.explode_textlist_event(fields.cc_face)
|
||||
local e_hair = minetest.explode_textlist_event(fields.cc_hair)
|
||||
local e_hair_style = minetest.explode_textlist_event(fields.cc_hair_style)
|
||||
local e_eyes = minetest.explode_textlist_event(fields.cc_eyes)
|
||||
local e_tshirt = minetest.explode_textlist_event(fields.cc_tshirt)
|
||||
local e_pants = minetest.explode_textlist_event(fields.cc_pants)
|
||||
local e_shoes = minetest.explode_textlist_event(fields.cc_shoes)
|
||||
|
||||
if e_skin.type == "CHG" then
|
||||
local face_name = face:split(",")[e_face.index] or old_param[name].face
|
||||
local skin_name = skin:split(",")[e_skin.index]
|
||||
playerdata[name].skin = cc.skin[skin_name]
|
||||
playerdata[name].face = cc.face[face_name][skin_name]
|
||||
old_param[name].skin = skin_name
|
||||
elseif e_face.type == "CHG" then
|
||||
local face_name = face:split(",")[e_face.index]
|
||||
local skin_name = skin:split(",")[e_skin.index] or old_param[name].skin
|
||||
playerdata[name].face = cc.face[face_name][skin_name]
|
||||
old_param[name].face = face_name
|
||||
elseif e_hair.type == "CHG" then
|
||||
local hair_name = hair:split(",")[e_hair.index]
|
||||
local hair_style_name = hair_style:split(",")[e_hair_style.index] or old_param[name].hair_style
|
||||
playerdata[name].hair = cc.hair[hair_name][hair_style_name]
|
||||
old_param[name].hair = hair_name
|
||||
elseif e_hair_style.type == "CHG" then
|
||||
local hair_name = hair:split(",")[e_hair.index] or old_param[name].hair
|
||||
local hair_style_name = hair_style:split(",")[e_hair_style.index]
|
||||
playerdata[name].hair = cc.hair[hair_name][hair_style_name]
|
||||
old_param[name].hair_style = hair_style_name
|
||||
elseif e_eyes.type == "CHG" then
|
||||
local eyes_name = eyes:split(",")[e_eyes.index]
|
||||
playerdata[name].eyes = cc.eyes[eyes_name]
|
||||
elseif e_tshirt.type == "CHG" then
|
||||
local tshirt_name = tshirt:split(",")[e_tshirt.index]
|
||||
playerdata[name].tshirt = cc.tshirt[tshirt_name]
|
||||
elseif e_pants.type == "CHG" then
|
||||
local pants_name = pants:split(",")[e_pants.index]
|
||||
playerdata[name].pants = cc.pants[pants_name]
|
||||
elseif e_shoes.type == "CHG" then
|
||||
local shoes_name = shoes:split(",")[e_shoes.index]
|
||||
playerdata[name].shoes = cc.shoes[shoes_name]
|
||||
end
|
||||
change_skin(player)
|
||||
end)
|
||||
|
||||
if rawget(_G, "unified_inventory") then
|
||||
unified_inventory.register_button("character_creator", {
|
||||
type = "image",
|
||||
image = "inventory_plus_character_creator.png",
|
||||
action = show_formspec
|
||||
type = "image",
|
||||
image = "inventory_plus_character_creator.png",
|
||||
action = function(player)
|
||||
show_formspec(player:get_player_name())
|
||||
end
|
||||
})
|
||||
elseif minetest.global_exists("inventory_plus") then
|
||||
elseif rawget(_G, "inventory_plus") then
|
||||
minetest.register_on_joinplayer(function(player)
|
||||
inventory_plus.register_button(player, "character_creator", "Character Creator")
|
||||
end)
|
||||
minetest.register_on_player_receive_fields(function(player, _, fields)
|
||||
if fields.character_creator then
|
||||
show_formspec(player)
|
||||
show_formspec(player:get_player_name())
|
||||
end
|
||||
end)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
License of source code
|
||||
----------------------
|
||||
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2017 Rui
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
|
||||
License of textures
|
||||
--------------------------------------
|
||||
|
||||
Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)
|
||||
|
||||
Copyright (C) 2017 Voxelands http://www.voxelands.com/
|
||||
Copyright (C) 2017 darkrose
|
||||
Copyright (C) 2017 sdzen
|
||||
|
||||
You are free to:
|
||||
Share - copy and redistribute the material in any medium or format
|
||||
Adapt - remix, transform, and build upon the material
|
||||
for any purpose, even commercially.
|
||||
The licensor cannot revoke these freedoms as long as you follow the license terms.
|
||||
|
||||
Under the following terms:
|
||||
Attribution - You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
|
||||
ShareAlike - If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.
|
||||
No additional restrictions - You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
|
||||
|
||||
Notices:
|
||||
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation.
|
||||
No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.
|
||||
|
||||
For more details:
|
||||
http://creativecommons.org/licenses/by-sa/3.0/
|
|
@ -1 +0,0 @@
|
|||
name = character_creator
|
|
@ -1,5 +0,0 @@
|
|||
This mod is attributed to the Voxelands project.
|
||||
|
||||
Voxelands creators:
|
||||
sdzen
|
||||
darkrose
|
|
@ -1,270 +1,244 @@
|
|||
return {
|
||||
skin = {
|
||||
["Fair Skin"] = "cc_skin_fair.png",
|
||||
["Green Skin"] = "cc_skin_green.png",
|
||||
["Red Skin"] = "cc_skin_red.png",
|
||||
["Tanned Skin"] = "cc_skin_tanned.png",
|
||||
["White Skin"] = "cc_skin_white.png",
|
||||
["Black Skin"] = "cc_skin_black.png",
|
||||
["Dark Skin"] = "cc_skin_dark.png",
|
||||
},
|
||||
local cc = character_creator
|
||||
|
||||
face = {
|
||||
["Human Face"] = {
|
||||
["Male"] = {
|
||||
["Fair Skin"] = "cc_face_human_fair_M.png",
|
||||
["Green Skin"] = "cc_face_human_green_M.png",
|
||||
["Red Skin"] = "cc_face_human_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_human_tanned_M.png",
|
||||
["White Skin"] = "cc_face_human_white_M.png",
|
||||
["Black Skin"] = "cc_face_human_black_M.png",
|
||||
["Dark Skin"] = "cc_face_human_dark_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Fair Skin"] = "cc_face_human_fair_F.png",
|
||||
["Green Skin"] = "cc_face_human_green_F.png",
|
||||
["Red Skin"] = "cc_face_human_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_human_tanned_F.png",
|
||||
["White Skin"] = "cc_face_human_white_F.png",
|
||||
["Black Skin"] = "cc_face_human_black_F.png",
|
||||
["Dark Skin"] = "cc_face_human_dark_F.png",
|
||||
}
|
||||
},
|
||||
["Alien Face"] = {
|
||||
["Male"] = {
|
||||
["Fair Skin"] = "cc_face_alien_fair_M.png",
|
||||
["Green Skin"] = "cc_face_alien_green_M.png",
|
||||
["Red Skin"] = "cc_face_alien_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_alien_tanned_M.png",
|
||||
["White Skin"] = "cc_face_alien_white_M.png",
|
||||
["Black Skin"] = "cc_face_alien_black_M.png",
|
||||
["Dark Skin"] = "cc_face_alien_dark_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Fair Skin"] = "cc_face_alien_fair_F.png",
|
||||
["Green Skin"] = "cc_face_alien_green_F.png",
|
||||
["Red Skin"] = "cc_face_alien_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_alien_tanned_F.png",
|
||||
["White Skin"] = "cc_face_alien_white_F.png",
|
||||
["Black Skin"] = "cc_face_alien_black_F.png",
|
||||
["Dark Skin"] = "cc_face_alien_dark_F.png",
|
||||
}
|
||||
},
|
||||
["Dwarven Face"] = {
|
||||
["Male"] = {
|
||||
["Fair Skin"] = "cc_face_dwarven_fair_M.png",
|
||||
["Green Skin"] = "cc_face_dwarven_green_M.png",
|
||||
["Red Skin"] = "cc_face_dwarven_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_dwarven_tanned_M.png",
|
||||
["White Skin"] = "cc_face_dwarven_white_M.png",
|
||||
["Black Skin"] = "cc_face_dwarven_black_M.png",
|
||||
["Dark Skin"] = "cc_face_dwarven_dark_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Fair Skin"] = "cc_face_dwarven_fair_F.png",
|
||||
["Green Skin"] = "cc_face_dwarven_green_F.png",
|
||||
["Red Skin"] = "cc_face_dwarven_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_dwarven_tanned_F.png",
|
||||
["White Skin"] = "cc_face_dwarven_white_F.png",
|
||||
["Black Skin"] = "cc_face_dwarven_black_F.png",
|
||||
["Dark Skin"] = "cc_face_dwarven_dark_F.png",
|
||||
}
|
||||
},
|
||||
["Elven Face"] = {
|
||||
["Male"] = {
|
||||
["Fair Skin"] = "cc_face_elven_fair_M.png",
|
||||
["Green Skin"] = "cc_face_elven_green_M.png",
|
||||
["Red Skin"] = "cc_face_elven_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_elven_tanned_M.png",
|
||||
["White Skin"] = "cc_face_elven_white_M.png",
|
||||
["Black Skin"] = "cc_face_elven_black_M.png",
|
||||
["Dark Skin"] = "cc_face_elven_dark_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Fair Skin"] = "cc_face_elven_fair_F.png",
|
||||
["Green Skin"] = "cc_face_elven_green_F.png",
|
||||
["Red Skin"] = "cc_face_elven_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_elven_tanned_F.png",
|
||||
["White Skin"] = "cc_face_elven_white_F.png",
|
||||
["Black Skin"] = "cc_face_elven_black_F.png",
|
||||
["Dark Skin"] = "cc_face_elven_dark_F.png",
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
hair = {
|
||||
["Brown Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_brown_M.png",
|
||||
["Short Hair"] = "cc_hair_short_brown_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_brown_M.png",
|
||||
["Long Hair"] = "cc_hair_long_brown_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_brown_F.png",
|
||||
["Short Hair"] = "cc_hair_short_brown_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_brown_F.png",
|
||||
["Long Hair"] = "cc_hair_long_brown_F.png",
|
||||
}
|
||||
},
|
||||
["Green Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_green_M.png",
|
||||
["Short Hair"] = "cc_hair_short_green_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_green_M.png",
|
||||
["Long Hair"] = "cc_hair_long_green_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_green_F.png",
|
||||
["Short Hair"] = "cc_hair_short_green_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_green_F.png",
|
||||
["Long Hair"] = "cc_hair_long_green_F.png",
|
||||
}
|
||||
},
|
||||
["Orange Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_orange_M.png",
|
||||
["Short Hair"] = "cc_hair_short_orange_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_orange_M.png",
|
||||
["Long Hair"] = "cc_hair_long_orange_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_orange_F.png",
|
||||
["Short Hair"] = "cc_hair_short_orange_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_orange_F.png",
|
||||
["Long Hair"] = "cc_hair_long_orange_F.png",
|
||||
}
|
||||
},
|
||||
["Purple Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_purple_M.png",
|
||||
["Short Hair"] = "cc_hair_short_purple_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_purple_M.png",
|
||||
["Long Hair"] = "cc_hair_long_purple_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_purple_F.png",
|
||||
["Short Hair"] = "cc_hair_short_purple_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_purple_F.png",
|
||||
["Long Hair"] = "cc_hair_long_purple_F.png",
|
||||
}
|
||||
},
|
||||
["Red Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_red_M.png",
|
||||
["Short Hair"] = "cc_hair_short_red_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_red_M.png",
|
||||
["Long Hair"] = "cc_hair_long_red_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_red_F.png",
|
||||
["Short Hair"] = "cc_hair_short_red_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_red_F.png",
|
||||
["Long Hair"] = "cc_hair_long_red_F.png",
|
||||
}
|
||||
},
|
||||
["White Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_white_M.png",
|
||||
["Short Hair"] = "cc_hair_short_white_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_white_M.png",
|
||||
["Long Hair"] = "cc_hair_long_white_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_white_F.png",
|
||||
["Short Hair"] = "cc_hair_short_white_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_white_F.png",
|
||||
["Long Hair"] = "cc_hair_long_white_F.png",
|
||||
}
|
||||
},
|
||||
["Black Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_black_M.png",
|
||||
["Short Hair"] = "cc_hair_short_black_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_black_M.png",
|
||||
["Long Hair"] = "cc_hair_long_black_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_black_F.png",
|
||||
["Short Hair"] = "cc_hair_short_black_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_black_F.png",
|
||||
["Long Hair"] = "cc_hair_long_black_F.png",
|
||||
}
|
||||
},
|
||||
["Blonde Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blonde_M.png",
|
||||
["Short Hair"] = "cc_hair_short_blonde_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_blonde_M.png",
|
||||
["Long Hair"] = "cc_hair_long_blonde_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blonde_F.png",
|
||||
["Short Hair"] = "cc_hair_short_blonde_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_blonde_F.png",
|
||||
["Long Hair"] = "cc_hair_long_blonde_F.png",
|
||||
}
|
||||
},
|
||||
["Blue Hair"] = {
|
||||
["Male"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blue_M.png",
|
||||
["Short Hair"] = "cc_hair_short_blue_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_blue_M.png",
|
||||
["Long Hair"] = "cc_hair_long_blue_M.png",
|
||||
},
|
||||
["Female"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blue_F.png",
|
||||
["Short Hair"] = "cc_hair_short_blue_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_blue_F.png",
|
||||
["Long Hair"] = "cc_hair_long_blue_F.png",
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
hair_style = {
|
||||
["Medium Hair"] = "medium",
|
||||
["Short Hair"] = "short",
|
||||
["Styled Hair"] = "styled",
|
||||
["Long Hair"] = "long",
|
||||
},
|
||||
|
||||
eyes = {
|
||||
["Blue Eyes"] = "cc_eyes_blue.png",
|
||||
["Brown Eyes"] = "cc_eyes_brown.png",
|
||||
["Green Eyes"] = "cc_eyes_green.png",
|
||||
["Orange Eyes"] = "cc_eyes_orange.png",
|
||||
["Purple Eyes"] = "cc_eyes_purple.png",
|
||||
["Red Eyes"] = "cc_eyes_red.png",
|
||||
["White Eyes"] = "cc_eyes_white.png",
|
||||
["Yellow Eyes"] = "cc_eyes_yellow.png",
|
||||
["Black Eyes"] = "cc_eyes_black.png",
|
||||
},
|
||||
|
||||
tshirt = {
|
||||
["Green T-Shirt"] = "cc_tshirt_green.png",
|
||||
["Orange T-Shirt"] = "cc_tshirt_orange.png",
|
||||
["Purple T-Shirt"] = "cc_tshirt_purple.png",
|
||||
["Red T-Shirt"] = "cc_tshirt_red.png",
|
||||
["White T-Shirt"] = "cc_tshirt_white.png",
|
||||
["Yellow T-Shirt"] = "cc_tshirt_yellow.png",
|
||||
["Black T-Shirt"] = "cc_tshirt_black.png",
|
||||
["Blue T-Shirt"] = "cc_tshirt_blue.png",
|
||||
},
|
||||
|
||||
pants = {
|
||||
["Blue Pants"] = "cc_pants_blue.png",
|
||||
["Green Pants"] = "cc_pants_green.png",
|
||||
["Orange Pants"] = "cc_pants_orange.png",
|
||||
["Purple Pants"] = "cc_pants_purple.png",
|
||||
["Red Pants"] = "cc_pants_red.png",
|
||||
["White Pants"] = "cc_pants_white.png",
|
||||
["Yellow Pants"] = "cc_pants_yellow.png",
|
||||
["Black Pants"] = "cc_pants_black.png",
|
||||
},
|
||||
|
||||
shoes = {
|
||||
["Leather Shoes"] = "cc_shoes_leather.png",
|
||||
["Canvas Shoes"] = "cc_shoes_canvas.png",
|
||||
["Fur Shoes"] = "cc_shoes_fur.png",
|
||||
}
|
||||
cc.skin = {
|
||||
["Fair Skin"] = "cc_skin_fair.png",
|
||||
["Green Skin"] = "cc_skin_green.png",
|
||||
["Red Skin"] = "cc_skin_red.png",
|
||||
["Tanned Skin"] = "cc_skin_tanned.png",
|
||||
["White Skin"] = "cc_skin_white.png",
|
||||
["Black Skin"] = "cc_skin_black.png",
|
||||
["Dark Skin"] = "cc_skin_dark.png",
|
||||
}
|
||||
|
||||
cc.face = {
|
||||
["Human Face (Male)"] = {
|
||||
["Fair Skin"] = "cc_face_human_fair_M.png",
|
||||
["Green Skin"] = "cc_face_human_green_M.png",
|
||||
["Red Skin"] = "cc_face_human_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_human_tanned_M.png",
|
||||
["White Skin"] = "cc_face_human_white_M.png",
|
||||
["Black Skin"] = "cc_face_human_black_M.png",
|
||||
["Dark Skin"] = "cc_face_human_dark_M.png",
|
||||
},
|
||||
["Alien Face (Male)"] = {
|
||||
["Fair Skin"] = "cc_face_alien_fair_M.png",
|
||||
["Green Skin"] = "cc_face_alien_green_M.png",
|
||||
["Red Skin"] = "cc_face_alien_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_alien_tanned_M.png",
|
||||
["White Skin"] = "cc_face_alien_white_M.png",
|
||||
["Black Skin"] = "cc_face_alien_black_M.png",
|
||||
["Dark Skin"] = "cc_face_alien_dark_M.png",
|
||||
},
|
||||
["Dwarven Face (Male)"] = {
|
||||
["Fair Skin"] = "cc_face_dwarven_fair_M.png",
|
||||
["Green Skin"] = "cc_face_dwarven_green_M.png",
|
||||
["Red Skin"] = "cc_face_dwarven_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_dwarven_tanned_M.png",
|
||||
["White Skin"] = "cc_face_dwarven_white_M.png",
|
||||
["Black Skin"] = "cc_face_dwarven_black_M.png",
|
||||
["Dark Skin"] = "cc_face_dwarven_dark_M.png",
|
||||
},
|
||||
["Elven Face (Male)"] = {
|
||||
["Fair Skin"] = "cc_face_elven_fair_M.png",
|
||||
["Green Skin"] = "cc_face_elven_green_M.png",
|
||||
["Red Skin"] = "cc_face_elven_red_M.png",
|
||||
["Tanned Skin"] = "cc_face_elven_tanned_M.png",
|
||||
["White Skin"] = "cc_face_elven_white_M.png",
|
||||
["Black Skin"] = "cc_face_elven_black_M.png",
|
||||
["Dark Skin"] = "cc_face_elven_dark_M.png",
|
||||
},
|
||||
["Human Face (Female)"] = {
|
||||
["Fair Skin"] = "cc_face_human_fair_F.png",
|
||||
["Green Skin"] = "cc_face_human_green_F.png",
|
||||
["Red Skin"] = "cc_face_human_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_human_tanned_F.png",
|
||||
["White Skin"] = "cc_face_human_white_F.png",
|
||||
["Black Skin"] = "cc_face_human_black_F.png",
|
||||
["Dark Skin"] = "cc_face_human_dark_F.png",
|
||||
},
|
||||
["Alien Face (Female)"] = {
|
||||
["Fair Skin"] = "cc_face_alien_fair_F.png",
|
||||
["Green Skin"] = "cc_face_alien_green_F.png",
|
||||
["Red Skin"] = "cc_face_alien_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_alien_tanned_F.png",
|
||||
["White Skin"] = "cc_face_alien_white_F.png",
|
||||
["Black Skin"] = "cc_face_alien_black_F.png",
|
||||
["Dark Skin"] = "cc_face_alien_dark_F.png",
|
||||
},
|
||||
["Dwarven Face (Female)"] = {
|
||||
["Fair Skin"] = "cc_face_dwarven_fair_F.png",
|
||||
["Green Skin"] = "cc_face_dwarven_green_F.png",
|
||||
["Red Skin"] = "cc_face_dwarven_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_dwarven_tanned_F.png",
|
||||
["White Skin"] = "cc_face_dwarven_white_F.png",
|
||||
["Black Skin"] = "cc_face_dwarven_black_F.png",
|
||||
["Dark Skin"] = "cc_face_dwarven_dark_F.png",
|
||||
},
|
||||
["Elven Face (Female)"] = {
|
||||
["Fair Skin"] = "cc_face_elven_fair_F.png",
|
||||
["Green Skin"] = "cc_face_elven_green_F.png",
|
||||
["Red Skin"] = "cc_face_elven_red_F.png",
|
||||
["Tanned Skin"] = "cc_face_elven_tanned_F.png",
|
||||
["White Skin"] = "cc_face_elven_white_F.png",
|
||||
["Black Skin"] = "cc_face_elven_black_F.png",
|
||||
["Dark Skin"] = "cc_face_elven_dark_F.png",
|
||||
},
|
||||
}
|
||||
|
||||
cc.hair = {
|
||||
["Brown Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_brown_M.png",
|
||||
["Short Hair"] = "cc_hair_short_brown_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_brown_M.png",
|
||||
["Long Hair"] = "cc_hair_long_brown_M.png",
|
||||
},
|
||||
["Green Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_green_M.png",
|
||||
["Short Hair"] = "cc_hair_short_green_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_green_M.png",
|
||||
["Long Hair"] = "cc_hair_long_green_M.png",
|
||||
},
|
||||
["Orange Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_orange_M.png",
|
||||
["Short Hair"] = "cc_hair_short_orange_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_orange_M.png",
|
||||
["Long Hair"] = "cc_hair_long_orange_M.png",
|
||||
},
|
||||
["Purple Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_purple_M.png",
|
||||
["Short Hair"] = "cc_hair_short_purple_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_purple_M.png",
|
||||
["Long Hair"] = "cc_hair_long_purple_M.png",
|
||||
},
|
||||
["Red Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_red_M.png",
|
||||
["Short Hair"] = "cc_hair_short_red_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_red_M.png",
|
||||
["Long Hair"] = "cc_hair_long_red_M.png",
|
||||
},
|
||||
["White Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_white_M.png",
|
||||
["Short Hair"] = "cc_hair_short_white_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_white_M.png",
|
||||
["Long Hair"] = "cc_hair_long_white_M.png",
|
||||
},
|
||||
["Black Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_black_M.png",
|
||||
["Short Hair"] = "cc_hair_short_black_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_black_M.png",
|
||||
["Long Hair"] = "cc_hair_long_black_M.png",
|
||||
},
|
||||
["Blonde Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blonde_M.png",
|
||||
["Short Hair"] = "cc_hair_short_blonde_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_blonde_M.png",
|
||||
["Long Hair"] = "cc_hair_long_blonde_M.png",
|
||||
},
|
||||
["Blue Hair (Male)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blue_M.png",
|
||||
["Short Hair"] = "cc_hair_short_blue_M.png",
|
||||
["Styled Hair"] = "cc_hair_special_blue_M.png",
|
||||
["Long Hair"] = "cc_hair_long_blue_M.png",
|
||||
},
|
||||
["Brown Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_brown_F.png",
|
||||
["Short Hair"] = "cc_hair_short_brown_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_brown_F.png",
|
||||
["Long Hair"] = "cc_hair_long_brown_F.png",
|
||||
},
|
||||
["Green Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_green_F.png",
|
||||
["Short Hair"] = "cc_hair_short_green_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_green_F.png",
|
||||
["Long Hair"] = "cc_hair_long_green_F.png",
|
||||
},
|
||||
["Orange Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_orange_F.png",
|
||||
["Short Hair"] = "cc_hair_short_orange_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_orange_F.png",
|
||||
["Long Hair"] = "cc_hair_long_orange_F.png",
|
||||
},
|
||||
["Purple Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_purple_F.png",
|
||||
["Short Hair"] = "cc_hair_short_purple_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_purple_F.png",
|
||||
["Long Hair"] = "cc_hair_long_purple_F.png",
|
||||
},
|
||||
["Red Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_red_F.png",
|
||||
["Short Hair"] = "cc_hair_short_red_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_red_F.png",
|
||||
["Long Hair"] = "cc_hair_long_red_F.png",
|
||||
},
|
||||
["White Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_white_F.png",
|
||||
["Short Hair"] = "cc_hair_short_white_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_white_F.png",
|
||||
["Long Hair"] = "cc_hair_long_white_F.png",
|
||||
},
|
||||
["Black Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_black_F.png",
|
||||
["Short Hair"] = "cc_hair_short_black_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_black_F.png",
|
||||
["Long Hair"] = "cc_hair_long_black_F.png",
|
||||
},
|
||||
["Blonde Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blonde_F.png",
|
||||
["Short Hair"] = "cc_hair_short_blonde_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_blonde_F.png",
|
||||
["Long Hair"] = "cc_hair_long_blonde_F.png",
|
||||
},
|
||||
["Blue Hair (Female)"] = {
|
||||
["Medium Hair"] = "cc_hair_medium_blue_F.png",
|
||||
["Short Hair"] = "cc_hair_short_blue_F.png",
|
||||
["Styled Hair"] = "cc_hair_special_blue_F.png",
|
||||
["Long Hair"] = "cc_hair_long_blue_F.png",
|
||||
},
|
||||
}
|
||||
|
||||
cc.hair_style = {
|
||||
["Medium Hair"] = "medium",
|
||||
["Short Hair"] = "short",
|
||||
["Styled Hair"] = "styled",
|
||||
["Long Hair"] = "long",
|
||||
}
|
||||
|
||||
cc.eyes = {
|
||||
["Blue Eyes"] = "cc_eyes_blue.png",
|
||||
["Brown Eyes"] = "cc_eyes_brown.png",
|
||||
["Green Eyes"] = "cc_eyes_green.png",
|
||||
["Orange Eyes"] = "cc_eyes_orange.png",
|
||||
["Purple Eyes"] = "cc_eyes_purple.png",
|
||||
["Red Eyes"] = "cc_eyes_red.png",
|
||||
["White Eyes"] = "cc_eyes_white.png",
|
||||
["Yellow Eyes"] = "cc_eyes_yellow.png",
|
||||
["Black Eyes"] = "cc_eyes_black.png",
|
||||
}
|
||||
|
||||
cc.tshirt = {
|
||||
["Green T-Shirt"] = "cc_tshirt_green.png",
|
||||
["Orange T-Shirt"] = "cc_tshirt_orange.png",
|
||||
["Purple T-Shirt"] = "cc_tshirt_purple.png",
|
||||
["Red T-Shirt"] = "cc_tshirt_red.png",
|
||||
["White T-Shirt"] = "cc_tshirt_white.png",
|
||||
["Yellow T-Shirt"] = "cc_tshirt_yellow.png",
|
||||
["Black T-Shirt"] = "cc_tshirt_black.png",
|
||||
["Blue T-Shirt"] = "cc_tshirt_blue.png",
|
||||
}
|
||||
|
||||
cc.pants = {
|
||||
["Blue Pants"] = "cc_pants_blue.png",
|
||||
["Green Pants"] = "cc_pants_green.png",
|
||||
["Orange Pants"] = "cc_pants_orange.png",
|
||||
["Purple Pants"] = "cc_pants_purple.png",
|
||||
["Red Pants"] = "cc_pants_red.png",
|
||||
["White Pants"] = "cc_pants_white.png",
|
||||
["Yellow Pants"] = "cc_pants_yellow.png",
|
||||
["Black Pants"] = "cc_pants_black.png",
|
||||
}
|
||||
|
||||
cc.shoes = {
|
||||
["Leather Shoes"] = "cc_shoes_leather.png",
|
||||
["Canvas Shoes"] = "cc_shoes_canvas.png",
|
||||
["Fur Shoes"] = "cc_shoes_fur.png",
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue