Wykres commitów

25 Commity (cabefc04d1b9f68d553d6a2fa839ae2a10b2f66a)

Autor SHA1 Wiadomość Data
Torrin Leonard cabefc04d1 Reformatting and preparing for debug mode
Created Helpers.py file and combined get_combinations.py, loading_animation.py, Constants.py, and Checks.py.
2022-08-24 08:56:10 -04:00
Torrin Leonard 4f42106fa3 Fixing merge issues
Minor bug fixes to exporter and cleaning up code.
2022-08-11 09:48:01 -04:00
Torrin Leonard 74eef79a3f Revert "Merge branch 'Logic_v2_and_minor_changes' into main"
This reverts commit e31d2abf36, reversing
changes made to 138e1b967b.
2022-08-10 22:18:35 -04:00
Torrin Leonard f0ba77f7a4 Added "NOT" rule to Logic
- Email is now only activated if the user specifies
- Implemented "NOT" rule in Logic.py
- Added documentation for Synced Attribute Material values in Material_Generator.py
2022-06-20 09:32:49 -04:00
Torrin Leonard 082edaf4e7 Adding the ability to send emails when Batch is complete
- Reverted Materials over Logic change in DNA_Generator.py
2022-06-18 20:29:02 -04:00
Torrin Leonard 3cb2a69c81 Changes to Materials and Logic
- Added AutoSave before generation functionality to Other panel
- Removed strip_empty_exclude function
- Modified Exporter to work with new Material Randomizer layout
- Added Enable Materials option in logicafyDNAsingle function in preparation for Material Randomizer Logic
- Materials are no longer formatted like Variants, the Material List is now a dictionary where the keys are the names of the Materials and the values are the Rarity percentages. Each Variant in the Materials.json file can have a different list with different rarity values that are selected for only that variant.

Material file format:
```
{
    "Variant Name": {
        "Material List": {
            "Material Name 1": 90,
            "Material Name 2": 5,
            "Material Name 3": 1,
            "Material Name 4": 4
        },
        "Variant Objects": []
    }
}
```
2022-06-06 17:04:25 -04:00
Torrin Leonard 17cbf3a32f Revamping Logic
Lots more info in the comments of the code.

Documentation still needs to be made, also more testing lol

This is the new format for Logic.json files:

```
{
    "Rule-1":{
        "IF": [
            "Variant collection name"
        ],
        "THEN":[
            "Attribute collection name", "Variant collection name"
        ]
    }
}
```

Some basic guidelines, needs to be more thorough and cleaned up for documentation:

Attributes and Variants can be used in the “THEN” list, Variants can only be used in the “IF” list.

If a full attribute is detected in the “THEN” list (either by the attribute collection name or all variant collection names in that attribute) and a variant is not detected in the “IF” list, the attribute detected in the “THEN” list will be set to “EMPTY”.

Variants in the “IF” list may be from the same or separate attributes, however they must never be from the same attribute as variants in the “THEN” list.

I need sleep.

Note to self: The Logic UI List needs to be updated to reflect these changes to Logics core functionality, the current UI List is broken on this branch and wont work.

Also added save_result to Constants.py for basic logging functionality.
2022-06-05 23:46:49 -04:00
Torrin Leonard 6495b12654 Initial commit 2022-06-03 22:47:09 -04:00
Torrin Leonard 62dd24796c Formatting
Formatting Exceptions with colours and adding an aditional exception for the name.
2022-05-25 11:34:24 -04:00
Abrar Faiaz Adnan 33cacab994 shows which attribute has naming problem
added few lines to show which attribute has naming problem, along with the github link to the readme file showing how to fix it
2022-05-24 22:48:38 +06:00
Torrin Leonard 722588e39b Refactoring files and Metadata methods
- Deprecated Batch_Sorter.py
- Refactored DNA_Generator.send_To_JSON calls in __init__.py
- Reformatted Checks.py
- All DNA now has an order number and is kept in order throughout the DNA Generation process.
- Added makeBatches() (from Batch_Sorter.py) to DNA_Generator.py. Batch sorting now happens inside DNA_Generator.py.
- Added confirmation box to Create NFT Data operator
- Exporter now keeps track of DNA order_num for each NFT
- Changed animation to work on Windows and Mac
- Reformatted Metadata.py to work with Exporter instead of Refactorer. Metadata is now generated while NFTs media files are rendered/generated.
- Heavily refactored the Refactoerer.py file.
2022-05-10 08:14:53 -04:00
Torrin Leonard 4384111e85
Merge branch 'UIList_Implementation' into Material_Randomizer_Metapanda 2022-04-20 14:50:53 -04:00
Torrin Leonard 3de95e30d8 Adding file sorting method to Constants.py 2022-04-17 18:20:35 -04:00
Torrin Leonard d093bf9745 Adding Constants File to clean up code 2022-04-17 17:01:10 -04:00
Torrin Leonard a7262334f2 Further integration and creation of the Material_Generator.py 2022-04-17 16:42:47 -04:00
Torrin Leonard c8e8d62837 Committing Logic patch and Checks 2022-04-09 13:34:43 -04:00
Torrin Leonard f90cb38e2b Removing deprecated script code
Added loading animation to DNA_Generator for Create NFT Data step.
2022-03-25 08:22:28 -04:00
Torrin Leonard e0528d0a65 Fixing Logic and adding better error handling
__init__.py:
    Removed unnecessary variable passes
    Removed unnecessary imports

Checks.py:
    Added descriptions for all checks in Checks.py
    Created raise_Error_ScriptIgnore() check
    Created raise_Error_numBatches() check
    Created raise_Error_ZeroCombinations() check
    Created raise_Error_numBatchesGreaterThan() check
    Created raise_Warning_maxNFTs() check

DNA_Generator.py:
    Removed and refactored enableGeneration (deprecated material generation) code.
    Deprecated try excepts statements and errors for Checks.py
    Removed unnecessary variable passes
    Refactored # Messages
    Added loading animation

Exporter.py:
    Removed Material Handling section
    Refactored exporter console messages
    Added new loading animation for console when exporting images, animations or 3D models

loading_animaiton.py:
    Added loading animation file class

Logic.py:
    Fixed logic so that all rules are guaranteed to work
    Added "Always with" rule
2022-03-24 21:38:53 -04:00
Torrin Leonard c6a9224d67 Update DNA_Generator.py 2022-03-13 21:29:27 -04:00
Torrin Leonard 4531d56098 Added checks to DNA_Generator.py
Brought back Duplicate and Rarity checker from previous build.
2022-03-13 21:27:18 -04:00
Torrin Leonard 1b4111bc36 Cleaning things up
Updated version number for add-on
Refactored all imports for renamed files
2022-03-12 12:18:41 -05:00
Torrin Leonard 28dae909f9 Refactored DNA generation method and Logic
DNA Generation now checks if each DNA is unique after random, Rarity and Logic have generated a singleDNA string. This prevents duplication with all three methods.

Logic now works for both Only with and Never with methods. Variants and Attributes both work.

Rarity sorter was refactored to only return a singleDNA instead of the entire DNAList. Also the DNA creation method in Rarity_Sorter is has been changed.
2022-03-12 12:02:01 -05:00
Torrin Leonard 7bd22835ce Committing changes
__init__.py:
- added Custom Field Operators for metadata
- Added Description fields for Cardano, Solana, and ERC721 metadata templates
- Reconfigured variables in Operator function to be in class
- Created passable variables for new metadata fields
- Updated methods
- Added new Cardano metadata description field to panel
- Added new Solana metadata description field to panel
- Added new ERC721 metadata description field to panel
- Removed old Logic Panel

Batch_Refactorer.py:
- Cleaned methods for passing variables with classes
- Refactored functions and methods for calling functions from metaData.py
- Created new class rename_MetaData_Variables for better variable passing

DNA_Generator.py:
- Removed unnecessary spaces

Exporter.py:
- BMNFT_metadata files now include "Empty" if DNA is set to "0" by Logic.py

Logic.py:
- Added Collections method to read dictionaries
- Attributes and variants are now read independently and work properly
- Variant order numbers are now properly selected

metaData.py:
- Removed unnecessary imports
- Refactored function imports with new classes from Batch_Refactorer.py
- Description is now inserted into each template as defined by the user in Refactor panel
- Custom fields are now included in each template
2022-03-10 20:03:20 -05:00
Torrin Leonard e61ba2dad4 Added Logic.py
Integrated Logic.py in __init__.py
Integrated Logic.py function in DNA_Generator.py
Modified Exporter.py to accept Empty Variants
Created Logic.py and methods
Removed UIList.py and directory
2022-03-07 22:21:25 -05:00
Torrin Leonard 0a06052824 Adding Blender UI work up to this point 2022-02-02 10:37:42 -05:00