Advertisement
Guest User

Untitled

a guest
Jan 28th, 2015
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.63 KB | None | 0 0
  1. using UnityEngine;
  2. using System.Collections;
  3.  
  4. public class AdventurerGeneration : MonoBehaviour
  5. {
  6.     private bool isElite;
  7.  
  8.     private int homeland;
  9.     /* LEGEND
  10.      * (If it isn't obvious, these are placeholders)
  11.      * 0 - Rohan
  12.      * 1 - Gondor
  13.      * 2 - Angmar
  14.      * 3 - Gondolin
  15.      * 4 - Erebor
  16.      */
  17.    
  18.     private int archetype;
  19.     /* LEGEND
  20.      * 0 - Warrior
  21.      * 1 - Mage
  22.      * 2 - Rogue
  23.      */
  24.  
  25.     private int adventurerClass;
  26.     /* LEGEND
  27.      * 0 - Elite
  28.      * 1 - Tank
  29.      * 2 - DPS
  30.      * 3 - Support
  31.      */
  32.  
  33.     private bool gender;
  34.     /* LEGEND
  35.      * True - Male
  36.      * False - Female
  37.      */
  38.  
  39.     private string adventurerName;
  40.     /* Eowyn I am, Eomund's daughter */
  41.  
  42.     private string[] prefixes = {"Sel", "Frei", "Hum", "Tru", "Ar", "O", "Bren", "Kur", "Lau", "Pin",
  43.     "Tol", "Der", "Char", "Sha", "For", "Gran", "Mul", "Mar", "Bin", "War",
  44.     "Var", "Hil", "Sen", "Mor", "Len", "Bro", "Rein", "Rho", "Skal", "Wes",
  45.     "Corr", "Garri", "Mont", "Ji", "Aeo", "Clar", "Vik", "Yo", "Laur", "Ern",
  46.     "Aul", "Sudi", "Em", "Rae", "Sa", "Lu", "A", "Al", "Tel", "Sor"};
  47.  
  48.     private string[] suffixes = {"de", "helm", "hardt", "sen", "bert", "ith", "win", "ley", "mon", "no",
  49.     "tain", "co", "kle", "min", "mian", "fel", "ven", "kar", "gue", "elia",
  50.     "lyn", "ble", "cien", "lan", "ris", "ma", "gus", "ent", "dis", "feld",
  51.     "cheim", "soll", "greim", "kern", "ander", "odak", "osch", "asch", "bel", "da",
  52.     "riette", "anda", "torin", "asara", "ish", "er", "kentz", "eres", "arch", "nos"};
  53.     /* Name components -- 50 each, for now, for 2500 possible permutations */
  54.  
  55.    
  56.         void Start ()
  57.         {
  58.             for (int i = 0; i < 5; i++)
  59.             {
  60.                 homeland = Random.Range(0, 5);
  61.                 archetype = Random.Range(0, 3);
  62.                 adventurerClass = Random.Range(0, 4);
  63.                 adventurerName = generateName();
  64.                 gender = Random.Range(0, 2) > 0;
  65.                 Debug.Log(getNamePlate());
  66.             }
  67.         }
  68.    
  69.         void Update ()
  70.         {  
  71.         }
  72.  
  73.         string generateName()
  74.         {
  75.             /* MEGALLY EAT YOUR HEART OUT */
  76.             return prefixes[Random.Range(0, 50)] + suffixes[Random.Range(0, 50)];
  77.         }
  78.  
  79.         string getNamePlate()
  80.         {
  81.             string whois = adventurerName + ", ";
  82.             if (gender)
  83.                 whois = whois + "Female ";
  84.             else
  85.                 whois = whois + "Male ";
  86.  
  87.             switch (archetype)
  88.             {
  89.                 case 0:
  90.                     whois = whois + getClass(0) + " of ";
  91.                     break;
  92.  
  93.                 case 1:
  94.                     whois = whois + getClass(1) + " of ";
  95.                     break;
  96.  
  97.                 case 2:
  98.                     whois = whois + getClass(2) + " of ";
  99.                     break;
  100.             }
  101.  
  102.             switch (homeland)
  103.             {
  104.                 case 0:
  105.                     whois = whois + "Rohan";
  106.                     break;
  107.  
  108.                 case 1:
  109.                     whois = whois + "Gondor";
  110.                     break;
  111.  
  112.                 case 2:
  113.                     whois = whois + "Angmar";
  114.                     break;
  115.  
  116.                 case 3:
  117.                     whois = whois + "Gondolin";
  118.                     break;
  119.  
  120.                 case 4:
  121.                     whois = whois + "Erebor";
  122.                     break;
  123.             }
  124.  
  125.             return whois;
  126.         }
  127.  
  128.         string getClass(int type)
  129.         {
  130.             switch(adventurerClass)
  131.             {
  132.                 case 0: //Elites
  133.                     switch (type)
  134.                     {
  135.                         case 0:
  136.                             return "Elite Warrior";
  137.                         case 1:
  138.                             return "Elite Mage";
  139.                         case 2:
  140.                             return "Elite Rogue";
  141.                     }
  142.                     break;
  143.  
  144.                 case 1: //Tanks
  145.                     switch (type)
  146.                     {
  147.                         case 0:
  148.                             return "Knight";
  149.                         case 1:
  150.                             return "Cleric";
  151.                         case 2:
  152.                             return "Monk";
  153.                     }
  154.                     break;
  155.  
  156.                 case 2: //DPS
  157.                     switch (type)
  158.                     {
  159.                         case 0:
  160.                             return "Berserker";
  161.                         case 1:
  162.                             return "Sorcerer";
  163.                         case 2:
  164.                             return "Assassin";
  165.                     }
  166.                     break;
  167.  
  168.                 case 3: //Supports
  169.                     switch (type)
  170.                     {
  171.                         case 0:
  172.                             return "Ranger";
  173.                         case 1:
  174.                             return "Enchanter";
  175.                         case 2:
  176.                             return "Thief";
  177.                     }
  178.                     break;
  179.             }
  180.  
  181.             return "INVALID CLASS (REPORT THIS!)";
  182.         }
  183. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement