Merge branch 'OverrideHatMaker'

This commit is contained in:
Lucas 2020-04-13 21:27:40 +02:00
commit 3bbfee3eb2
11 changed files with 309 additions and 61 deletions

2
.gitignore vendored
View file

@ -2,3 +2,5 @@
BrothelSystem/generated_ids.lua
BrothelSource/generated_ids.lua
Example 02/

Binary file not shown.

View file

@ -1,29 +1,27 @@
local mod = foundation.createMod();
local BrothelSystemMod = foundation.createMod();
mod:registerAssetId("models/brothel.fbx/Prefab/Brothel", "PREFAB_BROTHEL")
mod:register({
DataType = "BUILDING",
Id = "BROTHEL",
Name = "BROTHEL_NAME",
Description = "BROTHEL_DESC",
BuildingType = "GENERAL",
BuildingPartSetList = {
{
Name = "BROTHEL_NAME",
BuildingPartList = { "BROTHEL" }
-- Buildings (brothel)
BrothelSystemMod:dofile("scripts/brothel/building.lua")
-- Jobs
BrothelSystemMod:dofile("scripts/jobs.lua")
-- Override default Labour estate
BrothelSystemMod:override({
Id = "LABOUR",
EstateProgressList = { -- Add a new estate progress tier
Action = "APPEND",
{
DataType = "ESTATE_PROGRESS_TIER",
SplendorRequired = 0,
VillagerStatusRequired = { Status = "SERF", Quantity = 0 },
UpgradeList = {
"UNLOCKABLE_BROTHEL"
}
}
}
})
mod:register({
DataType = "BUILDING_PART",
Id = "BROTHEL",
Name = "BROTHEL_NAME",
Description = "BROTHEL_DESC",
Category = "GENERAL",
ConstructorData = {
DataType = "BUILDING_CONSTRUCTOR_DEFAULT",
CoreObjectPrefab = "PREFAB_BROTHEL"
}
})

Binary file not shown.

View file

@ -1,36 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<meta id="0cc7433d-72ca-4900-9152-33e4629f7039">
<meta id="ebce26b7-703b-42ef-83f6-9ba863886549" type="group" folder="true" name="Materials">
<meta id="8078c4ff-d389-4c10-87fe-dde4f432ee9f" name="Rock"/>
<meta id="9703dae5-e5d4-4ed2-8729-f2999f60f8c9" name="Black"/>
<meta id="d151a1de-6986-4e79-a38c-e34a8fd8de67" name="WoodBeam"/>
<meta id="067130eb-c1bf-48ea-98c4-99075ea29d88" name="RoofBlue"/>
<meta id="d5a34c33-302a-4193-be10-750f3f498a62" name="Glass"/>
<meta id="286786d3-6f7d-48a4-8360-6cca546f884b" name="Material.001"/>
<meta id="d9a1dec9-4c36-408f-bbd0-2b10f4853ce1" type="group" folder="true" name="Materials">
<meta id="2f5ec94a-1e15-4b53-9733-f332596af042" name="WoodBeam"/>
<meta id="a48abd1c-c49b-457e-aaf9-7b5bb0dd2533" name="Rock"/>
<meta id="eadea475-fefa-4e68-8318-8230f4750db5" name="Black"/>
<meta id="e2e22cdc-0106-4412-aa29-ee00c3224302" name="Material.001"/>
<meta id="fe17e7a1-e096-4895-b45e-a776592b4cb7" name="RoofBlue"/>
<meta id="4f362a26-6d80-45bd-bd3d-6982e0b463a9" name="Glass"/>
</meta>
<meta id="32558725-24a8-410b-b547-7ac09dd2cd9c" type="group" folder="true" name="Meshes">
<meta id="2b5fff2d-e606-498c-bfe7-b974bcc9c456" name="Brothel.001_WoodBeam"/>
<meta id="4f2681d5-f0d7-43ef-944b-cbf4c3ecc51e" name="Brothel.001_Rock"/>
<meta id="42813d10-1299-45ae-986e-ff7b02bdac1a" name="Brothel.001_Black"/>
<meta id="23a5b332-9a47-416a-b20c-ac1253c2977e" name="Brothel.001_Material.001"/>
<meta id="5d3b5e23-be7e-4b95-b0ce-641c2718e5ae" name="Brothel.001_RoofBlue"/>
<meta id="9ec42d83-e4f4-4d93-9bf8-fc060dc54cf8" name="Brothel.001_Glass"/>
<meta id="ca420ba1-de2b-4176-b2b4-a1874f574040" type="group" folder="true" name="Meshes">
<meta id="50bfe4d9-7ed4-4aae-8c17-923c5d329349" name="BrothelCore_WoodBeam"/>
<meta id="5e5b1de0-1042-42f7-acdb-a9cdfff2c702" name="BrothelCore_Rock"/>
<meta id="251afb7f-cc56-4160-a4d0-a3bcad8f18ea" name="BrothelCore_Black"/>
<meta id="69b84f9d-9b06-46e2-8de1-93ea43f80b0f" name="BrothelCore_Material.001"/>
<meta id="2040280f-3c85-49d4-abe2-0031e6226e0b" name="BrothelCore_RoofBlue"/>
<meta id="cf220eab-1aaa-46e2-9177-a9cf1c17c246" name="BrothelCore_Glass"/>
</meta>
<meta id="f877d446-47ce-4c17-ae07-4c5080f1f56a" name="Prefab">
<meta id="02d9f17e-9771-4a7e-b095-c6b73bb149c7" name="Brothel">
<meta id="f63e5d50-e6be-4040-8db8-be2cce90357c" name="Brothel.001">
<meta id="2d315011-e9a1-41d4-946d-5f29afb96bd1" name="Brothel.001_0"/>
<meta id="5076408f-8208-49c9-88b9-b86606862e4c" name="Brothel.001_1"/>
<meta id="6ea101e1-0d4b-47a3-9b24-92ff5e8af107" name="Brothel.001_2"/>
<meta id="9306b84e-d4c9-47d6-81d3-2e77cb688730" name="Brothel.001_3"/>
<meta id="ec450bba-d478-4d8a-98e6-166e64006e32" name="Brothel.001_4"/>
<meta id="508e7856-276c-4eac-9a4f-1cf6685794a7" name="Brothel.001_5"/>
<meta id="d4055bb9-c58c-46fe-84c4-ea9b3e63bf6f" name="Prefab">
<meta id="e20dd0e1-6e1d-42ca-b277-5f5402d09367" name="Brothel">
<meta id="0fdf71a0-f45c-4c90-a22f-e77bec31397e" name="PATH_A_1"/>
<meta id="98b3dbc9-5261-4bb5-9640-57caf3cfe989" name="BrothelCore">
<meta id="f83adc65-291d-4610-bf3e-76b3fbace363" name="BrothelCore_0"/>
<meta id="f3272851-e62e-49e6-a868-5425bb63cf2f" name="BrothelCore_1"/>
<meta id="7cbd15ca-5d33-43ba-afd9-d1c94c581489" name="BrothelCore_2"/>
<meta id="ea067393-7b13-4492-88ab-62d12a43be06" name="BrothelCore_3"/>
<meta id="2def84e1-69ac-4a3a-805f-fce227e9f4c8" name="BrothelCore_4"/>
<meta id="cc5b15c7-828d-48a4-bbe4-0c402746cafd" name="BrothelCore_5"/>
</meta>
<meta id="170d5f6d-01f8-4c9b-b731-dc7bc61b68ae" name="PATH_A_2"/>
</meta>
</meta>
</meta>
<importer type="GamCFbxImporterConfiguration">
<Md5Checksum value="ebdb1c51020c4c2cb0b3266aed761515"/>
<Md5Checksum value="44622984beed37f97182425a45d912b3"/>
<Scale value="0.01"/>
<PatchMeshOffset value="true"/>
<UniqueNodeName value="false"/>
@ -46,41 +48,51 @@
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="PATH_A_1"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_0"/>
<NodeName value="BrothelCore_0"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_1"/>
<NodeName value="BrothelCore_1"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_2"/>
<NodeName value="BrothelCore_2"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_3"/>
<NodeName value="BrothelCore_3"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_4"/>
<NodeName value="BrothelCore_4"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_5"/>
<NodeName value="BrothelCore_5"/>
</Item>
</ChildList>
<NodeName value="Brothel.001"/>
<NodeName value="BrothelCore"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="PATH_A_2"/>
</Item>
</ChildList>
<NodeName value="Brothel"/>
@ -90,27 +102,27 @@
</NodeConfig>
<MaterialList>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="9703dae5-e5d4-4ed2-8729-f2999f60f8c9"/>
<MaterialGuid value="eadea475-fefa-4e68-8318-8230f4750db5"/>
<MaterialName value="Black"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="d5a34c33-302a-4193-be10-750f3f498a62"/>
<MaterialGuid value="4f362a26-6d80-45bd-bd3d-6982e0b463a9"/>
<MaterialName value="Glass"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="286786d3-6f7d-48a4-8360-6cca546f884b"/>
<MaterialGuid value="e2e22cdc-0106-4412-aa29-ee00c3224302"/>
<MaterialName value="Material.001"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="8078c4ff-d389-4c10-87fe-dde4f432ee9f"/>
<MaterialGuid value="a48abd1c-c49b-457e-aaf9-7b5bb0dd2533"/>
<MaterialName value="Rock"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="067130eb-c1bf-48ea-98c4-99075ea29d88"/>
<MaterialGuid value="fe17e7a1-e096-4895-b45e-a776592b4cb7"/>
<MaterialName value="RoofBlue"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="d151a1de-6986-4e79-a38c-e34a8fd8de67"/>
<MaterialGuid value="2f5ec94a-1e15-4b53-9733-f332596af042"/>
<MaterialName value="WoodBeam"/>
</Item>
</MaterialList>

Binary file not shown.

View file

@ -0,0 +1,118 @@
<?xml version="1.0" encoding="utf-8"?>
<meta id="4ee90a2b-64e9-44f1-be58-7d9b8a34145f">
<meta id="d583b5b6-7965-4002-91f2-11f9e92f6bcf" type="group" folder="true" name="Materials">
<meta id="06e2c8ac-2419-4445-821d-776a25390f71" name="WoodBeam"/>
<meta id="c388e9d5-0e62-4fc2-97fc-089cc0c8d30d" name="Rock"/>
<meta id="c39d1200-3a06-47bb-82c9-c51e761372d9" name="Black"/>
<meta id="a0873084-6e77-44cc-a58c-3ba82d8679b6" name="Material.001"/>
<meta id="e2606d64-13e6-435d-bcde-f2eb38b7e836" name="RoofBlue"/>
<meta id="41393d1b-cb5a-4f0a-9599-d8db65eb6246" name="Glass"/>
</meta>
<meta id="29e7861c-d08d-4896-9748-8a3fb1c07bfa" type="group" folder="true" name="Meshes">
<meta id="4cc49cd7-601e-4927-8800-d4e0d4ae4245" name="Brothel.001_WoodBeam"/>
<meta id="a92e5aee-6fda-48ae-983f-2fa5a534d665" name="Brothel.001_Rock"/>
<meta id="83f5c7cd-b517-46b6-a93d-4363965966e3" name="Brothel.001_Black"/>
<meta id="79b66ebd-9c14-4d68-8701-5814c0bb16bf" name="Brothel.001_Material.001"/>
<meta id="48390ece-ef65-49d0-870b-4087f42c61d7" name="Brothel.001_RoofBlue"/>
<meta id="24b15dba-a3d7-4310-ac8f-4643ab5d1153" name="Brothel.001_Glass"/>
</meta>
<meta id="113657f6-0111-4cbd-8382-45138c59f7d7" name="Prefab">
<meta id="d66c3c25-574a-4512-bbd9-736d4d8ebbe6" name="Brothel">
<meta id="148f0fae-802c-492a-89c9-765e01ebf771" name="Brothel.001">
<meta id="1b62aff2-bfdc-4e25-9a53-b341733e07ca" name="Brothel.001_0"/>
<meta id="ad190a28-1613-449c-b82a-d3cc811a9e21" name="Brothel.001_1"/>
<meta id="b4984a2f-0663-4b5f-834e-e61b77621db6" name="Brothel.001_2"/>
<meta id="57e46f50-5bfb-4f2e-9d77-077777a796f0" name="Brothel.001_3"/>
<meta id="167b15a1-5b12-44b9-b12a-779266ef16e2" name="Brothel.001_4"/>
<meta id="f0feb28e-86fd-4146-8d88-7db6a47b6ff8" name="Brothel.001_5"/>
</meta>
</meta>
</meta>
</meta>
<importer type="GamCFbxImporterConfiguration">
<Md5Checksum value="ebdb1c51020c4c2cb0b3266aed761515"/>
<Scale value="0.01"/>
<PatchMeshOffset value="true"/>
<UniqueNodeName value="false"/>
<ImportAnimation value="false"/>
<FlipXAxis value="true"/>
<ForceNormalUp value="false"/>
<MergeDuplicateMeshes value="true"/>
<GenerateLod value="false"/>
<OverrideExistingLod value="false"/>
<NodeConfig type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_0"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_1"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_2"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_3"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_4"/>
</Item>
<Item type="GenCFbxNodeConfig">
<LodConfig value="00000000-0000-0000-0000-000000000000"/>
<ChildList/>
<NodeName value="Brothel.001_5"/>
</Item>
</ChildList>
<NodeName value="Brothel.001"/>
</Item>
</ChildList>
<NodeName value="Brothel"/>
</Item>
</ChildList>
<NodeName value="Prefab"/>
</NodeConfig>
<MaterialList>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="c39d1200-3a06-47bb-82c9-c51e761372d9"/>
<MaterialName value="Black"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="41393d1b-cb5a-4f0a-9599-d8db65eb6246"/>
<MaterialName value="Glass"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="a0873084-6e77-44cc-a58c-3ba82d8679b6"/>
<MaterialName value="Material.001"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="c388e9d5-0e62-4fc2-97fc-089cc0c8d30d"/>
<MaterialName value="Rock"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="e2606d64-13e6-435d-bcde-f2eb38b7e836"/>
<MaterialName value="RoofBlue"/>
</Item>
<Item type="GamCDataMaterialPair">
<MaterialGuid value="06e2c8ac-2419-4445-821d-776a25390f71"/>
<MaterialName value="WoodBeam"/>
</Item>
</MaterialList>
</importer>

View file

@ -0,0 +1,48 @@
local BrothelSystemMod = ...
---------------------
-- Apply building asset processor
BrothelSystemMod:registerAssetProcessor("models/brothel.fbx", {
DataType = "BUILDING_ASSET_PROCESSOR"
})
-- Register all brothel building parts and their properties
BrothelSystemMod:dofile("scripts/brothel/building_parts.lua")
-- Register the brothel monument
BrothelSystemMod:register({
--Déclare que l'objet que l'on crée appartient à la class BUILDING
DataType = "BUILDING",
--Déclare la classe de l'objet que l'on crée
Id = "BROTHEL",
Name = "BROTHEL_NAME",
Description = "BROTHEL_DESC",
--Renseigne le champ Building Type. cela va permettre de classer l'objet dans les menus
BuildingType = "GENERAL",
BuildingPartSetList = {
{
Name = "BROTHEL_CORE",
BuildingPartList = { "BROTHEL_WORKPLACE_PART"
}
}
}
})
BrothelSystemMod:register({
DataType = "UNLOCKABLE_BUILDING",
Id = "UNLOCKABLE_BROTHEL",
Name = "UNLOCKABLE_BROTHEL_NAME",
Description = "UNLOCKABLE_BROTHEL_DESC",
EstateInfluenceCostList = {
{ Estate = "LABOUR", Quantity = 0 }
},
RelatedProp = "BROTHEL"
})
------------- LIMIT ------

View file

@ -0,0 +1,55 @@
local BrothelSystemMod = ...
------------------------------BROTHEL WORKPLACE---------------------------------
-----------------------------------MODEL----------------------------------------
-- Register core prefab nodes
BrothelSystemMod:registerAssetId("models/brothel.fbx/Prefab/Brothel", "BROTHEL_CORE_PREFAB")
BrothelSystemMod:registerPrefabComponent("models/brothel.fbx/Prefab/Brothel",
{
DataType = "COMP_BUILDING_PART",
HasBuildingZone = true,
BuildingZone = { 10, 10 }
})
-- Register the brothel workplace part
BrothelSystemMod:register({
DataType = "BUILDING_PART",
Id = "BROTHEL_WORKPLACE_PART",
ConstructorData = {
DataType = "BUILDING_CONSTRUCTOR_DEFAULT",
CoreObjectPrefab = "BROTHEL_CORE_PREFAB"
},
--Ca c'est pour déclarer le visuel de construction si il y en a un !
ConstructionVisual = "BROTHEL_CORE_PREFAB",
Cost = {
UpkeepCost = {
{ Resource = "GOLD", Quantity = 1 }
},
RessourcesNeeded = {
{ Resource = "WOOD", Quantity = 5 }
}
},
AssetBuildingFunction = "BROTHEL_FUNCTION"
})
-----------------------------------FUNCTION----------------------------------------
BrothelSystemMod:register({
DataType = "BUILDING_FUNCTION_WORKPLACE",
Id = "BROTHEL_FUNCTION",
WorkerCapacity = 5,
RelatedJob = {
Job = "HOOKER", Behavior = "WORK_BEHAVIOR"
},
InputInventoryCapacity = {
{ Resource = "WOOLEN_CLOTH", Quantity = 50 }
},
ResourceListNeeded = {
{ Resource = "WOOLEN_CLOTH", Quantity = 1 }
},
ResourceProduced = {
{ Resource = "BARREL", Quantity = 1 }
}
})

View file

@ -0,0 +1,15 @@
local BrothelSystemMod = ...
-- Register mithril miner job
BrothelSystemMod:register({
DataType = "JOB",
Id = "HOOKER",
JobName = "HOOKER_NAME",
JobDescription = "HOOKER_DESC",
CharacterSetup = {
WorkAnimation = AGENT_ANIMATION.IDLE,
},
IsLockedByDefault = true,
UseWorkplaceBehavior = true,
AssetJobProgression = "DEFAULT_JOB_PROGRESSION"
})