summaryrefslogblamecommitdiff
path: root/ueditor_adv.rpy
blob: d49cc4f884d872bc93a0507a7aa1019075a055f5 (plain) (tree)


















                                                                                 




                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            











































                                                                                                                                                                                                                                      










                                                              









                                                                                 
                                                     


                                               
         
                                   

                     

                                                          

                     











                                                                                                    












                                         

                                                                                                 













                                       






                                                                                                        











                                               













                                                               

                                           
                    
                



                                  





                      
#################################################################################
#     This file is part of Spheres.
#     Copyright (C) 2022  Jesusalva

#     This library is free software; you can redistribute it and/or
#     modify it under the terms of the GNU Lesser General Public
#     License as published by the Free Software Foundation; either
#     version 2.1 of the License, or (at your option) any later version.

#     This library is distributed in the hope that it will be useful,
#     but WITHOUT ANY WARRANTY; without even the implied warranty of
#     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#     Lesser General Public License for more details.

#     You should have received a copy of the GNU Lesser General Public
#     License along with this library; if not, write to the Free Software
#     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
#################################################################################
# Editor labels for developers
init python:
    if persistent.mname is None:
        # Most names from https://www.fantasynamegenerators.com/
        # Others came as I thought on them
        persistent.mname=["Bill", "Homer", "Wiley", "Sidney", "Bernard", "Jonathan", "Alan", "Allen", "Drew", "Jayden", "Sergio", "Steven", "Loris", "Filip", "Alessio", "Augustin", "Alexis", "Benjamin", "Hendrik", "Aron", "Mervin", "Haskell", "Philip", "Bryant", "Harry", "Fred", "Yamagata", "Satou", "Aldo", "Rudolf", "Oliver", "Adam", "Lazaro", "Daniel", "Marcos", "Eric", "Michelangelo", "Amando", "Luca", "Lukas", "Julian", "Joel", "Spencer", "Joseph", "Peter", "Gregory", "Pericles", "Jamy", "Junius", "Tybalt", "Henry", "Hubert", "Frederick", "Salvatore", "Samuel", "Jeremy", "Geraldo", "Adelmo", "Ataleo", "Elliot", "Jacob", "John", "Blake", "Edward", "Kurt" "Ralph", "Randall", "Vincent", "Alvin", "Stuart", "Anthony", "Karl", "Lawrence", "Martin", "Matthew", "Wesley", "Bryan", "Patrick", "Sebastian", "Florent", "Simeon", "Simon", "Robin", "Kai", "Ralke", "Antarion", "Kalant", "Mestan", "Andrew", "Bartholomew", "Donovan", "Alonzo"] # 90 entries
        persistent.fname=['Achillea', 'Adele', 'Adelina', 'Adreal', 'Adrina', 'Aerika', 'Agacia', 'Agatha', 'Aileen', 'Aimee', 'Ainah', 'Aine', 'Aire', 'Aisha', 'Akeena', 'Aksis', 'Akua', 'Aldea', 'Aldia', 'Alessia',
'Alex', 'Alexis', 'Alfrem', 'Alhm', 'Alice', 'Alicia', 'Alicure', 'Alina', 'Allumeur', 'Alma', 'Almexia', 'Almina', 'Alnoire', 'Altea', 'Altina', 'Alyattes', 'Alyssa', 'Amalie', 'Amanda', 'Amane',
'Amaryllis', 'Ameena', 'Amelia', 'Amerie', 'Amille', 'Amy', 'Anabela', 'Anastasia', 'Andra', 'Andrea', 'Aneeta', 'Anelace', 'Ange', 'Angel', 'Angela', 'Angeli', 'Angelica', 'Anise', 'Anissa', 'Anna', 'Annah',
'Anne', 'Anri', 'Antoinette', 'Apaneris', 'April', 'Apsaras', 'Aquaria', 'Aquata', 'Aradia', 'Arbre', 'Arcadia', 'Aria', 'Ariel', 'Arietta', 'Arlette', 'Armelia', 'Aroselle', 'Arpeggio', 'Arshae', 'Arthur', 'Ashley',
'Astraea', 'Asuna', 'Atolia', 'Attira', 'Audrus', 'Aumber', 'Aura', 'Aurst', 'Ava', 'Avril', 'Axela', 'Ayame', 'Ayesha', 'Aylen', 'Azalea', 'Azelia', 'Azuri', 'Babbage', 'Balthie', 'Bana', 'Barbara',
'Barbarella', 'Baretta', 'Beatrice', 'Beatrix', 'Belc', 'Belladonna', 'Bellaris', 'Bellesia', 'Berticia', 'Beryl', 'Bethany', 'Betina', 'Bettie', 'Bianca', 'Birchea', 'Biyue', 'Brenda', 'Bruna', 'Cadmus', 'Calla', 'Callaway',
'Camille', 'Canalia', 'Canella', 'Cara', 'Cardea', 'Carina', 'Carlotto', 'Carmenta', 'Carol', 'Carolina', 'Caroline', 'Carra', 'Casilda', 'Cassandra', 'Cassie', 'Catharine', 'Catheraine', 'Catherine', 'Catreya', 'Catyra', 'Cecil',
'Cecile', 'Celes', 'Ceran', 'Cern', 'Cesille', 'Charlotte', 'Chaya', 'Chelis', 'Chelsey', 'Cherrey', 'Chesa', 'Chiarini', 'Chloe', 'Chopin', 'Ciel', 'Cielo', 'Ciruela', 'Claire', 'Clara', 'Claris', 'Clein',
'Clokka', 'Cluna', 'Cocotte', 'Colle', 'Collete', 'Comette', 'Commelina', 'Constance', 'Coral', 'Cornelia', 'Corona', 'Cosette', 'Creana', 'Cres', 'Crista', 'Croft', 'Croun', 'Curto', 'Cynthia', 'Dahlia', 'Daisy',
'Daniela', 'Daphia', 'Dari', 'Dea', 'Deborah', 'Deeva', 'Delci', 'Delice', 'Delores', 'Demetria', 'Denise', 'Diana', 'Dione', 'Dolores', 'Doreen', 'Dorothea', 'Dorothy', 'Dorrie', 'Drake', 'Dunamis', 'Eida',
'Eioh', 'Eir', 'Eira', 'Elaine', 'Elcira', 'Eleanor', 'Elena', 'Elenia', 'Elenore', 'Eleonore', 'Elia', 'Eliina', 'Elinor', 'Elisa', 'Elisabeth', 'Elise', 'Elisia', 'Elize', 'Elle', 'Elleani',
'Ellis', 'Elminage', 'Elmyra', 'Elna', 'Elodia', 'Elsea', 'Eluria', 'Elvira', 'Emili', 'Emiliana', 'Emille', 'Emily', 'Emma', 'Emmie', 'Enelle', 'Enju', 'Envy', 'Epona', 'Erena', 'Erika', 'Erin',
'Erina', 'Esmera', 'Este', 'Ester', 'Esterea', 'Esthera', 'Eugenia', 'Eureka', 'Eva', 'Evangelina', 'Eve', 'Evelet', 'Evelyn', 'Evonne', 'Eytria', 'Fahmel', 'Falr', 'Falsette', 'Fanshi', 'Fara', 'Farro',
'Fay', 'Fayte', 'Felicia', 'Felina', 'Fenne', 'Fheliel', 'Fiamma', 'Filmera', 'Finnie', 'Fiona', 'Fior', 'Firena', 'Fjara', 'Flameria', 'Flavia', 'Fleia', 'Fleur', 'Fleurier', 'Florencia', 'Flores', 'Flotia',
'Flouge', 'Foria', 'Formilia', 'Fraise', 'Fran', 'Francisca', 'Frau', 'Frecia', 'Freesia', 'Freund', 'Freya', 'Fuani', 'Furnette', 'Fusil', 'Gabrielle', 'Galena', 'Galvia', 'Gemini', 'Ginasta', 'Glenda', 'Grahom',
'Greifis', 'Griselda', 'Griselle', 'Guna', 'Guven', 'Gwendolyn', 'Hadasa', 'Hamil', 'Harfyl', 'Harriet', 'Harzelis', 'Hatina', 'Hazel', 'Heather', 'Helen', 'Helena', 'Helenna', 'Henrietta', 'Hervaine', 'Hester', 'Heuliez',
'Hilda', 'Hina', 'Hitomi', 'Holly', 'Iblis', 'Idina', 'Idun', 'Ilfana', 'Ilia', 'Ilith', 'Illumina', 'Ilse', 'Ines', 'Iori', 'Irene', 'Iris', 'Irit', 'Irulia', 'Iruna', 'Isabella', 'Isabelle',
'Isadora', 'Ishtar', 'Isis', 'Isla', 'Islay', 'Itsuki', 'Jacqueline', 'Jade', 'Janet', 'Janine', 'Janisa', 'Jasmine', 'Jeana', 'Jeanne', 'Jelle', 'Jenna', 'Jessica', 'Joanna', 'Joanne', 'Jodie', 'Josefa', 'Jeniffer',
'Josselyne', 'Joy', 'Julia', 'Juliet', 'Kaede', 'Kaguya', 'Kalneya', 'Kanan', 'Kanon', 'Kara', 'Karin', 'Karlee', 'Karvati', 'Kasha', 'Kaskia', 'Kat', 'Kathy', 'Katia', 'Kay', 'Kayla', 'Kaylee',
'Kia', 'Kiana', 'Kireena', 'Kirsten', 'Kishe', 'Kitty', 'Kleo', 'Klonus', 'Kris', 'Kristine', 'Kurikara', 'Laila', 'Lainah', 'Lakoka', 'Lalka', 'Lapia', 'Lapine', 'Lapis', 'Lara', 'Lastama', 'Latisia',
'Laurie', 'Lavinia', 'Lavrina', 'Laylah', 'Leara', 'Leeann', 'Lefille', 'Lena', 'Lenny', 'Leona', 'Leopoldine', 'Lepisha', 'Leporina', 'Leticia', 'Letina', 'Letizia', 'Levi', 'Liana', 'Liebe', 'Liesbeth', 'Lieselotte',
'Lilah', 'Lilia', 'Lilipha', 'Lilitea', 'Lilith', 'Lillian', 'Lillie', 'Lilly', 'Liluana', 'Limone', 'Linbelle', 'Linda', 'Lisha', 'Livie', 'Lobelia', 'Loine', 'Loine', 'Lola', 'Lopp', 'Loretta', 'Lorraine',
'Louise', 'Loulou', 'Lovisa', 'Lucca', 'Luce', 'Lucie', 'Lucied', 'Lucika', 'Lucille', 'Lucita', 'Lucvina', 'Lucy', 'Lufany', 'Luis', 'Lumiere', 'Lunel', 'Lupis', 'Lurica', 'Lute', 'Luvi', 'Luvinia',
'Luxine', 'Lyca', 'Lynda', 'Lyra', 'Lyudmila', 'MEhme', 'Maaya', 'Macie', 'Madeleine', 'Madleen', 'Madonna', 'Maeliss', 'Maesha', 'Magali', 'Magda', 'Maggie', 'Maia', 'Maiya', 'Makia', 'Makina', 'Makira',
'Malahna', 'Maleena', 'Maleine', 'Maleius', 'Malin', 'Malley', 'Manoela', 'Manya', 'Mao', 'Marbal', 'Marcella', 'Maren', 'Margaret', 'Margrid', 'Maria', 'Marian', 'Marianna', 'Marianne', 'Maril', 'Marin', 'Marina',
'Mariora', 'Marirose', 'Marley', 'Marmaria', 'Marmelo', 'Marna', 'Marsha', 'Martha', 'Martina', 'Marusha', 'Mary', 'Marzia', 'Matilda', 'Mavelle', 'May', 'Maya', 'Mayden', 'Mazetta', 'Mea', 'Medi', 'Media',
'Meera', 'Meiko', 'Meja', 'Melina', 'Melisa', 'Melissa', 'Melk', 'Meloa', 'Melody', 'Meltha', 'Meriam', 'Meridia', 'Meril', 'Meriloa', 'Merith', 'Mertina', 'Metatron', 'Metea', 'Mezlan', 'Mhelt', 'Mia',
'Michelia', 'Michill', 'Mickle', 'Miel', 'Mikoto', 'Milana', 'Milena', 'Millea', 'Milleue', 'Millie', 'Mimir', 'Minea', 'Minne', 'Miphae', 'Mira', 'Mirage', 'Mireia', 'Mires', 'Mirette', 'Miria', 'Mirsha',
'Mist', 'Mistle', 'Mitra', 'Mitsuna', 'Miuna', 'Mizuki', 'Mocca', 'Moira', 'Molnar', 'Monica', 'Mordred', 'Morgan', 'Morgiana', 'Mortet', 'Moufa', 'Muse', 'Myra', 'Myula', 'Nacht', 'Nadia', 'Naile', 'Nalili',
'Nana', 'Nancy', 'Naomi', 'Narziss', 'Natalia', 'Natalie', 'Natasha', 'Nazuri', 'Neal', 'Nefell', 'Nelfari', 'Nellie', 'Nemesis', 'Nephilia', 'Neranda', 'Nero', 'Neste', 'Netise', 'Neve', 'Nezh', 'Nicola',
'Nicole', 'Nieve', 'Noel', 'Norn', 'Octavia', 'Odette', 'Oichi', 'Olaria', 'Olfan', 'Olga', 'Olivia', 'Ophelia', 'Orecca', 'Orilise', 'Orineia', 'Orleia', 'Orri', 'Paige', 'Paladina', 'Palina', 'Pamela',
'Paristia', 'Parl', 'Parme', 'Patrici', 'Patricia', 'Pelche', 'Peor', 'Petra', 'Petti', 'Phanys', 'Pharis', 'Pirika', 'Platina', 'Poinsettia', 'Polaris', 'Polcha', 'Pramia', 'Prem', 'Presea', 'Primera', 'Priscillia',
'Promina', 'Prunella', 'Psyche', 'Qamara', 'Qian', 'Quincie', 'Quitteria', 'Rachel', 'Rachelle', 'Rachiel', 'Raechel', 'Rafie', 'Rala', 'Ramel', 'Randine', 'Rasmere', 'Raz', 'Raziel', 'Rebecca', 'Regene', 'Regina',
'Regret', 'Relena', 'Reletima', 'Remm', 'Remonia', 'Ren', 'Renna', 'Resemia', 'Rev', 'Revia', 'Rhal', 'Rhamia', 'Rhudi', 'Rhuin', 'Riala', 'Rico', 'Rikki', 'Rinna', 'Risley', 'Roaune', 'Robin',
'Rogue', 'Roila', 'Rolecia', 'Rolenta', 'Roma', 'Romane', 'Romi', 'Rosa', 'Rosalie', 'Rosalind', 'Rosalyn', 'Rose', 'Rosella', 'Rosetta', 'Rosette', 'Rowan', 'Roxane', 'Roza', 'Rozea', 'Rubecka', 'Rubell',
'Rubia', 'Ruby', 'Rudaria', 'Rukt', 'Rumi', 'Rumin', 'Runa', 'Ruteel', 'Ruth', 'Ruthi', 'Ryune', 'Sabina', 'Sabrina', 'Sahnia', 'Samantha', 'Sandra', 'Sandy', 'Santana', 'Santie', 'Sara', 'Sarja',
'Sayla', 'Scarlet', 'Scathach', 'Schelm', 'Seine', 'Sekhmet', 'Selene', 'Selina', 'Selma', 'Selvia', 'Sera', 'Seraphim', 'Seraphina', 'Serlia', 'Seryne', 'Shafna', 'Shalia', 'Shalon', 'Shardia', 'Sharlet', 'Sharley',
'Sharna', 'Shauna', 'Sheea', 'Sheena', 'Sheera', 'Shella', 'Shellie', 'Sherna', 'Sherry', 'Sheya', 'Shirli', 'Shizuna', 'Shizune', 'Sia', 'Siduri', 'Signa', 'Sigrun', 'Silika', 'Silvarisa', 'Silvia', 'Sion',
'Skuld', 'Soelle', 'Sofia', 'Solaris', 'Solicia', 'Sonia', 'Sophia', 'Sora', 'Sorel', 'Sotisse', 'Spica', 'Stacia', 'Stacy', 'Stefania', 'Stella', 'Suzune', 'Stina', 'Stoh', 'Su Lin', 'Sunny', 'Susan',
'Suzak', 'Suzie', 'Sybil', 'Sylphine', 'Sylvia', 'Tabitha', 'Talia', 'Talt', 'Tania', 'Taris', 'Tarnia', 'Teol', 'Teresa', 'Teresia', 'Themis', 'Theodora', 'Theone', 'Theron', 'Thiane', 'Thoth', 'Tia',
'Tiamonde', 'Tiana', 'Tianna', 'Tieffanie', 'Tiffany', 'Tilmote', 'Tilra', 'Tina', 'Tinia', 'Tiramia', 'Tiris', 'Titania', 'Tonya', 'Tracy', 'Tricia', 'Tristin', 'Trixie', 'Tsubaki', 'Tsugumi', 'Tyche', 'Tyna',
'Ulrissa', 'Ulyana', 'Ursula', 'Urth', 'Uyae', 'Valentina', 'Valkyrie', 'Valoa', 'Valvara', 'Vaneera', 'Varina', 'Vecka', 'Vega', 'Veil', 'Velfire', 'Velka', 'Velsa', 'Velvet', 'Vephar', 'Veral', 'Vered',
'Verna', 'Veronica', 'Vertine', 'Vicki', 'Victoria', 'Viola', 'Violet', 'Virea', 'Virginia', 'Vistea', 'Vivian', 'Viviana', 'Wanda', 'Wendis', 'Wendy', 'Willowmere', 'Winry', 'Wynn', 'Xestris', 'Yeshka', 'Ysra',
'Yula', 'Yulia', 'Yuma', 'Yuna', 'Yurifa', 'Yurika', 'Yurimoir', 'Yuzuki', 'Zada', 'Zakuro', 'Zelma', 'Zenobia', 'Zoue'] # 915 entries

        persistent.fname=list(dict.fromkeys(persistent.fname))
        persistent.mname=list(dict.fromkeys(persistent.mname))

        print("")
        print("========================")
        print("Loaded default names....")
        print("Males: %d" % len(persistent.mname))
        print("Females: %d" % len(persistent.fname))
        print("")

