pandemonium_engine/modules/entity_spell_system/SCsub

148 lines
4.0 KiB
Plaintext

import os
Import('env')
module_env = env.Clone()
if os.path.isdir('../mesh_data_resource'):
module_env.Append(CPPDEFINES=['MESH_DATA_RESOURCE_PRESENT'])
if os.path.isdir('../props'):
module_env.Append(CPPDEFINES=['PROPS_PRESENT'])
has_texture_packer = False
if os.path.isdir('../texture_packer'):
has_texture_packer = True
module_env.Append(CPPDEFINES=['TEXTURE_PACKER_PRESENT'])
sources = [
"register_types.cpp",
"entity_enums.cpp",
"spell_enums.cpp",
"item_enums.cpp",
"data/auras/aura_group.cpp",
"data/items/item_instance.cpp",
"data/items/item_template.cpp",
"data/items/equipment_data.cpp",
"data/items/craft_recipe_helper.cpp",
"data/items/craft_recipe.cpp",
"data/items/model_visual.cpp",
"data/items/model_visual_entry.cpp",
"data/species/entity_species_data.cpp",
"data/species/species_model_data.cpp",
"data/species/species_instance.cpp",
"data/spells/spell_cooldown_manipulation_data.cpp",
"data/spells/spell.cpp",
"data/spells/spell_effect_visual.cpp",
"data/spells/spell_effect_visual_simple.cpp",
"data/atlases/character_atlas.cpp",
"data/atlases/character_atlas_entry.cpp",
"entities/data/entity_data.cpp",
"entities/data/entity_class_data.cpp",
"entities/data/vendor_item_data.cpp",
"entities/data/vendor_item_data_entry.cpp",
"entities/data/entity_data_container.cpp",
"entities/data/item_container_data.cpp",
"entities/data/item_container_data_entry.cpp",
"entities/skills/entity_skill.cpp",
"entities/skills/entity_skill_data.cpp",
"entities/data/character_spec.cpp",
"skeleton/character_bones.cpp",
"entities/stats/stat_data.cpp",
"entities/stats/level_stat_data.cpp",
"entities/stats/simple_level_stat_data.cpp",
"entities/stats/complex_level_stat_data.cpp",
"inventory/bag.cpp",
#"inventory/inventory.cpp",
"infos/aura_infos.cpp",
"infos/spell_cast_info.cpp",
"pipelines/spell_damage_info.cpp",
"pipelines/spell_heal_info.cpp",
"entities/auras/aura_data.cpp",
"entities/entity.cpp",
"entities/resources/entity_resource_cost_data.cpp",
"entities/resources/entity_resource_cost_data_health.cpp",
"entities/resources/entity_resource_cost_data_resource.cpp",
"entities/resources/entity_resource.cpp",
"entities/resources/entity_resource_health.cpp",
"entities/resources/entity_resource_speed.cpp",
"drag_and_drop/es_drag_and_drop.cpp",
"skeleton/character_skeleton_2d.cpp",
"skeleton/character_skeleton_3d.cpp",
"skeleton/skeleton_model_entry.cpp",
"utility/entity_create_info.cpp",
"data/loot/loot_data_base.cpp",
"entities/ai/entity_ai.cpp",
"formations/ai_formation.cpp",
"projectiles/3d/spell_follow_projectile_3d.cpp",
"profiles/input/input_profile_modifier.cpp",
"profiles/input/input_profile_modifier_entry.cpp",
"profiles/input/input_profile.cpp",
"profiles/actionbar/action_bar_button_entry.cpp",
"profiles/actionbar/action_bar_entry.cpp",
"profiles/actionbar/action_bar_profile.cpp",
"profiles/class_profile.cpp",
"profiles/player_profile.cpp",
"spawners/ess_entity_spawner.cpp",
"singletons/profile_manager.cpp",
"singletons/ess.cpp",
"database/ess_resource_db.cpp",
"database/ess_resource_db_static.cpp",
"database/ess_resource_db_map.cpp",
"database/ess_resource_db_folders.cpp",
"editor/ess_editor_plugin.cpp",
"props/prop_data_entity.cpp",
"material_cache/ess_material_cache.cpp"
]
if has_texture_packer:
sources.append("material_cache/ess_material_cache_pcm.cpp")
if ARGUMENTS.get('custom_modules_shared', 'no') == 'yes':
# Shared lib compilation
module_env.Append(CCFLAGS=['-fPIC'])
module_env['LIBS'] = []
shared_lib = module_env.SharedLibrary(target='#bin/ess', source=sources)
shared_lib_shim = shared_lib[0].name.rsplit('.', 1)[0]
env.Append(LIBS=[shared_lib_shim])
env.Append(LIBPATH=['#bin'])
else:
# Static compilation
module_env.add_source_files(env.modules_sources, sources)