Exemple #1
0
def _Build_Engine_Objects():
    '''
    Returns a list of Edit_Objects for 'assets/props/Engines'.
    Meant for calling from the Live_Editor.
    '''
    File_System.Load_Files('*assets/props/Engines/*.xml')
    game_files = File_System.Get_Asset_Files_By_Class('macros', 'engine')
    return Create_Objects_From_Asset_Files(game_files, engine_item_macros)
Exemple #2
0
def _Build_Storage_Objects():

    # These are a bit scattered, some in the units folder and
    # some in storagemodules. Use a name pattern match for this.
    File_System.Get_All_Indexed_Files('macros', 'storage_*')
    #File_System.Load_Files('*assets/props/StorageModules/*.xml')

    # Followup with class check for safety.
    game_files = File_System.Get_Asset_Files_By_Class('macros', 'storage')
    return Create_Objects_From_Asset_Files(game_files, storage_item_macros)
Exemple #3
0
def _Build_Weapon_Objects():
    '''
    Returns a list of Edit_Objects for all found weapons.
    Meant for calling from the Live_Editor.
    '''
    # Make sure the bullets are created, so they can be referenced.
    Live_Editor.Get_Category_Objects('bullets')
    game_files = File_System.Get_Asset_Files_By_Class('macros', 'weapon',
                                                      'missilelauncher',
                                                      'turret',
                                                      'missileturret',
                                                      'bomblauncher')
    return Create_Objects_From_Asset_Files(game_files, weapon_item_macros)
Exemple #4
0
def _Build_Bullet_Objects():
    '''
    Returns a list of Edit_Objects for all found bullets.
    Meant for calling from the Live_Editor.
    '''
    # Make sure engines are loaded for the missiles.
    Live_Editor.Get_Category_Objects('engines')

    # Look up bullet files.
    # These can be in two locations.
    File_System.Load_Files('*assets/props/WeaponSystems/*.xml')
    File_System.Load_Files('*assets/fx/weaponFx/*.xml')

    # Split out proper bullets from missiles and similar.
    bullet_game_files = File_System.Get_Asset_Files_By_Class(
        'macros', 'bullet')
    missile_game_files = File_System.Get_Asset_Files_By_Class(
        'macros', 'missile', 'bomb', 'mine', 'countermeasure')
    objects = []
    objects += Create_Objects_From_Asset_Files(bullet_game_files,
                                               bullet_item_macros)
    objects += Create_Objects_From_Asset_Files(missile_game_files,
                                               missile_item_macros)
    return objects
Exemple #5
0
def Get_Ship_Macro_Files():
    '''
    Finds and returns all ship macro game files.
    '''
    # Note: normally ship macros start with "ship_".
    # However, this doesn't find the XR shippack, since they all start
    # with "units_" instead; also over-includes on XR shippack since it calls
    # some docking bay macros "ship_storage_".
    File_System.Get_All_Indexed_Files('macros', 'ship_*')
    File_System.Get_All_Indexed_Files('macros', 'units_*')

    # Search out loaded assets, which already have checked the
    # class tags. Do this for each ship class.
    ret_list = []
    for suffix in ['xs', 's', 'm', 'l', 'xl']:
        ret_list += File_System.Get_Asset_Files_By_Class(
            'macros', f'ship_{suffix}')

    return ret_list
Exemple #6
0
def _Build_DockingBay_Objects():
    File_System.Load_Files('*assets/props/SurfaceElements/*.xml')
    game_files = File_System.Get_Asset_Files_By_Class('macros', 'dockingbay')
    return Create_Objects_From_Asset_Files(game_files, dockingbay_item_macros)
Exemple #7
0
def _Build_Scanner_Objects():
    File_System.Load_Files('*assets/props/SurfaceElements/*.xml')
    game_files = File_System.Get_Asset_Files_By_Class('macros', 'scanner')
    return Create_Objects_From_Asset_Files(game_files, scanner_item_macros)