label ueditor_supernew:
    $ rar = int(renpy.input("What is the base unit rarity?", allow="0123456789"))
    python:
        c = Counter()
        for u in allunitsbase:
            if u["unit_id"] % 10:
                continue
            if u["flags"]:
                continue
            c[u["rare"]] += 1
        lastid = c[rar] + 1 # We start at 1, not at 0

    $ unitid = int("1%02d%03d" % (rar, lastid))

    menu:
        "[rar]★ ─ ID: [unitid]"
        "Male":
            $ sex = 0
            $ name = renpy.random.choice(persistent.mname)
            $ persistent.mname.remove(name)
        "Female":
            $ sex = 1
            $ name = renpy.random.choice(persistent.fname)
            $ persistent.fname.remove(name)

    $ inam = str(name)
    $ name = renpy.input("How is this [rar]★ unit called?\nIts ID is: [unitid]", default="[name]")

    # Maybe we're using "twins" logic or "same but rarer" logic
    if not inam in name:
        if sex:
            $ persistent.fname.append(inam)
        else:
            $ persistent.mname.append(inam)

    menu:
        "Please select the unit element:"
        "Fire":
            $ ele = Ele_Fire
        "Water":
            $ ele = Ele_Water
        "Nature":
            $ ele = Ele_Nature
        "Light":
            $ ele = Ele_Light
        "Shadow":
            $ ele = Ele_Shadow
        "Random":
            $ ele = renpy.random.choice([Ele_Fire, Ele_Water, Ele_Nature, Ele_Light, Ele_Shadow])

    menu:
        "Please select the unit job:"
        "Swordsman (DEF+)":
            $ job = 1
        "Assassin (Balanced)" if False:
            $ job = 2
        "Mage (ATK+)":
            $ job = 3
        "Archer (Balanced)":
            $ job = 4
        "Gunner (ATK++)" if False:
            $ job = 5

    show expression Text("[name]\n") at truecenter as ipsum with None
    $ desc = renpy.input("Describe the unit basic description.", default="A standard unit in the game.")
    show expression Text("[name]\n[desc]") at truecenter as ipsum with None
    $ desd = renpy.input("Describe the unit 2nd form description.") or ""
    show expression Text("[name]\n[desc] [desd]") at truecenter as ipsum with None
    $ dese = renpy.input("Describe the unit 2nd form description.") or ""
    hide ipsum with None

    python:
        # Create the randomness seed
        ssr=renpy.random.randint(-10, 15)
        shp=renpy.random.randint(-10, 15)
        i=0
        while i < 3:
            if i == 0:
                atd = ""
            else:
                atd = " +%d" % i
            allunitsbase.append({"skill_id": 0,
                                  "strength": 500,
                                  "rare": rar,
                                  "name": "%s%s" % (name, atd),
                                  "ability_id": 0,
                                  "attribute": ele,
                                  "hp": 500,
                                  "unit_id": unitid*100+i,
                                  "sex": sex,
                                  "max_level": 10+(rar*10),
                                  "job": job,
                                  "cost": rar**2,
                                  "flags": 0,
                                  "unit_base_id": unitid,
                                  "flavor": desc})
            current = len(allunitsbase)-1
            ueditor_recalc(False, shp, ssr)
            rar += 1
            i+=1
            if i == 1:
                desc+=" %s" % desd
            elif i == 2:
                desc+=" %s" % dese
        pass

    $ ueditor_save()
    jump units_editors