<commit_before>#ifndef STRINGS_H
#define STRINGS_H

#pragma once
#include <string>
#include <QString>

/* Namespace for strings! Some of these may be pedantic but it is necessary to avoid having
 * to go through and change everything if the Roguelands save format changes slightly. */
namespace Strings
{
    // The location of the save file is different on Windows and Mac
#if defined(Q_OS_WIN)
    static const std::string playerDataPrefix = "C:/Users/";
    static const std::string playerDataSuffix = "/AppData/LocalLow/DefaultCompany/Roguelands/PlayerPrefs.txt";
    static const std::string tmpDataSuffix = "/AppData/LocalLow/DefaultCompany/Roguelands/.txt";
#elif defined(Q_OS_MAC)
    // Not yet implemented
#endif

    static const QString appTitle = "RogueEdit";

    // Strings for UI
    static const QString toolbarObjectName = "mainToolBar";
    static const QString characterMenuObjectName = "menuCharacter";
    static const QString loadCharacterDropdownObjectName = "dropdownLoad_Character";
    static const QString saveCharacterActionText = "Save Character";

    /* Strings for parsing PlayerPrefs.txt.
     * Current representation: "specifier : value : type; " */
    static const std::string separator = ":";   // Seperates information for a specifier
    static const std::string terminator = ";";  // Terminates a specifier
    static const std::string paddedSeperator = " : ";
    static const std::string paddedTerminator = " ; ";

    // (Soon to be) Long list of specifiers
    static const std::string intSpecifier = "System.Int32";
    static const std::string stringSpecifier = "System.String";
    static const std::string nameSpecifier = "name";

    static const int NUM_CLASSES = 15;   // Number of character classes
    static const int NUM_STATS = 6;
    static const std::string classes[NUM_STATS][NUM_STATS] = { { NULL, "Enforcer", "Gunner", "Machinist", "Darkmage", "Aethermage" },
                                                               { "Enforcer", NULL, "Blademaster", "Dragoon", "Spellblade", "Aetherknight" },
                                                               { "Gunner", "Blademaster", NULL, "Bounty Hunter", "Gunmage", "Commander" },
                                                               { "Machinist", "Dragoon", "<NAME>unter", NULL, "Datamancer", "Alchemist" },
                                                               { "Darkmage", "Spellblade", "Gunmage", "Datamancer", NULL, "Arcanist" },
                                                               { "Aethermage", "Aetherknight", "Commander", "Alchemist", "Arcanist", NULL }};
}
#endif<commit_msg>Create string arrays for variant, race, augment, and uniform<commit_after>#ifndef STRINGS_H
#define STRINGS_H

#pragma once
#include <string>
#include <QString>

/* Namespace for strings! Some of these may be pedantic but it is necessary to avoid having
 * to go through and change everything if the Roguelands save format changes slightly. */
namespace Strings
{
    // The location of the save file is different on Windows and Mac
#if defined(Q_OS_WIN)
    static const std::string playerDataPrefix = "C:/Users/";
    static const std::string playerDataSuffix = "/AppData/LocalLow/DefaultCompany/Roguelands/PlayerPrefs.txt";
    static const std::string tmpDataSuffix = "/AppData/LocalLow/DefaultCompany/Roguelands/.txt";
#elif defined(Q_OS_MAC)
    // Not yet implemented
#endif

    static const QString appTitle = "RogueEdit";

    // Strings for UI
    static const QString toolbarObjectName = "mainToolBar";
    static const QString characterMenuObjectName = "menuCharacter";
    static const QString loadCharacterDropdownObjectName = "dropdownLoad_Character";
    static const QString saveCharacterActionText = "Save Character";

    /* Strings for parsing PlayerPrefs.txt.
     * Current representation: "specifier : value : type; " */
    static const std::string separator = ":";   // Seperates information for a specifier
    static const std::string terminator = ";";  // Terminates a specifier
    static const std::string paddedSeperator = " : ";
    static const std::string paddedTerminator = " ; ";

    // (Soon to be) Long list of specifiers
    static const std::string intSpecifier = "System.Int32";
    static const std::string stringSpecifier = "System.String";
    static const std::string nameSpecifier = "name";

    static const int NUM_RACES = 24;
    static const int NUM_STATS = 6;       // NUM_STATS is used instead of NUM_CLASSES b/c class depends only on primary stats of a character
    static const int NUM_VARIANTS = 3;
    static const int NUM_UNIFORMS = 24;
    static const int NUM_AUGMENTS = 24;
    static const std::string races[NUM_RACES] = { "Wanderer", "Royalite", "Centurion", "Illuminate", "Shlaami", "Fishfolk", "Gekko",
                                                  "Nomad", "Deathrazor", "Hiveling", "Ancient", "Lightsworn", "Drifter", "Goblin",
                                                  "Swampfolk", "Tiki", "Titan", "Trogon", "Scaled", "Florbgon", "Oompa", "Wizened",
                                                  "Necro", "Golem" };
    static const std::string classes[NUM_STATS][NUM_STATS] = { { "", "Enforcer", "Gunner", "Machinist", "Darkmage", "Aethermage" },
                                                               { "Enforcer", "", "Blademaster", "Dragoon", "Spellblade", "Aetherknight" },
                                                               { "Gunner", "Blademaster", "", "Bounty Hunter", "Gunmage", "Commander" },
                                                               { "Machinist", "Dragoon", "Bounty Hunter", "", "Datamancer", "Alchemist" },
                                                               { "Darkmage", "Spellblade", "Gunmage", "Datamancer", "", "Arcanist" },
                                                               { "Aethermage", "Aetherknight", "Commander", "Alchemist", "Arcanist", "" }};
    static const std::string variants[NUM_VARIANTS] = { "Variant 1", "Variant 2", "Variant 3" };
    static const std::string uniforms[NUM_UNIFORMS] = { "Fleet Cadet", "Hero", "Scholar", "Explorer", "Pyromancer", "Fairy", "Seer",
                                                        "Soldier", "Blacksmith", "President", "Gadget Worker", "Minister", "Antihero",
                                                        "Dirtmage", "Beehive", "Monster Trainer", "Scientist", "Crusader", "Echo",
                                                        "Metalgear", "Phoenix", "Cobalt Mage", "Peasant", "Overworld" };
    static const std::string augments[NUM_AUGMENTS] = { "Crusader Hat", "Rogue Bandana", "Berserker Scarf", "Mage Hat", "Crown", "Shmoo Hat",
                                                        "Glibglob Hat", "Beats by Boizu", "Eyepod Hat", "Slime Hat", "Slime Hat",
                                                        "Mech City Beanie", "Lucky Pumpkin", "Eye Gadget", "Baby Silver", "Oculus Goggles",
                                                        "Chamcham Hat", "Demon Horns", "Forsaker Mask", "Shroom Hat", "Halo", "Creator Mask",
                                                        "Rebellion Headpiece", "Gas Mask" };
}
#endif
{'fraction_non_alphanumeric': 0.11567164179104478, 'fraction_numerical': 0.0024875621890547263, 'mean_word_length': 2.264321154713577, 'pattern_counts': {'":': 2, '<': 8, '<?xml version=': 0, '>': 8, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 40, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1935560', 'n_tokens_mistral': 1987, 'n_tokens_neox': 1891, 'n_words': 583}